第二章硬件结构精选文档.ppt
第二章硬件结构本讲稿第一页,共八十页PGEPGE封装封装本讲稿第二页,共八十页TI DSPTI DSP命名规则命名规则本讲稿第三页,共八十页TMS320C54xTMS320C54x系列系列DSPDSP的特性的特性本讲稿第四页,共八十页一、一、TMS320C54X硬件结构硬件结构GP I/OD(15-0)A(19-0)Program/Data Buses Timer Program/Data RAMCh 0Ch 1Ch 2Ch 3Ch 4Ch 5DMA Timer Program/Data ROMPeripheral BusRND,SAT17 x 17 MPY40-Bit AdderMACShifter40-Bit Barrel(-16,31)EXP Encoder40-Bit ALUCMPS Operator(VITERBI)ALUAccumulators40-Bit ACC A40-Bit ACC B8 Auxiliary Registers2 Addressing UnitsAddressing Unit Host PortInterface(HPI)Multichannel BufferedSerial Port(McBSP)JTAG Test/EmulationControlMultichannel BufferedSerial Port(McBSP)PLL Clock Generator S/W WaitstateGeneratorPower Management本讲稿第五页,共八十页功能框图功能框图本讲稿第六页,共八十页二、二、C54x DSPC54x DSP的组成及总线结构的组成及总线结构本讲稿第七页,共八十页1.DSP的组成框图的组成框图17x17 乘法累加单元乘法累加单元饱和和舍入硬件饱和和舍入硬件2个个40位的位的 ACC1个个40位的位的ALU1个个40位的桶式移位寄位的桶式移位寄存器存器暂存器暂存器指数编码器指数编码器程序和地址发生单元程序和地址发生单元比较选择存储单元比较选择存储单元4 条内部总线条内部总线功能强大的外部接口功能强大的外部接口本讲稿第八页,共八十页2.C54xDSP的总线结构的总线结构地址总线(4条):PAB、CAB、DAB、EAB:传送执行指令所需的地址。程序总线程序总线PBPBPABPAB:从程序存储器取指令和取操作数。数据总线数据总线(3(3条条)CB/CAB)CB/CAB、DB/DABDB/DAB、EB/EABEB/EAB:其中:C、D 数据总线:传送来自数据存储器中的操作数;E数据总线:将数据写入数据存储器。本讲稿第九页,共八十页C54xDSPC54xDSP的总线结构的总线结构优化核优化核JTAG TEST/EML CONTROLROMRAM电源管理电源管理 程序程序/数据总线数据总线 外设总线外设总线D(15-0)A(15-0)外设外设本讲稿第十页,共八十页C54xDSP的总线结构的总线结构中央算术中央算术逻辑单元逻辑单元外部存储器外部存储器MMU UX X内部存储器内部存储器MMU UX XE ES SPALUSHIFTERBTMACAPCCNTLECDARs 计数逻辑计数逻辑本讲稿第十一页,共八十页C54xDSP的总线结构的总线结构1616位位位位0-wait0-waitROMROME BusE BusC BusC BusD BusD BusP BusP BusExtlExtlMemMemI/FI/F1616位位位位0-wait0-waitDARAMDARAM本讲稿第十二页,共八十页表表:各种读各种读/写方法用到的总线写方法用到的总线读读/写写 地址地址 总线总线 PB 数据数据 总线总线 方式方式 PAB CAB DAB EAB PB CB DB EB 程序读程序读 程序写程序写 单数据读单数据读 双数据读双数据读 长数据长数据(32位位)读读 (hw)(lw)(hw)(lw)单数据写单数据写 数据读数据读/数据写数据写 双数据读双数据读/系数读系数读 外设读外设读 外设写外设写 注:注:hw=高高16位字,位字,lw=低低16位字。位字。本讲稿第十三页,共八十页三、三、C54x DSPC54x DSP的的中央处理单元中央处理单元到总线到总线MACALU17 X 17 MPY40 BIT ADDERRND,SAT40 BIT ALUCMPS OPERATOR(VITERBI)EXP ENCODER桶式移位寄存器桶式移位寄存器累加器累加器40 BIT BARREL(-16,31)40 BIT ACC A40 BIT ACC B寻址单元寻址单元8 8 辅助寄存器辅助寄存器2 2 寻址单元寻址单元本讲稿第十四页,共八十页1.1.算术逻辑运算单元算术逻辑运算单元(ALU)(ALU)本讲稿第十五页,共八十页算术逻辑运算单元算术逻辑运算单元(ALU)(ALU)ALU ALU 的输入:的输入:X输入端(2个来源):移位寄存器输出DB数据总线的操作数Y输入端(4个来源):累加器A的数据累加器B的数据数据总线CB的数据存储器操作数T寄存器中的数据本讲稿第十六页,共八十页算术逻辑运算单元算术逻辑运算单元(ALU)(ALU)ALU ALU 的输出:的输出:ALU的输出为40位;送往目的地:累加器A或累加器B本讲稿第十七页,共八十页2.2.累加器累加器A A和和B B保护位:防止计算过程中溢出AG、AH、AL、BG、BH、BL都是MMR累加器A和B的差别:A(31-16)可作为乘法器输入39-3231-1615-0累加器累加器AAGAHAL保护位保护位高阶位高阶位低阶位低阶位39-3231-1615-0累加器累加器BBGBHBL保护位保护位高阶位高阶位低阶位低阶位本讲稿第十八页,共八十页3.3.桶形移位器桶形移位器本讲稿第十九页,共八十页桶形移位器桶形移位器输入 DB(16位数)DB、CB(32位数)累加器A或B(40位数)输出 ALU的一个输入端(40位数)EB(16位数)本讲稿第二十页,共八十页桶形移位器的移位控制桶形移位器的移位控制指令中的移位数就是移位的位数。移位数都是用2的补码表示,正值表示左移,负值表示右移。移位数的来源:指令中的一个立即数(-16到15);状态寄存器ST1的累加器移位方式(ASM)位(-16到15);或者T寄存器中最低6位的数值(-16到 31)。例如:本讲稿第二十一页,共八十页桶形移位器应用举例桶形移位器应用举例ADD A,-4,B ;累加器A右移4位后加到累加器B ADD A,ASM,B ;累加器A按ASM规定移位后加到累加器B NORM A ;按T寄存器中的数值对累加器归一化本讲稿第二十二页,共八十页桶形移位器的任务桶形移位器的任务u在ALU运算前,对来自数据存储器的操作数或者累加器的值进行定标定标;u对累加器的值进行算术或逻辑移位移位u对累加器归一化归一化处理u对累加器的值存储到数据存储器之前进行定标本讲稿第二十三页,共八十页4.乘法器乘法器/加法器加法器本讲稿第二十四页,共八十页乘法器乘法器/加法器特点加法器特点w乘法器乘法器/加法器与一个加法器与一个40-bit的累加器在一个单指令周期里完成的累加器在一个单指令周期里完成17x17-bit的二进制补码运算。乘法器的二进制补码运算。乘法器/加法器单元由以下部分组加法器单元由以下部分组成:乘法器,加法器,带符号成:乘法器,加法器,带符号/无符号输入控制,小数控制,零无符号输入控制,小数控制,零检测器,舍入器(二进制补码),溢出检测器,舍入器(二进制补码),溢出/饱和逻辑和暂存器饱和逻辑和暂存器(TREG)。)。w乘法器有两个输入:一个是从乘法器有两个输入:一个是从TREG,数据存储器操作数,或,数据存储器操作数,或一个累加器中选择;另一个则从程序存储器,数据存储器,一一个累加器中选择;另一个则从程序存储器,数据存储器,一个累加器或立即数中选择。个累加器或立即数中选择。w另外,乘法器和另外,乘法器和ALU在一个指令周期里共同执行乘在一个指令周期里共同执行乘/累加累加(MAC)运算和并行的)运算和并行的ALU运算。运算。本讲稿第二十五页,共八十页5.比较、选择、存储单元比较、选择、存储单元本讲稿第二十六页,共八十页比较、选择、存储单元特点比较、选择、存储单元特点 比较、选择和存储单元(比较、选择和存储单元(CSSUCSSU)完成累加)完成累加器的高位字和低位字之间的最大值比较,器的高位字和低位字之间的最大值比较,即选择累加器中较大的字并存储在数据存即选择累加器中较大的字并存储在数据存储器中,改变状态寄存器储器中,改变状态寄存器ST0ST0中的测试中的测试/控控制位和传送寄存器(制位和传送寄存器(TRNTRN)的值。同时,)的值。同时,CSSUCSSU利用优化的片内硬件促进利用优化的片内硬件促进ViterbiViterbi型型蝶形运算蝶形运算.本讲稿第二十七页,共八十页6.指数编码器指数编码器本讲稿第二十八页,共八十页7.CPU状态和控制寄存器状态和控制寄存器C54有3个状态和控制寄存器:状态寄存器0(ST0)(MMR:6)状态寄存器1(ST1)(MMR:7)处理器工作方式状态寄存器(PMST)(MMR:1D)wPMST,ST0PMST,ST0和和ST1ST1包括了各种条件和方式的状态,包括了各种条件和方式的状态,PMSTPMST包括包括了存储器配置状态和控制信息。了存储器配置状态和控制信息。本讲稿第二十九页,共八十页状态寄存器0(ST0)本讲稿第三十页,共八十页状态寄存器状态寄存器ST0各状态位的功能各状态位的功能(1)位位名称名称 复位值复位值功功 能能15-13 ARP000辅助寄存器指针。这辅助寄存器指针。这3位字段是在间接寻址单操作数时,用来位字段是在间接寻址单操作数时,用来选择辅助寄存器的。当选择辅助寄存器的。当DSP处在标准方式时处在标准方式时(CMPT=0),ARP必定置成必定置成0。12TC1测试测试/控制标志位。控制标志位。TC保存保存ALU测试位操作的结果。测试位操作的结果。TC受受BIT、BITF、BITT、CMPM、CMPR、CMPS以及以及SFTC等等指令影响。可以由指令影响。可以由TC的状态的状态(1或或0),决定条件分支转移指令、,决定条件分支转移指令、子程序调用以及返回指令是否执行。如果下列条件成立,则子程序调用以及返回指令是否执行。如果下列条件成立,则TC=1:l 由由BIT或或BITT指令所测试的位等于指令所测试的位等于1。l 执行执行CMPM、CMPR或或CMPS比较指令时,比较一个数比较指令时,比较一个数据存储单元中的值与一个立即操作数、据存储单元中的值与一个立即操作数、AR0与另一个辅助与另一个辅助寄存器、或者一个累加器的高字与低字的条件成立。寄存器、或者一个累加器的高字与低字的条件成立。l 用用SFTC指令测试某个累加器的第指令测试某个累加器的第31位和第位和第30位彼此不位彼此不相同。相同。本讲稿第三十一页,共八十页状态寄存器状态寄存器ST0各状态位的功能各状态位的功能(2)累加器算术移位累加器算术移位 累加器逻辑移位累加器逻辑移位 条件分支转移条件分支转移 条件返回条件返回 条件调用条件调用 条件执行条件执行本讲稿第三十二页,共八十页状态寄存器状态寄存器ST0各状态位的功能各状态位的功能(3)本讲稿第三十三页,共八十页状态寄存器状态寄存器1(ST1)本讲稿第三十四页,共八十页状态寄存器状态寄存器ST1各状态位的功能各状态位的功能(1)本讲稿第三十五页,共八十页状态寄存器状态寄存器ST1各状态位的功能各状态位的功能(2)本讲稿第三十六页,共八十页状态寄存器状态寄存器ST1各状态位的功能各状态位的功能(3)本讲稿第三十七页,共八十页状态寄存器状态寄存器ST1各状态位的功能各状态位的功能(4)本讲稿第三十八页,共八十页处理器工作方式状态寄存器(处理器工作方式状态寄存器(PMSTPMST)本讲稿第三十九页,共八十页寄存器寄存器PMST各状态位的功能各状态位的功能(1)本讲稿第四十页,共八十页寄存器寄存器PMST各状态位的功能各状态位的功能(2)本讲稿第四十一页,共八十页寄存器寄存器PMST各状态位的功能各状态位的功能(3)本讲稿第四十二页,共八十页寄存器寄存器PMST各状态位的功能各状态位的功能(4)本讲稿第四十三页,共八十页四、四、存储器存储器w存储空间分为程序空间,数据空间,存储空间分为程序空间,数据空间,I/OI/O空间空间w存储器有存储器有ROMROM和和RAMRAM,其中,其中,RAMRAM又可以分又可以分为为SARAMSARAM和和DARAMDARAMw single-access RAM single-access RAM 单访问单访问RAMRAMw double-access RAM double-access RAM 双访问双访问RAMRAM本讲稿第四十四页,共八十页存储器功能存储器功能w程序空间包含执行指令和常量数据表程序空间包含执行指令和常量数据表w数据空间用于存放指令的操作数数据空间用于存放指令的操作数wI/O空间用于存储器映射外设和存放数据空间用于存储器映射外设和存放数据本讲稿第四十五页,共八十页存储器存储器C54存储空间(至少192K字):n 至少64K字程序存储空间n 64K字数据存储空间n 64K字I/O空间nC5402的程序存储空间可扩展到1M字本讲稿第四十六页,共八十页表表:TMS320C5402 片内程序和数据存储器片内程序和数据存储器片内存储器:不需要插入等待状态,成本低,功耗小。片外存储器:存储空间大本讲稿第四十七页,共八十页1.存储器的配置存储器的配置处理器工作方式状态寄存器(PMST)中的3个状态位与片内存储器的关系:MP/MC位:若若MP/MC=0MP/MC=0,则片内,则片内ROMROM安排到程序空间安排到程序空间若若MP/MC=1,MP/MC=1,则片内则片内ROMROM不安排到程序空间不安排到程序空间OVLY位:若若OVLY=1OVLY=1,则片内则片内RAMRAM安排到程序和数据空间安排到程序和数据空间若若OVLY=0OVLY=0,则片内则片内RAMRAM只安排到数据存储空间只安排到数据存储空间DROM位:当当DROM=1DROM=1,则部分片内,则部分片内ROMROM安排到数据空间安排到数据空间当当DROM=0DROM=0,则片内,则片内ROMROM不安排到数据空间不安排到数据空间DROMDROM如何用法与如何用法与MP/MCMP/MC的用法无关的用法无关本讲稿第四十八页,共八十页54025402存储器的配置存储器的配置本讲稿第四十九页,共八十页2.程序存储器程序存储器wC5402的外部程序存储器可寻址1M字w片内ROM、DARAM都可以映象为程序存储器w当PAGEN(程序地址生成器)发出的地址处片上内存储器地址范围地址以外时,CPU将自动对外部寻址本讲稿第五十页,共八十页表:表:TMS320C5402 TMS320C5402 片内程序存储器片内程序存储器本讲稿第五十一页,共八十页C54片内2K字ROM(F800hFFFF)中的内容(I公司定义)w自举加载程序,可从串行口、外部存储器、I/O口、或者主机接口自举加载。w256字律压扩表。w256字A律压扩表。w256字正弦函数值查找表。w中断向量表。本讲稿第五十二页,共八十页3.数据存储器数据存储器wC54数据存储器容量64K字w 片内数据存储器:SRAM,DARAMw 通过软件,片内ROM可以映象为数据存储器空间w 当CPU发出的地址落在片上存储器范围外部时,将自动地对外部存储器空间寻址本讲稿第五十三页,共八十页54025402的数据存储器的数据存储器本讲稿第五十四页,共八十页片内片内RAM前前1K配置图配置图MMR存储器映象CPU寄存器:不需要插入等待周期MMR 存储器映象外围电路寄存器:至少需要两个周期本讲稿第五十五页,共八十页表:存储器映象表:存储器映象CPU寄存器寄存器本讲稿第五十六页,共八十页数据空间分页机制原理数据空间分页机制原理本讲稿第五十七页,共八十页4.I/O存储器存储器I/O存储空间:64K字I/O存储空间全部片外访问I/O空间指令:PORTR,PORTW本讲稿第五十八页,共八十页五 TMS320C54x片内外设简介1通用I/O引脚2定时器3时钟发生器4主机接口(HPI)5串行口6软件可编程等待状态控制7可编程分区转换逻辑本讲稿第五十九页,共八十页1 等待状态控制等待状态控制w目的是目的是DSP访问低速外部存储器时,自动插访问低速外部存储器时,自动插入等待周期入等待周期w软件等待状态寄存器软件等待状态寄存器(SWWSR),是存储器映,是存储器映射寄存器,位于数据空间射寄存器,位于数据空间0028hw软件等待状态控制寄存器(软件等待状态控制寄存器(SWCR),是存),是存储器映射寄存器,位于数据空间储器映射寄存器,位于数据空间002Bhw可编程块切换逻辑控制寄存器(可编程块切换逻辑控制寄存器(BSCR)是)是存储器映射寄存器,位于数据空间存储器映射寄存器,位于数据空间0029h本讲稿第六十页,共八十页软件等待状态寄存器软件等待状态寄存器(SWWSR)u目的:与慢速存储器或I/O设备接口u产生等待状态的两种方法:u(1)软件可编程等待状态发生器 最多可使外部总线周期延长7个Tu(2)软件和硬件混合产生等待状态本讲稿第六十一页,共八十页软件等待状态寄存器软件等待状态寄存器框图本讲稿第六十二页,共八十页软件等待状态寄存器(SWWSR)本讲稿第六十三页,共八十页软件等待状态寄存器(SWWSR)本讲稿第六十四页,共八十页软件等待状态寄存器(SWWSR)的用法 用法:STM2009,SWWSRn20090 010 000 000 001 001,将在寻址I/O空间时插入2T,寻址程序空间时插入1T,寻址数据空间时不插入等待状态。本讲稿第六十五页,共八十页软件等待状态控制寄存器软件等待状态控制寄存器SWCR本讲稿第六十六页,共八十页2.分区转换逻辑u可编程分区转换逻辑的功能:u当C54x 在外部存储器分区之间切换时,不需要外部为存储器插等待状态,分区转换逻辑会自动插入一个周期。u分区转换控制寄存器(BSCR)本讲稿第六十七页,共八十页分区转换逻辑本讲稿第六十八页,共八十页分区转换逻辑本讲稿第六十九页,共八十页3.C54xDSP主要特性主要特性电源电源w可用IDLE1、IDLE2和IDLE3指令控制功耗,以工作在省电方式wCLKOUT输出信号可以关断w采用3.3V和1.8V工作电压 以上电源特点均是为了一个目的降低电源功耗本讲稿第七十页,共八十页4.C54xDSP主要特性主要特性片上仿真接口片上仿真接口 具有符合IEEE1149.1标准的片上仿真接口JTAG接口本讲稿第七十一页,共八十页5、TMS320VC5402引脚及说明TMS320VC5402的引脚 1本讲稿第七十二页,共八十页TMS320VC5402引脚说明本讲稿第七十三页,共八十页TMS320VC5402引脚说明本讲稿第七十四页,共八十页TMS320VC5402引脚说明本讲稿第七十五页,共八十页TMS320VC5402引脚说明本讲稿第七十六页,共八十页TMS320VC5402引脚说明本讲稿第七十七页,共八十页TMS320VC5402引脚说明本讲稿第七十八页,共八十页TMS320VC5402引脚说明本讲稿第七十九页,共八十页TMS320VC5402引脚说明本讲稿第八十页,共八十页