皋陶 发表于 2020-8-23 11:50:09

RISC-V为微控制器应用考虑的特性

本帖最后由 皋陶 于 2020-8-26 12:21 编辑

RISC-V是加州大学伯克利分校(UC Berkeley)推出的开源处理器架构。RISC-V的设计具有极强的伸缩性,可以应用在从微控制器到集群计算机等各种级别的应用。我是搞嵌入式的,比较关注RISC-V在微控制器上的应用。
mingdu.zheng at gmail dot com

特权级别RISC-V定义了三个特权基本,分别是U-mode、S-mode和M-mode,即用户模式、管理模式和机器模式。三种模式只有M-mode是必须要实现的,其它两种模式是可选的。当只实现M-mode的时候,RISC-V就是作为一个微控制器来使用了,只能裸跑或者使用RTOS。当实现了全部三种模式,RISC-V可以作为应用处理器来实现,可以运行Linux等系统。将S-mode和U-mode设计成可选项是RISC-V支持微控制器应用的首要特性。
RV32E
标准的RV32I指令集定义了32个通用寄存器,RV32E在RV32I的基础上进行了裁剪,将寄存器个数从32个减少到16个,使得RISC-V适用于低成本的嵌入式应用。默认情况下,RISC-V的堆栈要求128位对齐,使用RV32E则只需要32位对齐,这减少了堆栈空间的浪费。
C扩展
标准的RISC-V指令是32位长的(通过扩展,可以有更长的指令,但目前的标准指令都是32位长),通过C扩展引入16位长的指令,16位长指令的引入提高了代码密度,就像当年的ARM引入16位的Thumb指令来提高代码密度一样。不过和ARM引入Thumb不同的是:RISC-V的16位指令和32位指令是共存的,二者可以混合使用,是不需要处理器切换执行状态的。本篇完,感谢关注:RISC-V单片机中文网
页: [1]
查看完整版本: RISC-V为微控制器应用考虑的特性