Jiaolong's Blog Jiaolong's Blog
首页
分类
归档
Wiki
摘录
导航
留言
关于

Jiaolong

Solo Developer
首页
分类
归档
Wiki
摘录
导航
留言
关于
  • 在 Ubuntu 20.04 上安装 GCC
  • hello world
  • 使用cva6+spike搭建RISC-V环境
    • 0.准备
    • 1. Clone cva6
    • 2. Set up environment
    • 3.安装Spike和pk
    • 4.1. 编译测试
  • gcc编译过程查看汇编代码
  • 分析RISC-V汇编代码
  • RISC-V V扩展1.0版本环境搭建与测试
  • RISCV-V扩展执行速度测试
  • 移植FFmpeg到RISC-V记录
  • Linux创建Swap交换分区
  • RISC-V \\V\\ Vector Extension 1.0 翻译
  • RISCV-V拓展1.0解读
  • 浅谈向量化和SIMD
  • x264编译测试
  • 浅淡Makefile
  • 回炉重造C语言
  • 使用Gprof+Gprod2dot做性能分析
  • 移植x264到RISC-V
  • QEMU运行RVV
  • 优化x264
  • 音视频理论基础
  • Swift拼音排序
  • Blog
Jiaolong
2022-08-04
Catelog

使用cva6+spike搭建RISC-V环境

# 0.准备

虚拟机:Ubuntu 20.04

sudo apt install -y git curl gcc g++ make autoconf gtkwave
1
1

# 1. Clone cva6

git clone https://github.com/openhwgroup/cva6.git
1
1
cd cva6
1
1

下载子模块

git submodule update --init --recursive
1
1

可能会failed,多执行几次,直到全部下载完成

# 2. Set up environment

mkdir install
1
1
export RISCV="/home/jiaolong/cva6/install"
1
1
export PATH="$PATH:/home/jiaolong/cva6/install/bin"
1
1

路径更换为自己的cva6路径

export为临时更改环境变量

source ~/.bashrc
1
1
./ci/setup.sh
1
1
./ci/install-riscvpk.sh
1
1

# 3.安装Spike和pk

在riscv-isa-sim路径下打开终端:

apt-get install device-tree-compiler
mkdir build
cd build
../configure --prefix=$RISCV
make
[sudo] make install
1
2
3
4
5
6
1
2
3
4
5
6

在riscv-pk路径下打开终端:

mkdir build
cd build
../configure --prefix=$RISCV --host=riscv64-unknown-elf
make
make install
1
2
3
4
5
1
2
3
4
5

# 4.1. 编译测试

  1. 编写简单测试函数add.c

    echo '
    #include <stdio.h>
    int f(int x){
            return x+3;
    }
    int main(){
            printf("hello cva6\n");
            printf("%d\n",f(3));
    }' > hello.c
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    1
    2
    3
    4
    5
    6
    7
    8
    9
  2. 使用riscv64-unknown-elf-gcc编译RISC-V可执行文件

    riscv64-unknown-elf-gcc add.c -o add
    
    1
    1
  3. 使用spike pk模拟运行RISC-V指令

    spike pk add
    
    1
    1

    image-20220808135230132

  4. 使用riscv64-unknown-elf-gcc生成RISC-V指令的汇编代码

    riscv64-unknown-elf-gcc -S add.c -o add.s
    
    1
    1

    image-20220808135205903




参考链接:

  • https://blog.csdn.net/IT_LanTian/article/details/122324909 (opens new window)
  • Hello CVA6 World! (opens new window)
Last updated: 2022/12/04, 13:58:10

← hello world gcc编译过程查看汇编代码→

Copyright © 2022-2023 | Jiaolong Wang
  • 跟随系统
  • 浅色模式
  • 深色模式