RISC-V指令集讲解(3)I-Type 移位指令和U-type指令 图图 2021-06-08 1,149 文章 7 Comments 上文RISC-V指令集讲解 (2) I-Type整数寄存器-立即数指令介绍了I-type中的6个指令,本文将继续介绍I-type中其余的整数寄存器-立即数指令(这里是属于I-type的移位指令)和U-type中的整数寄存器-立即数指令。 主讲老师:YVONNE 、William 本文隐藏内容 登陆 后才可以浏览 赞微海报分享 Posted in 文章Tagged RISC-V, RISC-V GPIO, RISC-V 教学教案, 视频课程 文章导航 Previous Previous post: 差分电压和电流放大器Next Next post: RISC-V指令集讲解(4)R-Type 整数寄存器-寄存器指令(上) 7 Comments wx3GM2BNWFS1 2021-10-03 at 6:04 下午 登录以回复 老师你好,我想请教下,为什么AUIPC 操作要先立即数左移12位 Yvonne 2021-10-05 at 1:11 上午 登录以回复 AUIPC的指令格式是这么定义的。 wangff 2021-09-24 at 7:13 下午 登录以回复 还有一个疑问,请老师解答: 在verilog中 >>代表逻辑右移,不考虑符号位, >>>代表算术右移,需要考虑符号位,这样理解对吗? Yvonne 2021-09-25 at 6:47 上午 登录以回复 对的,但在Verilog中,使用>>>时,综合器(比如Quartus或是Vivado)会考虑符号位,使用者不需要考虑。但是注意使用时,需要添加signed关键字,使其是个有符号的数。 wangff 2021-09-22 at 6:17 下午 登录以回复 通过学习本堂课有几点收获,1、I-type移位指令中的shamt部分是指令中的[24:20]bit位,最大可以便宜31位,注意汇编指令中赋值不要超过31,否则会报错;2、SRLI指令为逻辑右移,无符号右移,SRAI指令为算术右移,有符号右移,需要注意区分两种右移指令。3、verilog代码中符号“>>”为逻辑右移,“>>>”为算术右移;4、U-type指令中LUI指令的opcode为0110111,AUIPC指令的opcode为0010111,需要注意区分。本堂课老师既讲解了知识点,同时,也介绍了每个知识点的实际用途,很棒! wx3E9Y49LGPB 2021-08-02 at 9:08 上午 登录以回复 学习 wangff 2021-07-03 at 4:41 下午 登录以回复 本节课重点讲解了I-Type类型中的slli、srli、srai指令以及U-type类型中lui、auipc(对pc进行操作,而非通用寄存器)指令 发表评论 取消回复要发表评论,您必须先登录。 相关链接 AD18_Gerber(光绘)文件输出Gerber文件是一种符合EIA标准,用于驱动光绘… 赞微海报分享 以太网工程中双端口RAM的使用在以太网工程中, 我们使用了很多双端口IP ,用于… 赞微海报分享 Xilinx SelectIO datasheet赞微海报分享 赞微海报分享 网速检测及Verilog实现技巧在局域网中目前物理层(Phy)芯片基本都支持10M… 赞微海报分享 Ethernet development structure 开发工程源代码:(注册用户可见) 本… 赞微海报分享 网络 MAC 地址用法详解MAC( Media Access Control… 赞微海报分享
wangff 2021-09-24 at 7:13 下午 登录以回复 还有一个疑问,请老师解答: 在verilog中 >>代表逻辑右移,不考虑符号位, >>>代表算术右移,需要考虑符号位,这样理解对吗?
Yvonne 2021-09-25 at 6:47 上午 登录以回复 对的,但在Verilog中,使用>>>时,综合器(比如Quartus或是Vivado)会考虑符号位,使用者不需要考虑。但是注意使用时,需要添加signed关键字,使其是个有符号的数。
wangff 2021-09-22 at 6:17 下午 登录以回复 通过学习本堂课有几点收获,1、I-type移位指令中的shamt部分是指令中的[24:20]bit位,最大可以便宜31位,注意汇编指令中赋值不要超过31,否则会报错;2、SRLI指令为逻辑右移,无符号右移,SRAI指令为算术右移,有符号右移,需要注意区分两种右移指令。3、verilog代码中符号“>>”为逻辑右移,“>>>”为算术右移;4、U-type指令中LUI指令的opcode为0110111,AUIPC指令的opcode为0010111,需要注意区分。本堂课老师既讲解了知识点,同时,也介绍了每个知识点的实际用途,很棒!
wangff 2021-07-03 at 4:41 下午 登录以回复 本节课重点讲解了I-Type类型中的slli、srli、srai指令以及U-type类型中lui、auipc(对pc进行操作,而非通用寄存器)指令
老师你好,我想请教下,为什么AUIPC 操作要先立即数左移12位
AUIPC的指令格式是这么定义的。
还有一个疑问,请老师解答:
在verilog中 >>代表逻辑右移,不考虑符号位, >>>代表算术右移,需要考虑符号位,这样理解对吗?
对的,但在Verilog中,使用>>>时,综合器(比如Quartus或是Vivado)会考虑符号位,使用者不需要考虑。但是注意使用时,需要添加signed关键字,使其是个有符号的数。
通过学习本堂课有几点收获,1、I-type移位指令中的shamt部分是指令中的[24:20]bit位,最大可以便宜31位,注意汇编指令中赋值不要超过31,否则会报错;2、SRLI指令为逻辑右移,无符号右移,SRAI指令为算术右移,有符号右移,需要注意区分两种右移指令。3、verilog代码中符号“>>”为逻辑右移,“>>>”为算术右移;4、U-type指令中LUI指令的opcode为0110111,AUIPC指令的opcode为0010111,需要注意区分。本堂课老师既讲解了知识点,同时,也介绍了每个知识点的实际用途,很棒!
学习
本节课重点讲解了I-Type类型中的slli、srli、srai指令以及U-type类型中lui、auipc(对pc进行操作,而非通用寄存器)指令