数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现

上传人:E**** 文档编号:89502951 上传时间:2019-05-26 格式:PPT 页数:31 大小:275.50KB
返回 下载 相关 举报
数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现_第1页
第1页 / 共31页
数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现_第2页
第2页 / 共31页
数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现_第3页
第3页 / 共31页
数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现_第4页
第4页 / 共31页
数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现》由会员分享,可在线阅读,更多相关《数字信号处理 教学课件 ppt 作者 杨毅明 2013版 第10章 数字信号处理的实现(31页珍藏版)》请在金锄头文库上搜索。

1、数字信号处理的理论饱含丰富的科学方法和智慧,但是,不管怎样,人们更多的还是重视实际应用。这一章将介绍实现数字信号处理的方法,同时还配有三个数字信号处理的应用实例。 10.1 实现数字信号处理的方法 (1)通用计算机的方法 这种方法是在通用计算机上编写程序,然后对已有的数字信号进行处理。通用计算机实现数字信号处理的优点是精度高、操作方便,缺点是不能实时地处理信号。,第10章 数字信号处理的实现,(2)专用集成电路的方法 这种方法是按实际需要的数字信号处理算法制作专用的集成电路。该集成电路叫做专用DSP芯片。这种芯片的优点是不用再写程序、处理信号的速度很快、容易应用,缺点是不易改变处理信号的方式、

2、芯片的应用范围有限。 (3)通用集成电路的方法 这种方法是根据数字信号处理的运算特点和快速计算的要求制作可编程集成电路,将处理器、存储器、转换电路等常用部件集成在一个芯片上,形成一个微型的计算机。可编程DSP芯片的特点是处理器的工作可以通过编写程序进行控制,人们可以根据需要方便地设计处理器的信号处理功能。,10.2 数字信号处理器的速度 绝大部分的数字信号处理都要求实时处理,也就是快速计算数字信号、确保数字信号的输出跟上数字信号的输入。 利用数字信号处理器要求及时输出和计算方式简单的特点,科学家和工程师们制作出精巧便宜的数字信号处理器芯片。 10.2.1 处理器的结构 数字信号处理的计算主要由

3、乘法、加法、延时等三种方式组成,计算速度快是对数字信号处理器的基本要求。,为了提高计算机的速度,数字信号处理器采用哈佛结构,它有两个可以同时访问的存储器, 程序存储器和数据存储器通过各自的总线与计算器进行交流,这样就减少了计算器等待操作数的时间,极大地提高了计算机的运算速度。,图10.2,事实上,哈佛结构还不能完全满足数字信号处理的实时要求;例如,乘法操作要求从存储器获取两个操作数,一个是代表系统性能的参数,另一个是代表信号的样本。由此可见,哈佛结构的程序和数据拥有自己独立的存储器,也不能在获取程序指令的同时获取两个操作数。 两个存储器能否解决同时取指令和两个操作数的问题呢? 设计单个时钟周期

4、能够访问多次的存储器,这样就能够在单个时钟周期内完成从存储器读取指令、数据和保存计算结果的任务;目前的DSP芯片集成了在单个时钟周期内实现两次访问的存储器。,10.2.2 处理器的流水线机制 为了加快数字信号处理的速度,DSP芯片借鉴了大规模生产的流水线原理,将完成每条指令的过程分解为多个环节,每个环节的事务由特制的电路模块负责完成,这些模块之间能互相配合并同时工作。这么做能减少完成一条指令的时间。 (1)采用冯诺伊曼结构的数字信号处理器,,图10.4,它的程序和数据共享一个存储器和一套总线,所以,执行一条指令需要使用两次总线,共花费处理器的两个时钟周期。执行四条指令共花费8个周期。 (2)采

5、用哈佛结构的数字信号处理器,,图10.5,假设这种处理器按照流水线的原理设置两个相对独立的模块:一个是取指令模块,它负责取指令环节的任务;另一个是执行指令模块,它负责执行指令环节的任务,如图10.5所示,两个模块能够同时开展工作。 刚开始的第1个时钟周期,取指令模块从程序存储器中读出第一条指令并翻译该指令的含义,这时执行指令模块处于等待状态。 进入第2个时钟周期以后,流水线上的两个模块就同时开展工作;处理器在这种状态下,每个时钟周期能够完成一条指令。如此一来,执行四条指令花费的时间将是5个系统时钟周期。,10.2.3 乘法加法器 在DSP的流水线上,各单元运行的次序统一按时钟进行;这样一来,时

