GSIM accepts chirrtl, and compiles it to C++
- Install GMP, clang 19(+).
-
GSIM provides 4 RISC-V cores ready for simulation: ysyx3, Rocket, BOOM, XiangShan.
-
To try GSIM, using
$ make init $ make run dutName=core
-
Set core to
ysyx3
,rocket
,small-boom
,large-boom
,minimal-xiangshan
ordefault-xiangshan
- Run
make build-gsim
to build GSIM - Run
build/gsim/gsim $(chirrtl-file)
to compile chirrtl to C++ - Refer to
build/gsim/gsim --help
for more information - See C++ harness example to know how it interacts with the emitted C++ code.
GSIM supports FST waveform generation for debugging and analysis. You can control this feature via Makefile:
-
Enable FST waveform: Add
-DFST_WAVE
toFST_CFLAGS
in MakefileFST_CFLAGS = -DFST_WAVE -I$(abspath include/libfst)
-
Disable FST waveform: Remove
-DFST_WAVE
fromFST_CFLAGS
FST_CFLAGS = -I$(abspath include/libfst)
When enabled, the generated C++ model will produce .fst
waveform files that can be viewed with tools like GTKWave.