Cell Characterization Using Data Driven Analysis

This section provides example input files that perform cell characterization of an inverter based on 3-micron MOSFET technology. The program finds the propagation delay and rise and fall times for the inverter for best, worst, and typical cases for different fanouts. This data then can be used as library data for digital-based simulators such as those found in the simulation of gate arrays and standard cells.

The example, taken from the demonstration file $installdir/demo/hspice/apps/cellchar.sp , demonstrates the use of the .MEASURE statement, the .DATA statement, and the AUTOSTOP option in the characterization of a CMOS inverter. Cell Characterization Circuit 1 and Cell Characterization Circuit 2 are identical except that their input signals are complementary. The circuit in Cell Characterization Circuit 1 calculates the rise time and the low-to-high propagation delay time. The circuit in Cell Characterization Circuit 2 calculates the fall time and the high-to-low propagation delay time. When only one circuit is used, CPU time increases because the analysis time increases to calculate both rise and fall times.

Figure 24-7: Cell Characterization Circuit 1

 

Figure 24-8: Cell Characterization Circuit 2

The subcircuit XOUTL or XOUTH represents the fanout of the cell (inverter). Star-Hspice modifies fanout by specifying different multipliers (m) in the subcircuit calls.

Star-Hspice also provides local and global temperature specifications. This example characterizes the cell at global temperature 27, while devices M1 and M2 are at temperature (27+DTEMP). The .DATA statement specifies the DTEMP value.

The example uses a transient parameterized sweep with the .DATA and .MEASURE statements to determine the timing of the inverter for best, typical and worst cases. The parameters varied include power supply, input rise and fall time, fanout, MOSFET temperature, n-channel and p-channel threshold, and both the drawn width and length of the MOSFET. Use the AUTOSTOP option to speed simulation time and work with the .MEASURE statement. Once the .MEASURE statement determines the parameter to be measured, the AUTOSTOP option terminates the transient sweep, even though it has not completely swept the transient sweep range specified.

The .MEASURE statement uses quoted string parameter variables to measure the rise and fall times, as well as the propagation delays. Rise time starts when the voltage at node 3 (the output of the inverter) is equal to 0.1 · VDD (that is, V(3) = 0.1VDD) and ends when the voltage at node 3 is equal to 0.9 · VDD (that is, V(3) = 0.9VDD).

For more accurate results, start the .MEASURE calculation after a time delay, a simulation cycle specifying delay time in the .MEASURE statement, or in the input pulse statement.

The following example features:

Example Input Files

FILE: CELLCHAR.SP

*

.OPTIONS SPICE NOMOD AUTOSTOP

.PARAM TD=10N PW=50N TRR=5N TRF=5N VDD=5 LDEL=0 WDEL=0

+ NVT=0.8 PVT=-0.8 DTEMP=0 FANOUT=1

.GLOBAL VDD

* -- global supply name

.TEMP 27

SUBCKT Definition

.SUBCKT INV IN OUT

M1 OUT IN VDD VDD P L=3U W=15U DTEMP=DTEMP

M2 OUT IN 0 0 N L=3U W=8U DTEMP=DTEMP

CL OUT 0 200E-15 .001

CI IN 0 50E-15 .001

.ENDS

SUBCKT Calls

XINVH 2 3 INV $--- INPUT START HIGH

XOUTL 3 4 INV M=FANOUT

XINVL 2030 INV $--- INPUT START LOW

XOUTH 30 40INV M=FANOUT

* -- INPUT VOLTAGE SOURCES

VDD VDD 0 VDD

VINH 2 0 PULSE(VDD,0,TD,TRR,TRF,PW,200NS)

VINL 20 0 PULSE(0,VDD,TD,TRR,TRF,PW,200NS)

* -- MEASURE STATEMENTS FOR RISE, FALL, AND PROPAGATION DELAYS

.MEAS RISETIME TRIG PAR('V(3) -0.1*VDD') VAL=0 RISE=1

+ TARG PAR('V(3) -0.9*VDD') VAL=0 RISE=1

.MEAS FALLTIME TRIG PAR('V(30)-0.9*VDD') VAL=0 FALL=1

+ TARG PAR('V(30)-0.1*VDD') VAL=0 FALL=1

.MEAS TPLH TRIG PAR('V(2) -0.5*VDD') VAL=0 FALL=1

+ TARG PAR('V(3) -0.5*VDD') VAL=0 RISE=1