6、钟的周期只得按消耗时间最长的单元进行设计。 从数字信号处理的特点来看,乘法加法是最常用的计算,也是计算器经常执行的指令。乘法在普通计算机中是一个耗时的运算,需要多个时钟周期才能完成。 大部分数字信号处理的算法都需要一系列乘法和加法运算。实现乘积相加的方法是在乘法器的输出端添加一个加法器(它包括减法的功能),并附加一个寄存器,用来寄放临时结果。这个寄存器叫做累加器,如图10.7所示,,完成乘法和加法运算的单元称为乘法加法器,简称乘加器。这种乘加器是DSP中的一个电路单元,它只要一个时钟周期就能完成一次乘加运算。,图10.7,10.3 数字信号处理器的数字表示 前面章节介绍的数字信号和数字系统的数

7、值,不管它们是序列的还是频谱的数值,我们都认为它们是与实际情况相符合的数字。 在实现数字信号处理时,情况就不是这样了。数字信号、数字系统以及它们的算法都是依赖有限字长的数字硬件完成的。 10.3.1 定点数 定点数的二进制数小数点位置被认为是固定的,它用固定的位数来表示整数和小数。定点数分为无符号格式和有符号格式。无符号格式的所有比特都用来表示数的大小。有符号格式的最左边的比特用来表示数字的正负符号。,二进制的负数有三种表示方法:原码、反码和补码。补码可以用反码加1得到。补码的计算在数字电 路中比较容易实现。所以,大部分DSP系统都采用补码来表示十进制数。,表10.1,一个N比特的定点二进制数

8、(bN-1bN-2bN-3.b2b1b0)可以解释为整数或者小数。如何解释要根据设计的需要而定。如果解释为带符号的整数,则二进制数的各个比特代表的权如图10.9所示, 与该二进制整数对应的十进制整数是,图10.9,(10.2),同理,如果将定点二进制数解释为带符号的小数,则它对应的十进制小数是 整数格式和小数格式在数字信号处理的应用中各有所长。整数一般用在控制循环的次数、存储器的地址等方面。小数则用在信号处理的计算方面,因为小数的小数点位置在运算中容易确定;特别是乘法运算,小数乘法的乘积可以舍去后面的比特而不会带来太大的误差,而整数乘法的乘积舍去前面或舍去后面的比特都将带来巨大误差。,(10.

9、3),例题10.2 假设二进制补码x=(1000100010001001)2,请解释它作为整数和小数时所对应的十进制数。 解 (1)补码作为整数 从x值左端的比特1判断,这个补码是负整数。根据公式(10.2)计算,补码x对应的十进制整数 (2)补码作为小数 补码代表小数时,小数点默认在符号比特的右侧。这个补码x对应的十进制小数,(10.4),定点二进制数x本身是没有小数点的,当我们认为它是整数时,它等于-30583,认为它是小数时则等于-0.93331909。 在DSP的实现中,不管定点二进制数采用什么格式,它们都被DSP芯片当作整数对待,处理的方法都一样。这个特点要求设计人员在编程或实验中,

10、自己判断和跟踪小数点的位置。,(10.5),10.4 信号处理的误差 实际DSP系统的存储器、累加器和寄存器等硬件的数字长度都是有限的。 我们理论上设计的数字信号处理系统或算法最终都是在有限字长的机器中执行。这种机器的计算随时都可能产生误差,不过数字信号处理的误差还是远比模拟信号处理的误差小。数字信号处理的误差主要来自三个方面:信号的模数转化、信号的数字运算和信号的数模转化。 10.4.1 模数转换的误差 模数转换时的量化是用有限位数的数码表示真实数字、电压或信号的过程。 量化往往会产生误差。例如用3比特长的数码表示无符号小数:当真实数字是0.5时,我们可以用定点小数(100)2准确地表示0.

