首页 > 其他分享 >RISCV

RISCV

时间:2024-04-10 21:30:17浏览次数:11  
标签:存储 函数参数 RISCV 保存 浮点 寄存器 指针

RISCV

riscv通用寄存器

寄存器调用名字用途
x0zero常数 0
x1ra返回地址
x2sp栈指针
x3gp全局指针
x4tp线程指针
x5-x7t0-t2临时存储
x8s0/fp保存用寄存器/帧指针(配合栈指针界定一个函数的栈)
x9s1保存用寄存器
x10-x11a0-a1函数参数/返回值
x12-x17a2-a7函数参数
x18-x27s2-s11保存用寄存器
x28-x31t3-t6临时存储
f0-f7ft0-ft7浮点临时存储
f8-f9fs0-fs1浮点保存用寄存器
f10-f11fa0-fa1浮点函数参数/返回值
f12-f17fa2-fa7浮点函数参数
f18-f27fs2-fs11浮点保存用寄存器
f28-f31ft8-ft11浮点临时存储

标签:存储,函数参数,RISCV,保存,浮点,寄存器,指针
From: https://blog.csdn.net/swh547/article/details/137611677

相关文章

  • Book-Riscv-XV6-Chap1
    操作系统接口–阅读xv6-riscv-bookXv6的时钟周期:定时器芯片两次中断之间的时间xv6作为一个简单的操作系统,利用一个“内核kernel”向其他运行中的程序提供服务的特殊程序,这个内核相当于连接了硬件和运行程序。每一个正在运行的程序可以称为进程,都拥有子集的包含指令、数据、......
  • riscv linker relaxations 是什么
    什么是linkerrelaxations由于链接时携带一些符号地址信息,可以执行一些编译时难以或者不大可能实现的优化。LinkerRelaxtion与传统编译时期的优化是不一样的,此优化发生在链接时。通常情况下,在链接时,改变代码的执行序列是有风险的,因为语义信息此时会丢失,链接器看到也仅是字节流......
  • riscv gnu编译器
    官网https://github.com/riscv-collab/riscv-gnu-toolchain编译器基于RISC-V交叉编译器包括32bit和64bit两种类型,其中每种类型又包括裸机版本(newlib)和动态链接库版本(linuxglibc)newlib./configure--prefix=/opt/riscvmakeglibc#默认仅支持64位target./configure--......
  • 学习riscv(1)安装tinyriscv的工具链
    因为毕设是CPU的低功耗设计,所以开始看cpu,打算还是先从这个tinyriscv学起,昨天把环境下好了,第一步是用git去clone代码,这个首先要下载git,然后在目标文件夹鼠标右键,选择“opengitbushhere”,再输入项目的url,就可以了。方法不难。b站有详细教程接下来是安装工具,我用的是wind......
  • mitos - xv6 for riscv
    参考:code:https://github.com/mit-pdos/xv6-riscvbook:https://pdos.csail.mit.edu/6.828/2021/xv6/book-riscv-rev2.pdfnote:https://mit-public-courses-cn-translatio.gitbook.io/mit6-s081/......
  • EDA工具使用+GIT操作+python编程+C语言编程+Riscv相关+TCL操作
    EDA工具使用Verdi覆盖率转网页urg-full64-dirsimv.vdbVerdi加载sessionverdi-ssrsessionFileVcs分部编译额外选项-partcomp:自动分块编译。-fastpartcomp:使用多核计算系统并行部分编译。-pcmakeprof:查看每部分编译占用的时间,方便对时间更久的进行拆分。-partc......
  • qemu搭建riscv的可调试环境
    qemu搭建riscv的可调试环境riscv工具链(网上大多数用Github直连的工具链,但是因为太大,download的时候老是出问题)选择使用Cross-compilationtoolchainsforLinux-Home(bootlin.com)进行下载,之后解压。bin目录下为可执行的工具链,将其添加到PATH中。qemuqemu压缩包下载......
  • RISCV-MINI cache小记
    该cache映射策略为直接映射,采用写回(writeback)方式。需要注意的细节在于cpu-cache通过mask信号判断访存是读还是写,显然mask全0时为读。下图FSM中省略了dirty会影响状态转移,比如WriteCache到WriteBack,当cache块为dirty时才会触发aw.fire(io.nasti.aw.valid:=is_dirty)。简单解释:......
  • RISCV处理器-存储器模型
    之前一直没怎么弄清楚fence以及fence.i指令,现在重新回顾一下。可选的原子性存储器指令扩展"A" FENCEfence指令用于顺序话其他RISCV线程、外部设备或者协处理器看到的设备I/O和存储器访问。在所有predecessor执行到fence前的任何操作前,处于fence指令后的successorset种的任......
  • riscv处理器——除法运算实现
    采用试商法实现除法运算,试商法的计算过程如下:1.每次除法运算至少需要33个时钟周期才能完成,用状态机来实现;2.主要需要判断并执行的指令有4种类:1wireop_div=(op_r==`INST_DIV);//有符号除法,结果为商2wireop_divu=(op_r==`INST_DIVU);//无符号除法,结果为商3wire......