查看: 256|回复: 0
收起左侧

RISC-V开源指令集指南

[复制链接]

  离线 

  • TA的每日心情
    拍拍
    2022-10-3 08:50
  • 签到天数: 1 天

    [LV.1]

    发表于 2024-3-13 22:58:31 | 显示全部楼层 |阅读模式

    有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    本帖最后由 魏定国 于 2024-3-13 22:58 编辑

    RISC-V 是一个最新的,清晰的,简约的,开源的 ISA,它以过去 ISA 所犯过的错误为鉴。RISC-V 架构师的目标是让它在从最小的到最快的所有计算设备上都能有效工作。遵循冯诺依曼 70 年前的建议,这个 ISA 强调简洁性来保证它的低成本,同时有着大量的寄存器和透明的指令执行速度,从而帮助编译器和汇编语言程序员将实际的重要问题转换为适当的高效代码。

    本文来自“RISC-V手册开源指令集指南”。RISC-V(“RISC five”)的目标是成为一个通用的指令集架构(ISA):
    • 它要能适应包括从最袖珍的嵌入式控制器,到最快的高性能计算机等各种规模的处理器。
    • 它应该能兼容各种流行的软件栈和编程语言。
    • 它应该适应所有实现技术,包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、全定制芯片,甚至未来的设备技术。
    • 它应该对所有微体系结构样式都有效:例如微编码或硬连线控制;顺序或乱序执行流水线; 单发射或超标量等等。
    • 它应该支持广泛的专业化,成为定制加速器的基础,因为随着摩尔定律的消退,加速器的重要性日益提高。
    • 它应该是稳定的,基础的指令集架构不应该改变。更重要的是,它不能像以前的专有指令集架构一样被弃用,例如AMD Am29000、Digital Alpha、Digital VAX、Hewlett Packard PA-RISC、Intel i860、Intel i960、Motorola 88000、以及Zilog Z8000。

    RISC-V的不同寻常不仅在于它是一个最近诞生的指令集架构(它诞生于最近十年,而大多数其他指令集都诞生于20世纪70到80年代),而且在于它是一个开源的指令集架构。与几乎所有的旧架构不同,它的未来不受任何单一公司的浮沉或一时兴起的决定的影响(这一点让许多过去的指令集架构都遭了殃)。它属于一个开放的,非营利性质的基金会。RISC-V基金会的目标是保持RISC-V的稳定性,仅仅出于技术原因缓慢而谨慎地发展它,并力图让它之于硬件如同Linux之于操作系统一样受欢迎。

    计算机体系结构的传统方法是增量ISA,新处理器不仅必须实现新的ISA扩展,还必须实现过去的所有扩展。目的是为了保持向后的二进制兼容性,这样几十年前程序的二进制版本仍然可以在最新的处理器上正确运行。这一要求与来自于同时发布新指令和新处理器的营销上的诱惑共同导致了ISA的体量随时间大幅增长。

    例如,图1.2显示了当今主导ISA80x86的指令数量增长过程。这个指令集架构的历史可以追溯到1978年,在它的漫长生涯中,它平均每个月增加了大约三条指令。
    国内芯片技术交流-RISC-V开源指令集指南risc-v单片机中文社区(1)

    这个传统意味着x86-32(我们用它表示32位地址版本的x86)的每个实现必须实现过去的扩展中的错误设计,即便它们不再有意义。例如,图1.3描述了x86的ASCII Adjust afterAddition(aaa)指令,该指令早已失效。
    国内芯片技术交流-RISC-V开源指令集指南risc-v单片机中文社区(2)

    作为一个类比,假设一家餐馆只提供固定价格的餐点,最初只是一顿包含汉堡和奶昔的小餐。随着时间的推移,它会加入薯条,然后是冰淇淋圣代,然后是沙拉,馅饼,葡萄酒,素食意大利面,牛排,啤酒,无穷无尽,直到它成为一顿大餐。食客可以在那家餐厅找到他们过去吃过的东西,尽管总的来说这样做可能没什么意义。这样做的坏处是,用餐者为每次晚餐支付的宴会费用不断增加。

    RISC-V的不同寻常之处,除了在于它是最近诞生的和开源的以外,还在于:和几乎所有以往的ISA不同,它是模块化的。它的核心是一个名为RV32I的基础ISA,运行一个完整的软件栈。

    RV32I是固定的,永远不会改变。这为编译器编写者,操作系统开发人员和汇编语言程序员提供了稳定的目标。模块化来源于可选的标准扩展,根据应用程序的需要,硬件可以包含或不包含这些扩展。这种模块化特性使得RISC-V具有了袖珍化、低能耗的特点,而这对于嵌入式应用可能至关重要。RISC-V编译器得知当前硬件包含哪些扩展后,便可以生成当前硬件条件下的最佳代码。惯例是把代表扩展的字母附加到指令集名称之后作为指示。例如,RV32IMFD将乘法(RV32M),单精度浮点(RV32F)和双精度浮点(RV32D)的扩展添加到了基础指令集(RV32I)中。

    在介绍 RISC-V 这个 ISA 之前,了解计算机架构师在设计 ISA 时的基本原则和必须做出的权衡是有用的。如下的列表列出了七种衡量标准。页边放置了对应的七个图标,以突出显示 RISC-V 在随后章节中应对它们的实例。

    • 成本(美元硬币)
    • 简洁性(轮子)
    • 性能(速度计)
    • 架构和具体实现的分离(分开的两个半圆)提升空间(手风琴)
    • 程序大小(相对的压迫着一条线的两个箭头)
    • 易于编程/编译/链接(儿童积木“像 ABC 一样简单”)

    《RISC-V手册开源指令集指南》
    本书假设您在 RISC-V 之前已经了解过其他指令集。如果没有,请查看我们基于RISC-V 的相关入门架构书。


    第二章介绍了 RV32I,它是 RISC-V 固定不变的基础整数指令集,是 RISC-V 的核心内容。

    第三章解释了第二章中没有介绍的其余 RISC-V 汇编语言内容,包括调用约定和一些用于链接的巧妙技巧。汇编语言包括所有符合规则的 RISC-V 指令和一些 RISC-V 指令集外的有用指令。这些伪指令是实际指令的巧妙变体,它们简化了编写汇编语言程序的过程,同时避免了使 ISA 复杂化。

    接下来的三章阐述了 RISC-V 的标准扩展。当它们添加到 RIV32I 中的时候,我们统称RV32G(G 代表一般):
    • 第四章:乘法和除法(RV32M)
    • 第五章:浮点操作(RV32F 和 RV32D)
    • 第六章:原子操作(RV32A) 第 3 页和第 4 页的 RISC-V“参考卡”是本书中所有 RISC-V 指令(RV32G,RV64G 和RV32 / 64V)的摘要。

    第七章介绍了可选的压缩扩展 RV32C,它是 RISC-V 优雅性的一个绝佳例子。通过把16 位指令限制为现有 32 位 RV32G 指令的短版本,它们几乎是没有代价的。汇编程序可以选择指令大小,这使得汇编语言程序员和编译器忘记 RV32C。将 16 位 RV32C 指令转换成32 位 RV32G 指令的硬件解码器只需要 400 个门,这即使在最简单的 RISC-V 实现中也只占百分之几。

    第八章介绍了向量扩展 RV32V。当与众多强大的单指令多数据(SIMD)指令(ARM-32,MIPS-32,x86-32)相比时,向量指令成为了 ISA 优雅性的另一个例证。实际上,图1.2 中添加到 x86-32 的数百条指令都是 SIMD,还有数百条指令即将问世。RV32V 甚至比大多数向量 ISA 更简单,因为它通过向量寄存器指定数据类型和长度,而不是将这两者嵌入到操作码中。RV32V 也许是大家从传统的基于 SIMD 的 ISA 转到 RISC-V 的最为可能的原因。

    第九章展示了 RV64G,它是 RISC-V 的 64 位地址版本。正如该章节所说的那样,RISC-V 的架构师只需要拓宽寄存器,并加入一些字、双字或长版的 RV32G 指令,就可以把地址从 32 位扩展为 64 位。

    第十章介绍了系统指令,说明了 RISC-V 如何处理分页以及机器、用户和监管者权限模式。

    最后一章简要介绍了 RISC-V 基金会目前正在考虑增加的其它扩展。每一章都会包含一个用 RISC- V 汇编语言写成的程序,这是为了展示那一章所述的指令的用法,这样有助于汇编语言程序员学习 RISC-V 汇编。有时,我们还会列出用 ARM,MIPS 和 x86 写成的同样的程序,从而突出 RISC-V 在简洁性,以及成本、功耗、性能方面的优势。

    下载链接:
    《HotChips 2023及历年技术合集(汇总)》

    1、HotChips 2023:开场闭幕总结
    2、HotChips 2023:FPGAs技术专题
    3、HotChips 2023:芯片互联技术专题
    4、HotChips 2023:ML训练/推理技术专题
    5、HotChips 2023:ML技术专题
    6、HotChips 2023:CPU技术专题(1)
    7、HotChips 2023:CPU技术专题(2)
    8、HotChips 2023:UCIe技术专题
    9、HotChips 2023:关键技术总结合集
    10、HotChips历年技术合集


    2023年液冷服务器词条报告

    液冷技术要点汇总

    《数据中心液冷技术合集(2023)》

    中国数据中心液冷白皮书
    液冷技术专题
    500+份重磅ChatGPT专业报告(合集)
    ARM系列处理器应用技术完全手册
    CPU和GPU研究框架合集
    面向AIoT的RISC-V原生操作系统研究
    深度报告:RISC-V异构IoT全新架构
    RISC-V芯片产业指令集架构研究
    玄铁C910实现RISC-V用户自定义指令
    面向AIoT的RISC-V原生操作系统研究
    RISC-V手册开源指令集指南
    《RISC-V指令架构与实践(1)》
    《RISC-V指令架构与实践(2)》
    《RISC-V体系架构与实践(1)》
    《RISC-V体系架构与实践(2)》
    《RISC-V体系架构与实践(3)》


    CPU和GPU研究框架合集

    1、行业深度报告:GPU研究框架
    2、信创产业研究框架
    3、ARM行业研究框架
    4、CPU研究框架
    5、国产CPU研究框架
    6、行业深度报告:GPU研究框架

    AI应用专题:百花齐放,静待杀手级别应用
    人工智能技术系列:大模型技术
    空间计算:Vision Pro开启空间计算时代
    中国人工智能行业应用发展趋势(2024)
    人形机器人的国产供应链机遇
    AI智算时代:算力芯片加速升级
    算力底座:算力承载与网络中枢

    《人形机器人研究报告合集》
    1、人形机器人之一:海外国内代表企业纵览及核心零部件分析
    2、人形机器人之二:人工智能的终极载体,开启十年产业大周期
    3、人形机器人之三:更精确的感知,更高效的交互
    4、人形机器人之四:滚珠丝杠让运动更丝滑,国产化替代蓄势待发

    大模型专题报告:百模渐欲迷人眼,AI应用繁花开(2024)







    上一篇:泰凌微电子发布国内首颗工作电流低至1mA量级的多协议物联网无线SoC
    下一篇:达摩院院长张建锋:RISC-V迎来蝶变,进入应用爆发期
    RISCV作者优文
    全球首家只专注于RISC-V单片机行业应用的中文网站
    回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则

    关闭

    RISC-V单片机中文网上一条 /2 下一条



    版权及免责声明|RISC-V单片机中文网 |网站地图

    GMT+8, 2024-7-14 19:41 , Processed in 0.617166 second(s), 49 queries .

    快速回复 返回顶部 返回列表