架构学习之RISC-V

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言


一、riscv是什么?

RISC-V是一种开源指令集架构(ISA),支持多种拓展指令,有基本指令集和扩展指令集组成,具有以下特点。

  1. 简单性:RISC-V架构采用精简指令集(RISC)设计理念,指令集相对简单,易于理解、实现和优化。

  2. 可扩展性:RISC-V架构支持可扩展性,允许开发者根据需求自由地添加新的指令集扩展,从而满足各种应用的需求。

  3. 开放性:RISC-V是开源的,没有专利限制,任何人都可以自由地使用、修改和分发,这使得它成为了开源处理器设计和实现的重要基础。

  4. 易于实现:RISC-V架构的指令集相对简单,易于实现,同时开发者还可以根据需求自由选择硬件实现方式,如FPGA、ASIC等。

  5. 移植性:RISC-V架构具有极高的移植性,可在不同的处理器架构上实现,并且可以运行在不同的操作系统上。

  6. 多语言支持:RISC-V架构支持多种编程语言,如C、C++、Rust等,开发者可以根据自己的需求选择适合自己的编程语言。

其与ARM架构最大的不同在于模块化设计,以及开放性

二、架构学习

1.指令学习

一些常见的指令和伪指令如下:
在这里插入图片描述
在这里插入图片描述

2.寄存器学习

通用寄存器

在这里插入图片描述riscv架构共有32个通用寄存器,记x0-x31,图中表明了各寄存器的作用,有几个寄存器有特殊的用法,下面将对介绍:

  • ra:ra寄存器是调用返回的地址,在实现栈回溯功能时有较大作用,ra保存的地址-4就是函数跳转指令,可以回溯函数整个调用流程。
  • sp:栈指针,启动时赋值指向栈顶。
  • gp:用于管理全局变量数据。
  • tp:用于多线程的上下文切换。

csr寄存器

学习csr寄存器必须要了解的是riscv架构的三种特权模式,也就是M模式、U模式、S模式。

  • 在 M 模式下运行的 hart 对内存, I/O 和一些对于启动和配置系统来说必要的底层功能有着完全的使用权。因此它是唯一所有标准RISC-V 处理器都必须实现的权限模式。
  • 因为 M 模式可以自由地访问硬件平台。更常见的情况是,不能信任所有的应用程序代码,因为不能事先得知这一点,或者它太大,难以证明正确性。因此, RISC-V 提供了保护系统免受不可信的代码危害的机制,也就是U模式。
  • S 模式比 U 模式权限更高,但比 M 模式低。与 U 模式一样,支持虚拟内存。

注意
1、hart 是 硬 件 线 程(hardware thread)的缩略形式。
2、三种特权模式,分别有着各自的csr寄存器,但是一般情况下异常处理都在m模式下进行处理。

M模式csr寄存器介绍
在这里插入图片描述在这里插入图片描述


总结

