Professional Documents
Culture Documents
Cmos Overview
Cmos Overview
Cmos Overview
A COMPREHENSIVE GUIDE TO
INTEGRATED CIRCUIT DESIGN AND
ANALYSIS"
Outline
Delay Definitions
RC Delay Model
Resistance Model of a MOSFET
Capacitance Model of a MOSFET
RC equivalent of an Inverter
Transient Analysis of CMOS circuits using RC delay model
Estimation of logical effort, branch effort, and path effort
Design of Multi-Stage Circuits for Minimum Delay
Loading effect by High Capacitance of I/O Pads & Bond
Wires
Buffer Design to Increase Driving Capability
Basic Delay Definitions:
Propagation delay time, tpd = time difference of the input crossing 50% and
the output crossing 50% of its maximum stable value for worst case
Contamination delay time, tcd = time difference for the input crossing 50%
and the output crossing 50% of its maximum stable value for best case
Rise time, tr = time for a waveform to rise from 10% to 90% of its steady-
state value
Fall time, tf = time for a waveform to fall from 90% to 10% of its steady-state
value
𝑹𝒏 = 𝟏/ 𝜷𝒏 (𝑽𝑫𝑫 − 𝑽𝑻𝒏 )
𝑾
- where, 𝜷𝒏 = µ𝒏 𝑪𝒐𝒙
𝑳
𝑾
𝑹𝒏 ∝ 𝟏/ µ𝒏 𝑪𝒐𝒙 (𝑽𝑮𝑺 − 𝑽𝑻𝒏 )
𝑳 𝒏
𝑾
𝑹𝒑 ∝ 𝟏/ µ𝒑 𝑪𝒐𝒙 (𝑽𝑺𝑮 − |𝑽𝑻𝒑 |)
𝑳 𝒑
Here, pMOS has twice the resistance than nMOS because holes mobility (µ𝒑 ) is
approx. half of the electron mobility (µ𝒏 ) and
𝑹 ∝ 𝟏/µ
To make the equal resistance of nMOS and pMOS, we have to double the
width of pMOS.
Calculate the load capacitance at
the output node B of inverter X1?
Note: In both the cases, delay has two components (i) Independent of load
capacitance (here 6 or 7 RC) (ii) Due to external loading (4hRC)
Delay of a Gate as a Process-Independent Unit
(Normalized Delay 𝒅)
𝒅𝒂𝒃𝒔 where 𝜏 = 3𝑅𝐶 is the delay of an inverter driving an identical
𝒅= inverter (FO1 inverter) with no parasitic capacitance
𝝉
Delay d has two components: 𝒅=𝒇+𝒑
𝒇 is Effort Delay or Stage Effort which is due to the external loading
𝒑 is Parasitic delay due to the internal capacitance when gate driving no load
(total capacitance appearing at the output terminal divided by that of unit
inverter)
Stage effort 𝒇 = 𝒈. 𝒉
𝑪𝒐𝒖𝒕
=𝑪
𝒊𝒏,𝒖𝒏𝒊𝒕_𝒊𝒏𝒗
𝒅(𝒂𝒃𝒔)_𝒆𝒙𝒕 = 𝑪𝒐𝒖𝒕 𝑹
Note: delay part due to the external loading is proportional to the load
capacitance (𝑪𝒐𝒖𝒕 ).
Estimation of Logical Effort (g)
(a) Inverter (b) 3-input NAND gate (c) 3-input NOR gate
𝑪𝒊𝒏,𝒈𝒂𝒕𝒆 𝟑 𝟓 𝟕
𝒈= = =𝟏 𝒈= 𝒈=
𝑪𝒊𝒏,𝒖𝒏𝒊𝒕_𝒊𝒏𝒗 𝟑 𝟑 𝟑
Logical Effort of Basic Gates
Gate Type Number of Inputs
1 2 3 4 N
Inverter 1
NAND 4/3 5/3 6/3 (n+2)/3
NOR 5/3 7/3 9/3 (2n+1)/3
MUX 2 2 2 2 2
XOR/XNOR 4 6 8
Delay 𝑑 = 𝑔. ℎ + 𝑝
Logical effort 𝑔 = 1
Electrical Effort ℎ = 1
Parasitic Delay 𝑝 = 1
Delay of each stage 𝑑 = 𝑔. ℎ + 𝑝 = 1 ∗ 1 + 1 = 2
Now, N-stage ring oscillator has a period of 2N stage delays because a value must
propagate twice around the ring to regain the original polarity. Therefore, the total
period of this oscillator is:
𝑇 = 2𝑁. 𝑑 = 4𝑁
1
Hence, the frequency of operation is: f = 𝑇 = (1/4𝑁)
Individual estimation in multi stage path
Logical Effort of Paths and Path Delay
Overall path effort is given as:
𝑭 = 𝑮𝑩𝑯
Path logical effort G is the products of the logical efforts
of each stage along the path having i number of stages:
𝐺 = 𝑔𝑖
Path electrical effort H is the ratio of the output
capacitance the path must drive divided by the input
capacitance presented by the path:
𝐶𝑜𝑢𝑡(𝑝𝑎𝑡ℎ}
𝐻=
𝐶𝑖𝑛(𝑝𝑎𝑡ℎ)
Path branching effort B is the product of the branching
efforts between stages:
𝐵 = 𝑏𝑖
where, branching effort b is the ratio of the total capacitance
seen by a stage to the capacitance on the path:
𝐶𝑜𝑛(𝑝𝑎𝑡ℎ} + 𝐶𝑜𝑓𝑓(𝑝𝑎𝑡ℎ} 15 + 15
𝑏= = =2
𝐶𝑜𝑛(𝑝𝑎𝑡ℎ) 15
Now, the Path delay D is the sum of the delays of each stage, or It can be written
as the sum of the path effort delay 𝐷𝐹 and path parasitic delay P:
𝑫= 𝒅𝒊 = 𝑮𝑩𝑯 + 𝑷 where, 𝑃= 𝑝𝑖
Logical Effort of Paths and Path Delay…
The path delay is minimized when each stage bears the same effort.
If a path has N stages and each bears the same effort, that the stage effort must
be:
𝒇 = 𝒈 𝒊 𝒉 𝒊 = 𝑭𝟏 𝑵
Thus, the minimum possible delay of an N-stage path with path effort F and path
parasitic delay P is:
𝑫 = 𝑵𝑭𝟏 𝑵 + 𝑷
This is a key result of Logical Effort. It shows that the minimum delay of the path
can be estimated knowing only the number of stages, path effort, and parasitic
delays without the need to assign transistor sizes.
Estimate the minimum delay of the
path from A to B, and determine the
required Gate sizes
Transient simulation
result of FO3 Inverter
https://www.engr.usask.ca/classes/CME/342/lab_files/CME
342_lab4_logic_effort.pdf
FO1 Inverter
Driver/Buffer Design for I/O Pads and Bond wire
loading affect
The delay (RC) for any circuit is increased with
the increasing load capacitance.
The excessive load (as shown by CL) may
disturb the circuit functionality. It is due to the
time taken to charge/discharge the output load
capacitance.
Now, think about the I/O pads and bond wire
loading effect with a huge size (see figures). It
is almost impossible for our design to drive
such a huge load.
A single
I/O pad
Unit Inverter
Small
Capacitor
(15fF)
Driver/Buffer Design for I/O Pads and Bond wire
loading affect…
Each I/O Pad or Bond wire create a heavy
capacitive load (approx. in the range of 5-10
pF).
A driver/buffer circuit is required providing a
large current to charge/discharge the load
capacitance.
It can be done by using large pMOS and nMOS transistors in the buffer placed
at each output of our design driving the heavy load.
However, such a large buffer with large input capacitance would itself create the
loading effect for the design.
Thus the effect of large load can be propagated to many gates preceding the
last-stage driver, as shown below:
where, the no. of stages (N) and size multiplying factor (a) at each stage is determined
𝑪
as: 𝒂(𝒍𝒐𝒈 𝒆 𝒂 − 𝟏) = 𝑪𝒅 and 𝑪𝒍𝒐𝒂𝒅 = 𝒂𝑵+𝟏 𝑪𝒈 here 𝐶𝑑 and 𝐶𝑔 are the drain and input
𝒈
capacitance of first stage inverter
Loading effect on Inverter performance with
increasing CL
Transient simulation result of an Inverter