|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
概述
% u0 B! U7 O( R! _# r9 q) W9 b最近两年,DSP处理器的更高性能由于不能从 传统结构中得到解决,因此提出了各种提高性能的策略。其中提高 时钟频率似乎是有限的,最好的方法是提高 并行性。提高操作 并行性,可以由两个途径实现:提高每条指令执行的操作的数量,或者是提高每个 指令周期中执行的指令的数量。这两种并行要求产生了多种DSPs新结构。
& ?: m* s: R3 |/ }" `增强型 DSP+ j8 R; l3 S) Z' Y
以前,DSP处理器使用复杂的、混合的指令集,使 编程者可以把多个操作编码在一条指令中。传统上DSP处理器在一条 指令周期只发射并执行一条指令。这种单流、复杂指令的方法使得DSP处理器获得很强大的性能而无需大量的内存。) F' }, S4 D" W
在保持DSP结构和上述 指令集不变的情况下,要提高每个指令的工作量,其中的一个办法是用额外的执行单元和增加 数据通路。例如,一些高端的DSP有两个乘法器,而不是一个。我们把使用这种方法的DSP叫做撛銮啃统9妫模樱袛,因为它们的结构与前一代的DSP相似,但性能在增加执行单元后大大 增强了。当然, 指令集必须也同时 增强,这样 编程者才能在一条指令中指定更多的并行操作,以利用额外的硬件。增强型DSPs的例子有朗讯公司的DSP16000,ADI的ADSP2116x。增强型DSPs的优点是兼容性好,而且与较早的DSP具有相似的成本和功耗。缺点是结构复杂、指令复杂,进一步发展有限。' a& t& q7 p: G2 ^
VLIW 结构
\5 [% f. T" _' d" t# _如前所述,传统上的DSP处理器使用复杂的混合指令,并在一条指令循环中只流出和执行一条指令。然而,最近有些DSP采用一种更RISC化的 指令集,并且在一条 指令周期执行多条指令,使用大的统一的寄存器堆。例如,Siemems的CARMel、Philips的TriMedia和TI的TMS320C62XX处理器族都使用了超长 指令字(VLIW)结构。C62xx处理器每次取一个256位的指令包,把包解析为8个32位的指令,然后把它们引到其8个独立的执行单元。在最好的情况下,C62xx同时执行8个指令枣这种情况下达到了极高的MIPS率(如1600MIPS)。VLIW结构的优点是高性能、结构规整(潜在的易 编程和好的目标 编译系统)。缺点是高功耗、代码膨胀-需要宽的 程序存储器、新的 编程/编译困难(需跟踪指令安排,易破坏流水线使性能下降)。
, G6 ^% Z5 [8 E超标量体
* j, f, \9 J! O; W超标量体系结构
2 O) I" F1 L) h) b9 g- F! I象VLIW处理器一样,超标量体系结构并行地流出和执行多个指令。但跟VLIW处理器不同的是,超标量体系结构不清楚指定需要 并行处理的指令,而是使用动态指令规划,根据处理器可用的资源,数据依赖性和其他的因素来决定哪些指令要被同时执行。超标量体系结构已经长期用于高性能的通用处理器中,如Pentium和PowerPC。最近,ZSP公司开发出第一个商业的超标量体系结构的DSP# M4 @6 p7 E4 Y; j+ @
ZSP164xx。 超标量结构的优点是性能有大的跨越、结构规整、代码宽度没有明显增长。缺点是非常高的功耗、指令的动态安排使 代码优化困难。8 t3 q$ K+ z* I# D- d# Z/ p
SIMD0 j% }0 ?1 c( q7 `
结构
& _# A1 Z0 g/ g: y( [单指令多数据流(SIMD)处理器把输入的长的数据分解为多个较短的数据,然后由单指令并行地操作,从而提高处理海量、可分解数据的能力。该技术能大幅度地提高在 多媒体和 信号处理中大量使用的一些矢量操作的计算速度,如坐标 变换和旋转。
9 @8 J/ z' f7 \) v/ D通用处理器SIMD 增强的两个例子是Pentium的MMX扩展和PowerPC族的 AltiVec扩展。simd在一些高性能的DSP处理器中也有应用。例如,DSP16000在其数据路中支持有限的SIMD风格的操作,而Analog, W3 g+ {7 C, K: H) m* Z
Devices最近推出了有名的SHARC的新一代DSP处理器,进行了SIMD能力的扩展。SIMD结构由于使 总线、数据通道等资源充分使用,并无需改变 信号处理(含图象、语音)算法的基本结构,因此SIMD结构使用越来越普遍。SIMD结构遇到的问题是算法、 数据结构必须满足数据 并行处理的要求,为了加速,循环常常需要被拆开,处理数据需要重新安排调整。通常SIMD仅支持定点运算。. o( C; I& z! }0 {
混合结构/ u; L( p" f( j& g
DSP/微控制器的混合结构3 o. ?, P# q: X+ t# V
许多的应用需要以控制为主的 软件和DSP软件的混合。一个明显的例子是数字 蜂窝电话,因为其中有监控和 语音处理的工作。一般地, 微处理器在控制上能提供良好的性能而在DSP性能上则很糟,专用的DSP处理器的特性则刚好相反。因此,最近有一些 微处理器产商开始提供DSP 增强版本的微处理器。用单处理器完成两种 软件的任务是很有吸引力的,因为其可以潜在地提供简化设计,节省版面空间,降低总功耗,降低系统成本等。DSP和 微处理器结合的方法有:
4 L" e: m. o0 Y; G·在一个结上集成多种处理器,如MotorolaDSP5665x
* `/ B& O. r7 s·DSP作为协处理器,如ARMPiccolo3 R! L8 Q, w3 |7 h. W. H3 d# F
·DSP核移值到已有的位处理器,如SH-DSP4 N" P! }) U- F
·微控制器与已有的DSP集成在一起,如TMS320C27xx% d4 ^$ o. w7 {) s
·全部新的设计,如TriCore
7 Y9 t& z Z# M" b$ `9 `, \随着对DSP能力需求的提高,DSP处理器结构正在进行新的和革新的设计,DSP、mcu、CPU的结构优点相互借用。( A2 l0 Z$ I9 V6 j4 w' X" w
. A/ M$ f- [& m5 B! x6 Y" k8 K4 y- Y+ y7 v- c2 o+ V+ p/ S: n% c3 ]
|
|