2.2.7 TMS320C67x控制寄存器扩展
为了支持浮点的运算,TMS320C67x还有3个附加的配置寄存器,这些寄存器为.L和.M单元规定了所要求的浮点舍入模式,这些寄存器还包括一些字段用来检测src1和src2是否为无效数(NaNs)或非归一化数,其结果是否上溢、下溢、不准确的、无穷大还是无效的。还有些字段警告是否执行了除0操作或是否用NaNs源操作数进行比较运算。TMS320C67x控制寄存器扩展参见表2-7。寄存器中的OVER、UNDER、INDEX、INVAL DENn、NANn和DIV0位不会被条件指令为假的指令修改。
表2-7 TMS320C67x控制寄存器扩展

(1)浮点加法配置寄存器(FADCR)
浮点加法配置寄存器(FADCR)指出使用.L单元的指令的上溢、下溢、舍入模式、NaNs、未归一数和不准确结果。FADCR的字段分为两组,分别对应着L1和L2单元。FADCR的格式如图2-9所示。FADCR各个字段的功能描述参见表2-8。

图2-9 浮点加法配置寄存器(FADCR)格式
表2-8 浮点加法器配置寄存器(FADCR)各字段功能

(2)浮点辅助配置寄存器(FAUCR)
浮点辅助配置寄存器(FAUCR)的字段用来说明指出.S功能单元的结果,包括上溢、下溢、舍入模式、NaNs、未归一数和不准确结果。该字段分为两组,分别对应.S1和.S2单元,如图2-10所示为浮点辅助配置寄存器(FAUCR)的格式,FAUCR各字段的功能描述参见表2-9。

图2-10 浮点辅助配置寄存器(FAUCR)格式
表2-9 浮点辅助配置寄存器(FAUCR)各字段功能

(3)浮点乘法配置寄存器(FMCR)
浮点乘法配置寄存器(FMCR)指出使用.M功能单元的指令运算情况,包括上溢、下溢、舍入模式、NaNs、未归一数和不准确结果。FMCR的字段分为两组分别对应.M1和.M2单元,如图2-11所示为浮点乘法配置寄存器(FMCR)的格式,FMCR各字段的功能描述参见表2-10。

图2-11 浮点乘法配置寄存器(FMCR)格式
表2-10 浮点乘法配置寄存器(FMCR)各字段功能
