laygo_cds_ff_mpt
LAYGO example setup for cds_ff_mpt (cadence generic PDK for finfet and multi-patterned technology). Forked from https://github.com/ucb-art/BAG2_cds_ff_mpt.
Python setup
BAG2 works with Python 3 (Python 3.6+ is recommended). We strongly recommend using Anaconda Python in a custom
install location, as it contains most required packages and offer simple installation process. In addition to
the default Anaconda packages, the following needs to be installed/changed (through either conda
or pip
):
- shapely
- rtree
- tornado (downgrade to 4.5.3 for the bootcamp demo).
Installation
-
Download cds_ff_mpt PDK from Cadence Support and install it.
-
Clone this repo.
$ git clone https://github.com/ucb-art/laygo_cds_ff_mpt.git
-
Clone all dependent git submodules. Run the following commands:
$ git submodule init $ git submodule update
-
Update the symbolic link
cds_ff_mpt/workspace_setup/PDK
to point to the cds_ff_mpt PDK installation location; thecds_ff_mpt_v_0.3
folder. -
Update
cds_ff_mpt/workspace_setup/{.cshrc, .bashrc}
to point to your tools locations. The tools needed by this demo are:- Virtuoso ICADV 12.3 (or 12.1)
- PVS 15.1
-
Update
cds_ff_mpt/workspace_setup/{.cshrc_bag, .bashrc_bag}
to point to the Anaconda Python installation location used to run BAG. See BAG_framework documentation on how to install Anaconda Python for BAG. -
Update
cds_ff_mpt/corners_setup.sdb
, which sets up model files and process corners for BAG, to point to the correct model file location. -
in
cds_ff_mpt/workspace_setup/.cdsinit
, change theeditor
variable to point to your editor. -
in
cds_ff_mpt/workspace_setup/.cdsinit.personal
, in the last command where it sets the simulation data directory (theprojectDir
variable), change it to a suitable location. -
Create a new folder for temporary BAG files in the main BAG2_cds_ff_mpt folder:
mkdir BAGTMP
-
Create a new cds.lib and add the following to the file:
INCLUDE $BAG_WORK_DIR/cds.lib.core
Running BAG
Once you finish setting up the workspace, try to run the demo as follows:
-
in the directory, run the following command
$ source .cshrc
to set up environment variables for running BAG/Virtuoso. This needs to be done everytime you start a new terminal. If You use bash, you source .bashrc instead.
-
start virtuoso
$ virtuoso &
-
run the following script to generate a trial layout.
run laygo/labs/lab1_a_baselayoutgenerator_export.py