OpenXiangShan / XiangShan-doc

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

内存16GB生成simpoint的时候bootload挂住 #81

Closed qqli579 closed 4 months ago

qqli579 commented 4 months ago

在利用NEMU生成specCPU2017 simpoint时需要16GB的内存,因此修改noop.dtsi把内存增加到16GB

/dts-v1/;

/ {
    L18: soc {
        L2: clint@2000000 {
            compatible = "riscv,clint0";
            interrupts-extended = <&L4 3 &L4 7>;
            reg = <0x0 0x38000000 0x0 0x10000>;
            reg-names = "control";
            clock-frequency-mhz = <500>;
        };
        L14: serial@60000000 {
            compatible = "xilinx,uartlite";
            //interrupt-parent = <&L1>;
            interrupts = <3>;
            reg = <0x0 0x40600000 0x0 0x1000>;
            reg-names = "control";
        };
    sdhci: mmc {
      compatible = "nemu-sdhost";
            reg = <0x0 0x40002000 0x0 0x1000>;
    };
    };
  chosen {
    bootargs = "root=/dev/mmcblk0 rootfstype=ext4 ro rootwait earlycon";
  };
    L11: memory@100000000 {
        device_type = "memory";
        reg = <0x0 0x80000000 0x4 0x00000000>;
    };
};

利用NEMU 如下指令跑的时候

/xiangshang/NEMU-master/NEMU/build/riscv64-nemu-interpreter /xiangshang/linux/riscv-pk/spec2017bin/build_xz_cpu/bbl.bin -D /xiangshang/NEMU-master/spec2017CheckPoint/CPU2017Simpoint -w xz_cpu -C cpu2016-simpoint-profiling -b --simpoint-profile --cpt-interval 20000000 -r /xiangshang/NEMU-master/NEMU/resource/gcpt_restore/build/gcpt.bin

bootload挂在了Initmem setup node 0,log如下:

bbl loader

freq-mhz = 500
CLINT: set frequency to 500 MHz
              vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

                  vvvvvvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrr       vvvvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrrrrr      vvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv

rrrrrrrrrrrrrrrr      vvvvvvvvvvvvvvvvvvvvvv  

rrrrrrrrrrrrr       vvvvvvvvvvvvvvvvvvvvvv    

rr                vvvvvvvvvvvvvvvvvvvvvv      

rr            vvvvvvvvvvvvvvvvvvvvvvvv      rr

rrrr      vvvvvvvvvvvvvvvvvvvvvvvvvv      rrrr

rrrrrr      vvvvvvvvvvvvvvvvvvvvvv      rrrrrr

rrrrrrrr      vvvvvvvvvvvvvvvvvv      rrrrrrrr

rrrrrrrrrr      vvvvvvvvvvvvvv      rrrrrrrrrr

rrrrrrrrrrrr      vvvvvvvvvv      rrrrrrrrrrrr

rrrrrrrrrrrrrr      vvvvvv      rrrrrrrrrrrrrr

rrrrrrrrrrrrrrrr      vv      rrrrrrrrrrrrrrrr

rrrrrrrrrrrrrrrrrr          rrrrrrrrrrrrrrrrrr

rrrrrrrrrrrrrrrrrrrr      rrrrrrrrrrrrrrrrrrrr

rrrrrrrrrrrrrrrrrrrrrr  rrrrrrrrrrrrrrrrrrrrrr

       INSTRUCTION SETS WANT TO BE FREE

[    0.000000] OF: fdt: Ignoring memory range 0x80000000 - 0x80200000

[    0.000000] Linux version 4.18.0 (hukun@n168-020-004) (gcc version 12.2.0 (g2ee5e430018)) #70 Mon Mar 4 19:41:28 CST 2024

[    0.000000] bootconsole [early0] enabled

[    0.000000] Initial ramdisk at: 0x(____ptrval____) (10874858 bytes)

[    0.000000] Zone ranges:

[    0.000000]   DMA32    empty

[    0.000000]   Normal   [mem 0x0000000080200000-0x000000047fffffff]

[    0.000000] Movable zone start for each node

[    0.000000] Early memory node ranges

[    0.000000]   node   0: [mem 0x0000000080200000-0x000000047fffffff]

[    0.000000] Initmem setup node 0 [mem 0x0000000080200000-0x000000047fffffff]

如果内存是8GB,就可以正常启动

xyyy1420 commented 4 months ago

请尝试在NEMU的menuconfig中将Memory size 改为16GB