Hi, I am trying to get my simulation environment s...
# shuttle
s
Hi, I am trying to get my simulation environment set up with the vanilla mpw_6c code on mac. I was able to harden, run the precheck, and now trying to use the Docker simenv. I have tried exporting PDK variable and have all the other export such as: OPENLANE_ROOT, PDK_ROOT, PDK_PATH, CARAVEL_ROOT, TARGET_PATH, MCW_ROOT, and DESIGNS. I have also ran the Docker container, said it needed Python3.6+, so I installed Python3.8 and still ran into issues. Below are the two errors I get when running outside and inside of the Docker container. Any help would be appreciated!
Copy code
➜  caravel_example git:(83395c0) βœ— make verify-wb_port-rtl 
docker pull efabless/dv_setup:latest
latest: Pulling from efabless/dv_setup
Digest: sha256:6016348210ed5610a4b858008db0ed7e85f99f32b7f633d84329a8ec9dc81e4a
Status: Image is up to date for efabless/dv_setup:latest
<http://docker.io/efabless/dv_setup:latest|docker.io/efabless/dv_setup:latest>
docker run -v /Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example -v /Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/pdks:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/pdks -v /Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/caravel:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/caravel -e TARGET_PATH=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example -e PDK_ROOT=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/pdks -e CARAVEL_ROOT=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/caravel -e TOOLS=/opt/riscv32i -e DESIGNS=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example -e CORE_VERILOG_PATH=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/mgmt_core_wrapper/verilog -e GCC_PREFIX=riscv32-unknown-elf -e MCW_ROOT=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/mgmt_core_wrapper -u $(id -u $USER):$(id -g $USER) efabless/dv_setup:latest sh -c "cd /Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/dv/wb_port && export SIM=RTL && make"
iverilog -Ttyp -DFUNCTIONAL -DSIM -DUSE_POWER_PINS -DUNIT_DELAY=#1 \
        -f/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/mgmt_core_wrapper/verilog/includes/includes.rtl.caravel \
        -f/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/includes/includes.rtl.caravel_user_project -o wb_port.vvp wb_port_tb.v
Warning: environment variable "PDK" not found during command file processing.
Warning: environment variable "PDK" not found during command file processing.
Warning: environment variable "PDK" not found during command file processing.
Warning: environment variable "PDK" not found during command file processing.
Warning: environment variable "PDK" not found during command file processing.
Warning: environment variable "PDK" not found during command file processing.
/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/pdks//libs.ref/sky130_fd_io/verilog/sky130_fd_io.v: No such file or directory
No top level modules, and no -s option.
make: *** [/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/mgmt_core_wrapper/verilog/dv/make/sim.makefile:67: wb_port.vvp] Error 1
make: *** [verify-wb_port-rtl] Error 2
➜  caravel_example git:(83395c0) βœ—
Copy code
root@9da8f0b8de36:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/dv# SIM=RTL make verify-wb_port
cd wb_port && make
make[1]: Entering directory '/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/dv/wb_port'
Makefile:30: /verilog/dv/make/sim.makefile: No such file or directory
make[1]: *** No rule to make target '/verilog/dv/make/sim.makefile'.  Stop.
make[1]: Leaving directory '/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/dv/wb_port'
make: *** [Makefile:33: verify-wb_port] Error 2
root@9da8f0b8de36:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog/dv# cd ..
root@9da8f0b8de36:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/verilog# cd ..
root@9da8f0b8de36:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example# SIM=RTL make verify-wb_port
export CARAVEL_ROOT=/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/caravel && make -f /Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example/caravel/Makefile verify-wb_port
make[1]: Entering directory '/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example'
make[1]: *** No rule to make target 'verify-wb_port'.  Stop.
make[1]: Leaving directory '/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example'
make: *** [Makefile:48: verify-wb_port] Error 2
root@9da8f0b8de36:/Users/somasz/Documents/GitHub/mpw_6c/caravel_tutorial/caravel_example# exit
d
Try with setting PDK variable as export PDK=sky130A
πŸ‘ 1
s
I did and get the same result. It seems like the Docker container (not my local machine) is complaining about missing the PDK.
RESOLVED: added the β€œ-e PDK=sky130A” to the project (outermost) Makefile when launching the Docker container.
d
@User This may be bug in new MPW-6 caravel_user_project
c
I am also trying to get simulation working so please do confirm if this needs to be fixed?
s
Yes, it seems to be a bug for mac users. You need to add the β€œ-e PDK=sky130A” (line 91) to the command in the Makefile as in the picture above
c
Only for MAC users? isn't this setting the environment for the docker container so it would apply regardless of the host? we are using linux
s
Right it is probably for all users. Adding that environment variable should not hurt. I was just surprised because I was able to run mpw_5c (a couple weeks ago) on Windows with WSL Ubuntu without issues. That one did not have the PDK variable
d
@User Yes I also not notice this issue during MPW-5, this is new change in MPW-6 [May be due to two Skywater Library sky130A and sky130B]
βœ… 1