《DSP芯片的主要结构特点课件.ppt》由会员分享,可在线阅读,更多相关《DSP芯片的主要结构特点课件.ppt(69页珍藏版)》请在三一办公上搜索。
1、DSP芯片的主要结构特点,哈佛结构流水线技术多总线结构专用硬件乘法累加器具有特殊的DSP指令快速的指令周期,多处理器结构与并行技术独立DMA总线及控制器专门的数据地址发生器省电管理和低功耗丰富的外设,Von Neuman结构与Harvard结构,冯.诺依曼结构,哈佛结构,数据存储器,CPU,程序与数据存储器,CPU,程序存储器,Harvard结构,程序和数据存储空间分开,有各自独立的地址和数据总线,取指和读数可以同时进行,从而提高速度。2000年已达到90亿次浮点运算/秒(9000MFLOPS)。MIPS-Million Instruction Per Second MFLOPS-Millio
2、n Floating Operation Per Second,流水操作(pipeline),取指 译码 寻址 取数 运算 存储,取指 译码 寻址 取数 运算 存储,取指 译码 寻址 取数 运算 存储,独立的硬件乘法器,在卷积、数字滤波、FFT、相关、矩阵运算等算法中,都有A(k)B(n-k)一类的运算,大量重复乘法和累加。通用计算机中的乘法是用软件实现的,需要若干机器周期 DSP有硬件乘法器,用指令MAC在单周期内完成,独立的DMA总线和控制器,有一组或多组DMA总线,与CPU的数据总线和程序总线并行工作,在不影响CPU工作的条件下,DMA速度目前已经超过800Mbyte/s。,C24x的C
3、PU,C24x的片内存储器及总线,丰富的外设(peripherals),时钟发生器(振荡器与PLL)定时器(Timer)软件可编程等待状态发生器通用I/O同步串口(SSP)与异步串口(ASP)JTAG扫描逻辑电路(IEEE 1149.1标准)便于对DSP作片上的在线仿真和多DSP条件下的调试,C2x、C24x、C28x称为C2000系列,主要用于数字控制系统 C54x、C55x称为C5000系列,主要用于功耗低、便于携带的通信终端 C62x、C64x和C67x称为C6000系列,主要用于高性能复杂的通信系统,如移动通信基站,TMS320C2000系列DSP,集成了Flash存储器能够快速设计原
4、型机及升级,不使用片外的EPROM,既提高速度,又降低成本高速A/D转换器、CAN、SPI、SCI等比8bit或16bit MCU速度更快、更灵活、功能更强、面向控制的微处理器C24x和C2xx系列的DSP,其CPU都是C2xLP,用于数字化控制,TMS320C5000系列DSP,IP电话机和IP电话网关数字式助听器便携式声音/数据/视频产品调制解调器手机和移动电话基站语音服务器数字无线电SOHO(小型办公室和家庭办公室)的语音和数据系统,用于通信领域,C542的结构框图,C54x芯片,TMS320C54x(简称C54x)是 TI 公司为实现低功耗、高速实时信号处理而专门设计的16位定点数字信
5、号处理器,采用改进的哈佛结构,具有高度的操作灵活性和运行速度,适应于远程通信等实时嵌入式应用的需要,现已广泛地应用于无线电通信系统中。,C54x的引脚功能,TMS320C54x芯片采用CMOS制造工艺,整个系列的型号基本上都采用塑料或陶瓷四方扁平封装形式(TQFP)。不同的器件型号其引脚的个数有所不同。,TMS320C5402共有144个引脚:,电源引脚时钟引脚 控制引脚地址和数据引脚,串行口引脚 主机接口引脚通用I/O引脚 测试引脚,C54x的内部总线结构,TMS320C54x的结构是以8组16位总线为核心,形成了支持高速指令执行的硬件基础。,总线结构,1组程序总线PB3组数据总线CB、DB
6、、EB4组地址总线PAB、CAB、DAB、EAB,C54x的中央处理器CPU,CPU是DSP器件的核心部件,它的性能直接关系到DSP器件的性能。C54x的CPU采用了流水线指令执行结构和相应的并行结构设计,使其能在一个指令周期内,高速地完成多项算术运算。,CPU包括下列基本部件:40位算术逻辑运算单元ALU;2个40位的累加器A和B;支持-1631位移位范围的桶形移位寄存器;能完成乘法-加法运算的乘法累加器MAC;16位暂存寄存器T;16位转移寄存器TRN;比较、选择、存储单元CSSU;指数译码器;CPU状态和控制寄存器。,算术逻辑运算单元ALU,C54x使用40位的算术逻辑运算单元和2个40
7、位累加器,可完成宽范围的算术逻辑运算。C54x的大多数算术逻辑运算指令都是单周期指令,其运算结果通常自动送入目的累加器A或B。但在执行存储器到存储器的算术逻辑运算指令时(如ADDM、ANDM、ORM和XORM),其运算结果则存入指令指定的目的存储器。,ALU的功能框图,累加器A和B,C54x芯片有两个独立的40位累加器A和B,可以作为ALU或MAC的目标寄存器,存放运算结果,也可以作为ALU或MAC的一个输入。在执行并行指令(LD|MAC)和一些特殊指令(MIN和MAX)时,两个累加器中的一个用于装载数据,而另一个用于完成运算。,桶形移位寄存器,TMS320C54x的40位桶形移位寄存器主要用
8、于累加器或数据区操作数的定标。它能将输入数据进行031位的左移和016位的右移。所移动的位数可由ST1中的ASM或被指定的暂存器T决定。,组成框图,多路选择器MUX,MUX,MUX,MUX,符号控制SC,符号控制SC,符号控制SC,移位寄存器,移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),写选择电路,写选择MSW/LSW,写选择MSW/LSW,写选择MSW/LSW,多路选择器MUX,用来选择输入数据。,符号控制SC,用于对输入数据进行符号位扩展。,移位寄存器,用来对输入的数据进行定标和移位。,写选择电路,用来选择最高有效字和最低有效字。
9、,在MAC单元中,专用加法器用来完成乘积项的累加运算。,专用加法器,加法器零检测器舍入器溢出/饱和逻辑电路,舍入器:用来对运算结果进行舍入处理,即将目标累加器中的内容加上215,然后将累加器的低16位清零。,乘加单元MAC,C54x的比较、选择和存储单元(CSSU)是一个特殊用途的硬件电路,专门用来完成Viterbi算法中的加法/比较/选择(ACS)操作。,比较电路COMP,状态转移寄存器TRN,状态比较寄存器TC,多路选择器MUX,MUX,MUX,COMP,COMP,TRN,TRN,TC,TC,比较、选择和存储单元CSSU,CSSU单元主要完成累加器的高阶位与低阶位之间最大值的比较,即选择累
10、加器中较大的字,并存储在数据存储器中。,比较电路COMP将累加器A或B的高阶位与低阶位进行比较;,比较结果分别送入TRN和TC中,记录比较结果以便程序调试;,比较结果输出至写选择电路,选择较大的数据;,将选择的数据通过总线EB存入指定的存储单元。,工作过程:,指数编码器EXP,指数编码器是一个用于支持指数运算指令的专用硬件,可以在单周期内执行EXP指令,求累加器中数的指数值。,功能:求累加器中数据的指数值。指数值=冗余符号位-8,CPU状态和控制寄存器,C54x提供三个16位寄存器来作为CPU状态和控制寄存器,它们分别为:,状态寄存器0(ST0)状态寄存器1(ST1)处理器模式状态寄存器(PM
11、ST),ST0和ST1主要包含各种工作条件和工作方式的状态;PMST包含存储器的设置状态和其他控制信息。,1状态寄存器0(ST0),主要反映处理器的寻址要求和计算机的运行状态。,ST0的结构:,ARP,ARP:辅助寄存器指针。用来选择使用单操作数间接寻址时的 辅助寄存器AR0AR7。,TC,TC:测试/控制标志。用来保存ALU测试操作的结果。,C,C:进位标志位。用来保存ALU加减运算时所产生的进/借位。,OVA/B:累加器A/B的溢出标志。用来反映A/B是否产生溢出。,DP,DP:数据存储器页指针。用来与指令中提供的7位地址结合形成1个 16位数据存储器的地址。,2状态寄存器1(ST1),B
12、RAF:块重复操作标志位。用来指示当前是否在执行块重复操作。BRAF=0 表示当前不进行重复块操作;BRAF=1 表示当前正在进行块重复操作。,CPL:直接寻址编辑方式标志位;用来指示直接寻址选用何种指针。CPL=0 选用数据页指针DP的直接寻址;CPL=1 选用堆栈指针SP的直接寻址。,XF:外部XF引脚状态控制位。用来控制XF通用外部输出引脚的状态。执行SSBX XF=1 XF通用输出引脚为1;执行RSBX XF=0 XF通用输出引脚为0。,HM:保持方式位;响应HOLD信号时,指示 CPU是否继续执行内部操作。HM=0 CPU从内部程序存储器取指,继续执行内部操作。HM=1 CPU停止内
13、部操作。,INTM:中断方式控制位;用于屏蔽或开放所有可屏蔽中断。INTN=0 开放全部可屏蔽中断;INTN=1 禁止所有可屏蔽中断。,0:保留位,未被使用,总是读为0。,OVM:溢出方式控制位;用来确定累加器溢出时,对累加器的加载方式。OVM=0 将运算的溢出结果直接加载到累加器中;OVM=1 当正溢出时,将007FFFFFFFH加载累加器;当负溢出时,将FF80000000H加载累加器。,SXM:符号位扩展方式控制位;用来确定数据 在运算之前是否需要符号位扩展。SXM=0 数据进入ALU之前禁止符号位扩展;SXM=1 数据进入ALU之前进行符号位扩展。,C16:双16位/双精度算术运算方式
14、控制位;用来决定ALU的算术运算方式。C16=0 ALU工作在双精度算术运算方式;C16=1 ALU工作在双16位算术运算方式。,FRCT:小数方式控制位;用来确定乘法器的运算方式。FRCT=1 乘法器的输出左移一位,消除多余的符号位。,CMPT:间接寻址辅助寄存器修正方式控制位;用来决定ARP是否进行修正。CMPT=0 在进行间接寻址单操作数时,不修正ARP;CMPT=1 在进行间接寻址单操作数时,修正ARP。,ASM:累加器移位方式控制位。为某些具有移位操作的指令设定一个从-1615范围内的移位值。,主要反映处理器的寻址要求、计算初始状态的设置、I/O及中断的控制等。,3存储器模式状态寄存
15、器PMST,主要设定和控制处理器的工作方式和存储器的配置,反映处理器的工作状态。,中断向量指针,CPU工作方式选择位,RAM重复占位标志,地址可见控制位,数据ROM映射选择位,时钟输出选择位,乘法饱和方式位,存储饱和位,C54x的存储空间结构,C54x共有192K字的存储空间,分成 3个相互独立可选择的存储空间:,64K字(16位)的程序存储空间;64K字(16位)的数据存储空间;64K字(16位)的I/O空间。,程序存储空间:用来存放要执行的指令和指令执行中所需要的系数表(数学用表);数据存储空间:存放执行指令所需要的数据;I/O存储空间:用来提供与外部存储器映射的接口,可以作为外部数据存储
16、空间使用。,所有C54x芯片都含有片内RAM和ROM。,片内RAM,SARAM,DARAM,单寻址RAM,双寻址RAM,DARAM:由存储器内的一些分块组成。每个DARAM块在单周期内能被访问2次。,SARAM:由存储器分块组成。每个SARAM块在单周期内只能被访问1次。,DARAM和SARAM既可以被映射到数据存储空间用来存储数据,也可以映射到程序空间用来存储程序代码。,片内ROM:主要存放固化程序和系数表。一般构成程序存储空间,也可以部分地映射在数据存储空间。,C54x片内存储器资源配置,C54x所有内部和外部程序存储器及内部和外部数据存储器分别统一编址。内部RAM总是映射到数据存储空间,
17、但也可映射到程序存储空间。ROM可以灵活地映射到程序存储空间,同时也可以部分地映射到数据存储空间。存储空间的任何一种存储器都可以驻留在片内或片外。,MP/MC位:=0,片内ROM安排到程序空间=1,片内ROM不安排到程序空间OVLY位:=0,片内RAM安排到数据空间=1,片内RAM不安排到程序和数据空间DROM位:=0,片内RAM不安排到数据空间=1,部分片内RAM安排到数据空间,第2章 TMS320C54x的硬件结构,TMS320VC5416存储器配置结构,DROM=1 保留 DROM=0 外部存储器,FF00HFFFFH,DROM=1 内部ROMDROM=0 外部存储器,F000HFEFF
18、H,外部存储器,8000HEFFFH,内部DARAM(64K16位字),0080H7FFFH,暂存器SPRAM,0060H007FH,存储器映像寄存器,0000H005FH,地址,数据存储空间,存储器映像寄存器,在C54x的数据存储空间中,前80H个单元(数据页0)包含有的CPU寄存器、片内外设寄存器和暂存器。这些寄存器全部映射到数据存储空间,称作存储器映像寄存器MMR。,存储器映像寄存器MMR:CPU寄存器特殊功能寄存器;片内外设寄存器;暂存器SPRAM。,特殊功能寄存器 功能:主要用于程序的运算处理和寻址方式的选 择和设定。地址范围:0000H001FH。,C5402的CPU寄存器共有26
19、个,CPU访问这些寄存器时,不需要插入等待时间。,包括串行口通信控制寄存器组、定时器定时控制寄存器组、时钟周期设定寄存器组等。,暂存器SPRAM 功能:用来暂存变量。地址范围:0060H007FH。,外设寄存器 功能:用来控制片内外设电路的状态和存放数据。地址范围:0020H005FH。,存储器映像寄存器,I/O空间,C54x除了程序和数据存储空间外,还提供了一个具有64K字的I/O空间。主要用于对片外设备的访问。可以使用输入指令PORTR和输出指令PORTW对I/O空间寻址。,在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOTRB、IS和R/W控制线。,IOTRB和IS:用于
20、选通I/O空间;,R/W:用于控制访问方向(读或写)。,C54x的片内外设电路,C54x器件除了提供哈佛结构的总线、功能强大的CPU以及大容量的存储空间外,还提供了必要的片内外部设备。不同型号的C54x芯片,所配置的片内外设有所不同,这些片内外设主要包括:,通用I/O引脚 定时器 时钟发生器 主机接口HPI,串行通信接口 软件可编程等待 状态发生器 可编程分区转换逻辑,1通用I/O引脚,C54x芯片为用户提供了两个通用的I/O引脚。,XF:用于程序向外设传输标志信息。通过此引脚的置位或复位,可以控制外设 的工作。,2定时器,C54x的定时器是一个带有4位预分频器的16位可软件编程减法计数器。这
21、个减法计数器每来1个时钟周期自动减1,当计数器减到0时产生定时中断。通过编程设置特定的状态可使定时器停止、恢复运行、复位或禁止。,C54x的定时器主要包括3个存储器映像寄存器:,定时设定寄存器TIM 定时周期寄存器PRD 定时控制寄存器TCR,定时设定寄存器TIM 它是一个16位减法计数器,映射到数据存储空间的0024H单元。复位或定时器中断(TINT)时,TIM内装入PRD寄存器的值(定时时间),并进行自动减1操作。,定时周期寄存器PRD 16位的存储器映像寄存器,位于数据存储空间的0025H单元,用来存放定时时间常数。每次复位或TINT中断时,将定时时间装入TIM寄存器。,定时控制寄存器T
22、CR 16位的存储器映像寄存器,位于数据存储空间的0026H单元,用来存储定时器的控制位和状态位,包括定时器分频系数TDDR、预标定计数器PSC、控制位TRB和TSS等。,定时中断的周期:CLKOUT(TDDR1)(PRD1),时钟周期,分频系数,时钟周期,3时钟发生器,主要用来为CPU提供时钟信号,由内部振荡器和锁相环(PLL)电路两部分组成。可通过内部的晶振或外部的时钟源驱动。锁相环电路具有频率放大和信号提纯的功能,利用PLL的特性,可以锁定时钟发生器的振荡频率,为系统提供高稳定的时钟频率。锁相环能使时钟源乘上一个特定的系数,得到一个比内部CPU时钟频率低的时钟源。,4主机接口HPI,主机
23、接口HPI是C54x芯片具有的一种8位或16位的并行接口部件,主要用于DSP与其他总线或主处理机进行通信。HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存块实现与主机通信。,接口所需要的外部硬件少;HPI单元允许芯片直接利用一个或两个数据选通信号;有一个独立或复用的地址总线;一个独立或复用的数据总线与微控制单元MCU连接;主机和DSP可独立地对HPI接口操作;主机和DSP握手可通过中断方式来完成;主机可以通过HPI直接访问CPU的存储空间,包括存 储器映像寄存器。主机还可以通过HPI接口装载DSP的应用程序、接收 DSP运行结果或诊断DSP
24、运行状态。,主要特点:,5串行通信接口,C54x内部具有功能很强的高速、全双工串行通信接口,可以和其他串行器件直接接口。四种串行口:标准同步串行口SP 缓冲同步串行口BSP 时分多路串行口TDM 多路缓冲串行口 McBSP,6软件可编程等待状态发生器,功能:通过软件设置,完成外部总线周期的扩展,从而方便地实现C54x芯片与慢速的外部存储器和I/O设备的接口。在访问外部存储器时,软件等待状态寄存器(SWWSR)可为每32K字的程序、数据存储单元块和64K字的I/O空间确定014个等待状态。,7可编程分区转换逻辑,可编程分区转换逻辑也称为可编程存储器转换逻辑。当访问过程跨越程序或数据存储器边界时,
25、可编程分区转换逻辑会自动插入一个周期。当存储过程由程序存储器转向数据存储器时,也会插入一个周期。附加周期可以使存储器在其他器件驱动总线之前允许存储器释放总线,以避免总线竞争。转换的存储块的大小由存储器转换寄存器(BSCR)确定。,TMS320C55x低功耗DSP,使用0.13m铜互连和300mm硅片生产工艺,使得每片硅片的可切割芯片数目最多增加2.4倍,成本可减少六级。嵌入式低功耗高性能处理器。与C54x相比,编程灵活性更大。,TMS320C6x CPU,L Unit(Logic)32/40-bit fixed point arithmetic and compare operations32
26、/64-bit floating point arithmetic and compare operations(IEEE single and double precision)32-bit fixed point logical operationsFixed/floating point conversions64 to 32-bit floating point conversions,S Unit(Shifting)32-bit fixed point arithmetic operations32/40-bit shifts and 32-bit bit-fieldoperatio
27、nsBranching and constant generation32/64-bit floating point reciprocal,absolute value,compares,and 1/sqrt operations32 to 64-bit floating point conversions,M Unit(Multiply)16 x 16-bit fixed point multiplies24 x 24-bit fixed point multiplies32 x 32-bit fixed point multiplies32 x 32-bit single precision floating point multiplies64 x 64-bit double precision floating point multiplies,D Unit(Data address operation)32-bit add,subtract,linear,and circular address calculation8/16/32/64-bit loads8/16/32-bit stores,
链接地址:https://www.31ppt.com/p-3725916.html