E4332 Home Schedule/Assignments Handouts References Projects Home Teaching

E4332: VLSI Design Laboratory, Spring 2005
Layout and verification in AMI 0.5μm process



Initial setup

On starting Cadence, type the following in the CIW
load("/usr/tech/ami050/cdsinit") This sets up the layer map so that you can see the layouts correctly.

Your cds.lib should include the following lines

INCLUDE /usr/tools/cds/setup/cds.lib
DEFINE ami050 /usr/tech/ami050/cdslib/ami050
DEFINE ami_pads /usr/tech/ami050/cdslib/ami_pads
DEFINE ami_example /usr/tech/ami050/cdslib/ami_example


Layout

Go to Options -> Display and set both the X Snap Spacing and Y Snap Spacing to 0.05. This is to ensure that there will be no off-grid errors.

Design rules

The design rule manual can be found at /usr/tech/ami050/ami500hakx/Rev6.7/design_rules/C5X_4500099_RevR.pdf on the teaching lab computers. Some key rules are explained below.

Basic design rule summary

The Layer selection window shows a large number of layers. You should not have to use more than the first twenty or so in your design.

Components

Cell Standard_examples in library ami_example has examples of resistors, MOS transistors, and bipolar transistors.

Creating pins

To label a net(say on Metal1), create a label(bindkey = 'l') in Metal1 drawing layer and place it on the net.

The rules file doesn't seem to recognize symbolic pins or shape pins(The ones created using 'Control-p'). Let me know if you find otherwise

Layout guidelines

These are suggestions, not hard and fast rules


Pads and Padframe

The pads are in the library ami_pads. The pads which you will be using are listed below. The pads have associated schematics which you can plop into the schematic for LVS and simulations. Connections to all pads from the circuit are in Metal2.

  1. PadARef: Pad with ESD. General purpose pad. Use this for all analog signals and digital outputs.
  2. PadIO: Pad with ESD and series resistor: Use this for digital inputs that are going to MOS gates. Don't use this pad for any input that has dc flowing through it.
  3. PadGnd: For ground supply
  4. PadVdd: For power supply
  5. PadSpace: To fill up the spaces between pads.
The submission sizes should be integer multiples of 1.5mm x 1.5mm. Excluding pads, this leaves an area of 0.9mm x 0.9mm for your layout. If your circuit doesn't fit in that area, you can use 3mm x 1.5mm. The area for layout in that case is 2.4mm x 0.9mm. A 1.5mm x 1.5mm padframe is in the cell MinFrame. It has 40 pads. You need to copy this over and change each of the pads appropriately as needed. To make a 3mm x 1.5mm frame, place two of the frames above adjacent to each other, remove the set of pads in the middle, and use PadSpace to fill the gaps. All the pads are DRC and LVS clean. After you place them in your layout, ensure that they pass DRC and LVS.

Design rule checking

In your home directory, create a file called assura_tech.lib with the following line in it
DEFINE AMI050 /usr/tech/ami050/ami500hakx/Rev6.7/assura3

From the layout window, select 'Assura -> Run DRC'. In the form, select AMI050 for the technology. The correct rules files should then be selected and you should be able to run DRC.


Layout versus Schematic

In your home directory, create a file called assura_tech.lib with the following line in it
DEFINE AMI050 /usr/tech/ami050/ami500hakx/Rev6.7/assura3

From the layout window, select 'Assura -> Run LVS'. In the form select AMI050 for the technology. The correct rules files should then be selected and you should be able to run LVS.


Post layout simulation