TMS320C54x数字信号处理器硬件结构_第1页
TMS320C54x数字信号处理器硬件结构_第2页
TMS320C54x数字信号处理器硬件结构_第3页
TMS320C54x数字信号处理器硬件结构_第4页
TMS320C54x数字信号处理器硬件结构_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第2章章 TMS320C54x芯片结构介绍芯片结构介绍 n2.1 TMS320C54x芯片的基本性能芯片的基本性能 n2.2 TMS320C54x芯片的芯片的CPU结构结构 n2.3 TMS320C54x芯片的内部总线结构芯片的内部总线结构 n2.4 TMS320C54x的存储器分配的存储器分配 返回首页 20k字字 程序程序ROM 8k字字 程序程序/数据数据 ROM 5k字字 程序程序/数据数据 RAM 标准串行口标准串行口 定时器定时器 软件等待软件等待 状态发生器状态发生器 锁相环锁相环 MAC 17*17乘法器乘法器 40位加法器位加法器 40位位ALU 比较运算单比较运算单 元元

2、 指数编码器指数编码器 40位桶形移位桶形移 位寄存器位寄存器 40位累加器位累加器A 40位累加器位累加器B 8个辅助寄存器个辅助寄存器 2个辅助寄存器算术单元个辅助寄存器算术单元 图图 TMS320C542 的结构框图的结构框图 书书P20 2.1 TMS 320C 54x 芯片芯片 的基的基 本性本性 能能 返回本节 图图 TMS320C54x DSP的内部硬件组成框图的内部硬件组成框图1 书书p18 图图 TMS320C54x DSP的内部硬件组成框图的内部硬件组成框图2 书书p18 n多总线结构:多总线结构:1组程序总线组程序总线 3组数据总线组数据总线 4组地址总线组地址总线 (改

3、进的哈佛结构)(改进的哈佛结构) n40位算术逻辑运算单元(位算术逻辑运算单元(ALU)(Arithmetic Logic Unit)。 n17位位17位并行乘法器与位并行乘法器与40位专用加法器相连。位专用加法器相连。 n比较、选择、存储单元(比较、选择、存储单元(CSSU)。 n指数编码器可以在单个周期内计算指数编码器可以在单个周期内计算40位累加器中数值的指位累加器中数值的指 数。数。 n双地址生成器包括双地址生成器包括8个辅助寄存器和两个辅助寄存器算术运个辅助寄存器和两个辅助寄存器算术运 算单元(算单元(ARAU)。)。 n流水线指令结构,高速的算数运算和逻辑运算流水线指令结构,高速的

4、算数运算和逻辑运算 返回首页 TMS320C54x的主要特性如下所示:的主要特性如下所示: 返回本节 n特殊功能寄存器:特殊功能寄存器:26个个 nRAM:DARAM,SARAM nROM nI/O口口 /BIO,XF n串行口串行口 n主机口主机口HPI n定时器定时器 n中断系统等等中断系统等等 2.2 TMS320C54x芯片的芯片的CPU结构结构 CPU的基本组成如下:的基本组成如下: nCPU状态和控制寄存器状态和控制寄存器 n40位算术逻辑单元(位算术逻辑单元(ALU) n40位累加器位累加器ACCA和和ACCB n40位桶形移位寄存器位桶形移位寄存器 n乘法器乘法器/加法器单元加

5、法器单元 n比较、选择和存储单元(比较、选择和存储单元(CSSU) n 指数编码器指数编码器 n8个辅助寄存器个辅助寄存器AR0AR7,和两个辅助寄存器算术,和两个辅助寄存器算术 运算单元运算单元ARAU 返回首页 1算术逻辑单元(算术逻辑单元(ALU)和累加器和累加器 nTMS320C54x使用使用40位算术逻辑单元(位算术逻辑单元(ALU)和和 两个两个40位累加器(位累加器(ACCA和和ACCB)来完成算术来完成算术 运算和逻辑运算,且大多数都是单周期指令。运算和逻辑运算,且大多数都是单周期指令。 ALU功能框图。功能框图。 图图 ALU功能框图功能框图 累加器累加器A和和B 3932

6、3116 150 n累加器累加器A AG AH AL 3932 3116 150 n累加器累加器B BG BH BL 保护位保护位 高阶位高阶位 低阶位低阶位 n溢出处理溢出处理 OVM=1表示可以溢出表示可以溢出 正向溢出正向溢出 将将32位最大正数位最大正数007FFFFFFFh装入累加器装入累加器 负向溢出负向溢出 将将32位最小负数位最小负数FF80000000h装入累加器装入累加器 2桶形移位寄存器桶形移位寄存器 桶形移位寄存器的桶形移位寄存器的 输入可以为:输入可以为: 从从DB获得的获得的16位位 操作数;操作数; 从从DB和和CB获得获得 的的32位操作数;位操作数; 从累加器

7、从累加器A或或B获获 得的得的40位操作数。位操作数。 桶形移位寄存器的桶形移位寄存器的 输出输出 连到连到ALU 经过经过MSW/LSW (最高有效字最高有效字/最最 低有效字)写选低有效字)写选 择单元至择单元至EB总线。总线。 移位的位数由以下移位的位数由以下3种种 方法指定方法指定 1. 指令操作数中给定指令操作数中给定 一个一个4或或5位的立即位的立即 数数-1615 2. ST1中的中的ASM位(位(5 位),表示范围位),表示范围- 1615 3. T寄存器中的低寄存器中的低6位位 表示范围表示范围-1631的的 移位数移位数 注:注:5位表示位表示-1615 10000B011

8、11B 6位表示位表示-1631 110000B011111B 图 桶形移位器的功能框图 例:例: ADD A, -4, B 累加器累加器A进入桶形移位寄存进入桶形移位寄存 器进行移位,移位的数值位器进行移位,移位的数值位 -4(指令寄存器立即数),(指令寄存器立即数), 移位后通过移位后通过ALU再送入再送入B ADD A, ASM, B 累加器累加器A进入桶形移位寄存进入桶形移位寄存 器进行移位,移位的数值位器进行移位,移位的数值位 存在存在ASM里(里(ASM见见 ST1),移位后通过),移位后通过ALU再再 送入送入B NORM A 累加器累加器A进入桶形移位寄存进入桶形移位寄存 器进

9、行移位,移位的数值位器进行移位,移位的数值位 存在存在T里,移位后通过里,移位后通过ALU 再送入再送入A 图图 乘法器乘法器/加法器单元功能框图加法器单元功能框图 3乘法乘法 器器/加法加法 器单元器单元 nC54x CPU有一个有一个17*17位的硬件乘法器,与位的硬件乘法器,与40位位 的专用加法器相连,可以在单周期内完成一次乘的专用加法器相连,可以在单周期内完成一次乘 法累加法累加MAC运算。其功能框图如图运算。其功能框图如图2-6所示。所示。乘乘 法器的输出经小数法器的输出经小数/整数乘法(整数乘法(FRCT)输入控制输入控制 后加到加法器的一个输入端,加法器的另一个输后加到加法器的

10、一个输入端,加法器的另一个输 入端来自累加器入端来自累加器A或或B。 n加法器还包括零检测器、舍入器(二进制补码)加法器还包括零检测器、舍入器(二进制补码) 及溢出及溢出/饱和逻辑电路。饱和逻辑电路。 4比较、选择和存储单元(比较、选择和存储单元(CSSU) n比较、选择和存储单元(比较、选择和存储单元(CSSU)是专门为是专门为 Viterbi算法设计的加法算法设计的加法/比较比较/选择(选择(ACS)操作操作 的硬件单元,其功能框图如图的硬件单元,其功能框图如图2-7所示。所示。 nCSSU支持均衡器和信道译码器所用的各种支持均衡器和信道译码器所用的各种 Viterbi算法。算法。Vite

11、rbi算法示意图如图算法示意图如图2-8所示。所示。 图图2-7 比较、选择和存储单元比较、选择和存储单元 (CSSU)功能框图功能框图 图图2-8 Viterbi算法示意图算法示意图 5指数编码器指数编码器 n指数编码器用于支持单周期指令指数编码器用于支持单周期指令EXP的专用硬件。的专用硬件。 在在EXP指令中,累加器中的指数值能以二进制补指令中,累加器中的指数值能以二进制补 码的形式码的形式(-831)存储在)存储在T寄存器中。寄存器中。 n指数值指数值=冗余位冗余位 8 即累加器中为消除非有效符号位所需移动的即累加器中为消除非有效符号位所需移动的 位数。当累加器中的值超过位数。当累加器

12、中的值超过32位时,指数为负值。位时,指数为负值。 6CPU状态和控制寄存器状态和控制寄存器 nTMS320C54x有三个状态和控制寄存器,分别为有三个状态和控制寄存器,分别为 状态寄存器状态寄存器ST0、状态寄存器状态寄存器ST1和处理器方式状和处理器方式状 态寄存器态寄存器PMST。ST0和和ST1包括各种工作条件和包括各种工作条件和 工作方式的状态,工作方式的状态,PMST包括存储器配置状态和包括存储器配置状态和 控制信息。控制信息。 n状态寄存器状态寄存器ST0的位结构如图的位结构如图2-9所示,表所示,表2-2所示所示 是是ST0的说明。的说明。 图2-9 状态寄存器ST0位结构 1

13、513121110980 ARPTCCOV A OV B DP 表2-2 状态寄存器ST0 位位名称名称复位值复位值功能功能 1513ARP0 辅助寄存器指针。在间接寻址时,用来选择辅助寄存器。辅助寄存器指针。在间接寻址时,用来选择辅助寄存器。 当当CMPT=0(标准模式)时,(标准模式)时,ARP必须为必须为0。即只。即只AR0有效。有效。 12TC1 测试测试/控制标志位。控制标志位。TC保存保存ALU测试位操作的结果。测试位操作的结果。TC受受BIT、 BITF、BITT、CMPM、CMPR、CMPS、SFTC等指令影响。等指令影响。 可以由可以由TC的状态(的状态(1或或0)决定条件分

14、支转移指令、子程序调用)决定条件分支转移指令、子程序调用 以及返回指令是否执行。如果下列条件成立,则以及返回指令是否执行。如果下列条件成立,则TC=1: 1. 由由BIT或或BITT指令所测试的位等于指令所测试的位等于1 2. 当执行当执行CMPM、CMPR、CMPS比较指令时,条件为真比较指令时,条件为真 3. 用用SFTC指令测试某个累加器的第指令测试某个累加器的第31位和第位和第30位不同时位不同时 11C1 进位位。执行加法进位,置进位位。执行加法进位,置1,不进位清,不进位清0; 执行减法借位,执行减法借位, 清清0,否则置,否则置1 移位和循环指令移位和循环指令(ROR、ROL、S

15、FTA、SFTL)以及以及MIN、MAX、 ABS、NEG指令也影响进位位。指令也影响进位位。 表2-2 状态寄存器ST0 位位名称名称复位值复位值功能功能 10OVA0 累加器累加器A溢出标志位。当溢出标志位。当ALU或或MAC里的加法器发生器发生溢里的加法器发生器发生溢 出,且运算结果在累加器出,且运算结果在累加器A中时,中时,OVA=1。一旦发生溢出,。一旦发生溢出, OVA一直为一直为1,直到复位或利用,直到复位或利用AOV和和ANOV条件执行条件执行BCD、 CCD、RCD、XC指令为止。指令为止。RSBX指令也能清指令也能清OVA位。位。 9OVB0 累加器累加器B溢出标志位。当溢

16、出标志位。当ALU或或MAC里的加法器发生器发生溢里的加法器发生器发生溢 出,且运算结果在累加器出,且运算结果在累加器A中时,中时,OVB=1。一旦发生溢出,。一旦发生溢出, OVA一直为一直为1,直到复位或利用,直到复位或利用BOV和和BNOV条件执行条件执行BCD、 CCD、RCD、XC指令为止。指令为止。RSBX指令也能清指令也能清OVB位。位。 80DP0 数据存储器指针。如果数据存储器指针。如果ST1中的编辑方式位中的编辑方式位CPL=0,这,这9个位与个位与 指令字中的低指令字中的低7位结合形成位结合形成16位直接寻址存储器地址,对数据位直接寻址存储器地址,对数据 存储器的一个操作

17、数寻址。存储器的一个操作数寻址。 DP字段可以用字段可以用LD指令加载。指令加载。 例例 151413121110987654 0 BR AF CP L XFHMINT M 0OV M SX M C16FR CT CM PT AS M 图2-10 状态寄存器ST1的位结构 表2-3 状态寄存器ST1(1) 位位名称名称复位值复位值功能功能 15BRAF0 块重复操作标志位。指示当前是否在执行块重复操作块重复操作标志位。指示当前是否在执行块重复操作 BRAF=0: 表示当前不在执行块重复操作表示当前不在执行块重复操作 BRAF=1: 表示当前在执行块重复操作。当执行表示当前在执行块重复操作。当执

18、行RPTB指令时,指令时, BRAF被自动置被自动置1,当块重复计数器,当块重复计数器BRC减为减为0时,时, BRAF自动清自动清0。 14CPL0 直接寻址编辑方式位。直接寻址编辑方式位。 CPL=0,用,用DP(数据页指针)直接寻址(数据页指针)直接寻址 CPL=1,用,用SP(堆栈指针)直接寻址(堆栈指针)直接寻址 13XF1 XF引脚状态位。引脚状态位。 XF是一个通用输出引脚,用是一个通用输出引脚,用RSBX和和SSBX对对XF复位或置位。复位或置位。 表2-3 状态寄存器ST1(1) 位位名称名称复位值复位值功能功能 12HM0 保持方式位。当处理器响应保持方式位。当处理器响应

19、信号时,信号时,HM指示处理器是否指示处理器是否 继续执行内部操作。继续执行内部操作。 HM=0 表示处理器从内部程序存储器取指,继续执行内部操作,表示处理器从内部程序存储器取指,继续执行内部操作, 而将外部接口置成高阻。而将外部接口置成高阻。 HM=1 表示处理器暂停内部操作。表示处理器暂停内部操作。 11INTM1 中断方式位,从整体上开放或者屏蔽中断中断方式位,从整体上开放或者屏蔽中断 INTM=0 开放全部中断,可屏蔽中断开放全部中断,可屏蔽中断 INTM=1 关闭所有中断,可屏蔽中断关闭所有中断,可屏蔽中断 SSBX, RSBX可置可置1或清或清0 100 9OVM0 溢出方式位。溢

20、出方式位。 OVM=0 溢出后计算结果像正常一样处理溢出后计算结果像正常一样处理 OVM=1 溢出后,计算结果为正最大值或负最小值。溢出后,计算结果为正最大值或负最小值。 DLOH 表2-3 状态寄存器ST1(2) 注解:C16=1 双16位运算标识 一个机器周期可完成两次16位 加法或两次16位减法 1576543210 IPTRMP/ MC OV LY AV IS DRO M CLKO FFt SMU Lt SS Tt 图2-11 处理器方式状态寄存器 PMST的位结构 表2-4 状态寄存器PMST 返回本节 nTMS320C54x DSP采用先进的哈佛结构并具有八采用先进的哈佛结构并具有

21、八 组总线,其独立的程序总线和数据总线允许同时组总线,其独立的程序总线和数据总线允许同时 读取指令和操作数,实现高度的并行操作。读取指令和操作数,实现高度的并行操作。 n1组程序总线PB 3组数据总线 CB DB EB n4组地址总线PAB CAB DAB EAB(改进的哈佛结构)用来提供执行指 令所需地址 n用辅助寄存器算数运算单元(ARAU0,ARAU1),在一个周期内产生两 个数据存储器地址 n采用各自分开的数据总线分别用于读数据和写数采用各自分开的数据总线分别用于读数据和写数 据,允许据,允许CPU在同一个机器周期内进行两次读操在同一个机器周期内进行两次读操 作数和一次写操作数。独立的

22、程序总线和数据总作数和一次写操作数。独立的程序总线和数据总 线允许线允许CPU同时访问程序指令和数据。同时访问程序指令和数据。 返回首页 2.3 TMS320C54x芯片的内部总线结构芯片的内部总线结构 返回首页 读读/写方式写方式 地址总线地址总线程序总线程序总线数据总线数据总线 PABCABDABEABPBCBDBEB 程序读程序读 程序写程序写 单数据读单数据读 双数据读双数据读 32位长数据读位长数据读(hw)(lw)(hw)(lw) 单数据写单数据写 数据读数据读/数据写数据写 双数据读双数据读/系数读系数读 外设读外设读 外设写外设写 注:PB、CB、DB是读总线,EB是写总线 2

23、.4 TMS320C54x的存储器分配的存储器分配 n2.4.1 存储器空间存储器空间 n2.4.2 程序存储器程序存储器 n2.4.3 数据存储器数据存储器 n2.4.4 I/O存储器存储器 返回首页 2.4.1 存储器空间存储器空间 TMS320C54x存储器由存储器由3个独立的可选择空间组成个独立的可选择空间组成192K (3*216) : n程序空间程序空间64K字字 (216*16bit):包括程序指令和程序中所需的常数表格。:包括程序指令和程序中所需的常数表格。 n数据空间数据空间64K字字 (216*16bit) :用于存储需要程序处理的数据或程序处:用于存储需要程序处理的数据或

24、程序处 理后的结果;理后的结果; nI/O空间空间64K字字 (216*16bit) :用于扩展外部数据存储空间。:用于扩展外部数据存储空间。 C54X结构上的并行性以及片内结构上的并行性以及片内RAM的双寻址能力,使它能够在的双寻址能力,使它能够在 任何一个机器周期内同时执行任何一个机器周期内同时执行4次存储器操作:次存储器操作:1次取指、读次取指、读2个操作个操作 数、写一个操作数数、写一个操作数。 解释:片内存储器不需要插入等待状态,成本低,功耗小。但是容量有解释:片内存储器不需要插入等待状态,成本低,功耗小。但是容量有 限。片外存储器空间大,则是片内存储器无法比拟的。限。片外存储器空间

25、大,则是片内存储器无法比拟的。 保留(OVLY=1 ) 外部(OVLY=0) 0000H 007FH 0080H 片内DRAM: 16K (OVLY=1) 外部(OVLY=0) 3FFFH 4000H 保留(OVLY=1 ) 外部(OVLY=0) 0000H 007FH 0080H 片内DRAM: 16K (OVLY=1) 外部(OVLY=0) 3FFFH 4000H 程序空间: 页0 程序空间:页0 FF7FH FF80H FFFFH FF7FH FF80H FFFFH EFFFH F000H FEFFH FF00H 片外 中断矢量 (外部) 中断矢量 (片内) 片外 片内ROM:4K 保留

26、 存储器映象 寄存器 0000H 005FH 0080H 片内DRAM: 16K 3FFFH 4000H 数据空间 FF7FH FF80H FFFFH 片外 EFFFH F000H FEFFH FF00H 片内 ROM (DROM=1) 外部(DROM=0) 保留 (DROM=1) 外部(DROM=0) 0060H 007FH 暂存器SPRAM MP/MC=1 (微处理器模式) MP/MC=0 (微型计算机模式) 注: - MP/MC=0 片内ROM为 程序空间 =1 不为程序空 间 - OVLY=1 片内RAM为程 序或数据空间 =0 只为数据空间 - DROM=1 片内ROM为 数据空间

27、=0 不为数据空 间 - 图2-2 TMS320VC5402存储器分配图 5410 memory map: 16Kword ROM , 64Kword RAM 2.4.2 程序存储器程序存储器 n通过通过MP/和和OVLY位的设置,可以实现对片内存储位的设置,可以实现对片内存储 器(器(ROM、RAM)的配置,即哪些片内存储器映的配置,即哪些片内存储器映 象在程序存储器空间。象在程序存储器空间。 n器件复位时,复位、中断和陷阱中断的向量映象器件复位时,复位、中断和陷阱中断的向量映象 在地址在地址FF80H开始的程序存储器空间。然而,复开始的程序存储器空间。然而,复 位后这些向量可以被重新映象在

28、程序存储器空间位后这些向量可以被重新映象在程序存储器空间 任何任何128字页的开始。这样,可以把向量表移出引字页的开始。这样,可以把向量表移出引 导导ROM,并重新配置其地址。并重新配置其地址。 返回本节 2.4.3 数据存储器数据存储器 n通过对处理器方式状态寄存器通过对处理器方式状态寄存器PMST的的DROM位位 的设置,将片内的设置,将片内ROM配置在数据存储器空间配置在数据存储器空间 (DROM=1),),这样,可以用指令将片内这样,可以用指令将片内ROM作作 为数据存储器中的数据为数据存储器中的数据ROM来读取。复位时,来读取。复位时, DROM位被清位被清0。 n64K字的数据存储

29、器空间包括数据存储器映象寄字的数据存储器空间包括数据存储器映象寄 存器,存器,0000H001FH是常用的是常用的CPU寄存器地址,寄存器地址, 0020H005FH是片内外设寄存器的地址。表是片内外设寄存器的地址。表2-1 表2-1 存储器映象寄存器 名称地址说明 IMR0H中断屏蔽寄存器 IFR1H中断标志寄存器 STO6H状态寄存器0 STl7H状态寄存器1 名称地址说明 AL8H累加器A低16位 AH9H累加器A高16位 AGAH累加器A最高8位 BLBH累加器B低16位 BHCH累加器B高16位 BGDH累加器B最高8位 TREGEH暂存器 TRNFH状态转移寄存器 AR0710H17H辅助寄存器 SP18H堆栈指针 BK19H循环缓冲大

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论