We shall use the term timing model to describe delays outside logic cells and the term delay model to describe delays inside logic cells. These terms are not standard and often people use them interchangeably. There are also different terms for various types of delay:
- A pin-to-pin delay is a delay between an input pin and an output pin of a logic cell. This usually represents the delay of the logic cell excluding any delay contributed by interconnect.
- A pin delay is a delay lumped to a certain pin of a logic cell (usually an input). This usually represents the delay of the interconnect, but may also represent the delay of the logic cell.
- A net delay or wire delay is a delay outside a logic cell. This always represents the delay of interconnect.
A linear delay model is also known as a prop–ramp delay model , because the delay comprises a fixed propagation delay (the intrinsic delay) and a ramp delay (the extrinsic delay). As an example, the data book entry for the inverter, cell in01d0 , in a 0.8 m m standard-cell library gives the following delay information (with delay measured in nanoseconds and capacitance in picofarads):
The first two terms in each of these equations represents the intrinsic delay, with the last term in each equation representing the extrinsic delay. We see that the Cld corresponds to C out , R pu = 1.75 k W , and R pd = 1.95 k W ( R pu is the pull-up resistance and R pd is the pull-down resistance) .
Suppose t qr and t qf are the parasitic delays for the rising and falling waveforms respectively. By comparing the data book equations for the rise and fall delays with Eq. and 13.7 , we can identify t qr = 0.10 ns and t qf = 0.09 ns.
Now we can explain the timing section of the in01d0 model ( Section 13.5.3 ),
The parameter OutCap is C p . The maximum value of the parameter R_Ramp6 is R pu , and the maximum value of parameter F_Ramp6 is R pd . Finally, the maximum values of the fixed-delay triplets correspond to t qr and t qf .
ASIC library data books typically contain two types of information for each cell in the library—capacitance loading and delay. Table 13.7 shows the input capacitances for the inverter family for both an area-optimized library (small) and a performance-optimized library (fast).
From Table 13.7 , the input capacitance of the small library version of the inv1 (a 1X inverter gate) is 0.034 pF. Any logic cell that is driving an inv1 from the small library sees this as a load capacitance. This capacitance consists of the gate capacitance of a p -channel transistor, the gate capacitance of an n -channel transistor, and the internal cell routing. Similarly, 0.145 pF is the input capacitance of a fast inv1 . We can deduce that the transistors in the fast library are approximately 0.145 / 0.034 ⊕ 4 times larger than those in the small version. The small library and fast library may not have the same cell height (they usually do not), so that we cannot mix cells from different libraries in the same standard-cell area.
The delay table for a 2:1 MUX is shown in Table 13.8 . For example, DO/ to Z/ , indicates the path delay from the DO input rising to the Z output rising. Rising delay is denoted by '/' and falling delay by '\' .
From input 2
Both intrinsic delay and extrinsic delay values are given in Table 13.8 . For example, the delay t PD (from DO\ to Z \) of a 2:1 MUX from the small library is
ASIC cell libraries may be characterized and the delay information presented in several ways in a data book. Some manufacturers simulate under worst-case slow conditions (4.5 V, 100 °C, and slow process conditions, for example) and then derate each delay value to convert delays to nominal conditions (5.0 V, 25 °C, and nominal process). This allows nominal delays to be used in the data book while maintaining accurate predictions for worst-case behavior. Other manufacturers characterize using nominal conditions and include worst-case values in the data book. In either case, we always design with worst-case values. Data books normally include process, voltage, and temperature derating factors as tables or graphs such as those shown in Tables 13.9 and 13.10 .
For example, suppose we are measuring the performance of an ASIC on the bench and the lab temperature (25 °C) and the power supply voltage (5 V) correspond to nominal operating conditions. We shall assume, in the absence of other information, that we have an ASIC from a nominal process lot. We have data book values given as worst case (worst-case temperature, 100 °C; worst-case voltage, 4.5 V; slow process) and we wish to find nominal values for delay to compare them with our measured results. From Table 13.9 the derating factor from nominal process to slow process is 1.31. From Table 13.10 the derating factor from 100 °C and 4.5 V to nominal (25 °C and 5 V) is 1.60. The derating factor from nominal to worst-case (data book values) is thus:
It is increasingly important for submicron technologies to account for the effects of the rise (and fall) time of the input waveforms to a logic cell. The nonlinear delay model described in this section was developed by Mike Misheloff at VLSI Technology and then at Compass. There are, however, no standards in this area—each ASIC company has its own, often proprietary, model.
- D t 0 is the time from the beginning of the input to beginning of the output.
- D t 1 is the time from the beginning of the input to the end of the output.
- I R is the time from the beginning to the end of the input ramp.
In these definitions “beginning” and “end” refer to the projected intersections of the input waveform or the output waveform with V DD and V SS as appropriate. Then we can calculate the delay, D (measured with 0.5 trip points at input and output), and output ramp, O R , as follows:
C R is the critical ramp that separates two regions of operation, we call these slow ramp and fast ramp. A sensible definition for C R is the point at which the end of the input ramp occurs at the same time the output reaches the 0.5 trip point. This leads to the following equation for C R :
Now we can understand the timing parameters in the primitive model in Section 13.5.1 . For example, the following parameter, tA1D_fr , models the falling input to rising output waveform delay for the logic cell (the units are a consistent set: all times are measured in nanoseconds and capacitances in picofarads):
Table 13.11 shows the switching characteristics of a two-input NAND gate (1X drive) from a commercial 1 m m gate-array family. The difference in propagation delay (with FO = 0) between the inputs A and B is
Timing information for most gate-level simulators is calculated once, before simulation, using a delay calculator. This works as long as the logic cell delays and signal ramps do not change. There are some cases in which this is not true. Table 13.12 shows the switching characteristics of a half adder. In addition to pin-to-pin timing differences there is a timing difference depending on state. For example, the pin-to-pin timing from input pin A to the output pin S depends on the state of the input pin B. Depending on whether B = '0' or B = '1' the difference in propagation delay (at FO = 0) is
1. 1Suffix '1' denotes normal drive strength, suffix 'h' denotes high-power drive strength (approximately ¥ 2) , suffix 's' denotes superpower drive strength (approximately ¥ 4), and a suffix ' m ' ( m =8 or 12) denotes inverter blocks containing m inverters.