ariane/cva6
文章平均质量分 81
cva6源码学习分析以及模块移植
此心无垠_
这个作者很懒,什么都没留下…
展开
-
riscv乘除法模块(M指令)移植(from cva6)
ariena的乘除法模块由四个文件组成,移植时只需这四个文件,分别是:(ariena代码已上传)mult.svmultiplier.svserdiv.svlzc.sv其中,乘除法模块和流水线的接口只有mult.sv,此交互发生在ex阶段,因此移植时只需要考虑mult.sv文件的输入输出信号。在mult.sv文件中对serdiv.sv和multiplier.sv中定义的模块进行了实例化,这两个文件分别完成了除法和乘法运算,而serdiv.sv中对lzc.sv文件中定义的模块进行了实例化,这原创 2021-11-15 15:47:06 · 1502 阅读 · 0 评论 -
PLIC简介&&cva6之PLIC模块阅读笔记
PLIC简介PLIC结构门户的作用主要是将中断源来的中断电气信号转换为 MSI,然后交由交换矩阵来处理;另外一个作用是当来自某个中断源的中断正在被处理时,阻止接收同一中断源的后续中断。对某个 HART 来说,如果中断发生,交换矩阵会通知 HART,而这种通知的方式可以有多种实现方式。对于复杂的系统,这种通知本身就可以是 MSI;对于相对简单的系统,这种通知可以是简单的硬连线,直接连接到 HART 内部中断寄存器的等待中断位上。HART 在收到来自交换矩阵的中断通知后,需要读取对应的读取 / 完成寄原创 2021-10-19 22:07:51 · 2719 阅读 · 0 评论 -
ariane/cva6代码阅读--frontened
ariane代码阅读--frontenedinstr_scan.svbtb.sv和bht.svinstr_scan.svis_rvc信号判断指令是否为riscv的压缩指令rvc开头的均为对压缩指令的scanrvi开头的与之相反rvi_jump_o判断指令是否为jal类rvi_jalr_o判断指令是否为jalr类rvi_branch_o判断指令是否为B类rvi_call_o若指令为jal或者jalr指令且rd为x1或x5则为真rvi_return_o若指令为jalr指令且rs1是x原创 2021-03-09 20:28:18 · 775 阅读 · 0 评论