首页 理论教育 控制寄存器组的掌控与调节

控制寄存器组的掌控与调节

时间:2023-07-02 理论教育 版权反馈
【摘要】:表2-3列出了TMS320C6x通用的控制寄存器及其描述。表2-3 TMS320C6x通用的控制寄存器及其描述1.控制寄存器组寻址模式寄存器TMS320C6x支持线性寻址和循环寻址。图2-8控制状态寄存器表2-6控制状态寄存器字段描述CPUID和RevisionID共16位,这16位的编码见表2-7。图2-9E1节拍程序计数器2.TMS320C67x扩展控制寄存器TMS320C67xDSP增加了浮点数运算功能,为此,扩展了3个控制寄存器,分别是浮点加法配置寄存器、浮点辅助配置寄存器和浮点乘法配置寄存器。

控制寄存器组的掌控与调节

对控制寄存器的读/写,只能通过MVC指令实现,MVC指令的执行功能单元是.S2。表2-3列出了TMS320C6x通用的控制寄存器及其描述。

表2-3 TMS320C6x通用的控制寄存器及其描述

978-7-111-37346-9-Chapter02-13.jpg

1.控制寄存器组

(1)寻址模式寄存器(Addressing Mode Register,AMR)

TMS320C6x支持线性寻址和循环寻址。其中,所有寄存器支持线性寻址,寄存器A4~A7和B4~B7同时还支持循环寻址。A4~A7和B4~B7的寻址方式由AMR确定。

AMR的字段编码见表2-4。AMR的模式(Mode)选择字段用来定义寄存器的寻址方式,Mode的编码见表2-4。AMR的复位初值为零,其保留字段总是为零。

表2-4 AMR模式(Mode)字段编码

978-7-111-37346-9-Chapter02-14.jpg

对于数据存储器的访问,只能通过LD(数据读取)和ST(数据存储)指令完成。LD指令和ST指令的基本格式如图2-7所示。

AMR的BK字段用来定义循环缓冲区的大小,循环缓冲区的大小(S)和BK字段的关系为:S-2(BK+I)。表2-5列出了所有32种循环缓冲区的S值及相应的BK。

978-7-111-37346-9-Chapter02-15.jpg

图2-7 LD指令和ST指令的基本格式

表2-5 循环缓冲区的S值及相应的BK

978-7-111-37346-9-Chapter02-16.jpg

(2)控制状态寄存器(Control Status Register,CSR)(www.xing528.com)

CSR包括控制位和状态位,CSR的格式如图2-8所示,各字段的功能见表2-6。

978-7-111-37346-9-Chapter02-17.jpg

图2-8 控制状态寄存器

表2-6 控制状态寄存器字段描述

978-7-111-37346-9-Chapter02-18.jpg

CPUID和RevisionID共16位,这16位的编码见表2-7。

表2-7 CPUID和RevisionID的编码

978-7-111-37346-9-Chapter02-19.jpg

(3)E1节拍程序计数器(PCE1:Program Counter E1phase)

PCE1用来存放流水线中处于E1节拍的指令包的32位地址,PCE1的格式如图2-9所示。

978-7-111-37346-9-Chapter02-20.jpg

图2-9 E1节拍程序计数器

2.TMS320C67x扩展控制寄存器

TMS320C67xDSP增加了浮点数运算功能,为此,扩展了3个控制寄存器,分别是浮点加法配置寄存器(FADCR)、浮点辅助配置寄存器(FAUCR)和浮点乘法配置寄存器(FM- CR)。这些寄存器分别规定了.L、.S和.M功能单元浮点运算的舍入模式(Rounding Mode),以及分别对.L、.S和.M功能单元的浮点运算的异常情况作出告警指示。这些告警指示包括:源操作数SRC1和SRC2是否为无效数NaN(NotaNumber)或是否为非归一化数(Denormalized Number);运算结果是否上溢出(Overflow),或下溢出(Underflow),或不准确(Inexact),或无穷(Infinite),或无效(Invalid)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