我个人喜欢在自己home目录下建立一个专门IC工程文件夹:ic_prjs;也推荐大家这么做,养成文件管理的好习惯,在自己觉得ok的目录下,git取下CK_RISCV的整个工程;
git clone https://gitee.com/Core_Kingdom/ck-riscv.git2.工程目录结构说明
CK_Riscv
├── bashrc.env //工程环境配置
├── fpga //FPGA原型验证综合目录
│ ├── constraint
│ │ └── pin.xdc
│ ├── libs
│ ├── script
│ │ └── create_prj.tcl
│ └── work
│ └── Makefile
├── LICENSE
├── module //RTL 代码
│ ├── chip //顶层代码放置目录
│ │ └── rtl_v00 //代码版本
│ └── riscv_core //RISCV Core 代码放置目录
│ └── rtl_v00 //代码版本
├── pic
│ ├── Architecture.png
│ └── image.png
├── README.en.md
├── README.md
├── scripts //脚本命令
│ ├── open_dve //打开DVE
│ ├── open_verdi //打开VERDI
│ ├── regress //Regress验证脚本
│ ├── rerun //验证快捷命令
│ └── rvgccCom //RISCV编译命令
└── verification //验证目录
├── cases //测试用例目录
│ └── riscv_core //验证的模块名
├── regress_fun //Regress回归目录
│ ├── config //仿真配置
│ └── Makefile //case list Makefile
└── testbench //仿真所需额外文件
├── environment.sv //仿真环境文件
├── ext_behavior_model //放置仿真行为级模型
├── ext_behavior_task //常用tasks
├── instance //tbtop例化
└── tbtop.v //tbtop
3.RISCV工具链
这里有两种方式:
- 其一,自己编译1套,这里可以参考:大家一起从零设计RISC-V处理器(三)之Centos7 搭建RISC-V 32位交叉编译环境( riscv-gnu-toolchain)
- 其二,使用我编译好的,百度网盘下载:
链接:https://pan.baidu.com/s/1HsA1p7OCVdblqz71HzO-mw 提取码:irl3 --来自百度网盘超级会员V5的分享
由于文件比较大,虚拟机简易通过共享文件的方式拷入;
打开个人shell文件,在文件底部加入以下配置信息,退出后记得source;我这里是用户home目录下的.bashrc:
#============================================================================================= # RISCV Tools #============================================================================================= export RISCV=/home/Riscv_Tools PATH=$PATH:$RISCV/bin alias rv32_elf='riscv32-unknown-elf-gcc';
个人是放置在/home下,注意非个人home别搞混了。如果你放置在其他地方,需要修改上面export RISCV=/home/Riscv_Tools的路径;
使用下面命令进行解压得到Riscv_Tools:
tar -xf CK_Riscv_Tools.tar4.跑起来
一定要先source环境才能用;
source bashrc.env
进入到regress目录,有一个Makefile文件,里面全是RISCV的测试用例
跑所有的测试用例,当然可以单独跑一个,make单独的case名就行;
make rv
每个case,自动编译C程序或者汇编程序,并自动吃入RAM中,仿真结束后也会打印测试用例的仿真结果;
regress结束后,生成以下文件,这个是每个测试用例的仿真目录;
进入其中仿真目录,使用open_verdi即可启动verdi查看仿真波形以及Debug



