DSP硬件系统概述.ppt
数字信号处理的实现,DSP硬件系统,一、DSP硬件系统概述,DSP的含义,DSP(Digital Signal Processing)也就是我们常说的数字信号处理,它是利用计算机或专用处理设备,以数字形式对信号进行采集,变换,滤波,估值,增强,压缩,识别等处理,以得到符合人们需要的信号形式。DSP芯片就是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。,DSP芯片的特点,在一个指令周期内可完成一次乘法和一次加法程序和数据空间分开,可以同时访问指令和数据(哈佛结构)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问具有低开销或无开销循环及跳转的硬件支持,DSP芯片的特点,快速的中断处理和硬件I/O支持具有在单周期内操作的多个硬件地址产生器可以并行执行多个操作支持流水线操作,使取指,译码和执行等操作可以重叠执行,抗混叠滤波器(Anti-aliasing filter):模数转换前将采集的高频信号滤掉模数转换器(Analog-to-Digital Converter,ADC):模拟信号转换为数字信号数字信号处理器件:可进行DSP处理(通用与专用算法)的MPU数模转换器(Digital-to-Analog Converter,DAC)数字信号转换为模拟信号抗镜像滤波器(Anti-image filter)把AO输出的模拟信号(阶梯状)重构为 光滑的模拟信号,典型实时数字信号处理的基本部件,典型实时数字信号处理系统框图,实时数字信号处理技术的发展,利用X86处理器完成实时数字信号处理选择范围较宽 主板及外设资源丰富 多种操作系统可供选择 开发、调试较为方便 数字信号处理能力不强 硬件组成较为复杂 系统体积、重量较大,功耗较高 抗环境影响能力较弱,实时数字信号处理技术的发展,利用通用微处理器(ARM、单片机)完成实时数字信号处理可选范围广 硬件组成简单系统功耗低,适应环境能力强 信号处理的效率较低 内部DMA通道较少,利用可编程逻辑阵列(FPGA)进行实时数字信号处理 适合高速信号处理具有专用数字信号处理结构 开发需要较深的硬件基础 调试困难,实时数字信号处理技术的发展,利用数字信号处理器(DSP)实时实现数字信号处理(本课程的对象)适合高速信号处理具有专用数字信号处理结构 适应实时实时信号处理的场合开发需要较深的硬件基础 调试困难器件可选范围稍小,实时数字信号处理技术的发展,基于通用DSP处理器的DSP系统,数字信号处理器的主要应用,基本信号处理:滤波器、FFT、窗函数等通信:调制解调、数据加密、多路复用 等 语音:语音编码、合成、识别、增强等 图形图像:图像压缩、视频处理、机器人视觉 等 军事:雷达信号处理、导弹制导等 仪器仪表:频谱分析、锁相环 等控制:自动驾驶、磁盘控制等 医疗:助听、超声设备、患者监护等 家用电器:智能玩具、数字电话、数字电视等,数字信号处理器的存储结构,处理器的存储结构分为两大类冯诺依曼结构(X86、单片机等):三总线(AB、DB和CB)结构,程序空间与数据空间统一哈佛结构(DSP):程序访问总线和数据访问总线分开,程序存储空间与数据存储空间分开DSP采用了哈佛结构和多套地址、数据总线,双总线存储器结构,流水线结构将指令的执行分解为取指、译码、取操作数和执行等几个阶段 TMS320C54xx DSP 采用6级流水线TMS320C6xxx DSP 采用8级流水线TMS320C55xx DSP的流水线分为指令流水线执行流水线,数字信号处理器的流水线,数字信号处理器的其他特点,硬件乘法累加单元 独立的硬件乘法单元零开销循环指循环计数、条件转移等循环机制由专门硬件控制,而处理器不用花费任何时间 特殊的寻址方式DSP支持循环寻址和倒位序寻址 高效的特殊指令FIRSADD指令对称结构FIR滤波算法LMS指令LMS算法(最小均方算法),数字信号处理器的其他特点,丰富的片内外设,二、DSP系统的开发流程,DSP芯片的厂家,目前世界上生产DSP芯片的公司主要有TI(德州仪器)公司,AD(美国模拟器件)公司,Technologics(朗讯技术)公司和Motorola(摩托罗拉)公司四大公司,而TI公司则是世界上最大的DSP芯片供应商。TMS320系列产品就是该公司的DSP产品。,德州仪器公司的DSP产品,DSP器件的应用对象可以分为三类工业控制领域 低成本嵌入式应用系统 需要用复杂算法对大量数据进行处理的应用 德州仪器公司的三代 DSP产品TMS320C1xTMS320C2x、3x、4x TMS320C5x,德州仪器公司的DSP产品,德州仪器公司的现在 DSP产品C24x系列和C28x系列主要用于电机控制领域 C62x系列和C64x系列采用了增强型超长指令字结构,改进了流水线结构,支持32位或64位宽度存储器访问,最高处理能力已经达到9600MIPS C67x系列和C33 浮点数字信号处理器系列 C54x系列和C55x系列 低功耗16位定点数字信号处理器,DSP芯片的选型,运算速度指令周期、MIPS、MOPS、MFLOPS、BOPS、MAC时间、FFT执行时间 算法格式和数据宽度浮点DSP的数据宽度一般为32位定点DSP的数据宽度可以为16位、20位、24位或32位 存储器Flash存储器、RAM存储器 功耗 低工作电压、“休眠”或“空闲”模式、可编程时钟分频器、外围控制 开发工具,DSP的开发环境,基于DSP处理器的开发流程,DSP总体设计,根据需求写出任务说明书,根据任务书确定技术指标,DSP芯片及外围芯片,总体设计确定软硬件分工,软件设计说明书,硬件设计说明书,软件编程与调试,硬件(.sch/.pcb),系统集成,硬件调试,系统测试、样机完成、中试、产品测试与生产,DSP软件设计,硬件系统设计,确定硬件方案,器件选型,原理图设计,PCB图设计,硬件调试,系统分析,系统综合,三、DSP与MCU比较,DSP与MCU硬件结构比较,DSP作为一种微处理器,其设计的出发点和通用CPU以及MCU等处理器是不同的。DSP是为完成实时数字信号处理任务而设计的,算法的高效实现是DSP器件的设计核心。DSP在体系结构设计方面的很多考虑都可以追溯到算法自身的特点。哈佛结构,多总线:片内多条数据、地址和控制总线。两者在不断融合,取其优势差异越来越不是那么明显。,冯诺依曼结构 哈佛结构 多数CPU采用 几乎所有DSP 单片机哈佛结构:但共用一套AB和DB,由控制信号CS、DS区分,冯诺依曼结构与哈佛结构,多总线结构,数据、地址和控制总线是微处理器访问各种部件的基础,我们称之为3总线。MCU无论片内还是片外均为三总线结构,而DSP片内为多总线结构(多条数据、地址和控制总线)片外为三总线结构,有的DSP甚至片外也有多条总线。,多总线结构:片内多条数据、地址和控制总线。,流水线操作,处理器完成一条指令,一般要有:取指、译码、读操作数和执行等4个步骤。MCU顺序执行上述4个步骤,所以一个指令周期要由多个机器周期组成。而DSP并行执行上述4个步骤,所以指令周期等于机器周期。也就是说,上述4步DSP以流水线方式运行,提高了CPU执行速度。流水线有一个建立的过程,只有在完整的流水线时,才会发挥DSP最高效率,所以在程序中应尽量避免破坏流水线。,流水线操作(以4级流水线为例),100,指令周期,101,102,103,104,105,106,顺序执行 ADD SUB,C2的CPU运行于4级流水线方式,CPUCLK 取指令 N N+1 N+2 N+3 译码 N-1 N N+1 N+2取操作数 N-2 N-1 N N+1执行 N-3 N-2 N-1 N图 四级流水线,DSP与MCU软件开发比较,模块化:按功能模块编程工程化:软硬人员分离,MCU:ORG xxxx,绝对定位优点:简单、容易上手 缺点:模块化编程差 工程化不支持,DSP:Section:相对定位缺点:灵活、上手较难优点:模块编程好 工程化编程支持,DSP软件开发,Section(“段”)概念:一块连续的储存空间,可存放程序或数据在编程时,“段”没有绝对定位,每个“段”都认为是从0地址开始的一块连续的储存空间,而无需关心这些“段”究竟定位在系统的哪些地方。优点:便于程序的模块化编程;便于工程化管理:可将软件开发人员和硬件开发人员基本上分离开。重定位:由于所有的“段”都是从0地址开始,所以程序编译完成后是无法运行的,要让程序正确运行,必须对“段”进行重新定位,这个工作由链接器完成。.cmd文件:MEMORY命令描述系统硬件资源,SECTIONS命令描述软件人员程序中用到的“段”如何定位到恰当的硬件资源上。,DSP与MCU开发工具比较,MCU:代替方式(仿真头替代MCU)硬件时序为仿真器硬件时序,与目标系统时序有一定差异 或多或少占用目标硬件资源仿真头制作较难仿真电缆较短,使用不便不同MCU,工具不同,用户投资加重,DSP:接口方式(JTAG)硬件时序即为目标系统时序不占目标系统硬件资源仿真头制作方便仿真电缆较长,使用方便不同的DSP,仿真接口标准JTAG,工具相同,用户投资有保障,DSP与MCU开发工具比较,MCU:代替方式(仿真头替代MCU)硬件时序为仿真器硬件时序,与目标系统时序有一定差异 或多或少占用目标硬件资源仿真头制作较难仿真电缆较短,使用不便不同MCU,工具不同,用户投资加重,DSP:接口方式(JTAG)硬件时序即为目标系统时序不占目标系统硬件资源仿真头制作方便仿真电缆较长,使用方便不同的DSP,仿真接口标准JTAG,工具相同,用户投资有保障,