[第2章DSP处理器的发展及典型芯片介绍.pptVIP

[第2章DSP处理器的发展及典型芯片介绍.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[第2章DSP处理器的发展及典型芯片介绍

DSP技术的发展与应用 邓贤君 南华大学通信工程系 第二章 DSP处理器的发展及典型芯片介绍 2.1DSP处理器实现高速运算的途径 2.2当前DSP处理器结构的发展趋势 2.3新近推出的DSP核和DSP处理器 2.4系统的芯片集成(SoC) 2.1 DSP处理器实现高速运算的途径 2.1.1硬件乘法器及乘加单元 2.1.2多个并行单元 2.1.3高效的存储器访问 2.1.4数据格式 2.1.5零开销循环 2.1.6数据流的线性I/O 2.1.7专门的指令集 2.1.1硬件乘法器及乘加单元 乘法和乘积的累加是数字信号处理中最常见的运算之一,在卷积、向量、矩阵运算、IIR滤波器、FIR滤波器、傅里叶变换等用得很多。 通用微处理器做乘法的原理:用一系列移位和加法运算来实现。因此,每一步需要一到几个时钟周期。 现代DSP处理器中都具有至少一个专门的硬件乘法器或者组合的乘加单元(MAC),这样可以使DSP算法更快实现。 2.1.2 多个执行单元 2.1.3 高效的存储器访问 1、在一个时钟周期内执行一个MAC,要求一个单周期的MAC单元,也要求在一个周期内从存储器提取MAC指令、数据样本和滤波器系数,因此,要求较高的存储器带宽。 2、DSP处理器采用了程序空间和数据空间分开的哈佛结构,多总线结构,提高了存储器的带宽。 3、高存储器带宽需要专门的硬件来支持存储器地址计算,于是DSP中设计了DAG(地址产生单元),它的优点在于支持专门的地址模式,使处理器可以高效的访问数据。 2.1.4 数据格式 1、DSP处理器可以分为定点和浮点两种类型。大多数处理器采用定点数据格式。由于同样的处理速度下,定点DSP比较便宜,功耗更小,而浮点DSP的格式要求比较复杂的硬件才能实现。 2、定点格式:二进制的小数点位于数据字里的固 定位置; 浮点格式:数字用指数和尾数来表示,它能表示的值的范围比定点格式要宽得多,从而避免了溢出问题。 3、定点DSP的数字宽度:16bit、20bit、24bit、32bit; 4、为了保证使用定点数据时的信号质量,DSP处理器都有专门的硬件,以保证一系列运算后的数据精度。 2.1.5 零开销循环 零开销循环:DSP往往提供专门的循环指令,在无须花费任何时钟周期的情况下,实现FOR-NEXT循环。 由于DSP的算法往往需要将大量的处理时间花费在反复执行软件中的一小部分,例如循环,因此大多数DSP都要对高效的循环提供专门的支持。 2.1.6 数据流的线性I/O 为了达到高性能低成本的输入和输出,多数DSP都有一个或多个专门的串口或并口,并采用线性的处理机制,使得数据的传输不影响或者尽可能少地影响处理器计算单元的工作。 2.1.7 专门的指令集 DSP处理器的指令集的设计要达到两个目标: (1)最大限度地使用处理器的基本硬件,以提高效率:传统的DSP处理器的指令集都允许在单个指令里并行完成若干个操作; (2)将程序所使用的存储空间减到最小,因为DSP应用对成本非常敏感,而存储器的成本对处理器的成本和系统的成本影响很大:要求指令要短、使用最少的存储单元、尽可能使用寄存器来完成操作、将多个操作合并在一条指令中。 2.1.7 专门的指令集(续) DSP程序不能单纯的只用高级语言来实现,因为: (1):以C语言为代表的高级语言不适合来描述DSP算法 (2):传统DSP结构(如多个存储器空间、多组总线、不规则的指令集、高度专门化的硬件),使得高级语言编译效率的提高变得非常困难。 因此,在实际的应用中,为了得到高效的代码,往往需要使用汇编程序对最关键的部分进行优化。 2.2 当前DSP处理器结构的发展趋势 2.2.1 传统的DSP处理器 2.2.2 强化的传统结构DSP处理器 2.2.3 并行结构 2.2.4 单指令多数据(SIMD) 2.2.5 其他形式的DSP处理器 2.2.1 传统的DSP处理器 传统的DSP处理器的结构特点: 1、低成本的DSP:包含一个乘法器或MAC,一个ALU和若干个其他的执行单元,每个时钟周期执行一条指令,使用复杂的、多操作类型的指令。ADSP-21XX,TMS320C2000,DSP56000系列等。 2、中等的DSP:提高了时钟速率,使用了更先进的结构,增加了一些硬件,如桶形移位器、指令高速缓存,采用更深的流水线。 2.2.2 强化的传统结构DSP处理器 这类处理器在传统的DSP处理器的结构基础上,增加了一些并行执行单元,可以在每个时钟周期内做更多的操作。 2.2.3 并行结构 传统DSP与强化DSP面临的问题:用汇编语言编程困难,编译器生成的目标代码效率不高。 针对以上问题,有些新的DSP采用了并行结构:采用非常简单

文档评论(0)

1789811832 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档