From: R Veera Kumar Date: Mon, 24 May 2021 08:42:39 +0000 (+0530) Subject: Add pages for Icarus Verilog setup and use. X-Git-Tag: DRAFT_SVP64_0_1~880 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9e48125c3970f07f8cdaa151aec075aaa3147417;p=libreriscv.git Add pages for Icarus Verilog setup and use. --- diff --git a/HDL_workflow.mdwn b/HDL_workflow.mdwn index d3b2a5b72..17ff8af2e 100644 --- a/HDL_workflow.mdwn +++ b/HDL_workflow.mdwn @@ -558,6 +558,12 @@ GHDL aims at implementing VHDL as defined by IEEE 1076. It supports the 1987, 19 See [[HDL_workflow/ghdl]] page for installation instructions. +## Icarus Verilog + +Icarus Verilog is a Verilog simulation and synthesis tool. It operates as a compiler, compiling source code written in Verilog (IEEE-1364) into some target format. + +See [[HDL_workflow/iverilog]] page for installation instructions. + # Registering for git repository access After going through the onboarding process and having agreed to take diff --git a/HDL_workflow/iverilog.mdwn b/HDL_workflow/iverilog.mdwn new file mode 100644 index 000000000..845cffb35 --- /dev/null +++ b/HDL_workflow/iverilog.mdwn @@ -0,0 +1,40 @@ +# Installation instructions for Icarus Verilog + +## Setting up new debootstrap and chroot into it + +Run the following if you wish to isolate the iverilog build +from other software (reproducible builds) or use the schroot +auto-preparation script here: + + + export MY_CHROOT=/opt/chroot/iverilog + mkdir $MY_CHROOT + debootstrap stable $MY_CHROOT http://deb.debian.org/debian/ + mount -t proc proc $MY_CHROOT/proc + mount -t sysfs sysfs $MY_CHROOT/sys + mount -t devpts devpts $MY_CHROOT/dev/pts/ + chroot $MY_CHROOT /bin/bash + +The dev-env-setup chroot script is a little more sophisticated +than the above + +## Steps to compile Icarus Verilog + +### Necessary software to install + + apt-get install git autoconf make g++ bison flex gperf libreadline6-dev + +### Build Icarus Verilog + + git clone https://github.com/steveicarus/iverilog.git + + cd iverilog + git checkout v11_0 + sh autoconf.sh + ./configure --prefix=/usr/local/iverilog + make -j$(nproc) + make check + make install + +Please adjust the install paths for iverilog. +