RISC-V 指令集

/ 0评 / 0

RISC-V 指令使用模组化的设计,包括几个可以互相替换的基本指令集,以及额外可以选择的扩充指令集.所有基本跟扩充的指令集都是由各路大神合作开发的,基本指令集规范了指令跟他们的编码,控制流程,暂存器数目以及它们的长度,记忆体跟寻址方式,逻辑运算以及其他,只要有软体以及一个通用的编译器的支援,只用基本指令集就可以制作一个简单的通用型的电脑.简单地说,只要支持某个指令集,那么他就就应该设计得一毛一样.

下面介绍一些指令集,其中粗体代表已经稳定的指令集,暂时是不会大改的了.当然只是截至本文发出来的时间.想最新要看官网的 => https://riscv.org/specifications/privileged-isa/

基本指令集

扩展指令集

设计模式

最近新发布的指令:

https://wiki.riscv.org/display/HOME/Recently+Ratified+Extensions

因为RISC-V的设计很开放,不像ARM分A5,A7之类内核,那么怎么看自己处理器是什么呢?

~$ cat /proc/cpuinfo 
processor       : 0
hart            : 0
isa             : rv64imafdcvu
mmu             : sv39

可见,我这个是64位整数指令集(rv64i) + m(整数乘除法) + a(Atomic) + f(单精度浮点) + d(双精度浮点) + c(压缩指令) + v(向量计算) + u(用户模式)

实现的指令越多,这个自然就越长了,也就越牛逼,也能直接从这里看出支持的程度.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注