处理器史话 | DSP独霸一方,靠得就是这些强大的算法
浮点DSP芯片 | 浮点算法是一种较复杂的常规算法,利用浮点数据可以实现大的数据动态范围(这个动态范围可以用最大和最小数的比值来表示)。 | TI:TMS320C3X/C4X/C8X AD:ADSP21XXX系列 Motolora:MC96002 AT&T公司的DSP32/32C |
通用型 | 通用型DSP芯片适合普通的DSP应用 | TI公司的一系列DSP芯片 |
专用型 | 为特定的DSP运算而设计的,更适合特殊的运算 |
|
上表为各类DSP的基本描述,关于DSP的类型,补充如下内容:
关于浮点DSP。
浮点DSP在应用中,设计工程师不用关心动态范围和精度一类的问题。浮点DSP比定点DSP更容易编程,但是成本和功耗高。由于成本和功耗的原因,一般批量产品选用定点DSP。编程和算法设计人员通过分析或仿真来确定所需要的动态范围和精度。如果要求易于开发,而且动态范围很宽、精度很高,可以考虑采用浮点DSP。
也可以在采用定点DSP的条件下由软件实现浮点计算,但是这样的软件程序会占用大量处理器时间,因而很少使用。有效的办法是"块浮点",利用该方法将具有相同指数,而尾数不同的一组数据作为数据块进行处理。"块浮点"处理通常用软件来实现。
不同浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,如TMS320C3X,而有的DSP芯片则采用IEEE的标准浮点格式,如Motorola公司的MC96002、FUJITSU公司的MB86232和ZORAN公司的ZR35325等。
专用DSP芯片是为特定的DSP运算而设计的,更适合特殊的运算。
专用DSP芯片特点
| 说明 |
优点 | 大规模集成性 稳定性好,精度高 可编程性 高速性能 可嵌入性 接口和集成方便 |
缺点 | 成本较高 高频时钟的高频干扰 功率消耗较大等 |
应用 | 信号处理 图像处理 仪器 声音语言 控制 军事 通讯 医疗 家用电器 |
DSP其它结构
增强型DSP
以前,DSP处理器使用复杂的、混合的指令集,使编程者可以把多个操作编码在一条指令中。传统上DSP处理器在一条指令周期只发射并执行一条指令。这种单流、复杂指令的方法使得DSP处理器获得很强大的性能而无需大量的内存。在保持DSP结构和上述指令集不变的情况下,要提高每个指令的工作量,其中的一个办法是用额外的执行单元和增加数据通路。例如,一些高端的DSP有两个乘法器,而不是一个。
把使用这种方法的DSP称作增强型DSP,因为它们的结构与前一代的DSP相似,但性能在增加执行单元后大大增强了。当然,指令集必须也同时增强,这样编程者才能在一条指令中指定更多的并行操作,以利用额外的硬件。
增强型DSPs的优点是兼容性好,而且与较早的DSP具有相似的成本和功耗。缺点是结构复杂、指令复杂,进一步发展有限。典型的产品如:朗讯公司的DSP16000,ADI的ADSP2116x
VLIW(Very Long Instruction Word,超长指令字)结构
如前所述,传统上的DSP处理器使用复杂的混合指令,并在一条指令循环中只流出和执行一条指令。然而,最近有些DSP采用一种更RISC化的指令集,并且在一条指令周期执行多条指令,使用大的统一的寄存器堆。例如:Siemems的Carmel、Philips的TriMedia和TI的TMS320C62XX处理器族都使用了VLIW结构。
VLIW结构一种非常长的指令组合,它把许多条指令连在一起,增加了运算的速度。例如:C62xx处理器每次取一个256位的指令包,把包解析为8个32位的指令,然后把它们引到其8个独立的执行单元。在最好的情况下,C62xx同时执行8个指令,在这种情况下达到了极高的MIPS率(如1600MIPS)。
VLIW结构的优点是高性能、结构规整。缺点是高功耗、代码膨胀-需要宽的程序存储器、新的编程/编译困难。
超标量体系结构(Superscalar Architectures)
如VLIW处理器一样,超标量体系结构并行地流出和执行多个指令。但跟VLIW处理器不同的是,超标量体系结构不清楚指定需要并行处理的指令,而是使用动态指令规划,根据处理器可用的资源,数据依赖性和其他的因素来决定哪些指令要被同时执行。超标量体系结构已经长期用于高性能的通用处理器中,如Pentium和PowerPC。
- 第一款处理器之谜(01-29)
- 处理器的春秋战国时代:8位处理器的恩怨与纷争(上)(02-18)
- 处理器的春秋战国时代:8位处理器的恩怨与纷争(下)(02-25)
- 处理器的三国时代:苹果搅动MCU江湖(03-01)
- 处理器的三国时代:DR公司盛气凌人,IBM转身成就微软(03-06)
- 32位处理器的攻“芯”计:英特尔如何称霸PC江湖?(03-15)