第2章TMS320C55x的硬件结构.



《第2章TMS320C55x的硬件结构.》由会员分享,可在线阅读,更多相关《第2章TMS320C55x的硬件结构.(93页珍藏版)》请在文档大全上搜索。
1、nCPU寄存器寄存器 第第2章章 TMS320C55x的硬件结构的硬件结构2.4 CPU寄存器寄存器lC55x的寄存器(见表的寄存器(见表2-8 )lC55x寄存器的映射地址及描述(见表寄存器的映射地址及描述(见表2-9 )2.4.1 概况概况 注意事项:注意事项: ST0_55、ST1_55和和ST3_55都有两个访问地址;都有两个访问地址; T3、RSA0L、REA0L和和SP有两个访问地址;有两个访问地址; 任何装入任何装入BRC1的指令将相同的值装入的指令将相同的值装入BRS1。 对于对于ST0_55、ST1_55和和ST3_55,对于其中一个地址,所有的对于其中一个地址,所有的C55
2、x位均位均可访问;在另外一个地址(称为保护地可访问;在另外一个地址(称为保护地址),某些保护位不能被修改。保护地址),某些保护位不能被修改。保护地址是为了提供对址是为了提供对C54x代码的支持,以代码的支持,以便写入便写入ST0、ST1以及以及PMST(C54x对对应应ST3_55) 对于对于T3、RSA0L、REA0L和和SP,当使用当使用DP直接寻址方式访问存储器映直接寻址方式访问存储器映射寄存器时,将访问两个地址中更高的射寄存器时,将访问两个地址中更高的地址,即地址,即 T3=23H(不是(不是0EH);); RSA0L=3DH(不是(不是1BH);); REA0L=3FH(不是(不是1
3、CH);); SP=4DH(不是(不是18H)表表2-8 寄存器总表(寄存器总表(1)缩 写名 称大小AC0AC3累加器0340位AR0AR7辅助寄存器0716位BK03,BK47,BKC循环缓冲区大小寄存器16位BRC0,BRC1块循环计数器0和116位BRS1BRC1保存寄存器16位BSA01,BSA23,BSA45,BSA67,BSAC循环缓冲区起始地址寄存器16位CDP系数数据指针(XCDP的低位部分)16位CDPHXCDP的高位部分7位CFCT控制流关系寄存器8位CSR计算单循环寄存器16位DBIER0,DBIER1调试中断使能寄存器0和116位DP数据页寄存器(XDP的低位部分)1
4、6位DPHXDP的高位部分7位IER0,IER1中断使能寄存器0和116位IFR0,IFR1中断标志寄存器0和116位IVPD,IVPH中断向量指针16位表表2-8 寄存器总表(寄存器总表(2)PC程序计数器24位PDP外设数据页寄存器9位REA0,REA1块循环结束地址寄存器0和124位RETA返回地址寄存器24位RPTC单循环计数器16位RSA0,RSA1块循环起始地址寄存器0和124位SP数据堆栈指针16位SPHXSP和XSSP的高位7位SSP系统堆栈指针16位ST0_55ST3_55状态寄存器0316位T0T3暂时寄存器16位TRN0TRN1变换寄存器0和116位XAR0XAR7扩展辅
5、助寄存器0723位XCDP扩展系数数据指针23位XDP扩展数据页寄存器23位XSP扩展数据堆栈指针23位XSSP扩展系统堆栈指针23位表表2-9 存储器映射寄存器(存储器映射寄存器(1) 表表2-9 存储器映射寄存器(存储器映射寄存器(2) 表表2-9 存储器映射寄存器(存储器映射寄存器(3) 表表2-9 存储器映射寄存器(存储器映射寄存器(4) 表表2-9 存储器映射寄存器(存储器映射寄存器(5) 表表2-9 存储器映射寄存器(存储器映射寄存器(6) 表表2-9 存储器映射寄存器(存储器映射寄存器(7) 表表2-9 存储器映射寄存器(存储器映射寄存器(8) 表表2-9 存储器映射寄存器(存储
6、器映射寄存器(9) 2.4.2 累加器(累加器(AC0AC3)lC55x的的CPU包括包括4个个40位的累加器位的累加器AC0、AC1、AC2、AC3lAC0、AC1、AC2、AC3等价。任何一条使用一个累加等价。任何一条使用一个累加器的指令,都可以通过编程来使用器的指令,都可以通过编程来使用4个累加器中的任何一个累加器中的任何一个个l在在C54x兼容模式(兼容模式(C54CM=1)下,累加器)下,累加器AC0、AC1分分别对应于别对应于C54x里的累加器里的累加器A、B l 每个累加器分为低字(每个累加器分为低字(ACxL)、高字()、高字(ACxH) 和和8个个保护位(保护位(ACxG),
7、用户可以使用访问存储器映射寄存器用户可以使用访问存储器映射寄存器的寻址方式,分别访问这的寻址方式,分别访问这3部分部分 AC0GAC0LAC0HAC1GAC1LAC1HAC2GAC2LAC2HAC3GAC3LAC3HAC0AC1AC2AC3393231161502.4.3 变换寄存器变换寄存器TRN0、TRN1lC55x有有2个变换寄存器个变换寄存器TRN0、TRN1l用途:在用途:在比较比较-选择选择-极值极值指令里使用指令里使用u比较两个累加器的高段字和低段字后,执行选择两比较两个累加器的高段字和低段字后,执行选择两个个16位极值的指令,以更新位极值的指令,以更新TRN0和和TRN1。比较
8、累。比较累加器的高段字后更新加器的高段字后更新TRN0,比较累加器的低段字后,比较累加器的低段字后更新更新TRN1u在比较完两个累加器的全部在比较完两个累加器的全部40位后,执行选择一个位后,执行选择一个40位极值的指令,以更新被选中的变换寄存器位极值的指令,以更新被选中的变换寄存器(TRN0或或TRN1) 2.4.4 T寄存器(寄存器(T0-T3) l用途用途u存放乘法、乘加以及乘减运算里的一个乘数存放乘法、乘加以及乘减运算里的一个乘数u存放存放D单元里加法、减法和装入运算的移位数单元里加法、减法和装入运算的移位数u用交换指令交换辅助寄存器(用交换指令交换辅助寄存器(AR0-AR7)和)和T
9、寄存器寄存器中的内容时,跟踪多个指针值中的内容时,跟踪多个指针值u在在D单元单元ALU里作双里作双16位运算时,存放位运算时,存放Viterbi蝶形的蝶形的变换尺度变换尺度l CPU包括包括4个个16位通用位通用T寄寄存器:存器:T0、T1、T2、T32.4.5 用作数据地址空间和用作数据地址空间和I/O空间的寄存器空间的寄存器 表表2-10 用作数据地址空间和用作数据地址空间和I/O空间的寄存器空间的寄存器1. 辅助寄存器(辅助寄存器(XAR0XAR7/AR0AR7)低字的作用:低字的作用: 用于用于ARAR间接寻址模式,以间接寻址模式,以及双及双ARAR间接寻址模式。间接寻址模式。 提供提
10、供7 7位数据页内的位数据页内的1616位偏位偏移量(形成一个移量(形成一个2323位地址)位地址); ;存放位地址存放位地址; ;作为通用寄存器作为通用寄存器或计数器。或计数器。高高7 7位用于指定要访问数据位用于指定要访问数据空间的数据页空间的数据页访问属性:访问属性: XARn只能用专用指令访问; ARn可用专用指令访问,也可以作为存储器映射寄存器访问; ARnH不能单独访问,必须通过访问XARn来访问ARnHlCPU在存储器中映射了一个系数数据指针(在存储器中映射了一个系数数据指针(CDP)和)和一个相关的扩展寄存器(一个相关的扩展寄存器(CDPH):):2. 系数数据指针(系数数据指
11、针(XCDP/CDP)lCPU可以连接这个寄存器形成一个扩展系数数据指针可以连接这个寄存器形成一个扩展系数数据指针(XCDP)u高高7位(位(CDPH)用于指定要访问数据空间的数据页)用于指定要访问数据空间的数据页u低字(低字(CDP)用来作为)用来作为16位偏移量与位偏移量与7位数据页形成位数据页形成一个一个23位地址位地址 lXCDP或或CDP用在用在CDP间接寻址方式和系数间接寻间接寻址方式和系数间接寻址方式中,址方式中,CDP可用于任何指令中访问一个单数据可用于任何指令中访问一个单数据空间值,在双空间值,在双MAC指令中,它还可以独立地提供第指令中,它还可以独立地提供第三个操作数。三个