ucb-bar / chipyard

An Agile RISC-V SoC Design Framework with in-order cores, out-of-order cores, accelerators, and more
https://chipyard.readthedocs.io/en/stable/
BSD 3-Clause "New" or "Revised" License
1.63k stars 645 forks source link

Verilator generates a simulation executable that produces segmentation fault in v1.10.0 #1613

Open danivz opened 1 year ago

danivz commented 1 year ago

Background Work

Chipyard Version and Hash

Release: 1.10.0 Hash: b7644b2

OS Setup

Linux pececito 6.2.0-33-generic #33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep  7 10:33:52 UTC 2 x86_64 GNU/Linux
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.2 LTS
Release:    22.04
Codename:   jammy
SHELL=/bin/bash
SESSION_MANAGER=local/pececito:@/tmp/.ICE-unix/2234,unix/pececito:/tmp/.ICE-unix/2234
QT_ACCESSIBILITY=1
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
SSH_AGENT_LAUNCHER=gnome-keyring
XDG_MENU_PREFIX=gnome-
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
GTK_IM_MODULE=ibus
CONDA_EXE=/home/dani/miniforge3/bin/conda
_CE_M=
LC_ADDRESS=es_ES.UTF-8
JAVA_HOME=/home/dani/work/berkeley/chipyard/.conda-env/lib/jvm
GNOME_SHELL_SESSION_MODE=ubuntu
LC_NAME=es_ES.UTF-8
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
JAVA_LD_LIBRARY_PATH=/home/dani/work/berkeley/chipyard/.conda-env/lib/jvm/lib/server
XMODIFIERS=@im=ibus
DESKTOP_SESSION=ubuntu
LC_MONETARY=es_ES.UTF-8
XML_CATALOG_FILES=file:///home/dani/work/berkeley/chipyard/.conda-env/etc/xml/catalog file:///etc/xml/catalog
GTK_MODULES=gail:atk-bridge
PWD=/home/dani/work/berkeley/chipyard
GSETTINGS_SCHEMA_DIR=/home/dani/work/berkeley/chipyard/.conda-env/share/glib-2.0/schemas
LOGNAME=dani
XDG_SESSION_DESKTOP=ubuntu
XDG_SESSION_TYPE=x11
CONDA_PREFIX=/home/dani/work/berkeley/chipyard/.conda-env
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
SYSTEMD_EXEC_PID=2256
GSETTINGS_SCHEMA_DIR_CONDA_BACKUP=
XAUTHORITY=/run/user/1000/gdm/Xauthority
WINDOWPATH=2
HOME=/home/dani
USERNAME=dani
LC_PAPER=es_ES.UTF-8
LANG=en_US.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
XDG_CURRENT_DESKTOP=ubuntu:GNOME
VTE_VERSION=6800
CONDA_PROMPT_MODIFIER=(/home/dani/work/berkeley/chipyard/.conda-env) 
GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/7a4764ad_3d5a_443e_8022_73d47cb2d104
JAVA_LD_LIBRARY_PATH_BACKUP=
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
TERM=xterm-256color
LC_IDENTIFICATION=es_ES.UTF-8
_CE_CONDA=
LESSOPEN=| /usr/bin/lesspipe %s
USER=dani
GNOME_TERMINAL_SERVICE=:1.239
CONDA_SHLVL=1
DISPLAY=:1
SHLVL=1
LC_TELEPHONE=es_ES.UTF-8
QT_IM_MODULE=ibus
LC_MEASUREMENT=es_ES.UTF-8
CONDA_PYTHON_EXE=/home/dani/miniforge3/bin/python
LD_LIBRARY_PATH=/home/dani/work/berkeley/chipyard/.conda-env/esp-tools/lib
XDG_RUNTIME_DIR=/run/user/1000
CONDA_DEFAULT_ENV=/home/dani/work/berkeley/chipyard/.conda-env
LC_TIME=es_ES.UTF-8
JAVA_HOME_CONDA_BACKUP=
CONDA_BACKUP_PATH=/home/dani/work/berkeley/chipyard/.conda-env/bin:/home/dani/work/berkeley/chipyard/software/firemarshal:/home/dani/miniforge3/condabin:/home/dani/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/dani/.fzf/bin
XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
PATH=/home/dani/work/berkeley/chipyard/.conda-env/esp-tools/bin:/home/dani/work/berkeley/chipyard/.conda-env/bin:/home/dani/work/berkeley/chipyard/software/firemarshal:/home/dani/miniforge3/condabin:/home/dani/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/dani/.fzf/bin
GDMSESSION=ubuntu
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
LC_NUMERIC=es_ES.UTF-8
RISCV=/home/dani/work/berkeley/chipyard/.conda-env/esp-tools
OLDPWD=/home/dani/work/berkeley/chipyard/sims
_=/home/dani/work/berkeley/chipyard/.conda-env/bin/printenv
# packages in environment at /home/dani/work/berkeley/chipyard/.conda-env:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
_sysroot_linux-64_curr_repodata_hack 3                   h69a702a_13    conda-forge
aiohttp                   3.8.4            py39h72bdee0_0    conda-forge
aiosignal                 1.3.1              pyhd8ed1ab_0    conda-forge
alabaster                 0.7.13             pyhd8ed1ab_0    conda-forge
alsa-lib                  1.2.9                hd590300_0    conda-forge
appdirs                   1.4.4              pyh9f0ad1d_0    conda-forge
argcomplete               3.0.8              pyhd8ed1ab_0    conda-forge
asttokens                 2.2.1                    pypi_0    pypi
async-timeout             4.0.2              pyhd8ed1ab_0    conda-forge
atk-1.0                   2.38.0               hd4edc92_1    conda-forge
attrs                     23.1.0             pyh71513ae_1    conda-forge
autoconf                  2.71            pl5321h2b4cb7a_1    conda-forge
aws-sam-translator        1.55.0             pyhd8ed1ab_0    conda-forge
aws-xray-sdk              2.12.0             pyhd8ed1ab_0    conda-forge
awscli                    1.27.145         py39hf3d152e_0    conda-forge
azure-core                1.27.0             pyhd8ed1ab_0    conda-forge
azure-identity            1.12.0             pyhd8ed1ab_0    conda-forge
babel                     2.12.1             pyhd8ed1ab_1    conda-forge
bash                      5.2.15               hfbf034d_0    conda-forge
bash-completion           2.11                 ha770c72_1    conda-forge
bc                        1.07.1               h7f98852_0    conda-forge
bcrypt                    3.2.2            py39hb9d737c_1    conda-forge
binutils                  2.40                 hdd6e379_0    conda-forge
binutils_impl_linux-64    2.40                 hf600244_0    conda-forge
bison                     3.8.2                h59595ed_0    conda-forge
blinker                   1.6.2              pyhd8ed1ab_0    conda-forge
boto3                     1.26.145           pyhd8ed1ab_0    conda-forge
boto3-stubs               1.26.145           pyhd8ed1ab_0    conda-forge
botocore                  1.29.145           pyhd8ed1ab_0    conda-forge
botocore-stubs            1.29.145           pyhd8ed1ab_0    conda-forge
brotli                    1.0.9                h166bdaf_8    conda-forge
brotli-bin                1.0.9                h166bdaf_8    conda-forge
brotlipy                  0.7.0           py39hb9d737c_1005    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
c-ares                    1.19.1               hd590300_0    conda-forge
ca-certificates           2023.5.7             hbcca054_0    conda-forge
cachecontrol              0.13.0             pyhd8ed1ab_0    conda-forge
cachecontrol-with-filecache 0.13.0             pyhd8ed1ab_0    conda-forge
cachy                     0.3.0              pyhd8ed1ab_1    conda-forge
cairo                     1.16.0            hbbf8b49_1016    conda-forge
certifi                   2023.5.7           pyhd8ed1ab_0    conda-forge
cffi                      1.15.1           py39he91dace_3    conda-forge
cfgv                      3.3.1              pyhd8ed1ab_0    conda-forge
cfn-lint                  0.75.1             pyhd8ed1ab_0    conda-forge
charset-normalizer        2.1.1              pyhd8ed1ab_0    conda-forge
clang-format              16.0.3          default_h1cdf331_2    conda-forge
clang-format-16           16.0.3          default_h1cdf331_2    conda-forge
clang-tools               16.0.3          default_h1cdf331_2    conda-forge
click                     8.1.3            py39hf3d152e_1    conda-forge
click-default-group       1.2.2              pyhd8ed1ab_1    conda-forge
clikit                    0.6.2              pyhd8ed1ab_2    conda-forge
cloudpickle               2.2.1              pyhd8ed1ab_0    conda-forge
cmake                     3.26.3               h077f3f9_0    conda-forge
colorama                  0.4.4              pyh9f0ad1d_0    conda-forge
conda                     22.11.1          py39hf3d152e_1    conda-forge
conda-gcc-specs           12.2.0              he6d4335_19    conda-forge
conda-lock                1.4.0              pyhd8ed1ab_2    conda-forge
conda-package-handling    2.0.2              pyh38be061_0    conda-forge
conda-package-streaming   0.8.0              pyhd8ed1ab_0    conda-forge
conda-standalone          22.11.1              ha770c72_0    conda-forge
conda-tree                1.1.0              pyhd8ed1ab_2    conda-forge
constructor               3.4.3              pyhe4f9e05_0    conda-forge
contourpy                 1.0.7            py39h4b4f3f3_0    conda-forge
coreutils                 9.3                  h0b41bf4_0    conda-forge
crashtest                 0.4.1              pyhd8ed1ab_0    conda-forge
cryptography              40.0.2           py39h079d5ae_0    conda-forge
ctags                     5.8               h14c3975_1000    conda-forge
curl                      7.88.1               hdc1c0ab_1    conda-forge
cycler                    0.11.0             pyhd8ed1ab_0    conda-forge
dbus                      1.13.6               h5008d03_3    conda-forge
diffutils                 3.10                 hf18258e_0    conda-forge
distlib                   0.3.6              pyhd8ed1ab_0    conda-forge
docker-py                 6.1.0              pyhd8ed1ab_0    conda-forge
docutils                  0.16             py39hf3d152e_3    conda-forge
doit                      0.36.0             pyhd8ed1ab_0    conda-forge
dromajo                   1.0.0           0_h1234567_g6a6e34e    ucb-bar
dtc                       1.6.1                h166bdaf_2    conda-forge
ecdsa                     0.18.0             pyhd8ed1ab_1    conda-forge
elfutils                  0.187                h989201e_0    conda-forge
ensureconda               1.4.3              pyhd8ed1ab_0    conda-forge
esp-tools                 1.0.1           0_h1234567_g8925bf5    ucb-bar
exceptiongroup            1.1.1              pyhd8ed1ab_0    conda-forge
expat                     2.5.0                hcb278e6_1    conda-forge
expect                    5.45.4               h555a92e_0    conda-forge
fab-classic               1.19.2                   pypi_0    pypi
file                      5.39                 h753d276_1    conda-forge
filelock                  3.12.0             pyhd8ed1ab_0    conda-forge
findutils                 4.6.0             h166bdaf_1001    conda-forge
firtool                   1.30.0          0_h1234567_gdb40efbcd    ucb-bar
flask                     2.3.2              pyhd8ed1ab_0    conda-forge
flask_cors                3.0.10             pyhd3deb0d_0    conda-forge
flex                      2.6.4             h58526e2_1004    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.39.4           py39hd1e30aa_0    conda-forge
freetype                  2.12.1               hca18f0e_1    conda-forge
fribidi                   1.0.10               h36c2ea0_0    conda-forge
frozenlist                1.3.3            py39hb9d737c_0    conda-forge
fsspec                    2023.5.0           pyh1a96a4e_0    conda-forge
gcc                       12.2.0              h26027b1_13    conda-forge
gcc_impl_linux-64         12.2.0              hcc96c02_19    conda-forge
gdk-pixbuf                2.42.10              h6b639ba_2    conda-forge
gdspy                     1.4                      pypi_0    pypi
gengetopt                 2.23                 h9c3ff4c_0    conda-forge
gettext                   0.21.1               h27087fc_0    conda-forge
giflib                    5.2.1                h0b41bf4_3    conda-forge
git                       2.40.1          pl5321h86e50cf_0    conda-forge
gitdb                     4.0.10             pyhd8ed1ab_0    conda-forge
gitpython                 3.1.31             pyhd8ed1ab_0    conda-forge
gmp                       6.2.1                h58526e2_0    conda-forge
gmpy2                     2.1.2            py39h376b7d2_1    conda-forge
gnutls                    3.7.8                hf3e180e_0    conda-forge
graphite2                 1.3.13            h58526e2_1001    conda-forge
graphql-core              3.2.3              pyhd8ed1ab_0    conda-forge
graphviz                  8.0.5                h28d9a01_0    conda-forge
gtk2                      2.24.33              h90689f9_2    conda-forge
gts                       0.7.6                h64030ff_2    conda-forge
gxx                       12.2.0              h26027b1_13    conda-forge
gxx_impl_linux-64         12.2.0              hcc96c02_19    conda-forge
gzip                      1.12                 h166bdaf_0    conda-forge
hammer-vlsi               1.1.1                    pypi_0    pypi
harfbuzz                  7.3.0                hdb3a94d_0    conda-forge
html5lib                  1.1                pyh9f0ad1d_0    conda-forge
humanfriendly             10.0             py39hf3d152e_4    conda-forge
icontract                 2.6.2                    pypi_0    pypi
icu                       72.1                 hcb278e6_0    conda-forge
identify                  2.5.24             pyhd8ed1ab_0    conda-forge
idna                      3.4                pyhd8ed1ab_0    conda-forge
imagesize                 1.4.1              pyhd8ed1ab_0    conda-forge
importlib-metadata        6.6.0              pyha770c72_0    conda-forge
importlib-resources       5.12.0             pyhd8ed1ab_0    conda-forge
importlib_metadata        6.6.0                hd8ed1ab_0    conda-forge
importlib_resources       5.12.0             pyhd8ed1ab_0    conda-forge
iniconfig                 2.0.0              pyhd8ed1ab_0    conda-forge
itsdangerous              2.1.2              pyhd8ed1ab_0    conda-forge
jaraco.classes            3.2.3              pyhd8ed1ab_0    conda-forge
jeepney                   0.8.0              pyhd8ed1ab_0    conda-forge
jinja2                    3.1.2              pyhd8ed1ab_1    conda-forge
jmespath                  1.0.1              pyhd8ed1ab_0    conda-forge
jq                        1.6               h36c2ea0_1000    conda-forge
jschema-to-python         1.2.3              pyhd8ed1ab_0    conda-forge
jsondiff                  2.0.0              pyhd8ed1ab_0    conda-forge
jsonpatch                 1.32               pyhd8ed1ab_0    conda-forge
jsonpickle                2.2.0              pyhd8ed1ab_0    conda-forge
jsonpointer               2.0                        py_0    conda-forge
jsonschema                3.2.0              pyhd8ed1ab_3    conda-forge
junit-xml                 1.9                pyh9f0ad1d_0    conda-forge
kernel-headers_linux-64   3.10.0              h4a8ded7_13    conda-forge
keyring                   23.13.1          py39hf3d152e_0    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
kiwisolver                1.4.4            py39hf939315_1    conda-forge
krb5                      1.20.1               h81ceb04_0    conda-forge
lcms2                     2.15                 haa2dc70_1    conda-forge
ld_impl_linux-64          2.40                 h41732ed_0    conda-forge
lerc                      4.0.0                h27087fc_0    conda-forge
libabseil                 20230125.2      cxx17_h59595ed_2    conda-forge
libarchive                3.5.2                hada088e_3    conda-forge
libblas                   3.9.0           16_linux64_openblas    conda-forge
libbrotlicommon           1.0.9                h166bdaf_8    conda-forge
libbrotlidec              1.0.9                h166bdaf_8    conda-forge
libbrotlienc              1.0.9                h166bdaf_8    conda-forge
libcblas                  3.9.0           16_linux64_openblas    conda-forge
libclang-cpp16            16.0.3          default_h1cdf331_2    conda-forge
libclang13                16.0.3          default_h4d60ac6_2    conda-forge
libcups                   2.3.3                h36d4200_3    conda-forge
libcurl                   7.88.1               hdc1c0ab_1    conda-forge
libdeflate                1.18                 h0b41bf4_0    conda-forge
libdwarf                  0.0.0.20190110_28_ga81397fc4      h753d276_0    ucb-bar
libdwarf-dev              0.0.0.20190110_28_ga81397fc4      h753d276_0    ucb-bar
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libexpat                  2.5.0                hcb278e6_1    conda-forge
libfdt                    1.6.1                h166bdaf_2    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-devel_linux-64     12.2.0              h3b97bd3_19    conda-forge
libgcc-ng                 12.2.0              h65d4601_19    conda-forge
libgd                     2.3.3                hfa28ad5_6    conda-forge
libgfortran-ng            12.2.0              h69a702a_19    conda-forge
libgfortran5              12.2.0              h337968e_19    conda-forge
libglib                   2.76.3               hebfc3b9_0    conda-forge
libgomp                   12.2.0              h65d4601_19    conda-forge
libiconv                  1.17                 h166bdaf_0    conda-forge
libidn2                   2.3.4                h166bdaf_0    conda-forge
libjpeg-turbo             2.1.5.1              h0b41bf4_0    conda-forge
liblapack                 3.9.0           16_linux64_openblas    conda-forge
libllvm16                 16.0.3               hbf9e925_1    conda-forge
libmagic                  5.39                 h753d276_1    conda-forge
libmicrohttpd             0.9.76               h87ba234_0    conda-forge
libnghttp2                1.52.0               h61bc06f_0    conda-forge
libnsl                    2.0.0                h7f98852_0    conda-forge
libopenblas               0.3.21          pthreads_h78a6416_3    conda-forge
libpng                    1.6.39               h753d276_0    conda-forge
libprotobuf               4.23.2               hd1fb520_2    conda-forge
librsvg                   2.56.0               h5cef280_0    conda-forge
libsanitizer              12.2.0              h46fd767_19    conda-forge
libsodium                 1.0.18               h36c2ea0_1    conda-forge
libsqlite                 3.42.0               h2797004_0    conda-forge
libssh2                   1.10.0               hf14f497_3    conda-forge
libstdcxx-devel_linux-64  12.2.0              h3b97bd3_19    conda-forge
libstdcxx-ng              12.2.0              h46fd767_19    conda-forge
libtasn1                  4.19.0               h166bdaf_0    conda-forge
libtiff                   4.5.0                ha587672_6    conda-forge
libtool                   2.4.7                h27087fc_0    conda-forge
libunistring              0.9.10               h7f98852_0    conda-forge
libusb1                   2.0.1              pyhd8ed1ab_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libuv                     1.44.2               h166bdaf_0    conda-forge
libwebp                   1.3.0                hb47c5f0_0    conda-forge
libwebp-base              1.3.0                h0b41bf4_0    conda-forge
libxcb                    1.15                 h0b41bf4_0    conda-forge
libxml2                   2.10.4               hfdac1af_0    conda-forge
libzlib                   1.2.13               h166bdaf_4    conda-forge
livereload                2.6.3              pyh9f0ad1d_0    conda-forge
lockfile                  0.12.2                     py_1    conda-forge
lz4-c                     1.9.4                hcb278e6_0    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
lzop                      1.04                 h3753786_2    conda-forge
m4                        1.4.18            h516909a_1001    conda-forge
make                      4.3                  hd18ef5c_1    conda-forge
markupsafe                2.1.2            py39h72bdee0_0    conda-forge
matplotlib-base           3.7.1            py39he190548_0    conda-forge
mock                      5.0.2                    pypi_0    pypi
more-itertools            9.1.0              pyhd8ed1ab_0    conda-forge
mosh                      1.4.0           pl5321h4605741_1    conda-forge
moto                      4.1.10             pyhd8ed1ab_0    conda-forge
mpc                       1.3.1                hfe3b2da_0    conda-forge
mpfr                      4.2.0                hb012696_0    conda-forge
msal                      1.22.0             pyhd8ed1ab_0    conda-forge
msal_extensions           1.0.0              pyhd8ed1ab_0    conda-forge
msgpack-python            1.0.5            py39h4b4f3f3_0    conda-forge
multidict                 6.0.4            py39h72bdee0_0    conda-forge
munkres                   1.1.4              pyh9f0ad1d_0    conda-forge
mypy                      1.3.0            py39hd1e30aa_0    conda-forge
mypy-boto3-s3             1.26.127           pyhd8ed1ab_0    conda-forge
mypy_boto3_ec2            1.26.136           pyhd8ed1ab_0    conda-forge
mypy_extensions           1.0.0              pyha770c72_0    conda-forge
ncurses                   6.3                  h27087fc_1    conda-forge
nettle                    3.8.1                hc379101_1    conda-forge
networkx                  2.8.8              pyhd8ed1ab_0    conda-forge
nodeenv                   1.8.0              pyhd8ed1ab_0    conda-forge
numpy                     1.24.3           py39h6183b62_0    conda-forge
oniguruma                 6.9.8                h166bdaf_0    conda-forge
open_pdks.sky130a         1.0.406_0_g0c37b7c 20230412_103222    litex-hub
openapi-schema-validator  0.2.3              pyhd8ed1ab_0    conda-forge
openapi-spec-validator    0.4.0              pyhd8ed1ab_1    conda-forge
openjdk                   20.0.0               h8e330f5_0    conda-forge
openjpeg                  2.5.0                hfec8fc6_2    conda-forge
openssl                   3.1.1                hd590300_1    conda-forge
p11-kit                   0.24.1               hc5aa10d_0    conda-forge
packaging                 23.1               pyhd8ed1ab_0    conda-forge
pandas                    2.0.2            py39h40cae4c_0    conda-forge
pango                     1.50.14              heaa33ce_1    conda-forge
paramiko                  3.2.0              pyhd8ed1ab_0    conda-forge
paramiko-ng               2.8.10                   pypi_0    pypi
pastel                    0.2.1              pyhd8ed1ab_0    conda-forge
patch                     2.7.6             h7f98852_1002    conda-forge
pbr                       5.11.1             pyhd8ed1ab_0    conda-forge
pcre2                     10.40                hc3806b6_0    conda-forge
perl                      5.32.1          2_h7f98852_perl5    conda-forge
pillow                    9.5.0            py39haaeba84_1    conda-forge
pip                       23.1.2             pyhd8ed1ab_0    conda-forge
pixman                    0.40.0               h36c2ea0_0    conda-forge
pkginfo                   1.9.6              pyhd8ed1ab_0    conda-forge
platformdirs              3.5.1              pyhd8ed1ab_0    conda-forge
pluggy                    1.0.0            py39hf3d152e_4    conda-forge
popt                      1.16              h0b475e3_2002    conda-forge
portalocker               2.7.0            py39hf3d152e_0    conda-forge
pre-commit                3.3.2              pyha770c72_0    conda-forge
psutil                    5.9.5            py39h72bdee0_0    conda-forge
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
pyasn1                    0.4.8                      py_0    conda-forge
pycosat                   0.6.4            py39hb9d737c_1    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pydantic                  1.10.8           py39hd1e30aa_0    conda-forge
pygments                  2.15.1             pyhd8ed1ab_0    conda-forge
pyjwt                     2.7.0              pyhd8ed1ab_0    conda-forge
pylddwrap                 1.2.2                    pypi_0    pypi
pylev                     1.4.0              pyhd8ed1ab_0    conda-forge
pynacl                    1.5.0            py39hb9d737c_2    conda-forge
pyopenssl                 23.2.0             pyhd8ed1ab_1    conda-forge
pyparsing                 3.0.9              pyhd8ed1ab_0    conda-forge
pyrsistent                0.19.3           py39h72bdee0_0    conda-forge
pysocks                   1.7.1            py39hf3d152e_5    conda-forge
pytest                    7.3.1              pyhd8ed1ab_0    conda-forge
pytest-dependency         0.5.1              pyh9f0ad1d_0    conda-forge
pytest-mock               3.10.0             pyhd8ed1ab_0    conda-forge
python                    3.9.16          h2782a2a_0_cpython    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-graphviz           0.20.1             pyh22cad53_0    conda-forge
python-jose               3.3.0              pyh6c4a22f_1    conda-forge
python-tzdata             2023.3             pyhd8ed1ab_0    conda-forge
python_abi                3.9                      3_cp39    conda-forge
pytz                      2023.3             pyhd8ed1ab_0    conda-forge
pywin32-on-windows        0.1.0              pyh1179c8e_3    conda-forge
pyyaml                    6.0                      pypi_0    pypi
qemu                      5.0.0                hb15d774_0    ucb-bar
readline                  8.2                  h8228510_1    conda-forge
requests                  2.31.0             pyhd8ed1ab_0    conda-forge
responses                 0.21.0             pyhd8ed1ab_0    conda-forge
rhash                     1.4.3                h166bdaf_0    conda-forge
rsa                       4.7.2              pyh44b312d_0    conda-forge
rsync                     3.2.7                h70740c4_0    conda-forge
ruamel-yaml               0.17.26                  pypi_0    pypi
ruamel.yaml.clib          0.2.7            py39h72bdee0_1    conda-forge
ruamel_yaml               0.15.80         py39hb9d737c_1008    conda-forge
s3fs                      0.4.2                      py_0    conda-forge
s3transfer                0.6.1              pyhd8ed1ab_0    conda-forge
sarif-om                  1.0.4              pyhd8ed1ab_0    conda-forge
sbt                       1.8.2                hd8ed1ab_0    conda-forge
screen                    4.8.0                he28a2e2_0    conda-forge
secretstorage             3.3.3            py39hf3d152e_1    conda-forge
sed                       4.8                  he412f7d_0    conda-forge
setuptools                67.7.2             pyhd8ed1ab_0    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
smmap                     3.0.5              pyh44b312d_0    conda-forge
snowballstemmer           2.2.0              pyhd8ed1ab_0    conda-forge
sphinx                    5.1.1              pyhd8ed1ab_1    conda-forge
sphinx-autobuild          2021.3.14          pyhd8ed1ab_0    conda-forge
sphinx_rtd_theme          1.2.1              pyha770c72_0    conda-forge
sphinxcontrib-applehelp   1.0.4              pyhd8ed1ab_0    conda-forge
sphinxcontrib-devhelp     1.0.2                      py_0    conda-forge
sphinxcontrib-htmlhelp    2.0.1              pyhd8ed1ab_0    conda-forge
sphinxcontrib-jquery      4.1                pyhd8ed1ab_0    conda-forge
sphinxcontrib-jsmath      1.0.1                      py_0    conda-forge
sphinxcontrib-qthelp      1.0.3                      py_0    conda-forge
sphinxcontrib-serializinghtml 1.1.5              pyhd8ed1ab_2    conda-forge
sqlite                    3.42.0               h2c6b66d_0    conda-forge
sshpubkeys                3.3.1              pyhd8ed1ab_0    conda-forge
sty                       1.0.0              pyhd8ed1ab_0    conda-forge
sure                      2.0.1                    pypi_0    pypi
sysroot_linux-64          2.17                h4a8ded7_13    conda-forge
tar                       1.34                 hb2e2bae_1    conda-forge
tk                        8.6.12               h27826a3_0    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
tomlkit                   0.11.8             pyha770c72_0    conda-forge
toolz                     0.12.0             pyhd8ed1ab_0    conda-forge
tornado                   6.3.2            py39hd1e30aa_0    conda-forge
tqdm                      4.65.0             pyhd8ed1ab_1    conda-forge
types-awscrt              0.16.19            pyhd8ed1ab_0    conda-forge
types-pytz                2023.3.0.0         pyhd8ed1ab_0    conda-forge
types-pyyaml              6.0.12.10          pyhd8ed1ab_0    conda-forge
types-requests            2.31.0.1           pyhd8ed1ab_0    conda-forge
types-s3transfer          0.6.1                    pypi_0    pypi
types-urllib3             1.26.25.13         pyhd8ed1ab_0    conda-forge
typing-extensions         4.6.2                hd8ed1ab_0    conda-forge
typing_extensions         4.6.2              pyha770c72_0    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
ukkonen                   1.0.1            py39hf939315_3    conda-forge
unicodedata2              15.0.0           py39hb9d737c_0    conda-forge
unzip                     6.0                  h7f98852_3    conda-forge
urllib3                   1.26.15            pyhd8ed1ab_0    conda-forge
verilator                 5.008                h514fc35_1    conda-forge
vim                       9.0.1425        py39pl5321hb4338c2_0    conda-forge
virtualenv                20.23.0            pyhd8ed1ab_0    conda-forge
webencodings              0.5.1                      py_1    conda-forge
websocket-client          1.5.2              pyhd8ed1ab_0    conda-forge
werkzeug                  2.3.4              pyhd8ed1ab_0    conda-forge
wget                      1.20.3               ha35d2d1_1    conda-forge
wheel                     0.40.0             pyhd8ed1ab_0    conda-forge
which                     2.21                 h0b41bf4_1    conda-forge
wrapt                     1.15.0           py39h72bdee0_0    conda-forge
xmltodict                 0.13.0             pyhd8ed1ab_0    conda-forge
xorg-fixesproto           5.0               h7f98852_1002    conda-forge
xorg-inputproto           2.3.2             h7f98852_1002    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.0.10               h7f98852_0    conda-forge
xorg-libsm                1.2.3             hd9c2040_1000    conda-forge
xorg-libx11               1.8.4                h8ee46fc_1    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxfixes            5.0.3             h7f98852_1004    conda-forge
xorg-libxi                1.7.10               h7f98852_0    conda-forge
xorg-libxrender           0.9.10            h7f98852_1003    conda-forge
xorg-libxt                1.3.0                hd590300_0    conda-forge
xorg-libxtst              1.2.3             h7f98852_1002    conda-forge
xorg-recordproto          1.14.2            h7f98852_1002    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xxhash                    0.8.0                h7f98852_3    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
yaml                      0.2.5                h7f98852_2    conda-forge
yarl                      1.9.2            py39hd1e30aa_0    conda-forge
zipp                      3.15.0             pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               h166bdaf_4    conda-forge
zstandard                 0.19.0           py39h29414ee_1    conda-forge
zstd                      1.5.2                h3eb15da_6    conda-forge

