如何使用RISC-V火箭芯片处理器制作多核系统



我想用zedboard做一个多核。我对此有两个问题。

  1. 我将rocket-chip/src/main/scala/Configs中的变量'NTILES'更改为2。Scala用于实现多核系统。

  2. 如果我制作多核,我如何确认?我尝试使用fork和后台执行来检查修改后的系统,但是我收到如下图所示的错误信息。线程不能被编译。我想知道确认多核系统的方法

另外,如果你有任何关于制作多核火箭芯片的想法,请通知我的知识。谢谢。

使用NTILES=2和DefaultFPGAConfig,两个内核可能不适合在一个主板上。我将验证Vivado能够成功完成。您可能需要减少一些其他参数(BTB、FPU等)。

代理内核(riscv-pk)不支持多核。要使用linux,您需要在构建时启用SMP支持。当为linux做菜单配置时,在"平台类型"下打开"对称多处理"。对于pthreads,我会将正确的共享库从riscv-gcc-linux的编译器目录复制到linux磁盘映像中。

一旦您在板上启动SMP linux,您可以确认它是具有cat /proc/cpuinfo的多核。对于测试软件(linux、磁盘映像、代码),我建议在确信并行软件准备就绪时使用spike并转移到FPGA。Spike可以模拟多核

相关内容

  • 没有找到相关文章

最新更新