Phimas

【原创】【翻译】从Cortex - M3过度到Cortex - M4(2)----Cortex - M4特点

0
阅读(5076)

由于本人文笔拙劣,可能翻译的不到位,望大家多多包涵,有异议请指出,谢谢。

原作者:罗伊.罗

Cortex - M4的特点

 2.1    32位乘法累加(MAC)单元
        Cortex - M4的32位的硬件乘法累加(MAC)单元能在单信号周期完成一次最大32 *32或64的操作 或两次16*16的操作。这种高性能的单位数字信号处理更加高效,并且大大降低了CPU资源的消耗。32位乘法累加(MAC)单元有三个主要特点:
(1)非常宽泛的乘法累加指令
(2)选择16位,32位的乘法和32位,64位累加
(3)所有指令在一个周期内即可执行
 
 2.2   单指令多数据流(SIMD)指令
        Cortex - M4继承了了一整套单周期SIMD指令。SIMD指令设置包括一系列的DSP指令,例如加,减,乘,和乘加,它是用来实现一些常见的DSP操作,包括FIR,IIR,复数FFT,PID控制,矩阵加法,矩阵加减,和矩阵乘法等。随着这些指令,Cortex - M4可以比Cortex - M3提供更高运行计算效率的DSP方案。在SIMD 有三个主要特点:
(1)四个(4个并行)8位加法或减法
 (2)双(2个并行)16位加法或减法
 (3)所有指令在一个周期内执行
 
 2.3  浮点运算单元(FPU)
        FPU是一个Cortex - M4的运算单元。制造商可以根据自己产品各自不同的要求,自行决定此是否可用。FPU充分支持单精度的加,减,乘,除,乘,乘加,平方和平方根运算。它还提供定点和浮点数据格式,浮点常量指令之间的转换。FPU有四个主要特点:
(1)FP扩展寄存器,该软件可以看成32位单精度或16位双字寄存器
 (2)单精度浮点运算
 (3)整数,单精度浮点数,和半精度浮点格式之间的转换(16位)
 (4)单精度和双字的数据传输寄存器
       
        其余如NVIC(嵌套向量中断控制器),MPU(内存功能保护单元),DAP(调试访问端口)与Cortex - M3相同。详细信息请查询Cortex - M3的的数据手册。