Page 337 - 《软件学报》2021年第12期
P. 337
刘畅 等:RISC-V 指令集架构研究综述 4001
2.4.2 U 模式
用户模式是 RISC-V 特权系统中最低级别的权限模式,又被称作“非特权模式”.它通常用于执行来自用户
等外部环境的不可信操作,通过对其操作范围的限制来保护系统内的各种资源不受侵害.
2.4.3 S 模式
管理模式具有比用户级更高的操作权限,可以用于操作一台机器中的敏感资源.RISC-V 管理模式需要与
机器模式和用户模式共同实现,因此,不能出现系统中只存在 S 模式而不存在 U 模式的情况.
2.4.4 H 模式
监视模式可用于管理跨机器的资源,或者将机器整体作为组件承担更高级别的任务.如,H 模式可以协助
实现一台机器系统的虚拟化操作.
RISC-V 权限规范 [12] 在图 5 中直观地说明了各权限模式的执行范围.其中,Application 表示用户级应
用,ABI 表示应用程序二进制接口,AEE 表示应用程序执行环境;类似地,XBI 表示应用在 X 模式下的二进制接
口(binary interface),XEE 表示应用在 X 模式下的执行环境(execution environment).
Fig.5 Execution range of different privilege modes in RISC-V [12]
图 5 RISC-V 中各权限模式的执行范围 [12]
2.5 小 结
RISC-V 指令集架构正处于发展的活跃期,针对不同的应用环境提出了多种不同的指令集.RISC-V 指令
集有基础指令集与扩展指令集之分,一个 RISC-V 系统需要至少完整实现一个基础指令集,并在一种权限模
式中进行工作.对于指令集本身的研究是推动 RISC-V 发展的核心问题,所有指令集都需要经过批准才能成
为统一而稳定的标准.目前尚有 17 个指令集未被批准,其中 12 个处于草案状态,5 个处于冻结状态.
另外,在 RISC-V 指令集发展过程中,还出现了一些其他的研究和尝试.如,2020 年,Multanen 等人 [24] 以
RISC-V 指令集架构为例,提出了一种基于细粒度可编程字典的指令压缩方案,通过对编译时区域的控制流分
析,可在运行时有选择地更新字典内容,最小化更新开销,同时最大化利用字典空间.这些以指令集为目标的
研究对 RISC-V 指令集的完善也起到了一定的促进作用.