RISC-V 手册 一本开源指令集的指南 PDF 文档
RISC-V 自 2011 年推出以来迅速地普及。我们认为一个精简的程序员指南将进一步促进 它的发展,并促使新人理解为什么它是一个有吸引力的指令集,以及它与传统指令集架构 (ISA)的不同。
我们的灵感部分来源于其它指令集架构书籍,但我们希望 RISC-V 自身的简洁性能让我 们写得比 See MIPS Run 一类 500 多页的详尽书籍少很多。我们把全书的长度控制到了前述 的三分之一,至少在这个意义上我们成功了。实际上,介绍模块化 RISC-V 指令集的每个组 成部分的十章只用了 100 页——即便为了有助于快速阅读,平均每页用到了一张图片(一共 75 张)。
目录
参考卡.......................1
致谢 .7
关于作者...................9
前言 .........................10
译者序.....................12
翻译团队..................12
第一章 为什么要有 RISC-V?.........................13
1.1 导言 ...................13
1.2 模块化与增量型 ISA........14
1.3 ISA 设计 101 ...15
1.4 全书的总览......19
1.5 结束语...............20
1.6 扩展阅读..........21
第二章 RV32I:RISC-V 基础整数指令集.....23
2.1 导言 ...................23
2.2 RV32I 指令格式..................23
2.3 RV32I 寄存器...26
2.4 RV32I 整数计算..................27
2.5 RV32I 的 Load 和 Store ...29
2.6 RV32I 条件分支..................30
2.7 RV32I 无条件跳转.............31
2.8 RV32I 杂项........31
2.9 使用插入排序比较 RV32I,ARM-32,MIPS-32 和 x86-32 指令集.......................32
2.10 结束语 ............32
2.11 扩展阅读........33
第三章 RISC-V 汇编语言.......41
3.1 导言 ...................41
3.2 函数调用规范(Calling convention) 41
3.3 汇编器...............43
3.4 链接器...............46
3.5 静态链接和动态链接......49
3.6 加载器...............49
3.7 结束语...............494
3.8 扩展阅读...........50
第四章 乘法和除法指令 ........51
4.1 导言....................51
4.2 结束语 ...............53
4.3 扩展阅读...........53
第五章 RV32F 和 RV32D:单精度和双精度浮点数...................55
5.1 导言....................55
5.2 浮点寄存器 .......55
5.3 浮点加载,存储和算术指令....................56
5.4 浮点转换和搬运.................60
5.5 其他浮点指令...60
5.6 使用 DAXPY 程序比较 RV32FD,ARM-32,MIPS-32 和 x86-32 ..62
5.7 结束语.................62
5.8 扩展阅读...........62
第六章 原子指令..65
6.1 导言....................65
6.2 结束语 ...............67
6.3 扩展阅读...........67
第七章 压缩指令..69
7.1 导言....................69
7.2 RV32GC,Thumb-2,microMIPS 和 x86-32 的比较......71
7.3 结束语 ...............71
7.4 扩展阅读...........71
第八章 向量..........75
8.1 导言....................75
8.2 向量计算指令..76
8.3 向量寄存器和动态类型..76
8.4 向量的 Load 和 Store 操作......................78
8.5 向量操作期间的并行性..78
8.6 向量运算的条件执行.......79
8.7 其他向量指令..79
8.8 例子:用 RV32V 写成的 DAXPY 程序 .80
8.9 RV32V,MIPS-32 MSA SIMD 和 x86-32 AVX SIMD 的比较............815
8.10 结束语 ............83
8.11 扩展阅读........84
第九章 RV64:64 位地址指令 .......................87
9.1 导言 ...................87
9.2 使用插入排序来比较 RV64 与其他 64 位 ISA....................91
9.3 程序大小 ...........93
9.4 结束语................93
9.5 了解更多 ...........94
第十章 RV32/64 特权架构....99
10.1 导言.................99
10.2 简单嵌入式系统的机器模式..............100
10.3 机器模式下的异常处理.......................101
10.4 嵌入式系统中的用户模式和进程隔离..104
10.5 现代操作系统的监管者模式..............105
10.6 基于页面的虚拟内存..106
10.7 结束语 ..........110
10.8 扩展阅读......111
第十一章 RISC-V 未来的可选扩展..............113
11.1 “B”标准扩展:位操作..113
11.2 “E”标准扩展:嵌入式..113
11.3 “H”特权态架构扩展:支持管理程序(Hypervisor).113
11.4 “J”标准扩展:动态翻译语言...............113
11.5 “L”标准扩展:十进制浮点...................113
11.6 “N”标准扩展:用户态中断..................113
11.7 “P”标准扩展:封装的单指令多数据(Packed-SIMD)指令......114
11.8 “Q”标准扩展:四精度浮点..................114
11.9 结束语 ..........114
附录 A RISC-V 指令列表...... 115
下载地址:https://www.wenjiangs.com/wp-content/uploads/2022/10/RISC-V-Reader-Chinese-v2p1.zip
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论