定点数字信号处理器(DSP)技术与应用.ppt_第1页
定点数字信号处理器(DSP)技术与应用.ppt_第2页
定点数字信号处理器(DSP)技术与应用.ppt_第3页
定点数字信号处理器(DSP)技术与应用.ppt_第4页
定点数字信号处理器(DSP)技术与应用.ppt_第5页
免费预览已结束,剩余30页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

定点数字信号处理器(dsp) 技术与应用,by zhang li,2,课程的主要内容和目的,本课程主要介绍 analog device公司adsp-blackfin系列16位定点dsp的体系结构和软/硬件开发环境,通过几个典型的实验使大家初步掌握dsp系统的硬件构成、 软件开发以及系统的综合调试方法。 课程的重要性: 直接面向应用 it工程师三大实用技能 * pcb设计 * dsp应用 * fpga应用,3,第一部分:数字信号处理器(dsp)概述,数字信号处理的特点,特别强调运算处理的实时性(real-time capability),模拟/数字转换 a/d converter,数字信号 处理运算,数字/模拟转换,d/a converter,待处理 的信号,处理后 的信号,数字信号处理及数字信号处理器(dsp) digital signal processor,4,数字信号处理器(dsp)结构特点, dsp面向高性能、重复性、数值运算密集型的实时处理,它具有适合数字信号处理算法的指令、适合数字信号处理数据结构的存储器结构和寻址机构、并行处理能力和嵌入式性能等。其体系结构一般具有以下特点: 采用分离程序总线与数据总线的哈佛结构(cpu:普林斯顿结构),有着较高的指令执行速度,但结构复杂需要两套地址产生电路。 采用流水线技术,使取指、译码、取操作数、执指等步骤并行完成,提高了指令的执行速度。 除了算数逻辑单元(alu)外,具有独立的乘加器(mac),使其能够在一个周期内完成相乘和累加两个操作,加快了各种典型处理算法的处理速度。 具有适用于典型处理算法的特殊存储器寻址方式,如循环寻址、位反序寻址等。 针对实时处理的专用的数据接口(sram、dma、sport,etc.),使数据的存取速度得以提高。 专门的指令流控制逻辑,如无附加开销的循环转移指令。 集成度高,能够实现单片、低功耗的处理系统。,5,数字信号处理器(dsp)的应用领域,通用数字信号处理(数字滤波、卷积、相关、变换等) 通信(高效数字调制/解调、编/解码器、自适应均衡、ip处理、软件无线电等) 语音处理(语音识别/合成/压缩/解压缩等) 图形/图象处理(图象变换、模式识别、图象压缩/解压缩等) 自动控制(高精度、高速度伺服控制) 军事/航空/航天(雷达/声呐信号处理、雷达成像、制导/火控系统、导航/定位系统、战场c3i系统等) 消费电子(数字高清晰度电视(hdtv)、cd/vcd/dvd编解码器、多媒体信息处理、汽车电子等),6,dsp的典型应用民用领域,7,dsp的典型应用民用领域,8,dsp的典型应用军事应用,9,dsp的典型应用军事应用,10,坦克火控系统,dsp的典型应用军事应用,11,dsp的典型应用军事应用,12,dsp的典型应用军事应用,飞机火控系统,13,dsp的典型应用军事应用,14,dsp的典型应用军事应用,各类导弹弹载数字信号处理机,15,dsp的典型应用军事应用,16, 主要分为通用dsp和专用dsp两大类 通用dsp:其所要实现的处理算法由软件程序控制实现。应 用灵活性大,通过更改软件程序能够实现不同的 处理算法。 产品是各种类型的可编程dsp芯片,应用较广泛 的是: ti公司的tms320系列 ad公司的adsp21xx系列 专用dsp:针对某种具体应用而设计,所要实现的处理算法 由硬件直接实现。运算处理速度极高,但完成的 算法单一、精度和动态范围有限,需要与外围电 路配合才能构成系统,功耗也较大,因此应用范 围较窄, 主要应用于仪器/ 仪表以及军事等需要 极高处理处理能力的领域。 主要产品:fft专用dsp、卷积/相关器、复乘加 器等。 * 用asic/fpga实现的dsp,dsp的分类,17,dsp的分类,横向滤波器 fft 复乘/累加器 求模/相角,嵌入式dsp 定点 dsp 32bit浮点dsp 32bit浮点并行dsp 超高性能dsp,16bit 定点dsp 24bit 定点dsp,通用dsp,18,数字信号处理器(dsp)的开发与调试, dsp系统的设计分为硬件/软件两个部分。两者可以在各自的开发平台上分别进行前期设计与调试,然后进行系统的联调。 硬件设计 dsp选型/系统结构确立 性能/功耗分析 开发周期/成本分析 电路设计/调试 调试工具: dsp在线硬件仿真器(emulator)、dsp开发/评估板(evaluation board)、 示波器、逻辑分析仪。 软件设计 算法确定/程序流程图 软件编制(汇编/c语言) 汇编/编译/链接 软件模拟 调试工具: 汇编/编译/链接程序,软件模拟/调试器(simulator/debugger) 系统联调对整个系统的软/硬件进行的综合调试。 调试工具:硬件仿真器、dsp开发/调试集成环境(ide/idde)、dsp os,etc.,19,dsp系统的开发流程图系统级设计,系统功能要求,系统性能及算法模拟,处理速度、开发周期、 体积、成本,功耗、 供货、升级,器件选型: dsp型号、存储器、i/o、 fpga、a/d、d/a,系统设计框图,硬件设计,软件设计,20,dsp系统的开发流程图电路/软件设计,电路原理图设计,生成电路网表,设计印制电路板,印制板制造,器件安装,软件流程图绘制,高级语言程序设计,汇编语言程序设计,汇编算法库,实时运行库,编译,汇编,链接,软件模拟,修正,硬件调试,软/硬件系统联调,示波器 逻辑分析仪,21,dsp系统的开发流程图系统联调,系统在线仿真,硬件电路,软件程序,pc机仿真,仿真结果?,有误错,修正,固化程序,嵌入系统设备进行联调,连接外部设备,综合测试,满足系统要求?,否,修正,否,修正,成品制造,示波器 逻辑分析仪,22,adsp-blackfin在线仿真器,23,adsp-bf533开发/评估板,24,dsp及其开发的新趋势,片上系统soc(system-on-chip) 随着vlsi技术的发展,针对一定的应用领域,可以使整个系统以dsp为核心进行设计,并将应用中所涉及的诸如 ram、i/o、a/d、d/a等附加电路单元全部集成在一片ic芯片中,并且包括处理单元在内的各功能块都具有可重定义特性(re-configurable). 这样一来,系统以后的功能扩展与升级将非常简单,只需要重新编写软件程序即可。同时系统的功耗会大大的降低, 可靠性会大大的提高。而这对便携/移动应用非常重要。 模块化设计 dsp及支持芯片/软件生产厂商,均依据一定的标准,设计生产电路板级dsp处理模块, 同时为这种模块提供丰富的符合标准的软件开发系统和算法资源库。 这样做的好处是降低了硬件设计难度、 减少了硬件设计时间, 更重要的是模块化设计得到了丰富的软件支持,大大提高了设计效率。,25,二进制代数复习,dsp中的二进制数表示方法,adsp系列定点数dsp使用2的补码进行操作。若要有效地对该系列dsp进行编程,了解以下概念及定义是非常重要的。 1) 有符号 / 无符号数格式 2) 小数 / 整数格式 3) 小数的范围 4) 16进制到2进制的转换 5) 2进制到16进制的转换,26,2进制(binary )- (16进制)hexadecimal 10进制(decimal )数据转换表,decimal,0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15,hexadecimal,0 1 2 3 4 5 6 7 8 9 a b c d e f,binary,0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111,27,有符号数与无符号数,无符号数,有符号数,0x0000 0v (最小负值),0xffff 5v (最大正值),0x8000 -5v (最小负值),0x0000 0v,0x7fff 5v (最大正值),s/u,u u u u u u u u u u u u u u u,0,15,2进制表示,实际物理量,28,有符号数(原码)与2的补码,有符号数(原码)的最高位(msb)为符号位。 1表示负数 0表示正数 * 有符号数(原码)“0”有两种表示方法(+/-0)。 * 有符号数(原码)的运算比较复杂,类似于正负数的笔算 ,先要比较两个数绝对值的大小,然后确定如何计算,最 后在确定符号位。 2的补码xcmp = 2n + x (n-字长位数) * 性质:正数的补码与其原码相同。负数的补码仍是负数,它是 将其原码的符号位保持不变而将其数值部分求补得到。 “0”在补码中的表示是唯一的。 * 补码的求法:一个负数的补码等于其原码除符号位保持不变外 ,其余各位按位求反,再在最低位加1。 * 补码的运算:符号位与数值位一样参加运算(若符号位有进位 则丢弃)。 * 溢出的判别:“双高位判别法” cs:最高位(符号位)的进位情况。 若有进位,cs = 1; cp:数值部分的最高位的进位情况。若有进位,cp = 1; overflow = cs xor cp,29,2的补码表示方法,对于2的补码表示法, 一个数符号位的位权值是-(2)(m-1),m是2进制小数点左边的位数。对于一个 4.2 型式的数字, 符号位的位权值是 -(23).,例子:,0101.01 = 0 * (-8) + 1 * (4) + 0 * (2) + 1 * (1) + 0 * (1/2) + 1 * (1/4) = 5.25 1101.01 = 1 * (-8) + 1 * (4) + 0 * (2) + 1 * (1) + 0 * (1/2) + 1 * (1/4) = - 2.75,2进制小数点,符号位,30,小数与整数表示法, 1.15型式的小数格式,s f f f f f f f f f f f f f f f,s i i i i i i i i i i i i i i i,小数点,小数点, 16.0型式的整数格式,31,dsp是针对小数表示型式 进行优化设计的 dsp也支持整数表示型式,32,16位二进制数的表示范围,33,不同数制表示实例,+5 v,-5 v,0 v,0x7fff,0x0000,0x8000,1,2,3,4,5,格式,0x7fff,0x3fff,0x0000,0xcccd,0x8000,1),2),3),4),5),16.0,1.15,34,有两种将16进制数转换为10进制数的方法,一种简单,一种较复杂. 复杂的方法 : 先将16进制数转换成2进制数. 确定小数点的位置. 将每一位的2进制位数值乘以其相应的位权值。 例子: 将 0x2a00( 以1.15 、2的补码格式表示)转换10进制数值 0x2a00 = 0.010 1010 0000 0000 = 2-2 + 2-4 + 2-6 = 0.25 + 0.0625 + 0.015625 = 0.328125 = 0.33 = 1/3 简单的方法 : 先将16进制数直接转换成10进制数(整数整数)。再用转换后的10进制数除以2n,n是2进制小数点右边的位数。 例子: 将 0x2a00( 以1.15 、2的补码格式表示)转换10进制数值 0x2a00 10752 / 215 = 10752 / 32768 = 0.328125,16进制(1.15 格式)到10进制转换,35,有两种将10进制数转换为16进制数的方法,一种简单,一种较复杂. 复杂的方法: 将10进制数用其2n 的型式表示出来。 例子: 将0.8125转换成以1.15、 2的补码表示的16进制数值 简单的方法:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论