Other Setup

Initial repository configuration:

./build-setup.sh esp-tools -s 6 -s 7 -s 8 -s 9

Current Behavior

When running the command make CONFIG=HwachaRocketConfig debug, the generated executable produces a segmentation fault:

It also happens to me with the debug simulation of a custom coprocessor (RoCC) of similar complexity as Hwacha.

Expected Behavior

The simulation works for the RocketConfig and GemminiRocketConfig. It should work as well for HwachaRocketConfig and my CustomRoCCRocketConfig.

Other Information

In order to compile the simulations successfully, I followed the GCC suggestion:

/home/dani/work/berkeley/chipyard/.conda-env/bin/x86_64-conda-linux-gnu-c++  -I.  -MMD -I/home/dani/work/berkeley/chipyard/.conda-env/share/verilator/include -I/home/dani/work/berkeley/chipyard/.conda-env/share/verilator/include/vltstd -DVM_COVERAGE=0 -DVM_SC=0 -DVM_TRACE=0 -DVM_TRACE_FST=0 -DVM_TRACE_VCD=0 -faligned-new -fcf-protection=none -Wno-bool-operation -Wno-sign-compare -Wno-uninitialized -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-shadow     -O3 -std=c++17 -I/home/dani/work/berkeley/chipyard/.conda-env/esp-tools/include -I/home/dani/work/berkeley/chipyard/tools/DRAMSim2 -I/home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/gen-collateral   -DVERILATOR -include /home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/chipyard.harness.TestHarness.RocketConfig.plusArgs -include /home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/chipyard.harness.TestHarness.RocketConfig/VTestDriver.h -DVL_TIME_CONTEXT   -fcoroutines -Os -c -o SimDRAM.o /home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/gen-collateral/SimDRAM.cc
/home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/gen-collateral/SimDRAM.cc: In function 'void* memory_init(long long int, long long int, long long int, long long int, long long int, long long int)':
/home/dani/work/berkeley/chipyard/sims/verilator/generated-src/chipyard.harness.TestHarness.RocketConfig/gen-collateral/SimDRAM.cc:64:9: error: 'endianness_t' does not name a type; did you mean 'memif_endianness_t'?
   64 |         endianness_t get_target_endianness() const override {
      |         ^~~~~~~~~~~~
      |         memif_endianness_t
jerryz123 commented 1 year ago

The FESVR library in esp-tools is out-of-date, and will no longer be updated.

Switch to the riscv-tools conda environment, then rebuild the RTL simulations and rerun them.

If you want to compile programs for hwacha, you should maintain a separate esp-tools conda environment that is used only for compiling hwacha programs.

danivz commented 1 year ago

I've built a clean setup executing ./build-setup.sh riscv-tools -s 6 -s 7 -s 8 -s 9 and I'm having the same problem: the simulation executables of HwachaRocketConfig and my CustomRoCCRocketConfig generate segmentation fault.

The difference with the previous issue is that I didn't have to change endianness_t of fesvr/memif.h, it doesn't produce an error with riscv-tools