11、5这个真实数字;,当真实数字是0.2时,定点小数(010)2=(0.25)10和(001)2=(0.125)10,它们都不能准确地表示0.2这个真实数字。 减少模数转换误差的主要办法是增加量化数字的长度。民用DSP芯片的数字长度一般是16比特。如果模数转换器按照这种字长对在-11伏变化的电压进行量化,采用截断法产生的最大绝对误差等于信号量化的步长=2-15伏;采用舍入法产生的最大绝对误差=2-16伏,它的相对误差是2-16/10.000015。对于模拟电路来说,信号的相对误差能达到0.001就很不错了,但它还是不如16比特的数字信号精确。,10.4.2 数字运算的误差 数字信号处理的贯彻执行主

12、要由乘法和加法运算组成,在执行这些运算的过程中,各方面的数字化都会产生误差。 (1)系数的量化 表示系统的参数是用有限比特的数字表示,这种数字量化带来的误差和模数转换带来的误差是相似的。参数量化后,有可能引起系统的零点和极点的位置变化,导致系统的频谱性能改变。 所以,在实现数字滤波器时,理论设计得到的滤波器需要检验,这种检验使用的字长必须与实际芯片使用的字长相同。,(2)乘法 定点DSP都是把二进制数当作整数,按照整数的方式进行运算。 当两个N比特长的定点数相乘时,它们的乘积将变成2N比特长的数字。例如两个N=3比特长的二进制数相乘,让我们考虑极端的情况x=111和y=111, 当乘积的长度增

13、长到电路不能容忍时,有些比特将被自动删除,删除将造成计算的失真。,图10.12,对付乘积长度增加的情况,硬件工程师设计了专门寄放乘积的累加器,它的长度比乘数的字长多出一倍。图10.13是长度N=16的两个数字相乘的乘法器结构,,图10.13,其中的加法器是为了应对乘法和加法的频繁出现而设计的。比如计算有限脉冲响应滤波器的输出,这时的 它的信号样本x(n)和系统参数br都是16比特的数字,输出y(n)也是16比特;在没有得到输出结果y(n)之前,每次乘积brx(n-r)应该维持在32比特长度,以保证精确度。 为了防止加法计算在没有得到输出信号之前发生溢出,也就是超出32比特的范围,许多DSP的生

14、产厂家都将累加器的字长由32比特增加到40比特,加法器的长度也相应地增加到40比特。,(10.11),(3)加法 加法运算也有可能使数字越来越大、越来越长。当计算结果超过累加器所能表示的数值范围时,其结果就不是正确的数值,这种现象叫做溢出。溢出会引起严重的数字错误。 例如,对于4位补码的(1000)2+(1111)2=(0111)2运算:如果把它们当作整数,则它们代表十进制的(-8)+(-1)=-9,超出4位补码表示的范围-87,计算结果(0111)2=(7)10是错误的。 为了防止加法计算在没有得到输出信号之前发生溢出,可增加累加器的字长,加法器的长度也相应地增加。,(4)输出结果的量化 如

15、果处理后得到的结果需要还原为模拟信号,或者需要留作下次的延时数据,累加器中的数字就要设法缩短;这样一来,不管是采用截断还是舍入的手段进行缩短,都会带来误差。 10.4.3 数模转换的误差 有些应用场合,经过DSP处理的数码不需要恢复为原来的模样。比如探地雷达,它的DSP通过相关对比,算出地下目标反射的电磁波的时间和强度,这些数据只要在显示器上展现目标的深度和体形就可以了。 有的应用场合,经DSP处理的数码必须转换为时间连续、幅度也连续的模拟信号,以便人们能够收听和观看。,有的时候为了节省成本,数模转换器的字长可以比DSP芯片的字长短,虽然这样会产生误差,不过信号能满足应用的要求就可以了。比如工业控制的数据采集系统,它对速度和精度的要求不高,从传感器直接采样的数字信号经过数字滤波后,一般采用8比特的数模转换芯片输出;如果该采集系统的DSP芯片的字长是16比特的话,那么,这种数模转换的误差是比较大的。不过还是以实践为准吧,效果是很重要的。 值得一提的是:数字信号处理的误差还是远比模拟信号处理的误差小。,10.5 数字信号处理的应用实例 DSP芯片是为了诸多美好愿望而设计的集成电路,它能够提高设备的智能、减少设备的体积和能耗、降低设备的成本等等。 10.5.1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号