OpenXiangShan / XiangShan-doc

Documentation for XiangShan
https://xiangshan-doc.readthedocs.io
Creative Commons Attribution 4.0 International
329 stars 126 forks source link

spec_gen.py 中的spec_common文件夹 #79

Closed qqli579 closed 4 months ago

qqli579 commented 5 months ago

在spec_gen.py 生成initramfs-spec.txt文件时需要指定spec_common文件夹,这个文件夹怎么生成的?或者在哪里可以下载

  "# SPEC common",
  "dir /spec_common 755 0 0",
  "file /spec_common/before_workload ${SPEC}/before_workload 755 0 0",
  "file /spec_common/trap ${SPEC}/trap_new 755 0 0",
  "",

还有一个问题是如果要生成specCPU2006 所有12个int case的checkpoint,是不是要生成12个initramfs-spec.tx。然后在riscv-linux 中配置不同case的initramfs-spec.txt.。然后生成12个不同的rootfs? 有没有生成specCPU2006 checkpoint的完整的脚本工具?

shinezyy commented 5 months ago
  1. @xyyy1420 回答一下这个文件夹的问题;

  2. 然后生成12个不同的rootfs?

不止是12个int case的checkpoint,因为一个case可能有多个input,每个input都需要生成一个。

3.

有没有生成specCPU2006 checkpoint的完整的脚本工具?

因为整个过程细节过多,我们过往的自动化尝试都不太成功,所以社区暂时不提供这个脚本的支持,您可以自己写一个脚本。如果您来自我们的合作企业,也可以通过商务渠道给我们发相关需求。

xyyy1420 commented 5 months ago

"dir /spec_common 755 0 0" 这行创建了文件夹 "file /spec_common/before_workload ${SPEC}/before_workload 755 0 0" 这行往文件夹中增加了一个before_workload的文件,这个文件来自riscv-rootfs "file /spec_common/trap ${SPEC}/trap_new 755 0 0" 这个同样来自riscv-rootfs

qqli579 commented 5 months ago
  1. @xyyy1420 回答一下这个文件夹的问题;

然后生成12个不同的rootfs?

不止是12个int case的checkpoint,因为一个case可能有多个input,每个input都需要生成一个。

有没有生成specCPU2006 checkpoint的完整的脚本工具?

因为整个过程细节过多,我们过往的自动化尝试都不太成功,所以社区暂时不提供这个脚本的支持,您可以自己写一个脚本。如果您来自我们的合作企业,也可以通过商务渠道给我们发相关需求。

那就是每个input 都要生成一个rootfs? 把before_workload.c 编译后放到/spec_common/before_workload ${SPEC}/before_workload 这个下面? 把trap.c编译后放到/spec_common/trap ${SPEC}/trap_new?

shinezyy commented 5 months ago
  1. @xyyy1420 回答一下这个文件夹的问题;

然后生成12个不同的rootfs?

不止是12个int case的checkpoint,因为一个case可能有多个input,每个input都需要生成一个。

有没有生成specCPU2006 checkpoint的完整的脚本工具?

因为整个过程细节过多,我们过往的自动化尝试都不太成功,所以社区暂时不提供这个脚本的支持,您可以自己写一个脚本。如果您来自我们的合作企业,也可以通过商务渠道给我们发相关需求。

那就是每个input 都要生成一个rootfs? 把before_workload.c 编译后放到/spec_common/before_workload ${SPEC}/before_workload 这个下面? 把trap.c编译后放到/spec_common/trap ${SPEC}/trap_new?

每个input 都要生成一个rootfs?你可以这么理解。

但是你对initram fs理解仍然有问题。我觉得你应该去搜一下initramfs每个字段的含义。香山用到了Linux,不代表香山社区有义务回复所有Linux相关的问题。