From b659afccc6c10215f9b1aea5a750ae4ca831e06e Mon Sep 17 00:00:00 2001
From: auphelia <jakobapk@web.de>
Date: Wed, 15 Jan 2020 13:58:03 +0000
Subject: [PATCH] [Docker] Added verilator (apt install) and pyverilator (git
 repo) to Docker container

---
 Dockerfile    | 3 ++-
 run-docker.sh | 5 +++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/Dockerfile b/Dockerfile
index 684ef0e91..145424bbc 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -12,6 +12,7 @@ RUN pip install jupyter
 RUN pip install netron
 RUN pip install matplotlib
 RUN apt-get install -y build-essential libglib2.0-0 libsm6 libxext6 libxrender-dev
+RUN apt install verilator
 
 # Note that we expect the cloned finn directory on the host to be
 # mounted on /workspace/finn -- see run-docker.sh for an example
@@ -21,7 +22,7 @@ RUN apt-get install -y build-essential libglib2.0-0 libsm6 libxext6 libxrender-d
 ENV PYTHONPATH "${PYTHONPATH}:/workspace/finn/src"
 ENV PYTHONPATH "${PYTHONPATH}:/workspace/brevitas_cnv_lfc/training_scripts"
 ENV PYTHONPATH "${PYTHONPATH}:/workspace/brevitas"
-
+ENV PYTHONPATH "${PYTHONPATH}:/workspace/pyverilator"
 
 ARG GID
 ARG GNAME
diff --git a/run-docker.sh b/run-docker.sh
index cef8fc12b..4a2f0cfcf 100755
--- a/run-docker.sh
+++ b/run-docker.sh
@@ -21,11 +21,13 @@ BREVITAS_REPO=https://github.com/Xilinx/brevitas.git
 EXAMPLES_REPO=https://github.com/maltanar/brevitas_cnv_lfc.git
 CNPY_REPO=https://github.com/rogersce/cnpy.git
 FINN_HLS_REPO=https://github.com/Xilinx/finn-hlslib.git
+PYVERILATOR_REPO=https://github.com/maltanar/pyverilator
 
 BREVITAS_LOCAL=$SCRIPTPATH/brevitas
 EXAMPLES_LOCAL=$SCRIPTPATH/brevitas_cnv_lfc
 CNPY_LOCAL=$SCRIPTPATH/cnpy
 FINN_HLS_LOCAL=$SCRIPTPATH/finn-hlslib
+PYVERILATOR_LOCAL=$SCRIPTPATH/pyverilator
 VIVADO_HLS_LOCAL=$VIVADO_PATH
 
 # clone dependency repos
@@ -33,12 +35,14 @@ git clone --branch feature/finn_onnx_export $BREVITAS_REPO $BREVITAS_LOCAL ||  g
 git clone $EXAMPLES_REPO $EXAMPLES_LOCAL ||  git -C "$EXAMPLES_LOCAL" pull
 git clone $CNPY_REPO $CNPY_LOCAL ||  git -C "$CNPY_LOCAL" pull
 git clone $FINN_HLS_REPO $FINN_HLS_LOCAL; git -C "$FINN_HLS_LOCAL" checkout b5dc957a16017b8356a7010144b0a4e2f8cfd124 ||  git -C "$FINN_HLS_LOCAL" checkout b5dc957a16017b8356a7010144b0a4e2f8cfd124
+git clone $PYVERILATOR_REPO $PYVERILATOR_LOCAL ||  git -C "$PYVERILATOR_LOCAL" pull
 
 echo "Mounting $SCRIPTPATH into /workspace/finn"
 echo "Mounting $SCRIPTPATH/brevitas into /workspace/brevitas"
 echo "Mounting $SCRIPTPATH/brevitas_cnv_lfc into /workspace/brevitas_cnv_lfc"
 echo "Mounting $SCRIPTPATH/cnpy into /workspace/cnpy"
 echo "Mounting $SCRIPTPATH/finn-hlslib into /workspace/finn-hlslib"
+echo "Mounting $SCRIPTPATH/pyverilator into /workspace/pyverilator"
 echo "Mounting $VIVADO_PATH into $VIVADO_PATH"
 
 if [ "$1" = "test" ]; then
@@ -68,6 +72,7 @@ docker run --rm --name finn_dev -it \
 -v $SCRIPTPATH/brevitas_cnv_lfc:/workspace/brevitas_cnv_lfc \
 -v $SCRIPTPATH/cnpy:/workspace/cnpy \
 -v $SCRIPTPATH/finn-hlslib:/workspace/finn-hlslib \
+-v $SCRIPTPATH/pyverilator:/workspace/pyverilator \
 -v $VIVADO_PATH:$VIVADO_PATH \
 -e VIVADO_PATH=$VIVADO_PATH \
 -p 8888:8888 -p 8081:8081 \
-- 
GitLab