[其他]

指令编码格式

[复制链接]
2684|0
手机看帖
扫描二维码
随时随地手机跟帖
asmine|  楼主 | 2021-7-5 10:37 | 显示全部楼层 |阅读模式

在RSIC-V中,所有指令都是32位的,并且在存储器中必须在4字节边界对齐。由于是RSIC架构,指令关于原寄存器和目的寄存器的编码格式固定。

在基本ISA中,分别有R/I/S/B四种指令格式,当然在此基础上有U/J两种变种

3135160e2701ce1234.png

rs1,rs2是源寄存器地址,rd是目的寄存器地址,opcode是指令操作码,funct是功能码(操作码的数据宽度)

例如sw rs2, imm(rs1)


指令编码种类

R型:用于register-register的算术运算

I型:opcode一样,差别在func3和func7。一般用于register-immediate的算术运算和load操作

S型:操作的长度不同是由不同的funct3指定。用于store操作

B型:S型指令的变种,用于分支转移操作

U型:用于高20bit立即数操作

J型:U型指令的变种,用于直接跳转指令

R4型:RV32F/D、RV64F/D标准指令扩展使用

3806160e2703c84214.png




使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

124

主题

721

帖子

2

粉丝