RV32EmC指令集中的m
国产芯片选型中查询到了沁恒的CH32V002芯片,其为青稞32位RISC-V2C处理器,RV32EmC指令集。看沁恒的产品路线图,其应该是CH32V003系列的升级版本,所以其指令集上也就多了这个“m”指令。
整数乘法与除法扩展指令集
RV32EmC指令集中的m,是RISC-V标准定义的「整数乘法与除法扩展指令集(Integer Multiplication and Division Extension)」,是沁恒青稞RISC-V2C内核原生硬件实现的核心功能特性。我对比CH32V002较CH32V003升级的明显功能特性。
核心功能定义
这个扩展指令集为32位RISC-V内核新增了8条专用硬件运算指令,覆盖:
- 32位有符号/无符号整数乘法(MUL)
- 32位有符号整数取高半积(MULH/MULHSU)
- 32位无符号整数取高半积(MULHU)
- 32位有符号/无符号整数除法(DIV/DIVU)
- 32位有符号/无符号整数取余(REM/REMU)
性能提升
- 所有乘除运算完全由硬件电路单周期/少周期完成,完全不需要软件模拟,相比没有M扩展的RV32E内核,32位乘法运算速度提升5
10倍,除法运算速度提升815倍
- 青稞RISC-V2C对比同系列RISC-V2A的核心硬件升级点,专门针对电机FOC运算、PID调节、传感器数据滤波这类高频数学计算场景做了性能优化
有了硬件乘除法指令对算法的实现的稳定性大幅增加,对于周期性的计算,比如PID算法控制将是非常有益。
就先了解到这里吧!画个CH32V002的小板玩玩去了!