DSP控制器原理与技术应用
上QQ阅读APP看书,第一时间看更新

2.3 TMS320F2833x数据格式解析

所有微处理器分为两大类,即“浮点”和“定点”。

常见的定点处理器有

1)基于Atmel AVR、ARM7和Cortex-M3内核的处理器。

2)Freescale HCS12X、MC56F83x、MCF523x。

3)Renesas SH4。

4)Texas Instruments MSP430、TMS320F280xx、Stellaris M3。

5)Infineon XE166、XC878。

6)ST Microelectronics STM32。

7)NEC V850ES/IE2。

8)Fujitsu MB91480。

9)MicrochipdsPIC 33FJxx。

10)NXP LPC2900。

11)Toshiba TMP370。

常见的浮点处理器有

1)Intel x86 Pentium。

2)Freescale MPC556、PowerPC。

3)Texas Instruments C6000、DaVinci、TMS320F2833x。

定点数,俗称小数点固定的数。浮点数,就是小数点不固定的数。例如,数字“1234”,就是纯整数的定点数,若将其写成浮点数,可以写成1.234×103、12.34×102或者123.4×101

TMS320F2833x涵盖了定点和浮点两种数据格式。其中所包含的硬件浮点运算单元(FPU)支持IEEE 754标准。当需要操作浮点数据或进行高动态范围数值计算时,这种浮点处理器非常有效。但当进行位操作、输入输出控制、中断操作等相关控制任务时,效率不高。具有硬件浮点处理能力的微处理器价格比定点微处理器价格高。

定点处理器内部的硬件结构支持整型数据。算术逻辑单元ALU和硬件乘法器单元MAC要求参与运算的数据格式为整型,这就大大限制了定点处理器进行数据运算的动态范围。在定点处理器中使用C语言声明一个浮点型数据(“float”或“double”)时,会发生什么情况?相关的库函数会支持这类操作。但是标准ANSI C函数会消耗大量的CPU资源,在实时性较高的场合并不适用。

TMS320F2833x提供两种解决方案:调用“IQMath”优化库函数和FPU浮点单元。IQMath是一套高度优化的库函数,它能实现浮点算法与数学定点代码进行无缝链接。使用IQMath可明显地缩短嵌入式控制开发时间。