TMS320C55x数字信号处理器是在C54x的基础上发展起来的新一代低功耗、高性能数字信号处理器,其软件具有C54兼容模式,极大地节省了C54x向C55x的转化时间。
C55x采用了新的半导体工艺,其工作时钟大大超过了C54x系列处理器,CPU内部通过增加功能单元增强了DSP的运算能力,与 C54x相比具有更高的性能和更低的功耗。
这些特点使之在无线通信、便携式个人数字系统及语音电话系统中得到广泛应用。
TMS320C54x内部结构基本上可以分为3大部分:
CPU:包括算术逻辑运算单元、乘法加法器、累加器、移位寄存器、各种专用用途的寄存器、地址生成器及内部总线。
片内存储器系统:包括片内的程序ROM、片内单访问的数据RAM和双访问的数据RAM、外部存储器接口。
片内外设与专用硬件电路:包括片内定时器、各种类型的串口、主机接口、片内锁相环(PLL)时钟发生器、软件可编程等待状态发生器及各种控制电路.
此外,还包含有仿真功能JTAG接口,用于开发时的仿真
通用微处理器的CPU由ALU和CU组成,其算术运算和逻辑运算通过软件来实现,如加法需要10个机器周期,乘法是一系列的移位和加法,需要数十个机器周期。
DSP的CPU设置硬件乘法器,可以在单周期内完成乘法和累加
乘法器/加法器(MAC)单元包括1个乘法器和1个专用加法器。乘法器/加法器单元具有强大的乘累加运算功能,可以在一个流水线周期内完成1次乘法运算和1次加法运算。
C54x DSP中的MAC单元有一个17位×17位的硬件乘法器,并且附带了一个40位的专用加法器。
ALU可以实现加/减法运算、逻辑运算等大部分算术和逻辑功能,且大多数的算术逻辑运算指令都是单周期指令。
除存储操作指令外,ALU的运算结果通常都被传送到目的累加器(累加器A和B)
累加器用于存储ALU或乘法器/加法器单元输出的数据。累加器也能输出数据到ALU或乘法器/加法器中。累加器可以保留计算结果,减少对存储单元的访问。
C54x有2个40位累加器 A,B;C55x有4个40位累加器AC0,AC1,AC2,AC3
桶形移位器能把输入的数据进行0到31位的左移和0到16位的右移(-16 ~31)
通用微处理器的移位,每调用一次移位指令移动1bit
DSP可以在一个机器周期内左移或右移多个bit
在通用CPU中,数据地址的产生和数据的处理都由ALU来完成
在DSP中,设置了专门的数据地址发生器(实际上是专门的ALU),来产生所需要的数据地址,节省公共ALU的时间
有多组独立的DMA总线,与CPU的程序、数据总线并行工作,在不影响CPU工作