DSP原理与应第二章.ppt
《DSP原理与应第二章.ppt》由会员分享,可在线阅读,更多相关《DSP原理与应第二章.ppt(104页珍藏版)》请在三一办公上搜索。
1、第2章 TMS320C54x的硬件结构,内容提要 TMS320C54x芯片是一种特殊结构的微处理器,为了快速地实现数字信号处理运算,采用了流水线指令执行结构和相应的并行处理结构,可在一个周期内对数据进行高速的算术运算和逻辑运算。本章主要介绍TMS320C54x芯片的硬件结构,重点对芯片的CPU结构、内部存储器等进行了讨论。,第2章 TMS320C54x的硬件结构,知识要点,内外部总线结构,CPU结构,内部存储器结构,第2章 TMS320C54x的硬件结构,2.1 C54x的基本结构 2.2 C54x的内部总线结构 2.3 C54x的中央处理器 2.4 C54x的存储空间结构,第2章 TMS32
2、0C54x的硬件结构,2.1 C54x的基本结构,TMS320C54x(简称C54x)是TI公司为实现低功耗、高速实时信号处理而专门设计的16位定点数字信号处理器,采用改进的哈佛结构,具有高度的操作灵活性和运行速度,适应于远程通信等实时嵌入式应用的需要,现已广泛地应用于无线电通信系统中。,第2章 TMS320C54x的硬件结构,2.1 C54x的基本结构,1.C54x的主要优点,围绕1组程序总线、3组数据总线和4组地址总线而建立的改进哈佛结构,提高了系统的多功能性和操作的灵活性。,具有高度并行性和专用硬件逻辑的CPU设计,提高了芯片的性能。,具有完善的寻址方式和高度专业化指令系统,更适应于快速
3、算法的实现和高级语言编程的优化。,第2章 TMS320C54x的硬件结构,2.1 C54x的基本结构,1.C54x的主要优点,围绕1组程序总线、3组数据总线和4组地址总线而建立的改进哈佛结构,提高了系统的多功能性和操作的灵活性。,具有高度并行性和专用硬件逻辑的CPU设计,提高了芯片的性能。,具有完善的寻址方式和高度专业化指令系统,更适应于快速算法的实现和高级语言编程的优化。,模块化结构设计,使派生器件得到了更快的发展。,采用先进的IC集成电路制造工艺,降低了芯片的功耗,提高了芯片的性能。,采用先进的静态设计技术,进一步降低了功耗,使芯片具有更强的应用能力。,第2章 TMS320C54x的硬件结
4、构,2.C54x的内部结构,TMS320C54x的组成,中央处理器CPU,I/O功能扩展接口,内部总线控制,特殊功能寄存器,数据存储器RAM,程序存储器ROM,串行口,主机通信接口HPI,定时系统,中断系统,第2章 TMS320C54x的硬件结构,2.C54x的内部结构,TMS320C54x的硬件结构图,第2章 TMS320C54x的硬件结构,3.各部分的功能,中央处理器CPU 采用了流水线指令执行结构和相应的并行处理结构,可在一个周期内对数据进行高速的算术运算和逻辑运算。,内部总线结构 由一组程序总线、三组数据总线和四组地址总线组成,可在一个指令周期内产生两个数据存储地址,实现流水线并行数据
5、处理。,第2章 TMS320C54x的硬件结构,3.各部分的功能,特殊功能寄存器 共有26个特殊功能寄存器,位于具有特殊功能的RAM区。主要用来对片内各功能模块进行管理、控制、监视。,数据存储器RAM,片内数据存储器,双寻址数据寄存器DARAM(单指令周期内二次操作),单寻址数据寄存器SARAM(单指令周期内一次操作),第2章 TMS320C54x的硬件结构,3.各部分的功能,程序存储器ROM 可由ROM和RAM配置而成,即程序空间可以定义在ROM上,也可以定义在RAM中。当需要高速运行的程序时,可将片外ROM中的程序调入到片内RAM中,以提高程序的运行速度,降低对外部ROM的速度要求,增强系
6、统的整体抗干扰性能。,第2章 TMS320C54x的硬件结构,3.各部分的功能,I/O口,XF:用来给外部设备发送信号。,C54x芯片还配有主机接口(HPI)、同步串行口和64K字I/O空间。,HPI和串行口可以通过设置,用作通用I/O。,64K字的I/O空间可通过外加缓冲器或锁存电路,配合外部I/O读写控制时序构成片外外设的控制电路。,第2章 TMS320C54x的硬件结构,3.各部分的功能,串行口,不同型号的C54x芯片,所配置的串行口功能不同。可分为4种:,单通道同步串行口SP 带缓冲器单通道同步串行口BSP 并行带缓冲器多通道同步串行口McBSP 时分多通道带缓冲器串行口TMD,第2章
7、 TMS320C54x的硬件结构,3.各部分的功能,主机接口HPI,HPI是一个与主机通信的并行接口,主要用于DSP与其它总线或CPU进行通信。信息可通过C54x的片内存储器与主机进行数据交换。,不同型号的器件配置不同HPI口,可分为:8位标准HPI接口 8位增强型HPI接口 16位增强型HPI接口,第2章 TMS320C54x的硬件结构,3.各部分的功能,定时器,定时器是一个软件可编程的计数器,用来产生定时中断。可通过设置特定的状态来控制定时器的停止、恢复、复位和禁止。,第2章 TMS320C54x的硬件结构,中断系统,C54x的中断系统具有硬件中断和软件中断。,硬件中断:,软件中断:,由外
8、围设备信号引起的中断。,分为:片外外设引起的硬件中断;片内外设引起的硬件中断。,由程序指令所引起的中断。,可屏蔽中断:,非屏蔽中断:,SINT15SINT0。,包括所有的软件中断和两个外部,中断管理优先级:,1116个固定级。,第2章 TMS320C54x的硬件结构,2.2 C54x的内部总线结构,TMS320C54x的结构是以8组16位总线为核心,形成了支持高速指令执行的硬件基础。,总线结构,1组程序总线PB3组数据总线CB、DB、EB4组地址总线PAB、CAB、DAB、EAB,第2章 TMS320C54x的硬件结构,1程序总线PB,主要用来传送取自程序存储器的指令代码和立即操作数。PB总线
9、既可以将程序空间的操作数据(如系数表)送至数据空间的目标地址中,以实现数据移动,也可以将程序空间的操作数据传送乘法器和加法器中,以便执行乘法-累加操作。,第2章 TMS320C54x的硬件结构,2数据总线CB、DB和EB,3条数据总线分别与不同功能的内部单元相连接。如:CPU、程序地址产生逻辑PAGEN、数据地址产生逻辑 DAGEN、片内外设和数据存储器等。CB和DB用来传送从数据存储器读出的数据;EB用来传送写入存储器的数据。数据地址产生器DAGEN 程序地址产生器PAGEN,3地址总线PAB、CAB、DAB和EAB 用来提供执行指令所需的地址。,第2章 TMS320C54x的硬件结构,4各
10、总线连接设备,PB:当用于程序指向的操作数传输时输出至乘法-累加器当进行程序命令读取时传输至控制系统接口PAB:与程序地址产生器相连,接收程序地址信息CB:专用于片内数据存储器的数据传输,把数据输出至乘法-累加器、算术逻辑运算单元以及桶型移位单元CAB:与数据地址产生器相连,接收数据地址信息DB:除与CB传输相同内容外,同时还负责向存储器写入地址信息,而外接存储器的数据信息也通过它进行读取。DAB:当参与片内数据传输时,功能与CAB一致;当参与外设数据传输时则向地址产生器输入读入信息的地址信息。EB:负责向存储器和地址产生器写入信息包括程序指令和数据内容及地址EAB:当写入片内,则接受数据地址
11、产生器的信息,当向外部写入,则向地址产生器输送写入的地址信息,第2章 TMS320C54x的硬件结构,C54x读/写操作占用总线情况,C54x读/写操作占用总线情况,第2章 TMS320C54x的硬件结构,2.3 C54x的中央处理器CPU,CPU是DSP器件的核心部件,它的性能直接关系到DSP器件的性能。C54x的CPU采用了流水线指令执行结构和相应的并行结构设计,使其能在一个指令周期内,高速地完成多项算术运算。,第2章 TMS320C54x的硬件结构,CPU包括下列基本部件:40位算术逻辑运算单元ALU;2个40位的累加器A和B;支持-1631位移位范围的桶形移位寄存器;能完成乘法-加法运
12、算的乘法累加器MAC;16位暂存寄存器T;16位转移寄存器TRN;比较、选择、存储单元CSSU;指数译码器;CPU状态和控制寄存器。,第2章 TMS320C54x的硬件结构,2.3.1 算术逻辑运算单元ALU,C54x使用40位的算术逻辑运算单元和2个40位累加器,可完成宽范围的算术逻辑运算。C54x的大多数算术逻辑运算指令都是单周期指令,其运算结果通常自动送入目的累加器A或B。但在执行存储器到存储器的算术逻辑运算指令时(如ADDM、ANDM、ORM和XORM),其运算结果则存入指令指定的目的存储器。,第2章 TMS320C54x的硬件结构,ALU的功能框图,第2章 TMS320C54x的硬件
13、结构,1ALU的输入和输出,根据输入源的不同,ALU采用不同的输入方式。,(1)ALU的X输入源 来自桶形移位寄存器输出的操作数;来自数据总线DB中的操作数。,(2)ALU的Y输入源 来自累加器A中的数据;来自累加器B中的数据;来自数据总线CB中的操作数;来自T寄存器中的操作数。,第2章 TMS320C54x的硬件结构,(3)ALU输入数据的预处理,当16位数据存储器操作数通过数据总线DB或CB输入时,ALU将采用两种方式对操作数进行预处理。,若数据存储器的16位操作数在低16位时,则 当SXM=0时,高24位(3916位)用0填充;当SXM=1时,高24位(3916位)扩展为符号位。,若数据
14、存储器的16位操作数在高16位时,则 当SXM=0时,3932位和150位用0填充;当SXM=1时,3932位扩展为符号位,150位置0。,第2章 TMS320C54x的硬件结构,(4)ALU的输出 ALU的输出为40位运算结果,通常被送至累加器A或B。,第2章 TMS320C54x的硬件结构,2溢出处理,ALU的饱和逻辑可以对运算结果进行溢出处理。当发生溢出时,将运算结果调整为最大正数(正向溢出)或最小负数(负向溢出)。,当运算结果发生溢出时:,若OVM=0,则对ALU的运算结果不作任何调整,直接送入累加器;,第2章 TMS320C54x的硬件结构,若OVM=1,则对ALU的运行结果进行调整
15、。,当正向溢出时,将32位最大正数00 7FFFFFFFH装入累加器;当负向溢出时,将32位最小负数FF 80000000H装入累加器。,状态寄存器ST0中与目标累加器相关的溢出标志OVA或OVB被置1。,第2章 TMS320C54x的硬件结构,3进位位C,ALU有一个与运算结果有关的进位位C,位于ST0的11位。进位位C受大多数ALU操作指令的影响,包括算术操作、循环操作和移位操作。,进位位C的功能:,用来指明是否有进位发生;用来支持扩展精度的算术运算;可作为分支、调用、返回和条件操作的执行 条件。,第2章 TMS320C54x的硬件结构,注意:进位位C不受装载累加器操作、逻辑操作、非算术运
16、算和控制指令的影响;可通过寄存器操作指令RSBX和SSBX对 其进行置位和复位。,第2章 TMS320C54x的硬件结构,4双16位算术运算,若要将ST1中的C16置位,则ALU进行双16位算术运算,即在一个机器周期内完成两个16位数的算术运算,进行两次16位加法或两次16位减法运算。,5其他控制位,除SXM、OVM、C、C16、OVA、OVB外,ALU还有两个控制位。TC测试/控制标志,位于ST0的12位;ZA/ZB累加器结果为0标志位。,第2章 TMS320C54x的硬件结构,2.3.2 累加器A和B,C54x芯片有两个独立的40位累加器A和B,可以作为ALU或MAC的目标寄存器,存放运算
17、结果,也可以作为ALU或MAC的一个输入。在执行并行指令(LD|MAC)和一些特殊指令(MIN和MAX)时,两个累加器中的一个用于装载数据,而另一个用于完成运算。,第2章 TMS320C54x的硬件结构,1.累加器结构,保护位:AG、BG 3932,作为算术计算时的数据位余量,以防止迭代运算中的溢出。,高阶位:AH、BH 3116;,低阶位:AL、BL 150。,第2章 TMS320C54x的硬件结构,2.带移位的累加器存储操作,使用STH、STL、STLM、SACCD等指令或并行存储指令,可以把累加器中的内容保存到数据存储器中。,使用STH、SACCD和并行存储指令存储累加器内容,先将累加器
18、内容移位,再将高16位存入存储器。,右移存储:AG(BG)右移AH(BH),AH(BH)存入存储器;,左移存儲:AL(BL)左移AH(BH),AH(BH)存入存储器。,第2章 TMS320C54x的硬件结构,使用STL指令存储累加器内容,先将累加器内容移位,再将低16位存入存储器。,右移存储,AH(BH)右移AL(BL),AL(BL)存入存储器;,左移存储,用0左移AL(BL),AL(BL)存入存储器。,注意:移位操作是在存储累加器内容的过程中 同时完成的;移位操作是在移位寄存器中完成的,累 加器的内容保持不变。,第2章 TMS320C54x的硬件结构,桶形移位寄存器,TMS320C54x的4
19、0位桶形移位寄存器主要用于累加器或数据区操作数的定标。它能将输入数据进行031位的左移和016位的右移。所移动的位数可由ST1中的ASM或被指定的暂存器T决定。,第2章 TMS320C54x的硬件结构,1.组成框图,多路选择器MUX,MUX,MUX,MUX,符号控制SC,符号控制SC,符号控制SC,移位寄存器,移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),写选择电路,写选择MSW/LSW,写选择MSW/LSW,写选择MSW/LSW,多路选择器MUX,用来选择输入数据。,用于对输入数据进行符号位扩展。,移位寄存器,用来对输入的数据进行定标
20、和移位。,写选择电路,用来选择最高有效字和最低有效字。,第2章 TMS320C54x的硬件结构,2桶形移位寄存器的输入,取自DB数据总线的16位 输入数据;,取自DB和CB扩展数据总 线的32位输入数据;,来自累加器A或B的40位 输入数据。,3桶形移位寄存器的输出,输出至ALU的一个输入端;,经写MSW/LSW选择电路 输出至EB总线。,第2章 TMS320C54x的硬件结构,4桶形移位寄存器的功能,主要用于格式化操作,为输入的数据定标。,在ALU运算之前,对输入数据进行数据定标;对累加器进行算术或逻辑移位;对累加器进行归一化处理;在累加器的内容存入数据存储器之前,对存储数 据进行定标。,第
21、2章 TMS320C54x的硬件结构,5桶形移位寄存器的操作,(1)控制操作数的符号位扩展,根据SXM位控制操作数进行符号位的扩展。,若操作数为有符号数,则,当SXM=1时,完成符号位扩展;当SXM=0时,禁止符号位扩展。,若操作数为无符号数,则不考虑SXM位,不执行符号位的扩展。,如:LDU、ADDS和SUBS指令,操作数为无符号数,不进行符号位扩展。,第2章 TMS320C54x的硬件结构,(2)控制操作数的移位,根据指令中的移位数,控制操作数进行移位操作。移位数用二进制补码表示,正值时完成左移,负值时完成右移。,移位数的形式:,5位立即数,取值范围:-1615;ST1中的ASM位,取值范
22、围:-1615;暂存器T中的低6位数值,取值范围:-1631。,这种移位操作能使CPU完成数据的定标、位提取、扩展算术和溢出保护等操作。,第2章 TMS320C54x的硬件结构,(3)控制操作数完成带测试位的移位,根据ROLTC指令,控制操作数完成带测试位的循环左移。,(4)完成MSW和LSW的写选择,MSW/LSW单元根据CSSU信号,选择移位后的信号锁存,并输出至EB总线。,第2章 TMS320C54x的硬件结构,2.3.4 乘法-累加单元MAC,C54x的乘法-累加单元MAC是由乘法器、加法器、符号控制、小数控制、零检测器、舍入器、饱和逻辑和暂存器几部分组成。,MAC单元具有强大的乘法-
23、累加运算功能,可在一个流水线周期内完成1次乘法运算和1次加法运算。在数字滤波(FIR和IIR滤波)以及自相关等运算中,使用乘法-累加运算指令可以大大提高系统的运算速度。,第2章 TMS320C54x的硬件结构,第2章 TMS320C54x的硬件结构,1.乘法器,MAC单元包含一个1717位硬件乘法器,可完成有符号数和无符号数的乘法运算。,(1)乘法器的输入,XM输入:,YM输入:,取自数据总线DB的数据存储器操作数;来自暂存器T的操作数;来自累加器A的3216位操作数。,来自数据总线DB的数据存储器操作数;来自数据总线CB的数据存储器操作数;来自程序总线PB的程序存储器操作数;来自累加器A的3
24、216位操作数。,第2章 TMS320C54x的硬件结构,(2)乘法器的输出 乘法器的输出经小数控制电路接至加法器的XA输入端。,(3)乘法器的操作 MAC单元的乘法器能进行有符号数、无符号数以及有符号数与无符号数的乘法运算。,第2章 TMS320C54x的硬件结构,根据操作数的不同情况需进行以下处理:,若是两个有符号数相乘,则在进行乘法运算之前,先对两个16位乘数进行符号位扩展,形成17位有符号数后再进行相乘。扩展的方法:在每个乘数的最高位前增加一个符号位,其值由乘数的最高位决定,即正数为0,负数为1。,第2章 TMS320C54x的硬件结构,若是两个无符号数相乘,则在两个16位乘数的最高位
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 原理 第二

链接地址:https://www.31ppt.com/p-5428136.html