VLSI Tarek Sir
VLSI Tarek Sir
15 MAY 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
EEE 475
Gain an understanding of the different design steps
required to carry out a complete digital VLSI design
EEE 476
What does the chip do? How are the logic gates are What is going to be the physical
going to be connected? geometry of the circuit elements
and interconnections?
What does the chip do? How are the logic gates are What is going to be the physical
going to be connected? geometry of the circuit elements
and interconnections?
• Mechanical
• Decimal System
• “Store” and “Mill” Operation
source: google
source: google
What is the full form of ENIAC and UNIVAC? What were they used for?
WHAT were they made with? HOW were they put together?
© 2024, Mohammad Mahmudul Hasan Tareq
Development Timeline
1946 ENIAC, UNIVAC 1954 Bell Labs, IBM, … 1964 IBM 360
1971 Intel 4004
ref: Computing beyond Moore’s Law, John Shalf and Robert Leland, 2015
19 MAY 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Transistor Theory
Memory Inverter Characteristics
Sub-system Design Interconnects
0 0 Strong
n-SWITCH
1 1 Weak
WHY?
Stay tuned, we will find out soon
ANS:
INPUT OUTPUT
0 0 Strong
n-SWITCH
1 1 Weak
0 0 Weak
p-SWITCH
1 1 Strong
We will look at all the theory and equations from a digital circuit designer’s point of view
▪ Consider the physical implications of each parameter as a logic element
▪ Try to understand the ‘behavior’ of element given the physics based equations
𝑘𝑇 𝑁𝐴
𝜙𝑏 = ln - bulk potential
𝑞 𝑁𝑖
𝐶𝑜𝑥 ∝ 𝜖 𝑜 𝑥 / 𝑡 𝑜 𝑥
𝑘𝑇 𝑁𝐴
𝜙𝑏 = ln - bulk potential 𝑄 𝑓𝑐 = qNf - charge density due to fixed charge at interface
𝑞 𝑁𝑖
𝐶𝑜𝑥 ∝ 𝜖 𝑜 𝑥 / 𝑡 𝑜 𝑥 𝜙 𝑔𝑠 = 𝜙 𝑔 𝑎 𝑡 𝑒 − 𝜙 𝑠 𝑢 𝑏 𝑠 𝑡 𝑟 𝑎 𝑡 𝑒
𝑄𝑏 = 2𝜖 𝑆𝑖 𝑞𝑁 𝐴 2𝜙 𝑏 - bulk charge density Work function diff. between gate and substrate
gate could be metal or poly-si
Think about the new FETs and how they target these factors?
© 2024, Mohammad Mahmudul Hasan Tareq
© 2024, Mohammad Mahmudul Hasan Tareq
VSB
• VSB ≠ 0
• VSB = 0
0 𝑉𝐺 > 𝑉𝑇 𝑽𝑫
VT
𝐼𝐷𝑆
𝐼𝐷𝑆
RDS
IDS
𝑅 →∝
S S S
Loading…
applied voltages, deviating from the expected linear relationship between current and voltage..
Loading…
(typically the gate oxide), enabling leakage current to flow even when the transistor is in the off state.
02 JUN 2024
10 MARCH 2021
2021,
2024, ORCHI HASSAN
Mohammad Mahmudul Hasan Tareq
EEEI BUET
CUET
© 2021, ORCHI HASSAN
EEE
MOS Scaling
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
REF: Sung-MO Kang
Transistor Theory
Inverter Characteristics
Interconnects
•
•
•
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Inverter/NOT gate inverts the input signal
(Vin vs Vout)
𝐕𝐢𝐧 𝐕𝐨𝐮𝐭
Logic 1 = VDD
Logic 0 = 0 V
Inverter threshold : 𝑉𝑡ℎ = 𝑉𝐷𝐷/2
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
General Circuit Structure of an nMOS inverter The characteristics of the inverter circuit
actually depend very strongly upon the type
and the characteristics of the load device.
• Resistor
The output terminal of
• nMOS load the inverter shown in
• pMOS Fig. is connected to the
VDD
input of another MOS
inverter. Consequently,
the next circuit seen by
the output node can be
represented as a lumped
capacitance, Cout.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
“5 Critical Voltages”
For very low input voltage levels, the output voltage V is equal to the high
value of VOH. In this case, the driver nMOS transistor is in cut-off, and hence,
does not conduct any current. Consequently, the voltage drop across the load
device is very small in magnitude, and the output voltage level is high. As the
input voltage V increases, the driver transistor starts conducting a certain
drain current, and the output voltage eventually starts to decrease. Notice
that this drop in the output voltage level does not occur abruptly, such as the
vertical drop assumed for the ideal inverter VTC, but rather gradually and
with a finite slope. We identify two critical voltage points on this curve,
where the slope of the VTC becomes equal to -1.
As the input voltage is further increased, the output voltage continues to
drop and reaches a value of VOL when the input voltage is equal to VoH.The
inverter threshold voltage Vth, which is considered as the transition voltage,
is defined as the point where Vin = Vout on the VTC.
The definition of noise tolerances for digital circuits, called noise
margins and denoted by NM. The noise immunity of the circuit
increases with NM.
NML = VIL − VOL Two noise margins will be defined: the noise
margin for low signal levels (NML) and the
NMH = VOH − VIH noise margin for high signal levels (NMH).
Capacitive Inductive
Supply Noise
Coupling Coupling
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
• Resistor
• nMOS load
• pMOS Resistor
Load
IL = IDS(VIN, VOUT)
In static condition:
𝐈𝐃 Vin, Vout = 𝐈𝐋(VL) Find VOH, VOL, VIH,VIL, Vth
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VOUT = VDD − ILRL
VDD − Vout
IL =
RL
0 𝑉𝑖𝑛 < 𝑉𝑇
In static condition: 𝑊 2
𝑉𝐷𝑆
𝜇𝑛 𝐶𝑜𝑥 𝑉𝑖𝑛 − 𝑉 𝑇 𝑉𝐷𝑆 − 𝑉𝑖𝑛 > 𝑉𝑇, 𝑉𝑜𝑢𝑡 < 𝑉𝐺𝑆 −𝑉𝑇
𝐈𝐃 Vin, Vout = 𝐈𝐋(VL) 𝐼𝐷𝑆 = 𝐿 2
1 𝑊
𝜇𝑛 𝐶𝑜𝑥 𝑉𝑖𝑛 − 𝑉𝑇 2 𝑉𝑖𝑛 > 𝑉𝑇,𝑉𝑜𝑢𝑡 > 𝑉𝑖𝑛 −𝑉𝑇
2 𝐿
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VOUT = VDD − ILRL
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VOUT = VDD − ILRL
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Threshold voltage: 𝑉𝑡ℎ = 𝑉𝑖𝑛 = 𝑉𝑜𝑢𝑡
2
1 1 2𝑉𝐷𝐷
𝑉𝑡ℎ = 𝑉𝑇 − + 𝑉𝑇 − − 𝑉𝑇 −
𝑘𝑛𝑅𝐿 𝑘𝑛𝑅𝐿 𝑘𝑛𝑅𝐿
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
0 𝑉𝑖𝑛 < 𝑉𝑇 A
2
𝑉𝐷𝑆
𝑊
𝑉𝑜𝑢𝑡 = 𝑉𝐷𝐷 − 𝐼𝐿 𝑅𝐿 𝜇𝑛 𝐶𝑜𝑥 𝑉𝑖𝑛 − 𝑉 𝑇 𝑉𝐷𝑆 − 𝑉𝑖𝑛 > 𝑉𝑇,𝑉𝑜𝑢𝑡 < 𝑉𝐺𝑆 −𝑉𝑇
𝐼𝐷𝑆 = 𝐿 2 C
𝑤ℎ𝑒𝑟𝑒, 𝐼𝐿 = 𝐼 𝐷𝑆 1 𝑊
𝜇𝑛𝐶𝑜𝑥 𝑉𝑖𝑛 − 𝑉𝑇 2 𝑉𝑖𝑛 > 𝑉𝑇,𝑉𝑜𝑢𝑡 > 𝑉𝑖𝑛 − 𝑉𝑇 B
2 𝐿
𝐺𝑖𝑣𝑒𝑛, 𝑉𝐷𝐷 = 5𝑉, 𝑘 𝑛 = 40𝜇𝐴/𝑉, 𝑅𝐿 = 100𝑘Ω Can you use matlab to generate the VTC?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
2
1 1 2𝑉𝐷𝐷
𝑉𝑡ℎ = 𝑉𝑇 − + 𝑉𝑇 − − 𝑉𝑇 −
𝑘𝑛𝑅𝐿 𝑘𝑛𝑅𝐿 𝑘𝑛𝑅𝐿
𝒌𝒏𝑹𝑳 is an
important parameter
How does it affect the VTC?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
How does Kn.RL affect the VTC?
It can be seen from the preceding discussion that the term (kn RL)
plays an important role in determining the shape of VTC curve, and
that it appears as a critical parameter in expressions for VOL, VIL,
and VIH. Assuming that parameters such as the power supply voltage
VDD and the driver MOSFET threshold voltage V are dictated by
system- and processing-related constraints, the term (kn RL) remains
as the only design parameter which can be adjusted by the circuit
designer to achieve certain design goals.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
pMOS that’s always ON
𝐼𝐷𝑆𝑝 = 𝐼𝐷𝑆𝑛
Following the principle outlined for Resistive Load – Can you analytically derive the VTC?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
EEE 475: VLSI
LECTURE 6 : CMOS Inverter
05 JUN 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
pMOS
nMOS
• Resistor
• PMOS
𝐼𝐿 = 𝐼𝐷
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
The CMOS inverter has two important Secondly VTC exhibits a full output voltage swing between
Ref: Waste & Harris 0 V and VDD, and that the VTC transition is usually very
advantages over the other inverter
Sung-MO Kang configurations. sharp. Thus, the VTC of the CMOS inverter resembles that
Firstly the steady-state power dissipation of an ideal inverter.
of the CMOS inverter circuit is virtually
negligible, except for small power
dissipation due to leakage currents.
𝐼𝐷𝑝
𝐼𝐷𝑛
In static condition: 𝐈𝐃𝐩 = 𝐈𝐃𝐧 we have to find the values of VOH, VOL, VIH, VIL, Vth
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
𝑉𝑡𝑝 is negative
𝐈𝐃𝐩 = 𝐈𝐃𝐧
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
𝑉 𝑜𝑢𝑡 = 𝑉𝐷𝐷 𝑉 𝑜𝑢𝑡 = 0 V
𝑉𝐺𝑆𝑛 = 𝑉𝑖𝑛
𝑉𝐷𝑆𝑛 = 𝑉 𝑜𝑢𝑡
output voltage swing between 0 V and VDD
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
𝑉 𝑜𝑢𝑡 = 𝑉𝐷𝐷 𝑉 𝑜𝑢𝑡 = 0 V
𝑽𝑶𝑯 = 𝑽𝑫𝑫 𝑉𝑂𝐿 = 0 𝑉
𝐈𝐃𝐩 = 𝐈𝐃𝐧
𝑉𝐺𝑆𝑛 = 𝑉𝑖𝑛
𝑉𝐷𝑆𝑛 = 𝑉 𝑜𝑢𝑡 In which region are the transistors in the region in between?
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Transistor Regions
𝐈𝐃𝐩 = 𝐈𝐃𝐧
𝑉𝐺𝑆𝑛 = 𝑉𝑖𝑛
𝑉𝐷𝑆𝑛 = 𝑉 𝑜𝑢𝑡
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Transistor Regions
B C D
VIL VIH
Vtp
Vth
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Region B
Region D
𝐈𝐃 = 𝐈𝐃𝐩 = 𝐈𝐃𝐧
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
𝑉𝑡𝑛, 𝑉𝑡𝑝
𝑘𝑛
𝑘𝑅 =
𝑘𝑝
𝜇 𝑛 𝐶 𝑜𝑥 𝑊/𝐿 𝑛
=
𝜇 𝑝 𝐶 𝑜𝑥 𝑊/𝐿 𝑝
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Region C
The inverter threshold voltage is defined as Vth = Vin = Vout. When the
Vin=Vth, however, we find that Vout can actually attain any value
between (Vth - Vtn) and (Vth - Vtp), without violating the voltage
conditions used in this analysis. This is due to the fact that the VTC
segment corresponding to Region C becomes completely vertical if the
channel-length modulation effect is neglected, i.e., if λ = 0. In more
realistic cases with λ>0, the VTC segment in Region C exhibits a finite,
but very large, slope.
Why pMOS size is greater then nMOS
size?
𝑉𝑂𝐻, 𝑉𝑂𝐿, 𝑁𝑀)
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
The plot(a) shows Idsn and Idsp in terms of Vdsn and Vdsp for various values
of Vgsn and Vgsp . Plot(b) shows the same plot of Idsn and |Idsp | now in
terms of Vout for various values of Vin . The possible operating points of the
inverter, marked with dots, are the values of V out where I dsn = |I dsp | for
a given value of V in . These operating points are plotted on Vout vs. Vin axes
in Plot(c) to show the inverter DC transfer characteristics. The supply
current IDD = Idsn = |I dsp | is also plotted against Vin in plot(d) showing
that both transistors are momentarily ON as V in passes through voltages
between GND and VDD , resulting in a pulse of current drawn from the
power supply.
EEE 475: VLSI
LECTURE 7 : Inverter Delay
05 JUN 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Ref: Waste & Harris
Sung-MO Kang
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
sat.
pMOS
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
MOS Capacitances
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Here,
Consider the cascade connection of two Cgd and Cgs are primarily due to gate
CMOS inverter. The parasitic
capacitances associated with each overlap with diffusion.
MOSFET are illustrated individually.
𝑉𝑖𝑛 𝑉 𝑜𝑢𝑡
𝐶 𝑙𝑜𝑎𝑑
https://www.youtube.com/watch?v=oB-7zeBRG_o
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
a. Propagation Delay
b. Rise/Fall Times
V10% = 0 . 1 V DD, V90% = 0 . 9 V DD
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
𝜏 ∝ 𝑅 𝑝,𝑛 𝐶 𝑙𝑜𝑎𝑑
© 2021, ORCHI
© 2024, Mohammad Mahmudul Hasan Tareq
Charging and Discharging of the 𝐶𝑙𝑜𝑎𝑑
© 2021, ORCHI
© 2024, MohammadORCHI HASSANHasan Tareq
Mahmudul
EEE 475: VLSI
LECTURE 8 : CMOS Inverter (Delay)
09 JUN 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Vin: 0 → VDD (𝑎𝑏𝑟𝑢𝑝𝑡𝑙𝑦) ⇒ 𝑉 𝑜𝑢𝑡 falls ⇒ 𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝒇𝒂𝒍𝒍
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑳𝑯
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝝉𝑷𝑯𝑳
𝜅 ~1 # for this figure the equivalence C to ground is shown for the pmos
2
2
2
𝜏𝑃𝐻𝐿 = 𝜏𝑃𝐿𝐻 = 𝜏𝑃
1
𝜇𝑛 = 2𝜇𝑝 →𝑊𝑝 = 2𝑊𝑛
08 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
© 2024, Mohammad Mahmudul Hasan Tareq
2
2
2
2
𝜏𝑃𝐻𝐿 = 𝜏𝑃𝐿𝐻 = 𝜏𝑃
1
𝜇𝑛 = 2𝜇𝑝 →𝑊𝑝 = 2𝑊𝑛
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Total Capacitance = 6C
When discharging (𝑉𝑖𝑛 = VDD)
When Charging (𝑉𝑖𝑛 = 0)
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Total Capacitance = 6C
Effective Rise/Fall Resistance= R
∴ 𝜏𝑃 = 𝑅(6𝐶)
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Total Capacitance = 3C+3nC
1 Effective Rise/Fall Resistance= R
∴ 𝜏𝑃 = 3𝑅𝐶(1 + 𝑛)
3C n3C
⋮ ⋮
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal 1. Find the fall/rise circuits
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝 • Truth Table of NAND Gate
2𝑅 2𝑅 2𝑅
𝑘𝑝 𝑘𝑝 𝑘𝑝
𝑅
A 𝑘𝑛
𝑅
B 𝑘𝑛
𝑅
C 𝑘𝑛 Discharges when all three NMOS are ON and PMOS off
3𝑅
=𝑅 →𝜅𝑛 = 3
𝜅𝑛
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal 1. Find the fall/rise circuits
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝 • Truth Table of NAND Gate
2𝑅 2𝑅 2𝑅
𝑘𝑝 𝑘𝑝 𝑘𝑝
𝑅
A 3
𝑅
B 3
𝑅
C 3 charges back up when any of the input goes to zero
(1 PMOS on – 1 NMOS OFF)
2𝑅
=𝑅 →𝜅 𝑝 = 2
𝜅𝑝
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal What is the effective Capacitance at input A,B,C and output Y?
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝
2 2 2
A 3
B 3
C 3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal What is the effective Capacitance at input A,B,C and output Y?
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝 3-NAND with connected to another n 3-NAND
2 2 2
+5nC
A 3
B 3
C 3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
+5nC
A
B
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
+5nC +5nC
+5nC +5nC
A
B
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
𝜏
+5nC
+5nC +5nC
A
B
Elmore Delay
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Choose transistor widths to achieve
effective rise and fall resistance equal
to that of a unit inverter (R).
consider, 𝜇𝑛 = 2𝜇𝑝
6
What is the effective Capacitance at input A,B,C and output Y?
6
6
Y
1 1 1
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Static CMOS is called "static" because it doesn’t require any
continuous power or refresh signal to maintain its state. Once
a value (either 0 or 1) is stored in a static CMOS circuit, it
remains stable without needing any additional power as long
as the circuit is powered on.
EEE 475: VLSI
LECTURE 10 : Dynamic Logic Circuit
11 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
In static logic output is directly connected to VDD or GND
𝑉𝑂𝑈𝑇 (𝑡)
R leak
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Complementary NMOS pull-down
Pull-up network and pseudo
NMOS and PMOS network NMOS pull-up transistor out
networks in out
pull-down
• Robust pull-down in
• Fewer transistors (N+1) network
• Energy-efficient network
• Easy to design • Functionality depends
on transistor sizing
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out
Pull-up
network in pull-down
in out network
out
pull-down
pull-down in
network
network
No static power
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Circuit has two phases
clock pre-charge
(i) 𝜙 = 0, Precharge
𝛟
(ii) 𝜙 = 1, Evaluate
out
in pull-down
network
evaluate
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
INVERTER
pre-charge
clock
evaluate
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
CASCADED INVERTERs
clock
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Stick Diagram
EEE 475: VLSI
LECTURE 12 : CMOS Layout
18 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Layout Diagrams are to Scale →hard to draw quickly
Stick Diagrams →fast way to plan cell layout before finalizing
estimate area from stick diagram
Layout
Circuit Diagram Stick Diagram
VDD
A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
VDD
C B A
GND
VDD VDD
B A B A
2 2
Y
A 2 Y Y
B 2
GND GND
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
EEE 475: VLSI
LECTURE 13: Structured Design
25 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Subsystem Design refers to breaking down a large system into
smaller, manageable units called "subsystems." Each subsystem
performs a specific function within the overall system.
Example: In a 4-bit microprocessor, the system is divided into
subsystems like:
#Memory: Stores data.
#Control Unit: Manages the operations.
#Datapath: Performs operations like addition or subtraction.
By designing each of these subsystems individually, the overall
system becomes easier to understand, design, and troubleshoot.
What does the chip do? How are the logic gates are What is going to be the physical
going to be connected? geometry of the circuit elements
and interconnections?
Structured Design
Key to success
• Proper partitioning of the system
• Simple regularized design – modularity!
1. Parity Generator
2. Bus arbitration logic
3. Multiplexer
4. Code Converter (Gray to Binary)
5. ALU Subsystem
Parity bits are often added to an n bit word to indicate whether it has even or odd number of 1s.
Parity generators generates or checks that parity bit
Functional Requirements
n is an unknown number
we want to design for regularity
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
we want to design a modular structure which can be cascaded to implement n bit
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Basic Cell
𝐴𝑖
𝐴𝑖
𝑃𝑖−1
𝑃𝑖
𝑷𝒊 𝑷𝒊
𝑃𝑖
𝑃𝑖−1 Stick Diagram
𝐴𝑖 𝐴𝑖
• If input priority line 𝐴𝑛 = 1, then output line 𝐴𝑃𝑛 = 1 irrespective of other inputs
• If input priority line 𝐴𝑛−1 = 1, then output line 𝐴𝑃𝑛−1 = 1 if 𝐴𝑛 = 0
⋮
𝑃
• If input priority line 𝐴1 = 1, then output line 𝐴1 = 1 if all other inputs are 0
𝐴1𝑃
Boolean Expression:
Boolean Expression:
Boolean Expression:
Boolean Expression:
𝐴𝑖 = 1
𝐴𝑃𝑖 = 𝑔𝑖+1
𝑔𝑖 = 0
Boolean Expression:
𝐴𝑖 = 0
𝐴𝑃𝑖 = 0
𝑔 𝑖 = 𝑔𝑖+1
25 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Digital systems are designed following a top-down approach.
They key is in partitioning smartly!
Control
Memory Datapath I/O
Unit
data
Main Sub-systems
1. Memory
• System partitioned into sub-systems according to main function
2. Datapath
• Communication between units is very important
3. Control Unit
• Design the individual sub-systems
4. Input/Output
Breakdown the functions into simpler and simpler forms systematically
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
The data path has been separated out in that
Figure and it will be seen that the structure
comprises a unit which processes data applied at
one port and presents its output at a second port.
Alternatively, the two data ports may be combined
as a single bidirectional port if storage facilities
exist in the data path. Control over the functions
to be performed is effected by control signals as
indicated.
control data
data
The datapath is designed to ensure smooth Control Signals: These are like traffic
communication between I/O, registers, the ALU, lights that tell each part of the datapath
and the shifter. This is like setting up a factory what to do and when to do it (e.g., when
line where different workstations (registers, ALU, to store a number in a register, when to
shifter) pass the product (data) from one station perform an addition in the ALU, or when
to another. to shift bits).
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
control
control data
data
• How do the data-path sub-system units communicate and transfer data within themselves?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
operate on two 4-bit data a and b and produce results
1. One Bus
Data Handling: Only one data transfer can happen at a time. If the ALU needs data from two registers,
it has to fetch one piece of data, perform the operation, and then fetch the other piece of data.
Example: Imagine a one-lane road where cars (data) can only travel in one direction at a time. If two
cars need to reach the same destination, one has to wait for the other to pass first.
2. Two Bus
Parallel Operations: For example, the ALU can fetch data from one register on the first bus and from another
register on the second bus at the same time.
Example: Think of this as a two-lane road where cars (data) can travel in both directions simultaneously or reach
different destinations at the same time.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
operate on two 4-bit data a and b and produce results
3. Three Bus
Maximum Flexibility: This setup allows the ALU to read from two different registers (using two buses) and write the result to a
third register (using the third bus) simultaneously.
Example: Imagine a three-lane highway where cars can travel to three different destinations without any delays. This enables
the fastest data transfer.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
operate on two 4-bit data a and b and produce results
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
control
control
Datapath
4 bit I/O Register ALU Shifter
data
data
A shifter moves the bits of a number to the left or
right. This is like multiplying
Whator dividing the number by
is a shifter?
powers of 2. For example,What shifting leftitbydo?
does one bit is like
multiplying the number by 2, and shifting right by one
bit is like dividing the number by 2.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
This page will help you to understand the Topic
control
control
Datapath
4 bit I/O Register ALU Shifter
data
data
What is a shifter?
What does it do?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
The General Arrangement of a 4-bit Arithmetic Processor
1. During
Metalthe
candesign
crossprocess, and in particular
polysilicon whenwithout
or diffusion defining the
anyinterconnection strategy
significant effect.
and designing the stick diagrams, care must be taken in allocating the layers to the
various data or control paths. We must remember that:
2. Wherever polysilicon crosses diffusion a transistor will be formed. This
includes the second polysilicon layer for processes that have two.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
The General Arrangement of a 4-bit Arithmetic Processor
6. In some processes, a second metal layer is available. This can cross over any
other layers and is conveniently employed for power rails.
8. Each layer has particular electrical properties which must be taken into
account.
9. For CMOS layouts, p- and n-diffusion wires must not directly join each other,
nor may they cross either a p-well or an n-well boundary.
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Datapath needs an n-bit shifter →Shift data by any number between 0 to (n-1) places
https://youtu.be/By5CccQoCWM?si=sCmnNk9MZcBqJ2MG
4 bit Shifter Requirements
1. Take 4-bit data input (parallel-in)
2. Shift data by 0,1,2, or 3 places as indicated by control signal (serial shift)
3. Output 4-bit data (parallel-out)
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Basics Structure: Crossbar Switch
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in0 in3 sh3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in0 in3 sh3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in0 in3 sh3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in0 in3 sh3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in0 in3 sh3
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
out3 out2 out1 out0
in3 in2 in1 in0 sh0
in0 in3 in2 in1 sh1
in1 in0 in3 in2 sh2
in2 in1 in2 in3 sh3
Design Problem:
Can you implement a Barrel Shifter
with MUX? What is the regularity?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
https://www.youtube.com/watch?v=BU399v3lAic&t=443s
Design Problem:
Can you implement a Barrel Shifter
with MUX? What is the regularity?
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
EEE 475: VLSI
LECTURE 15 : Subsystem Design – II
25 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
control
control
Datapath
4 bit I/O Register ALU Shifter
data
data
control
data
A[0:3]
B[0:3]
ALU Result
status
A [0:3]
Result [0:3]
Four Functions: status
B [0:3]
• Bitwise AND
• Bitwise OR
• Addition
• Subtraction
A1
𝐅𝐀 S1
B1
Cin A2
𝐅𝐀 S2
B2
A
𝐅𝐀 S
B A3
𝐅𝐀 S3
B3
𝐶𝑜𝑢𝑡
Cout
1
SUB
Carry Out
A0 A0
Four Functions: 𝐅𝐀 S0 𝐅𝐀 S0
✓Bitwise AND ✓ Addition B0 B0
✓ Bitwise OR ✓ Subtraction
A1 A1
𝐅𝐀 S1 𝐅𝐀 S1
B1 B1
A2 A2
𝐅𝐀 S2 𝐅𝐀 S2
B2 B2
A3 A3
𝐅𝐀 S3 𝐅𝐀 S3
B3 B3
Cout Cout
𝐀
𝐒
𝐁 ADD / SUB
𝟎/𝟏 𝐂𝐨𝐮𝐭
𝐶𝑎𝑟𝑟𝑦 𝑂𝑢𝑡
29 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
Transistor Theory
Memory Inverter Characteristics
Sub-system Design Interconnects
Data Storage
* Interconnections
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
CMOS systems are portioned into sub-systems
Data Storage
* Interconnections
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Access memories with an address Sequential Memory gives you the address of
Latency same f or any address (no address) where a certain data is stored
e.g. Shift Registers
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Store data in Store data by
feedback circuit charge on
capacitor
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Fixed at Reprogrammable
fabrication
programmed once
Reprogrammable Reprogrammable
*erased with UV
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Store data in Store data
feedback by charge on
circuit capacitor
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
Row decoder: Turns on word line
from n bit address
16 × 4 Memory Array
Column Circuitry: amplifiers or
16 words with 4 bits per word Buffers to read data
Each bit is stored in a memory cell
Total Memory Cell = 16 ×4 = 64 Column Decoder: selects the 2 𝑚 bits
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
bit bit_b
• Read and Write data
word
• Hold data as long as VDD is there
• 6T cell
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
• Initially bit=0
• We want to write 1 word
• Turn on Word 0 →𝟏
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
bit conditioning circuit
𝜙2
• Stored data 1
• Word 0 so transistor OFF
• Bit conditioning circuit charges bit lines to 1 word
• Turn word line on to read 0 →𝟏 ⋮
• column circuitry helps to read bit
bit bit_b
𝜙2 𝟏 𝟏
𝟏 𝟎
word 𝐶𝐵 𝐶𝐵
bit
⋮
bit_b
could be very
slow! out_bit_b column circuitry out_bit
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
How do READ and WRITE work in SRAM?
Is this circuit enough? Do you need anything-else? bit conditioning circuit
𝜙2
word
bit bit_b
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
• Bit line pre-charged to 1
• Word is raised for reading word
(A1 and A2 ON) 0 →𝟏 ⋮
read stability: D1 ≫A1
A1 A2
bit P1 P2 bit_b
𝟏 𝟏
𝟎 𝟏
𝐶𝐵 D1 D2
𝐶𝐵
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
• Bit line pre-charged to 1
• Word is raised for reading word
(A1 and A2 ON) 0 →𝟏 ⋮
read stability: D1 ≫A1
A1 A2
bit P1 P2 bit_b
𝟏 𝟎
𝟎 𝟏
• Bit line pre-charged to DATA and DATA_B 𝐶𝐵 D1 D2
𝐶𝐵
• Word is raised for Writing
(A1 and A2 ON) ⋮
write stability: A2 ≫P2
𝑤𝑟𝑖𝑡𝑒
© 2021, ORCHI
© 2024, Mohammad HASSANHasan Tareq
Mahmudul
read stability: D1 ≫A1 word
⋮
A1 A2
write stability: A2 ≫P2 bit P1 P2 bit_b
D1 D2
SRAM Transistor Sizing
NMOS (D1,D2) : strongest
Access (A1.A2) : intermediate ⋮
PMOS (P1,P2) : weakest
W smaller → 𝑤𝑒𝑎𝑘𝑒𝑟 (𝑙𝑜𝑤𝑒𝑟 𝑔 𝑚 )
VDD/2
Cbit
Cbit
29 SEP 2024
2024, Mohammad Mahmudul Hasan Tareq
EEE CUET
What are the major differences between SRAM and DRAM?
Where are they used? What decides which is used where?
• Memory density
• Memory Performance
• Memory Cost
32-64 bits FF
SRAM
DRAM
non-volatile memory
clock
clock
clock
load
All 4 bits are loaded in parallel and can be read in parallel →Parallel In to Parallel Out (PIPO)
Bits are loaded and read serially →Serial In to Serial Out (SISO)
© 2024, Mohammad Mahmudul Hasan Tareq
Transfer 4 bit data from Register A to Register B
Count
𝑨𝟎
𝑨𝟐
𝑨𝟏
𝑨𝟐
𝑨𝟑
𝑨𝟑
Reset
© 2024, Mohammad Mahmudul Hasan Tareq
Counters are registers that go through known/prescribed sequences
Binary Counters go through binary number sequence
4 bit binary counter has 4 flip-flops and can count from 0-15
𝑨𝟎 State Diagram
CLK
CLK
𝑨𝟎
𝑨𝟏
𝑨𝟏
𝑨𝟐
𝑨𝟐
ripple counter 𝑚 = 𝟏𝟔
Full-Adder
A B C S Cout
𝑊&𝐻: 12.7
© 2024, Mohammad Mahmudul Hasan Tareq
A programmable logic array (PLA) provides a regular structure for implementing combinational logic
• Any logic can be expressed as a sum of products of its input
• Outputs are the ORs of the ANDs of the inputs
• PLA consists of an AND plane and an OR plane to compute the outputs.
A B C S Cout
❑
• Max-Min Delay
• Clock Frequency