




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息化的基础是信息化的基础是数字化数字化 数字化数字化的核心技术之一是的核心技术之一是数字信号处理数字信号处理 数字信号处理数字信号处理的任务在很大程度上需要由的任务在很大程度上需要由 DSPDSP 器件来完成 器件来完成 DSP 技术已成为人们日益关注的并得到迅速发展的前沿技术 Collected by liefen DSP 的特点DSP 的特点 DSP 是什么 Digital Signal Processing 数字信号处理Digital Signal Processing 数字信号处理 DSP 处理器与通用处理器的比较DSP 处理器与通用处理器的比较 硬件和软件结构的特点 硬件结构的特点硬件结构的特点 软件的特点开发环境软件的特点开发环境 开发环境 DSP 软件开发流程 DSP 软件开发流程 开发工具开发工具 集成开发环境 集成开发环境 CCS Code Composer Studio 开发工具比较开发工具比较 DSP 诸侯DSP 诸侯 大致性能比较大致性能比较 芯片选用指南 Analog DevicesAnalog Devices ADSP 21xx ADSP 21xx TigerSharc DSP SHARC DSP TigerSharc DSP SHARC DSP LucentLucent DSP 16xxDSP 16xx DSP 16000 DSP 16000 MotorolaMotorola DSP 56800 DSP 56800 DSP 563xx DSP 563xx Lucent MotorolaLucent Motorola StarCore SC100 StarCore SC100 Texas InstrumentTexas Instrument TMS320C2000 TMS320C2000 TMS320C5000TMS320C5000 TMS320C6000 DSP 的特点 DSP 是什么 DSP 的特点 DSP 是什么 Digital Signal Processing 数字信号处理 Digital Signal Processing 数字信号处理 作为一个案例研究 我们来考虑数字领域里最通常的功能 滤波 简单地说 滤波就是 对信号进行处理 以改善其特性 例如 滤波可以从信号里清除噪声或静电干扰 从而改善 其信噪比 为什么要用微处理器 而不是模拟器件来对信号做滤波呢 我们来看看其优越性 模拟滤波器 或者更一般地说 模拟电路 的性能要取决于温度等环境因素 而数 字滤波器则基本上不受环境的影响 数字滤波易于在非常小的宽容度内进行复制 因为其性能并不取决于性能已偏离正 常值的器件的组合 一个模拟滤波器一旦制造出来 其特性 例如通带频率范围 是不容易改变的 使 用微处理器来实现数字滤波器 就可以通过对其重新编程来改变滤波的特性 信号处理方式的比较 比较因素 模拟方式 数字方式 修改设计 的灵活性 修改硬件设计 或调整硬件参数改变软件设置 精度 元器件精度 A D 的位数和计算机字长 算法 可靠性和 可重复性 受环境温度 湿度 噪声 电磁 场等的干扰和影响大 不受这些因素的影响 大规模集 成 尽管已有一些模拟集成电路 但 品种较少 集成度不高 价格较 高 DSP 器件体积小 功能强 功耗小 一致性好 使用方便 性能 价格 比高 实时性 除开电路引入的延时外 处理是 实时的 由计算机的处理速度决定 高频信号 的处理 可以处理包括微波毫米波乃至光 波信号 按照奈准则的要求 受 S H A D 和处理速度的限制 Digital Signal Processor 数字信号处理器 Digital Signal Processor 数字信号处理器 微处理器 Microprocessor 的分类 通用处理器 GPP 采用冯 诺依曼结构 程序和数据的存储空间合二而一 8 bit Apple 6502 NEC PC 8000 Z80 8086 286 386 486 Pentium Pentium II Pentium III PowerPc 64 bit CPU SUN Sparc DEC Alpha HP CISC 复杂指令计算机 RISC 精简指令计算机 采取各种方法提高计算速度 提高时钟频率 高速总线 多级 Cashe 协 处理器等 Single Chip Computer Micro Controller Unit MCU 除开通用 CPU 所具有的 ALU 和 CU 还有存储器 RAM ROM 寄存器 时钟 计数器 定时器 串 并口 有的还有 A D D A INTEL MCS 48 51 96 98 MOTOROLA HCS05 011 DSP 采用哈佛结构 程序和数据分开存储 采用一系列措施保证数字信号的处理速度 如对 FFT 的专门优化 MCU 与 DSP 的简单比较 MCU DSP 低档 高档 低档 高档 指令周期 ns 600 40 50 5 乘加时间 ns 1900 80 50 5 US MIPS 1 5 0 5 0 15 0 1 DSP 处理器与通用处理器的比较 DSP 处理器与通用处理器的比较 考虑一个数字信号处理的实例 比如有限冲击响应滤波器 FIR 用数学语言来说 FIR 滤波器是做一系列的点积 取一个输入量和一个序数向量 在系数和输入样本的滑动窗 口间作乘法 然后将所有的乘积加起来 形成一个输出样本 类似的运算在数字信号处理过程中大量地重复发生 使得为此设计的器件必须提供专门 的支持 促成了了 DSP 器件与通用处理器 GPP 的分流 1 1 对密集的乘法运算的支持对密集的乘法运算的支持 GPP 不是设计来做密集乘法任务的 即使是一些现代的 GPP 也要求多个指令周期来做 一次乘法 而 DSP 处理器使用专门的硬件来实现单周期乘法 DSP 处理器还增加了累加器寄 存器来处理多个乘积的和 累加器寄存器通常比其他寄存器宽 增加称为结果 bits 的额外 bits 来避免溢出 同时 为了充分体现专门的乘法 累加硬件的好处 几乎所有的 DSP 的指令集都包含有 显式的 MAC 指令 2 2 存储器结构存储器结构 传统上 GPP 使用冯 诺依曼存储器结构 这种结构中 只有一个存储器空间通过一组 总线 一个地址总线和一个数据总线 连接到处理器核 通常 做一次乘法会发生 4 次存储 器访问 用掉至少四个指令周期 大多数 DSP 采用了哈佛结构 将存储器空间划分成两个 分别存储程序和数据 它们有 两组总线连接到处理器核 允许同时对它们进行访问 这种安排将处理器存贮器的带宽加倍 更重要的是同时为处理器核提供数据与指令 在这种布局下 DSP 得以实现单周期的 MAC 指 令 还有一个问题 即现在典型的高性能 GPP 实际上已包含两个片内高速缓存 一个是数据 一个是指令 它们直接连接到处理器核 以加快运行时的访问速度 从物理上说 这种片内 的双存储器和总线的结构几乎与哈佛结构的一样了 然而从逻辑上说 两者还是有重要的区 别 GPP 使用控制逻辑来决定哪些数据和指令字存储在片内的高速缓存里 其程序员并不加 以指定 也可能根本不知道 与此相反 DSP 使用多个片内存储器和多组总线来保证每个 指令周期内存储器的多次访问 在使用 DSP 时 程序员要明确地控制哪些数据和指令要存储 在片内存储器中 程序员在写程序时 必须保证处理器能够有效地使用其双总线 此外 DSP 处理器几乎都不具备数据高速缓存 这是因为 DSP 的典型数据是数据流 也 就是说 DSP 处理器对每个数据样本做计算后 就丢弃了 几乎不再重复使用 3 3 零开销循环零开销循环 如果了解到 DSP 算法的一个共同的特点 即大多数的处理时间是花在执行较小的循环 上 也就容易理解 为什么大多数的 DSP 都有专门的硬件 用于零开销循环 所谓零开销循 环是指处理器在执行循环时 不用花时间去检查循环计数器的值 条件转移到循环的顶部 将循环计数器减 1 与此相反 GPP 的循环使用软件来实现 某些高性能的 GPP 使用转移预报硬件 几乎达 到与硬件支持的零开销循环同样的效果 4 4 定点计算定点计算 大多数 DSP 使用定点计算 而不是使用浮点 虽然 DSP 的应用必须十分注意数字的精确 用浮点来做应该容易的多 但是对 DSP 来说 廉价也是非常重要的 定点机器比起相应的浮 点机器来要便宜 而且更快 为了不使用浮点机器而又保证数字的准确 DSP 处理器在指 令集和硬件方面都支持饱和计算 舍入和移位 5 5 专门的寻址方式专门的寻址方式 DSP 处理器往往都支持专门的寻址模式 它们对通常的信号处理操作和算法是很有用 的 例如 模块 循环 寻址 对实现数字滤波器延时线很有用 位倒序寻址 对 FFT 很有用 这些非常专门的寻址模式在 GPP 中是不常使用的 只有用软件来实现 6 6 执行时间的预测执行时间的预测 大多数的 DSP 应用 如蜂窝电话和调制解调器 都是严格的实时应用 所有的处理必须 在指定的时间内完成 这就要求程序员准确地确定每个样本需要多少处理时间 或者 至少 要知道 在最坏的情况下 需要多少时间 如果打算用低成本的 GPP 去完成实时信号处理的任务 执行时间的预测大概不会成为什 么问题 应为低成本 GPP 具有相对直接的结构 比较容易预测执行时间 然而 大多数实时 DSP 应用所要求的处理能力是低成本 GPP 所不能提供的 这时候 DSP 对高性能 GPP 的优势在于 即便是使用了高速缓存的 DSP 哪些指令会放 进去也是由程序员 而不是处理器 来决定的 因此很容易判断指令是从高速缓存还是从存 储器中读取 DSP 一般不使用动态特性 如转移预测和推理执行等 因此 由一段给定的代 码来预测所要求的执行时间是完全直截了当的 从而使程序员得以确定芯片的性能限制 7 7 定点 DSP 指令集定点 DSP 指令集 定点 DSP 指令集是按两个目标来设计的 使处理器能够在每个指令周期内完成多个操作 从而提高每个指令周期的计算效 率 将存贮 DSP 程序的存储器空间减到最小 由于存储器对整个系统的成本影响甚大 该问题在对成本敏感的 DSP 应用中尤为重要 为了实现这些目标 DSP 处理器的指令集通常都允许程序员在一个指令内说明若干个并 行的操作 例如 在一条指令包含了 MAC 操作 即同时的一个或两个数据移动 在典型的例 子里 一条指令就包含了计算 FIR 滤波器的一节所需要的所有操作 这种高效率付出的代价 是 其指令集既不直观 也不容易使用 与 GPP 的指令集相比 GPP 的程序通常并不在意处理器的指令集是否容易使用 因为他们一般使用象 C 或 C 等高级语言 而对于 DSP 的程序员来说 不幸的是主要的 DSP 应用程序都是用汇编语言写的 至少部分是汇编语言优化的 这里有两个理由 首先 大多数广泛使用的高级语言 例 如 C 并不适合于描述典型的 DSP 算法 其次 DSP 结构的复杂性 如多存储器空间 多总 线 不规则的指令集 高度专门化的硬件等 使得难于为其编写高效率的编译器 即便用编译器将 C 源代码编译成为 DSP 的汇编代码 优化的任务仍然很重 典型的 DSP 应用都具有大量计算的要求 并有严格的开销限制 使得程序的优化必不可少 至少是对程 序的最关键部分 因此 考虑选用 DSP 的一个关键因素是 是否存在足够的能够较好地适 应 DSP 处理器指令集的程序员 8 8 开发工具的要求开发工具的要求 因为 DSP 应用要求高度优化的代码 大多数 DSP 厂商都提供一些开发工具 以帮助程序 员完成其优化工作 例如 大多数厂商都提供处理器的仿真工具 以准确地仿真每个指令周 期内处理器的活动 无论对于确保实时操作还是代码的优化 这些都是很有用的工具 GPP 厂商通常并不提供这样的工具 主要是因为 GPP 程序员通常并不需要详细到这一层 的信息 GPP 缺乏精确到指令周期的仿真工具 是 DSP 应用开发者所面临的的大问题 由于 几乎不可能预测高性能 GPP 对于给定任务所需要的周期数 从而无法说明如何去改善代码的 性能 硬件和软件结构的特点 硬件和软件结构的特点 硬件结构的特点 硬件结构的特点 1 Harvard 结构Harvard 结构 程序与数据存储空间分开 各有独立的地址总线和数据总线 取指和读数可以同时进行 从而提高速度 目前的水平已达到 90 亿次浮点运算 秒 9000MFLOPS 2 2 采用流水作业 pipline 采用流水作业 pipline 3 3 独立的硬件乘法器 独立的硬件乘法器 乘法指令在单周期内完成 优化卷积 数字滤波 FFT 相关 矩阵运算等算法中的大 量重复乘法 4 4 循环寻址 Circular addressing 位倒序 bit reversed 等特殊指令循环寻址 Circular addressing 位倒序 bit reversed 等特殊指令 使 FFT 卷积等运算中的寻址 排序及计算速度大大提高 1024 点 FFT 的时间已小于 1 s 5 5 独立的 DMA 总线和控制器 独立的 DMA 总线和控制器 有一组或多组独立的 DMA 总线 与 CPU 的程序 数据总线并行工作 在不影响 CPU 工作 的条件下 DMA 速度已达 800Mbyte s 以上 6 6 多处理器接口多处理器接口 使多个处理器可以很方便的并行或串行工作以提高处理速度 7 7 JTAG Joint Test Action Group 标准测试接口 IEEE 1149 标准接口 JTAG Joint Test Action Group 标准测试接口 IEEE 1149 标准接口 便于对 DSP 作片上的在线仿真和多 DSP 条件下的调试 软件的特点开发环境软件的特点开发环境 1 1 立即数寻址立即数寻址 2 2 直接寻址直接寻址 TI 公司的 TMS320 系列芯片将数据存储器分为 512 页 每页 128 字 设置一个数据页指 针 DP Data Pointer 用 9 bit 指向一个数据页 再加上一个 7 bit 的页内偏移地址 形成 16 bit 的数据地址 这样有利于大大加快寻址速度 3 3 间接寻址间接寻址 8 个辅助寄存器 AR0 AR7 由一个辅助寄存器指针 ARP 3 bit 来指定一个 辅助寄存器算术单元 ARAU 作 16 bit 无符号数运算 决定一个新的地址 装入辅助 寄存器中的一个 AR0 AR7 的内容相当灵活 可以装入立即数 加上立即数 减去立即数 也可以 从数据存储器装入地址 还可以作以下的变址寻址 o 将该 AR 的内容加 1 或减 1 再寻址 循环常用 o 将该 AR 的内容加上或减去 AR0 的内容 再寻址 o 将该 AR 的内容逆向进位加上或减去 AR0 的内容 再寻址 由于采用反向进位 得以实现位倒序寻址 原序 原地址 位倒序后地址位倒序 0 000 000 0 1 001 100 4 2 010 010 2 3 011 110 6 4 100 001 1 5 101 101 5 6 110 011 3 7 111 111 7 可以看到 运算后的次序符合 FFT 的蝶形运算的要求 采用循环寻址实现零开销的循环 大大增进了如卷积 相关 矩阵运算 FIR 等算法 的实现速度 4 4 独特的乘法指令独特的乘法指令 例 MAC X0 Y0 A X R0 X0 Y R4 N4 Y0 这条指令命令 DSP56300 将寄存器 X0 和 Y0 中的数相乘 结果加到 Acc A 中 将寄存器 R0 所指的 X 存储器地址中的值装入寄存器 X0 将寄存器 R4 所指的 Y 存储器地址中的值装入寄存器 Y0 R0 的值 加 1 寄存器 N4 的值加给 R4 开发环境 开发环境 DSP 软件开发流程 DSP 软件开发流程 开发工具 开发工具 1 1 代码生成工具 代码生成工具 C 优化编译器 汇编语言工具 o 汇编器 Assembler o 连接器 Linker o 归档器 Archiver o 交叉引用列表器 Cross Reference Lister 2 2 系统集成及调试环境与工具 以 TI 为例 系统集成及调试环境与工具 以 TI 为例 调试器接口 C Assembly source debugger o 为嵌入式系统的开发提供了丰富的功能与灵活性 该调试器是下面要讨论的 软仿真器 评估模块 在线仿真器等的标准接口 o 该调试器可以运行在 PC 或 SPARC 等平台上 对用 C 或汇编语言写的程序提 供完全的控制 其代码分析功能通过快速确认最费时的程序段 提示应该将开发 时间集中在什么地方 软仿真器 Simulator TMS320 软件仿真器是一个软件程序 使用主机的处理器和存储器来仿真 TMS320 DSP 的 微处理器和微计算机模式 从而进行软件开发和非实时的程序验证 在 PC 机上 典型的仿 真速度为每秒几百条指令 DSP 入门套件 DSK DSP Starter Kit 为初学者设计和生产的 DSK 是一种用以评价 DSP 平台的相对廉价的开发工具 在 PC 机 的 DOS 或 Windows 下 用户可以使用 DSK 来作 DSP 的实验 进行诸如控制系统 语音处理等 应用 也可以用来编写和运行实时源代码 并对其作评估 还可以用来调试用户自己的系统 银杏开发 实验系统 DES DESpp 银杏的 DES 系列产品用较低的成本满足了用户在目标评估 工程开发方面的需求 尤其是 pp 系列 自带硬件仿真器 使用户对外设的依赖降到最低 仅仅需要一张卡和一套软件就 可以进行 DSP 的开发或实验 标准评估模块 EVM TMS320 的评估模块 EVM 是廉价的开发板 用于器件评估 标准程序检查 以及有限 的系统调试 EVM 是一个 PC 插件 包括目标处理器 一个小容量的存储器 和有限的外设 EVM 可以用来实时运行代码 并与外部系统接口 TMS320 硬件仿真器 Emulators 扩展开发系统 XDS extended development system 是功能强大的全速仿真器 用以 作系统级的集成与调试 扫描式仿真 Scan Based Emulator 是一种独特的 非插入式的系统仿真 集成 调 试方法 使用这种方法 程序可以从片内或片外的目标存储器实时执行 在任何时钟速度下 都不会引入额外的等待状态 3 3 实时操作系统实时操作系统 对于简单的 DSP 任务 用前面介绍的开发工具已能满足开发任务的需要 往往不需要操 作系统就可以进行 但当 DSP 的任务增加和任务的复杂性提高 例如对实时性要求很高的多 DSP 并行操作的多任务系统 可能就需要某种操作系统来管理系统的资源 安排多任务的执 行和任务间的信息交换等 DSP 的操作系统 SPOX SPOX 是专为 DSP 系统设计和软件开发而设计的实时多任务操作系统 它提供一组由 C 语言调用的功能 与所开发的硬件平台无关 从而将 DSP 的实时应用部分从许多低层的硬件 细节中隔离出来 它作为 DSP 实时应用开发的一个集成环境 完成从新的算法概念出发 直 到把应用软件装入产品硬件的整个开发任务 集成开发环境 CCS Code Composer Studio 集成开发环境 CCS Code Composer Studio 按照业界的估计 一个嵌入式系统开发的 80 的努力 以及系统 80 的复杂程度都取决 于软件 因此设计者为实时系统选择处理器时都非常看重先进的易于使用的开发工具 通常 DSP 的开发工具都局限于代码生成工具 编译器 汇编器和连接器 和代码调试 和分析工具 源代码调试器和分析器 在大多数情况下 这些工具都是分开使用的 不能 共享数据 而要求开发者不停地在不同的应用间切换 实时系统的调试也是很烦人的过程 为了了解它们在实际条件下的应用表现 开发者希 望能在不停止执行的情况下 跟踪程序的流程 但典型的调试环境只允许断点之间单步运行 的静态调试 当多个实时代码段集成在一起时 代码段之间的复杂的相互作用会产生新的问 题 如果没有适当的工具协助开发人员 就可能推迟开发的进度 甚至将问题带到出售的产 品中 Code Composer Studio 可以满足复杂的 DSP 应用的要求 Code Composer Studio 可以满足复杂的 DSP 应用的要求 为 TI 的 TMS320 系列而设计的 Code Composer Studio 是一个高度集成的开发环境 将编辑 调试 项目管理 分析和探测点集成在一个环境里 C 编译器 汇编优化器和连接器 代码生成工具 指令集仿真器 实时的基础软件 DSP BIOS 主机和目标机之间的实时数据交换 RTDX 实时分析和数据可视化 目前可用于 WIN95 和 NT4 即将支持 WIN98 和 UNIX 紧密集成允许同时插入主机和目标机 使开发者扩展其开发环境 板卡厂商的插件可以使目标机硬件的配置更容易 将编辑 调试 项目管理 分析和探测点集成在一个环境里 C 编译器 汇编优化器和连接器 代码生成工具 指令集仿真器 实时的基础软件 DSP BIOS 主机和目标机之间的实时数据交换 RTDX 实时分析和数据可视化 目前可用于 WIN95 和 NT4 即将支持 WIN98 和 UNIX 紧密集成允许同时插入主机和目标机 使开发者扩展其开发环境 板卡厂商的插件可以使目标机硬件的配置更容易 数据可视化 数据可视化 当应用程序运行时 可以按数据和信号的自然格式来观察 如眼图 星座图 FFT 等 以加速分析与测试 眼图可以使开发者看到因为噪声和抖动所引起的信号的变化 星座图可 以使程序员从信号看到其意义 FFT 的瀑布图包含了一系列谱的映射 反映信号的谱随时间 的变化 在调制解调器或语音识别系统中测量噪声特性时非常有用 实时 DSP 环境 实时 DSP 环境 如今的系统对服务的最低要求都包括定时 通信 资源控制和分析 这些要求对开发者 来说是满高的 或者去购买实时操作系统 RTOS 和算法程序库 或者自己建一个 都不便 宜 Code Composer Studio 提供一个图形化的以主机为基础的静态配置工具 所有的 DSP BIOS 对象都是静态配置的 并用该工具初始化 因为该初始化是在编译时作的 就不 要求目标机的应用程序在运行时建立 DSP BIOS 服务 实时数据交换 RTDX 实时数据交换 RTDX 迄今为止 开发者还必须停止其应用程序 以便和主机交换数据 而 RTDX 却可以实时 地 连续地访问正在运行的目标机的应用程序 在主机和 DSP 之间交换数据 由此可以深入 地了解应用程序的工作 实时分析 实时分析 DSP BIOS 实时分析库包括 Log 和 Statistics 模块 字符串在主机里存储并格式化 目 标机只需要将数据传给主机 Log 模块这样作只需要几十个机器周期 而在目标机作格式化 需要几百个机器周期 Statistics 模块纪录目标机中数值的最大值 最小值和平均值 所 有的计算都是在主机里进行的 只有很小量的信息在目标机里存储和从目标机传输 该模块 对于跟踪 DSP 系统的性能参数是很理想的 通过可视化系统性能和定时 可以快速地确定微 妙的实时问题 集成的开发环境集成的开发环境 通过单一的控制面板访问所有的开发工具 编辑器 调试器 对象管理器 实时分析器 编译器 图形信号分析器等等 集成的源代码编辑器 集成的源代码编辑器 该集成调试器在技术上有所突破 基于 C 表达式 局部变量或 CPU 寄存器符号的条件和 硬件断点 遇上一个特定的断点时 可以执行一个 script 文件 而 script 文件可以使用 GEL script 语言很容易地建立 对于多处理器系统可以设置全局断点 因为地址是在建立 时间确定的 用源行号可以节省时间 断点可以用对话框来配置 点击一个按钮可以激活断 点群 开发者可以激活多个数据窗口来显示数据信息 可以观察交叉存取的源代码和反汇编 可以选择进入 越过或跳出 C 函数或汇编子程序来快速地调试程序 交互式分析 交互式分析 开发者必须能够估计代码的执行时间 从而开发高效 高性能的系统 可以对汇编语言 或 C 语言的代码块 以及混在一起的代码块进行分析 还可以包括转移 子程序调用 中断 等 程序的高效编译和建立 程序的高效编译和建立 编译器的一般优化包括 转移优化 简化控制流 别名澄清 复制传播 抑制公用子表达式 抑制冗余赋值 循环变量优化 强度减弱 循环旋转 循环内不改变的代码移动 函数调用的内嵌扩展 文件级的优化 数据流的优化 简化表达式 寄存器变量 寄存器跟踪 目标 按照成本考虑的寄存器定位 转移优化 简化控制流 别名澄清 复制传播 抑制公用子表达式 抑制冗余赋值 循环变量优化 强度减弱 循环旋转 循环内不改变的代码移动 函数调用的内嵌扩展 文件级的优化 数据流的优化 简化表达式 寄存器变量 寄存器跟踪 目标 按照成本考虑的寄存器定位 世界上第一个汇编语言程序优化器 可以使通常需要 12 个周期完成的指令 在 3 个周 期内完成 注入和提取数据信号注入和提取数据信号 在不改变源代码的条件下 使用探针点注入和提取数据信号 执行 scripts 观察不同 格式的数据 用许多文件 I O 的选择项使测试更容易 多个文件可以连接成一个 使模拟仿 真条件更容易 多目标调试多目标调试 支持开发多板的复杂系统 其并行调试管理器 PDM 提供对多处理器的同步控制 通 过对话框 可以定义多达 32 个不同的 CPU 组 PDM 可以通过 JTAG 途径用广播方式将命令传 给不同的 CPU 组 遇到全局断点时 一个处理器的命令可以暂停其它的处理器 定制测试与自动测试定制测试与自动测试 GEL scripting 语言使用户可以通过添加菜单项和建立图形化的用户界面 GUI 来定 制自己的开发环境 由于 GEL 是基于 C 语言的 因此容易学习和实现 不用购买其他任何工 具 只用 GEL 就可以建立 DSP 的应用 GUI 例如 DSP 应用的用户界面 硬件诊断 板设置 经常使用的函数 专门的应用命令 为变量建立一个滑动窗口 测试控制 DSP 应用的用户界面 硬件诊断 板设置 经常使用的函数 专门的应用命令 为变量建立一个滑动窗口 测试控制 开发工具比较 开发工具比较 前市场上的几种开发板的比较表 性质性质 价格价格 估 估 用户群用户群 需否其他需否其他 配件配件 功能功能 DSKDSK 初学者套 件 300 初学者 配仿真器 体会 dsp 开发过程 EVMEVM 评估板 2000 工程开发 配仿真器 工程开发工具 XDSXDS 仿真器 4200 工程开发 开发配件 本身不能用作开发 DESDES 演示板 1000 初 学 开 发 配仿真器 评估目标程序 DESppDESpp 开发板 教学板 2400 开 发 实 验 直接与计算机并口连接 不需要 其他配件 可用于工程开发或实 验室教学 DSP 的各路诸侯 DSP 的各路诸侯 DSP 的各路诸侯 DSP 的各路诸侯 芯片 核 芯片 核 定点 浮点 定点 浮点 字长 字长 bits bits 指令长度指令长度 bits bits 钟频 钟频 MHz MHz Analog DevicesAnalog Devices ADSP 21xx Both Fixed 16 24 75 ADSP 2106x Chip Floating 40 48 60 ADSP 2116x Chip Floating 40 48 100 TigerSHARC Chip Fixed Float32 32 250 ARMARM Piccolo Core Fixed 16 16 32 70 DSP GroupDSP Group PineDSPCore Core Fixed 16 16 40 OakDSPCore Core Fixed 16 16 80 TeakDSPCore Core Fixed 16 16 130 PalmDSPCore Core Fixed 16 20 2416 32 150 HitachiHitachi SH DSP Chip Fixed 16 16 32 66 IBMIBM C54XDSP Core Fixed 16 16 66 Lucent TechnologiesLucent Technologies DSP16xx Chip Fixed 16 16 120 DSP16xxx Chip Fixed 16 16 32 100 Mentor GraphicsMentor Graphics M320C50 Core Fixed 16 16 MotorolaMotorola DSP560 xx Chip Fixed 24 24 47 5 DSP563xx Chip Fixed 24 24 100 DSP566xx Chip Fixed 16 24 70 DSP568xx Chip Fixed 16 16 35 Lucent MotorolaLucent Motorola StarCore140 Core Fixed 16 16 300 Siemens Infineon Siemens Infineon TriCore Both Fixed 32 16 32 80 Carmel Both Fixed 16 24 48 120 Texas InstrumentsTexas Instruments TMS320C1x Chip Fixed 16 16 8 8 TMS320C2x Chip Fixed 16 16 12 5 TMS320C2xx Both Fixed 16 16 40 TMS320C27xx Core Fixed 16 16 50 TMS320C3x Chip Floating 32 32 40 TMS320C4x Chip Floating 32 32 30 TMS320C5x Chip Fixed 16 16 50 TMS320C54x Both Fixed 16 16 100 TMS320C62xx Chip Fixed 16 32 200 TMS320C67xx Chip Floating 32 32 167 ZoranZoran ZR386xx Chip Fixed 20 32 40 ZSP CorporationZSP Corporation ZSP164xx Chip Fixed 16 16 200 芯片 核 芯片 核 定点 浮点 定点 浮点 字长 字长 bits bits 指令长度指令长度 bits bits 钟频 钟频 MHz MHz 大致性能比较 16bit 定点运算 DSP 大致性能比较 16bit 定点运算 DSP TI TMS320C25 TI TMS320C25 Motorola DSP56000 Motorola DSP56000 AD ADSP2100 AD ADSP2100 AT T DSP16 AT T DSP16 指令周期 100ns 64 74ns 80ns 25ns 片内存储器 P 4Kx16bROM P D 544x16bRAM P 512 x 24b P 32 x 24bROM D 2x256x24bRAM D 2x256x24bROM P 2K x 24b D 1K x 16b P 12K x16b D 2K x 16b 片外寻址 P D 128Kx16b P 64Kx24b DX 64Kx24b DY 64Kx24b P 16K x 24b D 16K x 24b 64K x 16b 片上外设 2 串 1 串 1 并 2 串 1 定时 1 串 1 并 乘法器 I O16b 32b 24b 48b 16b 32b 16b 32b 封装 68PGA PLCC 132 CQFP 88 PGA 68 PGA 84 PLCC 133 PGA 32 bit 浮点运算 DSP 32 bit 浮点运算 DSP TI TI TMS320C30 TMS320C30 Motorola Motorola DSP96002 DSP96002 AD ADSP21020 AD ADSP21020 AT T AT T DSP32 DSP32 指令周期 ns 60 50 60 74 40 50 66 80 100 片内存储器 4Kx32bROM 1Kx32bRAM P1Kx32bRAM P64x32bROM DRAM 2x512x32b DROM 2x512x32b P32x48bCashe 3x512x32b 片外寻址 16Mx32b 3x4Gx32b P 16Mx48b D 4Gx40b 4M 4Gx32b 片上外设 2 串口 8 16 32 2 定时器 32b 2x 主机接口 1 定时 JTAG 8 16 32 串 乘法器 I O 40b 32b 浮点 32b 44b 定点 32b 64b 浮点 32b 32b 定点 32b 64b 浮点 32b 45b 封装 181PGA 223PGA 256CQFP 223PGA PQFP 164FQFP 133PGA 68PLCC 浮点除法 ns 360 300 300 660 1024 点 FFT ms 1 025 1 047 0 77 1 9 芯片选用指南芯片选用指南 Analog Devices ADSP 21xx Analog Devices ADSP 21xx TigerSharc DSP SHARC DSP TigerSharc DSP SHARC DSP ADSP 21xx 结构特点 16 bit 定点 DSP 带 8 bit 保护位的 40 bit ACC 单周期执行指令多数指令 可以条件执行 ADSP 21xx 结构特点 16 bit 定点 DSP 带 8 bit 保护位的 40 bit ACC 单周期执行指令多数指令 可以条件执行 寻址模式 寻址模式 立即数寻址 寄存器直接寻址 存储器直接寻址 以及寄存器间接寻址 对于 ADSP 219x 还有寄存器事后修改 立即修改 直接和间接偏移寻址模式 其程序序列具有内部循环计数 和循环堆栈 从而实现零开销循环 每个地址发生器支持四个循环缓冲器 每个循环缓冲器 又有三个寄存器 用来定义循环的终点 长度和访问的地址 一个地址发生器支持位倒序寻 址 ADSP 219x 支持十六个循环缓冲器 通过使用一个地址发生器影子寄存器和一组基寄存 器 以增加循环缓冲的灵活性 特殊指令特殊指令 ADSP 219x 可以有条件地执行大多数指令 其 do until 命令可以建立任意长度的指令 序列 作四层嵌套循环 ADSP 219x 则支持八层嵌套 ADSP 21xx 是非流水机型 因而不会 对转移或子程序调用带来影响 开发支持开发支持 ADI 公司的软件和硬件开发工具包括该公司的 VisualDSP 集成开发环境 在线仿真器和 开发套件 VisualDSP 提供对优化的 C 编译器 汇编器 连接器及调试器的接口 该公司的 仿真器适用于通用的串口总线 PCI 以及以太网主机平台 其 EZ Kit Lite 包括一个评估 板和有限的 但功能齐全的 VisualDSP TigerSharc DSP 结构特点 TigerSharc DSP 结构特点 16 bit 定点 DSP VLIW 超长指令字 结构可以在一个机器周期内执行四条指令 该系列 DSP 具有 SIMD 单条指令多个数据 的能力 第一个 TigerSharc DSP 集成了 6 Mbit 的 RAM 16 bit 定点 DSP VLIW 超长指令字 结构可以在一个机器周期内执行四条指令 该系列 DSP 具有 SIMD 单条指令多个数据 的能力 第一个 TigerSharc DSP 集成了 6 Mbit 的 RAM 寻址模式 寻址模式 立即数寻址 位倒序寻址 块循环 寄存器直接寻址和寄存器间接寻址 其 SIMD 存储 器传输机制使单个取数和存储指令在两个存储器块和两个计算单元之间作数据传输 特殊指令特殊指令 指令集直接支持高精度和低精度类型数据之间的转换 如在单周期内将定点数转换成浮 点数 将 16 bit 数转换为 32 bit 数 TigerSharc 没有硬件模式 其指令集支持算术功能 如带符号的和不带符号的整数和小数运算 这将简化高级语言的编程 在各种情况下都提供 优化的饱和模式 开发支持开发支持 ADI 公司的软件和硬件开发工具包括该公司的 VisualDSP 集成开发环境 在线仿真器和 开发套件 VisualDSP 提供对优化的 C 编译器 汇编器 连接器及调试器的接口 该公司的 仿真器适用于通用的串口总线 PCI 以及以太网主机平台 其 EZ Kit Lite 包括一个评估 板和有限的 但功能齐全的 VisualDSP SHARC DSP 结构特点 SHARC DSP 结构特点 16 bit 定点 DSP 支持定点和浮点运算 新的 SIMD 锤头运算 Hammer head operates 集成有大的 SRAM 16 bit 定点 DSP 支持定点和浮点运算 新的 SIMD 锤头运算 Hammer head operates 集成有大的 SRAM 寻址模式寻址模式 立即数寻址 索引寻址 位倒序寻址 块循环 寄存器直接寻址和寄存器间接寻址 对 于片外存储器的访问 必须采用间接寻址 特殊指令特殊指令 SHARC 提供位操作 平方根的倒数 条件子程序调用 零开销单条指令和块指令循环 定点数和浮点数的比较 以及大多数指令的条件执行 SHARC 支持 IEEE 754 单精度浮点数 23 bit 尾数 8 bit 指数以及符号位 40 bit 扩展精度 IEEE 格式 32 bit 尾数 开发支持开发支持 ADI 公司的软件和硬件开发工具包括该公司的 VisualDSP 集成开发环境 在线仿真器和 开发套件 VisualDSP 提供对优化的 C 编译器 汇编器 连接器及调试器的接口 该公司的 仿真器适用于通用的串口总线 PCI 以及以太网主机平台 其 EZ Kit Lite 包括一个评估 板和有限的 但功能齐全的 VisualDSP 其 SHARC 汇编语言以一种代数式语法为基础 Lucent DSP 16xx Lucent DSP 16xx DSP 16000 DSP 16000 DSP 16xx 结构特点 DSP 16xx 结构特点 16 bit 定点 DSP 具有 16316 bit 的乘法器 36 bit 的 ALU 移位器 所有片种都有片内 ROM 工作在 2 7 4 75V 16 bit 定点 DSP 具有 16316 bit 的乘法器 36 bit 的 ALU 移位器 所有片种都有片内 ROM 工作在 2 7 4 75V 特殊指令 特殊指令 单条指令 块指令的硬件循环 条件子程序调用 比较 混合寻址 指数检测 bit 位 提取 移位和替换 没有旋转指令 开发支持开发支持 其硬件开发系统包括在线仿真器 评估板和演示板 软件开发工具包括汇编器 连接器 调试器 软仿真器和应用程序库 EDA 厂商还提供将 DSP 软仿真器模块插入的系统级的仿真 工具 DSP 16000DSP 16000 结构特点 结构特点 双 MAC 单元 支持 16332 和 32332 bit 的乘法 ALU 支持 16 32 40 bit 运算 X 和 Y 存储器具有 32 bit 数据宽度 双 MAC 单元 支持 16332 和 32332 bit 的乘法 ALU 支持 16 32 40 bit 运算 X 和 Y 存储器具有 32 bit 数据宽度 寻址模式 寻址模式 寄存器和存储器直接寻址 寄存器间接寻址 立即数寻址以及寄存器 置换寻址 由于 器件不提供位倒序寻址 只能用软件来实现 支持两个并发的循环缓冲器 寻址模式面向指 针算术运算 特殊指令特殊指令 支持 16 bit 和 32 bit 的混合指令 因为转移需要三个机器周期 许多指令的条件执行 可以避免转移 Redo 指令可以重新运行用 do 指令装入 cache 的代码 其追索编码器将加速 Viterbi 比较指令的执行 并产生模式控制的效果 此外 用户可以使用比较指令来决定 Viterbi 处理的最小公共通道 其他的特殊指令还有旋转 取负 取绝对值和定点算术运算 开发支持开发支持 软件工具包括 ANSI C 编译器 汇编器 连接器 调试器和软仿真器 硬件工具包括在 线仿真器和开发板 基于 Gnu C 的 C 编译器进行局部和全局的优化 以便进行 C 源代码的调 试 也可作 C 和汇编混合代码的调试 汇编器支持 ANSI C 预处理 允许文件包含 宏置换 条件汇编 以及各种常数格式 该汇编器还允许表达式包含多个用户定义的标号 并支持预 处理伪指令 使汇编器与调试器共享宏运算 调试器支持单个或多个同类的或不同类的处理 器的集成调试 支持数据和指令断点 接近实时的软件仿真 混合的 C 代码和汇编代码调试 广泛的代码分析 用 TargetView 通信系统通过 JTAG 来作独立的或连网的硬件仿真 硬件跟 踪 以及片内的周期计数 广泛的片内调试硬件可以实时监视许多处理器 在调试器中单步 运行代码时 可以图形化地显示通过 DSP 的数据流 这样 用户可以观察到处理器中没有充 分使用的部分 修改代码来提高效率 Synopsys COSSAP Cadence SPW 以及 Mathworks Matlab 等第三方的工具也支持 DSP16000 的仿真 软件工具的价格为 1500 美圆 硬件工具 的价格为 5000 至 7000 美圆 Motorola DSP 56800 DSP 563xx Motorola DSP 56800 DSP 563xx DSP 56800DSP 56800 结构特点 结构特点 16 bit 定点 DSP 带有控制功能的 DSP 可以中断的硬件 do 循环 工作于 2 7V 和 70MHz 16 bit 定点 DSP 带有控制功能的 DSP 可以中断的硬件 do 循环 工作于 2 7V 和 70MHz 寻址模式 寻址模式 寄存器直接寻址 短的或长的存储器直接寻址 七个存储器间接寻址 以及立即数寻址 还支持短的转移偏置和循环缓冲器的模数计算 特殊指令特殊指令 可以作单指令或块指令的硬件 do 或 repeat 循环 与 ALU 运算并行的单个或双的并行搬 移指令 在取指令的同时允许作两个存储器访问 允许对任何寄存器或存储器作位操作 在 作单周期乘法和 MAC 的同时 作取整 加 减 平方 使用一个条件转移指令和比较指令 实现搜索和分类算法 如果特定的条件为真 则 DSP 执行从一个寄存器到另一个的传输 例 如 存储一个数列里最大值的索引值 开发支持开发支持 使用 OnCE 口 通过 JTAG 接口作片上仿真 CodeWarrior 提供集成的开发环境 其中包 括 C 编译器 汇编器 连接器 软仿真器 以及图形化的源代码和汇编级的调试器 其评估 模块为 DSP56824EVM 开发系统为 DSP 56824ADS DSP 563xx 结构特点 DSP 563xx 结构特点 24 bit 定点 DSP 七级流水 包含两个取指 一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025基孔肯雅热题库及答案
- 葬歌课件教学课件
- 2025年高考山东物理试题(解析版)
- 2025合作项目委托合同
- 2025年三基模拟习题及答案
- 2025贷款借款合同撰写模板
- 消化内科出科题目及答案
- 查验员考试题库多选题及答案
- 相遇问题五下题目及答案
- 线性代数专题题目及答案
- LY/T 2246-2014森林消防专业队伍建设和管理规范
- JJG 956-2013大气采样器
- GA/T 1707-2020防爆安全门
- 教师调课申请表
- 重医大内科诊疗操作规范内科诊疗操作规范
- 初中英语单元整体教学讲座课件
- 《幸福比优秀更重要》读书分享 课件
- 脚手架作业安全管理培训
- 钻孔桩桩底沉渣处理高压注浆方案
- 自由贸易试验区跨境债券业务登记托管、清算结算实施细则
- 物资采购合同范本1
评论
0/150
提交评论