在 FPGA 中执行后检索 RISC-V 处理器上下文
Retrieve RISC-V processor context after execution in FPGA
我正在将 RISC-V 加载到 Zedboard 中,并且我正在 运行 进行基准测试(在 riscv-tools 中提供)而不启动 riscv-linux,在这种情况下:
./fesvr-zynq median.riscv
它没有错误地完成,结果给出了循环数和 instret。
我的问题是我想要更多信息,我想知道执行后的处理器上下文(寄存器组值和内存)以及算法给出的结果。有没有办法从 FPGA 执行中知道这一点?我知道可以用模拟器完成,但我需要 运行 在 FPGA 上完成。
谢谢。
按照它为您提供 cycles
和 instret
数据的方式进行操作。查看 riscv-tests/benchmarks/common/*
。该代码是 运行 裸机,因此您可以编写任何您想要的代码并访问任何 CSR、寄存器或内存,然后您可以使用基本版本的 printf 来显示信息。
我正在将 RISC-V 加载到 Zedboard 中,并且我正在 运行 进行基准测试(在 riscv-tools 中提供)而不启动 riscv-linux,在这种情况下:
./fesvr-zynq median.riscv
它没有错误地完成,结果给出了循环数和 instret。
我的问题是我想要更多信息,我想知道执行后的处理器上下文(寄存器组值和内存)以及算法给出的结果。有没有办法从 FPGA 执行中知道这一点?我知道可以用模拟器完成,但我需要 运行 在 FPGA 上完成。 谢谢。
按照它为您提供 cycles
和 instret
数据的方式进行操作。查看 riscv-tests/benchmarks/common/*
。该代码是 运行 裸机,因此您可以编写任何您想要的代码并访问任何 CSR、寄存器或内存,然后您可以使用基本版本的 printf 来显示信息。