chipsalliance / rocket-chip

Rocket Chip Generator
Other
3.28k stars 1.14k forks source link

Running the assembly tests on the C simulator in order to generate waveforms failed #1285

Closed clx782782 closed 6 years ago

clx782782 commented 6 years ago

Hello,everyone!

I have already build the C simulator that is capable of VCD waveform generation by typing "make debug",and there was no error. Then I run "make -jN run-asm-tests-debug",the terminal information as below

root@vm:/home/chang/rocket-chip/emulator# make -j1 run-asm-tests-debug rm -rf output/rv64um-v-mul.vpd.vcd && mkfifo output/rv64um-v-mul.vpd.vcd vcd2vpd output/rv64um-v-mul.vpd.vcd output/rv64um-v-mul.vpd > /dev/null & ./emulator-freechips.rocketchip.system-DefaultConfig-debug +max-cycles=100000000 +verbose -voutput/rv64um-v-mul.vpd.vcd output/rv64um-v-mul 3>&1 1>&2 2>&3 | /path/to/install/riscv/toolchain/bin/spike-dasm > output/rv64um-v-mul.out && [ $PIPESTATUS -eq 0 ] /bin/bash: vcd2vpd: command not found

I am a freshman and don't know what's wrong. Does this function need other software's supports?

edcote commented 6 years ago

Make sure you have Synopsys VCS installed and all the required environment variables set.

seldridge commented 6 years ago

Hmm... this is actually unexpected, though it's apparently been the case for a long, long time. The asm-debug tests don't need to generate .vpd and could generate .vcs. However, RocketTestSuite.scala is doing it this way.

FWIW, @clx7913: you don't need to run these tests. If you want to generate a waveform, you can run your program and use the +verbose option to turn on Chisel printfs and use the -v<FILE> option to dump a waveform to a file.

The README acts like anybody should be able to run make -J4 run-asm-tests, but that's dependent on VCS. It fundamentally doesn't need to be, but this may be more convenient to have things configured as such.

This may be worth fixing to generate .vcs for the emulator makefrags and .vpd for vsim. Alternatively, the top level README should indicate that this isn't supported for the emulator directory unless you have VCS (it is indicated as such for vsim).

clx782782 commented 6 years ago

I've got it. Thank you!

IC-Dream commented 6 years ago

@clx7913 Have you solved this problem ??? Thanks in advance

HaFred commented 5 years ago

FWIW

Hi Seldridge, I thought Verilator in the /emulator repo is not depending on Synopsys VCS, is it? Would you please suggest a way to generate the waveforms of run-asm-tests w/o VCS? Thank you very much! @seldridge