Video lectures from the iCS group @ IIT Madras

Corners analysis in Cadence

Command line mode

  • Create a process corner definition file following the example here. This is for a case where all corners are defined in a single model file. Choose the model directory and file using corAddProcess and corSetModelFile. Then set desired corners using corAddCorner statements. Each corner specified using corAddCorner has to be one of the sections in the model file(specified with corSetModelFile)
  • In the method above, each corner you want has to be defined as a section in the single model file. In many cases, UMC for example, mos, resistor, and capacitor corners are different individual sections. A corner of interest may have a particular combination of mos, resistor and capacitor corners. For this an additional modelfile with each section containing the desired corners from the UMC model file has to be created. In TI and VLSI lab machines this is already created as allcornerdefs.scs under /cad/library/UMC/UMC_18_CMOS_Model/Spectre/ver9.1/mm. This contains all possible combinations of mos(tt, ss, ff, snfp, fnsp), res(res_typ, res_max, res_min) and cap(mimcaps_typ, mimcaps_max, mimcaps_min) corners. A sample pcf file, umc180nm.pcf is also available in the same directory.

Graphical mode

The following method describes how to do a single model library corner simulation in cadence.

  • Choose Corners from Tools menu in ADE.
  • A window like the one shown below appears. Choose Add Process from the Setup menu.

:corners-window0.png

  • Enter the data for the UMC library as shown in the image. The field “Process Variables” provides us the option of varying any design variable loaded in ADE across the corners.

:corners-window1.png

  • On the tab Groups/Variants, the field Group name allows us to give a name to a field which will let us choose from one of the variants provided. As an example, we can choose Group name as “Process” and variants as “tt,ss,snfp,fnsp,ff”. The possible variants are separated by a comma. This is shown below.

:corners-window2.png

  • Click OK and a window as shown below appears. One can now click Add Corner, give it a name.

:corners-window3.png

  • Different corners can be added as shown in the figure below and the process corner can be chosen from the drop down menu appearing in the field corresponding to Process. Click Run to start the corner simulation. Outputs to be plotted can be added in the Performance measurements area.

:corners-window4.png

To Do

  • Including process variations across multiple files - Transistors are described in one file, resistors in another and so on. These can be simulated using Multiple Model library method.
  • Cadence documentation describes this using script files to do the same see /cad/tools/cadence/doc/aatoolsuser/chap1.html