1、简单介绍了RISC-V架构的一些特点。
2、列举riscv常见汇编指令。
3、简单介绍riscv的通用寄存器和csr寄存器的功能及特点。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【The RISC-V READER】中文版 v2.1 欢迎! RISC-V 自 2011 年推出以来迅速地普及。我们认为一个精简的程序员指南将进一步促进 它的发展,并促使新人理解为什么它是一个有吸引力的指令集,以及它与传统指令集架构 (ISA)的不同。 我们的灵感部分来源于其它指令集架构书籍,但我们希望 RISC-V 自身的简洁性能让我 们写得比 See MIPS Run 一类 500 多页的详尽书籍少很多。我们把全书的长度控制到了前述 的三分之一,至少在这个意义上我们成功了。实际上,介绍模块化 RISC-V 指令集的每个组 成部分的十章只用了 100 页——即便为了有助于快速阅读,平均每页用到了一张图片(一共 75 张)。 在解释指令集设计的原理之后,我们将阐述 RISC-V 架构师在设计指令集的时候,如何 在过去 40 年的指令集的基础上取其精华,去其糟粕。要评判一个指令集架构,不仅要看它 包括了什么,而且要看它省略了什么。 随后我们会按顺序介绍这个模块化架构的每个组成部分。每一章都会包含一个用 RISCV 汇编语言写成的程序,这是为了展示那一章所述的指令的用法,这样有助于汇编语言程序 员学习 RISC-V 汇编。有时,我们还会列出用 ARM,MIPS 和 x86 写成的同样的程序,从而 突出 RISC-V 在简洁性,以及成本、功耗、性能方面的优势。 为了增加本书的趣味性,我们在页边加入了将近 50 个侧边栏,这里面放了一些有关书 中内容的评论,希望它们能带来一些乐趣。我们还在页边放了大约 75 个图片,用于展示设 计良好 ISA 的例子。(我们充分利用了侧边的空间!)最后,对于那些愿意钻研的读者,我们 在全书中加入了大概 25 段补充说明。如果你对某个主题感兴趣,可以深入研究这些可选部 分。略过这些部分不会影响对书中的其他内容的理解,所以如果你对他们不感兴趣的话,尽 管跳过它们。对于计算机体系结构爱好者,我们援引的 25 篇论文和书籍能够开阔你的视野。 在写这本书的过程中,我们从它们当中学到了很多东西!
### 回答1: RISC-V架构手册是一本介绍RISC-V指令集体系结构的重要参考资料。RISC-V是一种开放的指令集架构,具有可扩展性、灵活性和高效性的特点。 首先,RISC-V架构手册详细介绍了RISC-V指令集中的所有指令,包括常用的算术指令、逻辑指令、存取指令、分支指令等。它不仅列出了每个指令的编码格式和操作码,还详细说明了每个指令的功能和使用方法。这样的信息对于开发RISC-V处理器的工程师来说至关重要。 其次,RISC-V架构手册还介绍了RISC-V处理器的基本结构和中断处理机制。它详细解释了数据通路、控制单元和存储器等组件的连接方式和工作原理。同时,手册还讨论了RISC-V处理器的中断处理流程,包括中断的触发条件、中断处理程序的执行和中断返回等。这对于编写操作系统或者驱动程序的开发者来说非常有帮助。 此外,RISC-V架构手册还包含了关于扩展特性和可选模块的说明。它介绍了如何在RISC-V架构上扩展自定义指令或者功能,以及如何添加可选的模块,如浮点单元、虚拟内存管理等。这样的灵活性使得RISC-V架构非常适合于各种应用领域,从嵌入式系统到超级计算机。 总的来说,RISC-V架构手册是开发人员和研究人员掌握RISC-V指令集和架构设计的重要参考资料。它全面介绍了RISC-V指令集的各个方面,并提供了实现RISC-V处理器的指导。通过学习和理解这本手册,人们可以更好地应用和推广RISC-V架构,推动开源指令集的发展。 ### 回答2: RISC-V(精简指令集计算机-五)架构手册是一份完整的指南,用于描述和解释RISC-V计算机架构的细节和规范。这个手册为开发者和研究人员提供了一个详细的参考,以了解和标准化他们在RISC-V处理器设计和实现方面的工作。 RISC-V架构手册包含多个章节和附录,涵盖了RISC-V指令集的不同方面。它首先介绍了RISC-V的设计原理和目标,比如简洁性、可扩展性和定制化能力。然后,手册详细说明了RISC-V指令集的不同指令格式和编码规则,包括指令解码过程和操作码的定义。 这个手册还涵盖了RISC-V的寄存器和寄存器文件,描述了它们的使用方法和特殊规则。此外,手册还提供了关于异常处理机制和中断处理机制的解释,以及RISC-V中的特权级别和特权模式的详细信息。 RISC-V架构手册还包含了有关内存管理单元(MMU)和虚拟内存系统的信息,说明了RISC-V支持的不同内存访问方式和存储体系结构的细节。此外,手册还提供了有关浮点运算和向量指令集的详细说明以及其使用方法。 除了这些主要内容外,RISC-V架构手册还提供了一些附录,包括指令集的变种和扩展,以及示例代码和编程实例。这些附录为开发者提供了实际应用和开发RISC-V处理器的指导支持。 总之,RISC-V架构手册是一个重要的参考资料,用于理解和使用RISC-V计算机架构。它的详细说明和规范为开发者提供了标准化和统一化的参考,以便设计、实现和优化RISC-V处理器。 ### 回答3: RISC-V架构手册是一本详细介绍RISC-V指令集架构的重要参考资料。RISC-V是一种新兴的开源指令集架构,其优势在于简洁、可扩展和高度灵活。RISC-V架构手册系统地介绍了RISC-V指令集的各种特性和用法。 首先,RISC-V架构手册提供了RISC-V指令集的全面介绍。它详细解释了RISC-V的指令编码方式、寄存器组织、内存管理机制等基本概念。通过学习手册,人们可以了解到RISC-V指令的格式和操作方式,从而能够编写符合RISC-V架构的程序。 其次,RISC-V架构手册系统介绍了RISC-V的扩展指令集。RISC-V提供了一种模块化的设计理念,允许用户根据不同的应用需求选择使用不同的指令集扩展。手册详细介绍了RISC-V的各种扩展,如乘法/除法扩展、向量扩展等,并提供了使用这些扩展的示例和指导。 另外,RISC-V架构手册还介绍了RISC-V的异常处理和中断机制。这些机制对于系统安全和稳定运行非常重要。手册详细解释了异常和中断的分类、处理流程以及相关的指令和寄存器。通过学习手册,人们可以了解到如何在RISC-V架构中设计有效的异常处理和中断控制机制。 最后,RISC-V架构手册还介绍了RISC-V的特殊指令和特殊寄存器。这些特殊指令和寄存器常用于系统级编程和性能优化。手册提供了这些指令和寄存器的详细说明和使用方法,帮助人们充分发挥RISC-V架构的优势。 综上所述,RISC-V架构手册是学习和理解RISC-V指令集架构的重要工具。通过研读手册,人们可以掌握RISC-V的基本概念、指令格式和操作方式,进而能够灵活应用RISC-V的各种扩展和特殊功能,为不同的应用场景设计高效的RISC-V架构系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值