Skip to content

Latest commit

 

History

History
82 lines (68 loc) · 3.37 KB

0173-2023-11-18.md

File metadata and controls

82 lines (68 loc) · 3.37 KB

18 Nov 2023

Previous journal: Next journal:
0172-2023-11-04.md 0174-2023-11-19.md

Starting sky130A analog ASIC design: Setting up xschem

Base xschem installation

Guide: https://xschem.sourceforge.io/stefan/xschem_man/install_xschem.html

  1. Starting with MPW8 VM. Xschem not already installed.
  2. Install prerequisites:
    sudo apt install \
        libx11-6 libx11-dev libxrender1 libxrender-dev libxcb1 libx11-xcb-dev \
        libcairo2 libcairo2-dev tcl8.6 tcl8.6-dev tk8.6 tk8.6-dev flex bison \
        libxpm4 libxpm-dev libjpeg-dev tcl-tclreadline vim-gtk3 xterm
  3. cd ~/asic_tools
    git clone https://github.com/StefanSchippers/xschem.git xschem-src
    cd xschem-src; ./configure
    Successfully ends with Configuration complete, ready to compile.
  4. Build and install:
    make
    sudo make install
    We should now have:
    $ which xschem
    /usr/local/bin/xschem
    

Example sky130 project and config

Ref: https://youtu.be/KgBLByOkJxA?t=312

  1. ln -s $PDK_ROOT ~/PDK
    cd ~/anton
    mkdir sky130_example
    cd sky130_example
    cp ~/PDK/sky130A/libs.tech/xschem/xschemrc .
    NOTE: This xschemrc uses $PDK_ROOT and $PDK but that's fine.
  2. Run xschem, and... xschem screenshot showing sky130 example

Tips

  • When xschem is running, type puts $XSCHEM_LIBRARY_PATH in the xschem tcl prompt to know the library search path.

    Type puts $XSCHEM_SHAREDIR to see the installation path.

  • If you need to override system settings, create a ~/.xschem/xschemrc. The easiest way is to copy the system installed version from ${prefix}/share/xschem/xschemrc and then make the necessary changes

    mkdir ~/.xschem
    cp <install root>/share/xschem/xschemrc ~/.xschem/xschemrc
  • Re sky130A PDK xschemrc:

    #### values may be overridden by user's ~/.xschem/xschemrc configuration file
    #### or by project-local ./xschemrc

Next steps