.MEAS TPHL TRIG PAR('V(20)-0.5*VDD') VAL=0 RISE=1

+ TARG PAR('V(30)-0.5*VDD') VAL=0 FALL=1

* -- ANALYSIS SPECIFICATION

.TRAN 1N 500N SWEEP DATA=DATNM

* -- DATA STATEMENT SPECIFICATION

.DATA DATNM

VDD TRR TRF FANOUT DTEMP NVT PVT LDEL WDEL

5.0 2N 2N 2 0 0.8 -0.8 0 0 $ TYPICAL

5.5 1N 1N 1 -80 0.6 -0.6 -0.2U 0.2U $ BEST

4.5 3N 3N 10 100 1.0 -1.0 +0.2U -0.2U $ WORST

5.0 2N 2N 2 0 1.0 -0.6 0 0 $ STRONG P, WEAK N

5.0 2N 2N 2 0 0.6 -1.0 0 0 $ WEAK P, STRONG N

5.0 2N 2N 4 0 0.8 -0.8 0 0 $ FANOUT=4

5.0 2N 2N 8 0 0.8 -0.8 0 0 $ FANOUT=8

.ENDDATA

Models

.MODEL N NMOS LEVEL=2 LDEL=LDEL WDEL=WDEL

+ VTO=NVT TOX =300 NSUB=1.34E16 UO=600

+ LD=0.4U WD =0.6U UCRIT=4.876E4 UEXP=.15

+ VMAX=10E4 NEFF=15 PHI=.71 PB=.7

+ RS=10 RD =10 GAMMA=0.897 LAMBDA=0.004

+ DELTA=2.31 NFS =6.1E11 CAPOP=4

+ CJ=3.77E-4 CJSW=1.9E-10 MJ=.42 MJSW=.128

*

.MODEL P PMOS LEVEL=2 LDEL=LDEL WDEL=WDEL

+ VTO=PVT TOX=300 NSUB=0.965E15 UO=250

+ LD=0.5U WD=0.65U UCRIT=4.65E4 UEXP=.25

+ VMAX=1E5 NEFF=10 PHI=.574 PB=.7

+ RS=15 RD=15 GAMMA=0.2 LAMBDA=.01

+ DELTA=2.486 NFS=5.2E11 CAPOP=4

+ CJ=1.75E-4 CJSW=2.3E-10 MJ=.42 MJSW=.128

.END

A sample of measure statements is printed:

*** MEASURE STATEMENT RESULTS FROM THE FIRST ITERATION ($ TYPICAL)

RISETIME = 3.3551E-09 TARG= 1.5027E-08 TRIG= 1.1672E-08

FALLTIME = 2.8802E-09 TARG= 1.4583E-08 TRIG= 1.1702E-08

TPLH = 1.8537E-09 TARG= 1.2854E-08 TRIG= 1.1000E-08

TPHL = 1.8137E-09 TARG= 1.2814E-08 TRIG= 1.1000E-08

 

*** MEASURE STATEMENT RESULTS FROM THE LAST ITERATION ($ FANOUT=8)

RISETIME = 8.7909E-09 TARG= 2.0947E-08 TRIG= 1.2156E-08

FALLTIME = 7.6526E-09 TARG= 1.9810E-08 TRIG= 1.2157E-08

TPLH = 3.9922E-09 TARG= 1.4992E-08 TRIG= 1.1000E-08

TPHL = 3.7995E-09 TARG= 1.4800E-08 TRIG= 1.1000E-08

 

MEAS_VARIABLE = RISETIME

MEAN = 6.5425E-09 VARIAN = 4.3017E-17

SIGMA = 6.5588E-09 AVGDEV = 4.6096E-09

 

MEAS_VARIABLE = FALLTIME

MEAN = 5.7100E-09 VARIAN = 3.4152E-17

SIGMA = 5.8440E-09 AVGDEV = 4.0983E-09

 

MEAS_VARIABLE = TPLH

MEAN = 3.1559E-09 VARIAN = 8.2933E-18

SIGMA = 2.8798E-09 AVGDEV = 1.9913E-09

 

MEAS_VARIABLE = TPHL

MEAN = 3.0382E-09 VARIAN = 7.3110E-18

SIGMA = 2.7039E-09 AVGDEV = 1.8651E-0

 

Figure 24-9: Plotting the Simulation Outputs
Figure 24-10: Verifying the Measure Statement Results by the Plots

 

 

Star-Hspice Manual - Release 2001.2 - June 2001