Creating a New Project
Before doing this, you need to do the Technology_Setup.
Contents
Creating a project directory
You will need to create a separate directory where you will create your libraries:
mkdir LayoutTutorial cd LayoutTutorial
In this directory, you need to setup some of the library files using either the bash script:
/mada/software/techfiles/FreePDK45/ncsu_basekit/cdssetup/setup.sh
or the c-shell script:
/mada/software/techfiles/FreePDK45/ncsu_basekit/cdssetup/setup.csh
depending on what shell you run (find it by running echo $SHELL).
This will copy several files into the current directory if they do not exist. It should only need to be run the first time.
From this directory, run virtuoso:
virtuoso &
Note that the ampersand runs the command in the background so you can do other things in the shell. Do not close the shell or the program will also close.
CIW
After you start virtuoso, the first window that pops up is the command interface window (CIW). It looks like this:
Library Manager
Another window may pop up which is the Library Manager. If it doesn't show automatically, you can view it with Tools->Library Manager. The important libraries that will show up in the manager are:
- NCSU_DeviceLib_FreePDK - contains transistor models
- NCSU_TechLib_FreePDK - contains Pcells (parameterized cells) for transistors and vias
- basic - contains power supplies
Note that the image does not show these.
Creating a Library
The first step is to create a new library with File->New->Library. Add a unique name for your library. It will contain all of your layout and schematics. We will also "attach" the library to a given technology library that is already set up.
Selecting the technology
A special window will pop up that prompts you to pick a technology library. We are going to use the NCSU_TechLib_tsmc02d technology which is a SCMOS 180nm process. It can be manufactured by several different vendors including TSMC. You can leave the path alone.