2884|0

7172

帖子

195

TA的资源

五彩晶圆(高级)

楼主
 

第四篇 GD32VF103C START RISC-V和Corex-M3指令测试 [复制链接]

 

第四篇 GD32VF103C START RISC-V和Corex-M3指令测试

 

加减乘除运算应该是每个人编程都会用得到,本篇就想看看RSIC-VM3的加减乘除取余等等运算有什么区别。

 

乘法运算:

 

M3

 

RSIC-V

 

简单的例子反汇编:

 

RSIC-V反汇编

 

 

 

除法运算:

长期以来, ARM-32 只有乘法而无除法指令。直到第一台 ARM 处理器诞生的大约 20 年后(2005 年),除法指令才成为 ARM 的必要组成部分

 

Cortex-M3包含两个硬件除法指令, SDIV UDIVThumb-2 指令)

 

 

RSIC-V带除法指令,

 

 

M3 整型除法汇编

 

 

RSIC-V 浮点数除法汇编运算

 

 

取余运算:

 

RV32M 具有有符号和无符号整数的除法指令: divide(div)divide unsigned(divu),它们将商放入目标寄存器。在少数情况下,程序员需要余数而不是商,因此 RV32M 提供
remainder(rem)remainder unsigned(remu),它们在目标寄存器写入余数,而不是商。

 

而M3是没有取余的,需要通过乘法和加减一起来实现。

 

 

 

 

 

试验跑起来

 

由于我逻辑分析仪是20M采样率,我把RSIC-VM3的主频都设置在了24MHZ,否则测的不会很准,毕竟乘除法可能只是几个指令周期的活。

 

1num=i*j+i*k 乘法 I j 整型数据

 

2num=i*j 乘法 I j float型数据

 

 

3num = i/j +i/k除法 I j是整型数据

 

M3是硬件除法器,在整型除法里耗时比RISC-V要短。

 

4num = i/j+I/K 除法 I jfloat型数据

在浮点数除法运算力,RISC-V的表现是快了一半

5i%j+i%k整数取余

虽然RISC-V的取余是直接得到,和M3不一样,但是耗时却更加长了,不知道改的意义在哪里???

 

 

总体来说,RISC-VCortex-M3在同等频率、同等运算下进行测试,很多运算指令执行速度要相对快一些。

点赞 关注(1)
 
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表