-
Open the PowerShell and install WSL
wsl --install -d Ubuntu-22.04
You will be prompted to create a UNIX username and password.
This UNIX username and password have no relationship to your Windows username and password.
To avoid any confusion use a different username -
Start Ubuntu (either by typing
wsl
into the Windows's PowerShell or selecting the Ubuntu app in the Window's Start Menu)
Your unix user's home directory is:
/home/<unix username>
Your Windows user's home directory is:
/mnt/c/Users/<windows username>
-
clone the iic-osic-tools container onto your computer (for example into your Windows user's folder)
git clone --depth=1 https://github.com/iic-jku/iic-osic-tools.git
Example
Windows user's folder:C:\Users\claudio
In Unix, the Windows user's folder is accessible as:/mnt/c/Users/claudio
-
Start Docker Desktop
-
Browse to the iic-osic-tools directory
cd /mnt/c/Users/claudio/iic-osic-tools
-
Start the container using the script
./start_x.sh
NOTE: in the script, all user data is persistently mounted in the directory pointed to by the environment variableDESIGNS
The default is$HOME/eda/designs
To change where the user data is mounted edit the./start_x.sh
script and modify the definition of the variableDESIGNS
Example
DESIGNS="/mnt/g/My Drive/eda/designs"
or alternatively create a link:
ln -s /mnt/g/My\ Drive/ ghome
and then define the variableDESIGNS
as follows:
DESIGNS=$HOME/ghome/eda/designs
If needed set also the variableDISPLAY
Example
PARAMS="${PARAMS} -e DISPLAY=host.docker.internal:0"
-
In the unfortunate event that .Xauthority does not exist in the user home directory, it will show the below error:
xauth xauth: file /root/.Xauthority does not exist Using authority file /root/.Xauthority
Below are the steps to manually create .Xauthority under the user home directory:
touch ~/.Xauthority # Generate the magic cookie with 128 bit hex encoding xauth add ${HOST}:0 . $(xxd -l 16 -p /dev/urandom) # Verify the result and it shouldn't show any error xauth list
-
If everything goes as it should, you will see a terminal with the prompt
/foss/designs >
This is your working directory where all your design data goes.
If you are curious to see what version of the iic osic tools you are running use the command:
echo $IIC_OSIC_TOOLS_VERSION
-
The default PDK is the
sky130A
. However, the container supports also other PDKs.
The available PDKs are:gf180mcuC sg13g2 sky130A
If you want to switch to the IHP PDK type:
iic-pdk sg13g2
To skip typing this command every time, create a
.designinit
text file in your design directory with the following lines:PDK_ROOT=/foss/pdks PDK=sg13g2 PDKPATH=/foss/pdks/sg13g2
For more information about the sg13g2 technology lookup the IHP github
-
If you have been using the iic osic tools for a while and all you want to do is to update to the newest version, pull the image with tag latest:
docker pull hpretl/iic-osic-tools:latest
and restart the container using the script:
start_x.sh
Don't forget to stop and remove containers that have become useless, and to remove images that have become useless.
-
Following are a few CLI docker commands that may come handy:
docker ps -a docker ps -a --no-trunc docker stop <CONTAINER_ID> docker rm <CONTAINER_ID> docker images -a docker rmi <IMAGE_ID> docker inspect <IMAGE_ID>
-
Further help on setting up open source tools with Docker
If you need further help here is a link to a step-by-step tutorial by Kwantae Kim
- Matlab (or Octave) <-- required
- Anaconda (link)
- PyLTSpice version 3.1
pip install PyLTSpice==3.1
- HSPICE/ngspice Toolbox by M. Perrott <-- required