打印

STM32F4显著增强的DSP指令

[复制链接]
3369|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shyinyang|  楼主 | 2012-8-7 11:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单周期的乘加指令(MAC)
乘法器可以在单周期内完成相乘或乘加指令
有符号和无符号的乘法
有符号和无符号的乘加
有符号和无符号的长数据乘加(64位)
单周期的SIMD指令
同时有多个数据参与运算
例如:16x16 + 16x16 + 32
相对Cortex-M3指令显著提高了速度
16位乘加指令提高4倍(双16位乘加器)
32位乘加指令提高2倍
32位乘加指令提高至7倍
DSP指令提高了控制应用的性能
这是一个无刷电机控制中用到的一个复数计算
获益于LOAD操作和SIMD指令
整体性能提高25%至35%
Cortex M3 (28-38周期)
Cortex M4 (18-28周期)
LDRSH R12,[R4, #+12]
LDR R10,[R4, #+12]
LDRSH R0,[SP, #+20]
(1条32位load指令代替了2条带符号扩展的16位load指令:减少2个周期)
SXTH LR,R8
MUL R8,LR,R0
LDR R1,[R4, #+44]
SDIV R0,R1,R7
LDRSH R2,[R4, #+24]
LDRSH R3,[R4, #+26]
LDR R2,[R4, #+22]
LDRSH R10,[R4, #+22]
(1条32位load指令代替了2条带符号扩展的16位load指令:减少2个周期)
SXTH R6,R6
MLS R5,R6,R10,R5
MLA R5,R9,R12,R5
SMLSD R5, R10, R6, R5
(1条SIMD指令代替2条乘加指令:减少3个周期)
ASR R6,R8,#+15
MLA R5,R6,R3,R5
SXTH R0,R0
MLS R5,R0,R2,R5
SMLSD R5, R0, R2
(1条SIMD指令代替2条乘加指令:减少3个周期)
STR R5,[SP, #+12]
[size=13.333333969116211px]STM32F4_高性能的数字信号控制器.pdf
沙发
lvjing880907| | 2012-8-7 11:18 | 只看该作者
单周期的乘加指令(MAC)
乘法器可以在单周期内完成相乘或乘加指令
有符号和无符号的乘法
有符号和无符号的乘加

使用特权

评论回复
板凳
outstanding| | 2014-2-25 17:25 | 只看该作者
F4强

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:STM32F3系列公司现有货供应!STM32F0,STM32F2,STM32F3,STM32F4 银洋电子专业一级代理http://www.y-ec.com 联系电话:021-53086303  淘宝网:http://y-ec.taobao.com

1

主题

257

帖子

0

粉丝