Ee315a Reader Autumn2014
Ee315a Reader Autumn2014
- Autumn 2014 -
Boris Murmann
Stanford University
[email protected]
Table of Contents
Chapter 1 Introduction
Chapter 2 Precision Techniques
Chapter 3 Switched Capacitor Gain Stages
Chapter 4 Operational Transconductance Amplifiers I
Chapter 5 Operational Transconductance Amplifiers II
Chapter 6 Continuous Time Filters: Biquads
Chapter 7 Continuous Time Filters: Ladders
Chapter 8 Integrator Realization & Nonidealities
Chapter 9 Switched Capacitor Filters
Chapter 10 Physical Layout
(This page is intentionally left blank)
Introduction
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Signal
A/D
Conditioning
Analog
Digital
Media and
Processing
Transducers Signal
D/A
Conditioning
Sensors, Actuators,
Antennas, Storage Media, ...
[Schreier, "ADCs and DACs: Marching Towards the Antenna," GIRAFE workshop, ISSCC 2003]
24
22
DVD 1kW
20 Audio
18 1W Software
Radio
Resolution [bits]
16 Audio
14 GSM Base
GSM Rx
1mW DSL
12 Ultra-
sound
10 Motor DTV Dig. Scope
Controls DVC
Video
8 Teleph.
HDD
6
1µW
4
Wireline Interface
2
1kHz 10kHz 100kHz 1MHz 10MHz 100MHz 1GHz 10GHz
Bandwidth
• Ouch!
[Schreier, "ADCs and DACs: Marching Towards the Antenna," GIRAFE workshop, ISSCC 2003]
Electroencephalography (EEG) =
recording of electrical activity along
the scalp produced by the firing of
neurons within the brain
Interface Features/Properties
• Teaching assistant
– Jihoon Jang, [email protected]
• Administrative support
– Ann Guerra, Allen 207, [email protected]
• Web page
– http://coursework.stanford.edu/homepage/F14/F14-EE-315A-01.html
– Check regularly, especially the "Forums" section
• Lecture videos are provided on the web (by SCPD), but please
come to class to keep the discussion intercative
• Course prerequisites
– EE214B or equivalent
• Device physics and models
• Transistor level analog circuits, elementary gain stages
• Frequency response, feedback, noise
– Prior exposure to Spice, Matlab
– Basic signals and systems
• Laplace and z-transforms
• Please talk to me if you are not sure if you have the required
background
Design of mixed-signal
and RF building blocks
EE314B
Advanced RF
Integrated Circuit
EE114/EE214A EE214B Design
Fundamentals of Advanced Analog
Analog Integrated Integrated Circuit
Circuit Design Design EE315A
VLSI Signal
Conditioning Circuits
EE315B
VLSI Data
Conversion Circuits
• Homework: (30%)
– Handed out on Thu, due following Thu after lecture (1 pm)
– Lowest HW score is dropped in final grade calculation
– Absolutely positively no deadline extensions
• Project: (30%)
– Design of a high performance amplifier circuit (CDS stage)
– Project report in the format of an IEEE journal paper
• Final Exam (40%)
Honor Code
Reference Books
• Chan Carusone, Johns, Martin, Analog Integrated Circuit Design,
2nd Edition, Wiley, 2011
• Schauman, Xiao and Van Valkenburg, Design of Analog Filters, 2nd
Edition, Oxford University Press, 2009
• Deliyannis, Sun, and Fidler, Continuous-Time Active Filter Design,
CRC Press 1998, http://www.crcnetbase.com/isbn/9780849325731
• Gray, Hurst, Lewis and Meyer, Analysis and Design of Analog
Integrated Circuits, 5th Edition, Wiley, 2008 (Chapter 12)
• Laker and Sansen, Design of Analog Integrated Circuits and Systems,
McGraw-Hill, 1994
• Gregorian and Temes, Analog MOS Integrated Circuits for Signal
Processing, Wiley, 1986
• Williams and Taylor, Electronic Filter Design Handbook, 3rd edition,
McGraw-Hill, 1995
• Zverev, Handbook of Filter Synthesis, Wiley, 1967
http://www.phantomscales.com/ohaus/valor1000.php
Precise reference
voltage (bandgap)
http://www.allaboutcircuits.com/vol_1/chpt_9/7.html
Δ Δ 1 Δ
2 2 2
Calibration
Button
Digital
Processor
http://www.planetanalog.com/document.asp?doc_id=527950
http://cds.linear.com/docs/en/application-note/an43f.pdf
Thermal Noise
1
,௧
ଶ
= 2 ⋅ 4 Δ
Vn,th2
gm gm vIM
vIP α = excess noise factor
(due to active loads, etc.)
ଶ
,௧ 0.5 50
= = 4⋅4 1
Δ 100 . . = ଶ ⋅ = 1.5
50
15
2 ⋅4 Δ 1
= ଶ
⋅
,௧
Not a big dealL
Δ
Δ
,
ଶ
= 2 ⋅
௫
= 0.5 ⋅ 10ିଶହ ଶ
2ID ିଶହ ଶ
= 0.25 ⋅ 10
௫ = 8.42
ଶ
మ
, = 2 ⋅ = 2 ⋅
ଶ ଶ
⋅ 2.3
௫ ௫ ଵ
భ
= 2 ⋅
⋅ 2.3
1ଶ ⋅ ௫
0.5 ⋅ 10ିଶହ ଶ
. . =4⋅ ⋅ 2.3 = 5.46 ⋅ 10ିଵଵ ଶ
8.42
= 7.4௦
ଶ
7.4
>5⋅ ⋅ 1ଶ = 1095ଶ
0.5
VOS
ଶ்
Δ் = ் = 5
ఉଶ
Δ = ఉ = 1%
ଶ ଶ ଶ ଶ் ఉଶ !
ଶ
= + = +
ைௌ ைௌ,ఉ ைௌ,்
!
ଶ
1
ଶ
= ଶ் + ఉଶ Usually negligible*
ைௌ
5
= = 5
1ଶ
ைௌଵ
5
= = 1.58
10ଶ
ைௌଶ
5
= = 0.5
100ଶ
ைௌଷ
Δ
ைௌ,ఉ =
• In weak inversion
Δ Δ Δ ைௌ,ఉ
ைௌ,ఉ = = =
Δ ைௌ,ఉ
=
Summary
http://www.ti.com/lit/ds/symlink/ina333.pdf
Quick Check
• This amplifier looks promising for our application
• Offset
– The guaranteed offset bound is 25 µV
– Easily removed during start-up calibration
• Offset drift
– Specified at 0.1 µV/K; can handle tens of degrees
temperature change before we drift out of spec
• Thermal noise
– Input PSD is 50 nV/rt-Hz, OK for our application
• Flicker noise
– No mention, must be negligible
– How do they do this?
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
1/
fn
oi
se
Basic Options
• Offset mitigation
– Use large transistors
• Generally undesired (extra area, power)
– Use trimming or start-up calibration
• Won’t address offset drift, ~110 µV/K
• Flicker noise mitigation
– Use large transistors PMOS
– Use PMOS
• Helps if device has a buried channel
– Use resistive degeneration
• Mostly useful for current sources
Degen.
• For most precision applications, applying
these techniques alone is inadequate [Denison, JSSC 2007]
• Chopping
• Autozeroing
• Correlated double sampling (ʺdiscrete time autozeroingʺ)
• Offset stabilization (ʺcontinous time autozeroingʺ)
• Combinations of chopping and autozeroing
[Medtronic]
LPF
in out
DC signal offset
Zero
SVin square(t)
VA VB +1
LPF
Vin + A Vout signal
time
-1
f Tchop
Vos+Vn
= 1 + 0.85
[Enz, 1996]
VA VB LPF
Vin A(s) Vout
DC input
R2
Cm
fchop fchop
R1
Vout
Vin
Cm
Vbias2
• PMOS choppers
demodulate the signal
Vod • NMOS choppers
Vbias3 provide dynamic
element matching for
Vid NMOS current sources (more
fchop
later)
Vbias4
fchop
[Sanduleanu, 1998]
VSS
[Enz, 1996]
VA VB LPF
Vin A(s) Vout
DC input
Advanced Techniques
[Bakker, 2000]
Spike Dead-Banding
[Drawing by K. Makinwa]
[Bakker, 1997]
[Burt, 2006]
[Drawing by K. Makinwa]
Digital Filtering
[Drawing by K. Makinwa]
Dynamic Techniques
• Chopping
• Autozeroing
• Correlated double sampling (ʺdiscrete time autozeroingʺ)
• Offset stabilization (ʺcontinous time autozeroingʺ)
• Combinations of chopping and autozeroing
Vout
Φ2
DC AC
Vin Φ1
Φ1
Caz
Φ1 Autozero phase
DC Analysis
Vos
DC Analysis: Vn → 0
Vaz
DC
Vaz = A0 Vos ‒ Vaz
A0
∴ Vaz = V
1 + A0 os
Vaz Caz
Vos
∴ Vout = A0 Vin +
Vaz Caz 1 + A0
• The amplifier‘s noise and drift are sampled and held on Caz
– The residual noise at Vout is the difference between the sampled
noise and the present value of the noise
– Low frequency noise doesn‘t change rapidly good rejection
– High frequency noise is aliased, folds back to baseband
Duty cycling
Zero-order hold
δ(t-nTs) Sinc in the frequency domain
m=∞
Vn(t) VSH(t) VSH ݂ = HZOH ݂ Vn f − mfs
ZOH
m=−∞
Noise aliasing
Vout = a0 Vn ‒ HZOH Vn =
2 2
2 TΦ2 2 sin ωTΦ2 1 ‒ cos ωTΦ2
H0 f = 1‒ +
Ts ωTΦ2 ωTΦ2
Comparator Example
• Mehr & Dalton, JSSC 7/1999
Output is sampled
by next stage
௦ V
Vn t out k 1‒ ‒ഝమ
Σ
‒ഝమ
‒ഝమ
More later.
Aoverall = Am + An Ap
[Enz, 1996]
[Pertjis, 2009]
http://electronicdesign.com/analog/chopper-stabilized-op-amps
Summary
• Chopping
– Can achieve 50nV-10µV residual offsets
– Technique of choice when noise is most important
• No sampling no thermal noise penalty
– Well suited to continuous time applications
• The amplifier output is always valid/available
– Some fundamental loss of amplifier bandwidth
• Autozeroing and correlated double sampling
– Can achieve 1-10µV residual offset
– Sampled data technique
• Well suited to discrete time systems (data converters, SC filters)
• Noise aliasing increases thermal noise floor
– Can achieve uninterrupted continuous time operation with
appropriate topology
References (2)
• M. Sanduleanu et al., “A low noise, low residual offset, chopped amplifier
for mixed level applications,” Proc. ICECS, pp. 333-336, 1998.
• A. Bakker and J.H. Huijsing, “A CMOS chopper opamp with integrated low-
pass filter,” Proc. ESSCIRC, pp. 200-203, 1997.
• A. Bakker, K. Thiele, and J.H. Huijsing, “A CMOS nested chopper
instrumentation amplifier with 100nV offset,” IEEE J. Solid-State Circuits,
pp. 1877-1883, Dec. 2000.
• C. Menolfi and Q. Huang, “A 200nV 6.5 nV/Hz noise PSD 5.6kHz chopper
instrumentation amplifier,” ISSCC Digest of Tech. Papers, pp. 362 - 363,
Feb. 2000.
• M.A.P. Pertijs and W.J. Kindt, "A 140dB-CMRR current-feedback
instrumentation amplifier employing ping-pong auto-zeroing and chopping,"
ISSCC Digest of Tech. Papers, pp. 324-325, Feb. 2009.
DEM Concept
To filter
[Pelgrom]
To signal switches
[Pelgrom]
Outline
[Pertijs, 2005]
10001000
1000..
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Introduction
Non-overlapping
clock signals
φ1
Vin
Vout
φ2 φ1e φ2B
Cf
φ1 Cs
X
Vin
Vout
φ2 φ1e φ2B
Cf
φ1 Cs
X
Vin
Vout
φ2 φ1e φ2B
ܳଵ = ܳଶ
V௨௧ ܥ௦
=
ܸ ܥ
• Get started with switch and capacitor alone, then expand analysis
φ1
Vin
φ2 φ1e φ1
φ
Elementary
Vin Vout Track and
Hold Circuit
φ
VC
(2) (1) (2)
A Different Planet
• In the 1980’s, discrete time signal processing was still
uncommon in electronics
• As a result, early SC noise analysis looks the problem from a
continuous time perspective
CLK
vin(t) vout(t)
Fourier/Laplace description
CT
SC pre- CT
Front-
Sampler processing ADC DSP DAC Recon-
End
(CDS, etc.) struction
Circuit
VC
∞ 2
1 1 kT
var [ VC1(n)] = 2
v C1,tot = ∫ 4kTR ⋅ df = 4kTR =
0
1 + j2πf ⋅ RC1 4RC1 C1
Alternative Derivation
1 1
Cv C12 = kT
2 2
kT
v C12 =
C
• Strategy
– Realize that discrete time noise samples are essentially
instantaneous values (mTs apart) of the continuous time
noise process during φ1
– Spectrum follows from Fourier transform of the process'
autocorrelation function (Wiener-Khintchin)
• Samples show no correlation white spectrum
• Samples are correlated colored spectrum
Analysis (1)
τ
kT − RC
Ryy ( τ ) = e
C1
n⋅mTs
kT − Covariance of samples
∴ Ryy ( n ) = e RC
separated by n clock cycles
C1
2 kT 1 − e −2 M mTs “number of RC
X (f ) = M= time constants
fs C1 f RC1 in mTs”
1 − 2e − M cos 2π +e
−2 M
fs
2.5
M=1
2 M=3 • Spectrum of noise samples is
X(f) / (2/f *kT/C)
1
M=5
1.5 essentially “white” for M>3
s
1
• Practical circuits tend to use
0.5 M=10 or larger
0
0 0.1 0.2 0.3 0.4 0.5
f/f s
Simulation Schematic
0.4*Ts/C1/M
R4
C1 = 1pF
Ts = 1us
M = 1, 3, 5, 7
≅64uVrms
M=1
M=1
M=7
M=7
2 kT
fs C1
4 ⋅ =
1 ௦
= ⋅ = (settling)
4 2
௦
= ⋅
2
• Basic idea
– Apply a windowed (timed) integration to the signal
• First proposed in
– L. R. Carley and T. Mukherjee, "High-speed low-power
integrating CMOS sample-and-hold amplifier architecture“
Proc. CICC, pp. 543-546, 1995.
Gm
• For analysis see
– A. Mirzaei, S. Chehrazi, R. Bagheri, and A.A. Abidi, “Analysis
of First-Order Anti-Aliasing Integration Sampler,” IEEE TCAS
1, Oct. 2008.
– C.D. Ezekwe, and B.E. Boser, “A Mode-Matching Σ∆ Closed-
Loop Vibratory Gyroscope Readout Interface With a 0.004 /s/
Hz Noise Floor Over a 50 Hz Band,” IEEE JSSC, Dec. 2008.
[Ezekwe]
Application Example
[Ezekwe]
• When φ1e goes low, the signal charge (Qx) is acquired at node X
• During φ2, this charge is redistributed onto Cf
Cs
X
Vout
Cpar φ1e
• Need to find the total noise charge at node X after the φ1e
switch has turned off
• Very tedious to calculate using piece-by-piece integration of all
three noise sources
Cs
X
Vout
Cpar φ1e
1 q2x 1 q2x
=
2 Ceff 2 Cs + Cf + Cpar q2x = kT Cs + Cf + Cpar
( )
1 q2x 1 Cpar can deteriorate noise
= kT performance!
2 Cs + Cf + Cpar 2
4kTRon ∆f
1
R≅
βGm
4kTRon1∆f 4kTγ
α ∆f
Gm
2
4kTγ C 2
• Amplifier noise referred to vo Na = α ∆f ⋅ 1 + s ⋅ H( jω)
Gm Cf
2
Cs
1 + 2
Na αγ Cf Na αγ Cs
= >> 1 = 1+ >> 1
N1 GmRon1 C 2 N2 GmRon2 Cf
s
C
f
vo
Cs Gm
1 CL
R≅
βGm
4kTγ
α ∆f
Gm
1 β Gm
BW = =
RCLtot CLtot
4kTγ 1 BW 1 kT
v o2 = α⋅ 2 ⋅ = αγ
Gm β 4 β CLtot
Cf
φ1 φ2
q2x = kT ( Cs + Cf )
Cs Gm
CL
2 q2x Cs + C f kT Cs 2 1 kT
v o,1 = = kT = 1+ v o,2 ≅ αγ
C2f C2 C Cf
β CLtot
f f
2 kT Cs 1 kT
v o,tot = 1 + + αγ
Cf Cf β CLtot
DRsingle
Vˆ 2
∝ o DRdiff ∝
( 2Vˆ )
o
=2
Vˆ o2
kT kT kT
2
C C C
• Yes, there’s a 3dB win in DR, but it comes at twice the power
dissipation (due to two half circuits)
• Can get the same DR/power in a single ended circuit by
doubling all cap sizes and gm
SC Noise Simulation
• There are at least three ways to simulate noise in switched
capacitor circuits
• Basic .ac/.noise Spice simulations
– Simulate noise in each clock phase separately
• Activate φ1 switches, run .noise and integrate noise
charge at relevant node over all frequencies and refer to
output
• Activate φ2 switches, run .noise and integrate noise over
all frequencies at the output
• Sum integrated noise from the two phases
– This is analogous to the way we carried out the hand
analysis
Example Circuit
• OTA Gm chosen such than (Ts/2) / τOTA = 10
• Switches sized 5 times faster, i.e. N = 5·10 = 50
vic
vic
Cfp
Clp
cf
cl
voc
vocs
vdd
p1
voc
vdd
vocs
Csm
cs
Csp
cs
p1
Cfm
Clm
cf
cl
vic
vic
fs = 100 MHz, α = 2, γ = 1
Cs = Cf = 100 fF, CL = 500 fF, Cpar ≅ 0
-15
10
PSD [V2/Hz]
-20
10
-25
10 2 4 6 8 10 12
10 10 10 10 10 10
Frequency [Hz]
-4
x 10
6
Integral [uVrms]
4 406µVrms
2
0 2 4 6 8 10 12
10 10 10 10 10 10
Frequency [Hz]
PSD [V2/Hz]
-20
10
-25
10 2 4 6 8 10 12
10 10 10 10 10 10
Frequency [Hz]
-4
x 10
4
Integral [uVrms]
266µVrms
2
0 2 4 6 8 10 12
10 10 10 10 10 10
Frequency [Hz]
2
v out,tot = ( 406µVrms )2 + ( 266µVrms )2 = 485µVrms
4.75ns
1 10
Maxacfreq ≅ 10 ⋅ = ⋅ N ⋅ fs
2πRonC π
Maxacfreq 15GHz
Numsidebands ≅ = = 150
fs 100MHz
Transient Noise
• Simulated 1000 samples
• Only one critical setting: noisefmax = 15 GHz
Summary
• Modern SC noise analysis is based on discrete time models
• The basic passive SC track and hold comes with a large noise
penalty (ENBW = M times signal bandwidth)
– The boxcar architecture fixes this problem
• SC gain stage noise analysis: Analyze total integrated noise in
both phases and combine
• SC noise simulation takes time to get used to, but is generally
manageable (PNOISE or TRAN NOISE are robust and well
understood)
– In any case, always try to match simulations to a known
result from hand analysis (start with a “hello world” circuit>)
References
• B. Murmann, "Thermal Noise in Track-and-Hold Circuits:
Analysis and Simulation Techniques," IEEE Solid-State Circuits
Magazine, vol. 4, no. 2, pp. 46-54, June 2012.
• K. Ragab, M. Kozak, Nan Sun, "Thermal Noise Analysis of a
Programmable-Gain Switched-Capacitor Amplifier With Input
Offset Cancellation," IEEE TCAS2, vol.60, no.3, pp. 147-151,
March 2013.
• A. Dastgheib and B. Murmann, “Calculation of Total Integrated
Noise in Analog Circuits,” IEEE TCAS1, vol. 55, no. 10, pp.
2988-2993, Oct. 2008.
• Lennart Mathe and David C. Lee, "Analog-to-Digital Converter
Performance Signoff with Analog FastSPICE Transient Noise at
Qualcomm," Berkeley Design Automation, www.berkeley-
da.com.
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
• Basic considerations
– OTAs vs. OpAmps
– Application requirements for OTAs
– The case for fully differential circuits
– Gm/ID-based design
• Analysis of the basic differential pair topology
– CMFB, linear half circuit model
– Feedback analysis, linear settling
– Slewing
– Noise analysis
– Feedback factor optimization
• Topologies for increased gain and signal swing
– Telescopic architecture
– Current mirror architecture
– Folded cascode architecture
• Folded cascode OTA design example
• Type
– Operational Amplifier
• Ideally a voltage-controlled voltage source
• Typically contains an output stage that can drive “arbitrary”
loads, including small resistances
• Predominantly used for board-level circuitry
– Operational Transconductance Amplifier (OTA)
• Ideally a voltage controlled current source
• Typically restricted to capacitive (or moderate resistive) loads
• Primarily used in integrated circuits
OpAmp Symbol
OpAmp
OTA Symbol
(Fully Differential)
OTA
• Output configuration
– Single ended
– Differential
• Predominantly used for integrated high-performance or high-
precision amplifiers
• Requires common mode feedback circuit
– Class-A
• Output cannot source/sink currents larger than quiescent point
bias current
– Class-AB
• Output can provide large drive currents “on demand”
– Dynamic, comparator-based
• Still a research topic)
vin
vout
Active RC C Gm-OTA-C
R
RL
( )
CI
Switched Capacitor
φ1 Cs φ2
φ2
φ2 φ1e
CL
Requirements (1)
Active RC Gm-OTA-C SC
High gain X X X
Low noise X X X
High BW X X X
Capacitive loads X X X
Resistive loads X
Fast settling X
ron||rop
vo
Single-ended OTA model
vi RL CL
Single-ended model of
a two-stage OTA
Gm = gm1a = gm1b
• Typical problem
– Want to realize a certain amount of gm
– Need to determine W, L, ITAIL
• Classical square-law equations are very inaccurate for modern
technologies
W
gm = 2ID μCox
L
The Problem
Specifications
Circuit
Results
>> size(nch.ID)
ans =
22 73 73 11
In usage modes (1) and (2) the input parameters (L, VGS, VDS, VSB) can be
listed in any order and default to the following values when not specified:
Square Law
• Transconductance efficiency gm 2
– Want large gm, for as little =
current as possible ID VOV
• Transit frequency
gm 3 µVOV
– Want large gm, without large Cgg ≅
Cgg 2 L2
• Intrinsic gain
– Want large gm, but no go gm 2
≅
go λVOV
fT
gm/ID [S/A], f T [GHz]
30 Moderate Inversion
gm/ID
20
Weak Inversion Strong Inversion
10
0
-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
VOV [V]
200
gm/ID⋅f T [S/A⋅GHz]
100
50
Weak Inversion Strong Inversion
0
-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
VOV [V]
L=0.18um
L=0.5um
L=0.5um
L=0.18um
L=0.18um
L=0.5um
Extrinsic Capacitances
NMOS, L=0.18um
1
Cdd/Cgg
Cgd/Cgg
0.8
Typically OK to
0.60 work with
0.6 estimates taken
at VDD/2
0.4
0.24
0.2
0
0 0.5 1 1.5
VDS [V]
MP1a MP1b
MPB
Vip Vim
MN1a MN1b
IT/2 IT
CMFB
∆I
∆I
Voc = Voc,des + = Voc,des for GCMFB → ∞
GCMFB
CMFB Implementation
• With the circuit at the proper operating point, we can analyze its
small-signal behavior using a differential mode half circuit model
• Note that (to first order) the CMFB loop does not influence the
behavior of the differential mode signals
Gm = gmn
Cftot
Ro = rop ||ron
Co = Cdbp + Cdbn
Cx = Cgsn + Cgbn
vx = ∙ vo
Cftot
β=
Cftot + Cs + Cx
“Feedback factor”
1
vo = ‒it · Ro || CLtot = CL + Co + 1‒ β Cftot
sCLtot
ir 1 β·Gm Ro β·a0
T s = ‒ = β·Gm · Ro || = =
it sCLtot 1 + sRo CLtot 1 + sRo CLtot
T ( jω ) Ro→∞
T0 = βGm Ro
T0
1
ωpo =
Ro CLtot
ω
ω po ωc
Phase Margin
T jω Ro→∞ βGm Ro
T jω = ω
T0 1+j
ωpo
βGm Ro
T jωc = ω
ω 1+j c
ωpo ωc ωpo
|ω=ω = ‒ tan‒1
∡ T jω ωc
∡ T jω c ≌ ‒ 90°
ωpo
ωpo
0° ω
−45° PM ≌ 180° ‒ 90° ≌ 90°
vo T s d
A s = = Aஶ +
vi 1+T s 1+T s
ቤ
vo
d0 = =0
vi
Gm =0
T0 d0 Cs
A0 = Aஶ + Aஶ = ‒ T0 = βGm Ro d0 = 0
1 + T0 1 + T0 Cftot
Cs 1
⇒ A0 = ‒
Cftot 1
1+
βGm Ro
A0 ‒ Aஶ A T0 1 1 1
ε0 = = 0 ‒1= ‒1= ‒1≌ 1‒ ‒1=‒
Aஶ Aஶ 1 + T0 1 T0 T0
1+
T0
1
ε0 ≌ Gain Error = 1/Loop Gain
T0
d at High Frequencies
Cs
ieq = v i ⋅ sCftot = v i β ⋅ sCs Ceq = (1 − β ) Cftot
Cs + Cx + Cftot
vo 1 i eq C
d= = =β s
vi Gm = 0 (
v i s Ceq + CL + Co CLtot )
T( s ) d
A(s ) ≅ A∞ +
1+ T ( s ) 1+ T ( s )
βGm βCs C s
1 − s ftot
Cs sCLtot CLtot Cs Gm Cs 1 − z
≅− + =− =−
Cftot βGm βGm Cftot
CLtot Cftot 1 − s
1+ 1+ 1+ s
sCLtot sCLtot βGm p
• Pole frequency:
As expected.
β Gm β GmRo (Feedback moves poles
ωp ≅ ≅ ωc ≅ ≅ T0 ⋅ ω po
CLtot RoCLtot by same the same factor
it reduces the gain)
Cftot s
1− s
Cs Gm Cs 1 − z
A( s ) = − =−
Cf 1 + s CLtot Cf 1 − s
βGm p
• Zero frequency:
Gm ωz C
ωz = = Ltot usually >> 1
Cftot ωp βCftot
βGm
ω−3dB ≅ ωp ≅
CLtot
s
Cs 1 1 − z
A(s ) ≅ −
Cf 1 + 1 1 − s
T0 p
T0 = βGm R0
βGm
p≅−
CLtot
Gm
z≅+
Cftot
Cftot
β=
Cftot + Cs + Cx
Settling Performance
Vin φ1 φ2
φ2
φ1
φ2 φ1e
Vout
φ2
CL
time
Vout ( s ) C 1 1 Gm
A (s ) = ≅− s ⋅ T0 = β ⋅ Gm Ro ωc ≅ β ⋅
Vin ( s ) Cf 1 + 1 1 + s CLtot
T0 ωc
Step Response
Vout ( s ) = A( s ) ⋅Vin ( s )
Vstep Cs T 1
Vout ( t ) = L−1 A( s ) ⋅
s
=−
Cf 1 + T0
(
⋅ Vstep ⋅ 0 ⋅ 1 − e −t / τ ) τ=
ωc
0.8
out,ideal
0.6
/V
out
V
0.4
0.2
0
0 2 4 6 8 10
t/τ
ts = −τ ⋅ ln ( εd ,tol )
εd,tol ts/τ
1% 4.6
0.1% 6.9
0.01% 9.2
10-6 13.8
εd fc/fs
1% 1.5
0.1% 2.2
0.01% 2.9
10-6 4.4
Result
10
8
Voltage [mV]
4
-V
id
Vod (simulation)
2
Vod (theory)
0
10
-V
id
Vod (simulation)
Voltage [mV]
5
Vod (theory?)
-5
0 5 10 15 20 25
Time [ns]
• What's this ?
Capacitive Feedforward
• In the first instant after the input step has been applied, the
output is completely determined by capacitive voltage division
• Half circuit during initial transient
Vodstep Cs Cf
= ⋅
Vidstep Cf CL Cf + CL
Cs + Cin +
Cf + CL
s Gm
1− z=
Cs 1 z Cf
A (s ) = −
Cf 1 + 1 s
1− βGm
T0 p p=−
CLtot
New Result
Vstep Cs T p
Vod (t ) = L−1 A(s ) ⋅ =− ⋅Vidstep ⋅ 0 ⋅ 1 − 1 − e −t / τ
s Cf 1 + T0 z
New
p CL + (1 − β ) Cf + βCf CL + Cf 1
1− = = =
z CL + (1 − β ) Cf CL + (1 − β ) Cf 1 − β Cf
Cf + CL
• For our example:
1
= 1 .4 ⇒ Vod ( t = 0 ) ≅ 10mV (1 − 1.4 ) = −4mV
500fF
1 − 0.48
500fF + 300fF
Cf
ts = −τ ⋅ ln εd ,tol 1 − β ⋅
Cf + CL
<1
Another Simulation
1000
800
-Vid
Voltage [mV]
200
Vxdstep/2
Cf
Cs
Vim Vop
500fF
500fF Vodstep/2
Vidstep/2 Cin CL
40fF 10pF
Cs 500fF
Vxdstep = Vidstep ≅ −1V = −480mV
CC 500fF + 40fF + 500fF
Cs + Cin + f L
Cf + CL
1
Slope = 1
2
Iod/ITAIL 0 VOV = VGS − Vt ≅
gm
ID
1
2 1 0 1 2
-√2 Vid/VOV √2
0
-100
"Slewing" "Linear Settling"
Vxd [mV]
-200
-300
2 2
-400 −
gm
-500 ID
0 50 100 150
Time [ns]
0
Diff. pair I od [µA]
-100
-200
-300
0 50 100 150
Time [ns]
Slewing
dVod ITAIL
SR = =
dt CLtot
Slewing Time
• The input of the differential pair changes at a rate equal to β·SR,
where β is given by the usual capacitive feedback divider
• Hence, the time it takes to complete slewing is given by
Vxstep − 2.8 / ( gm / ID )
tslew ≅
β ⋅ SR
480mV − 280mV
tslew = = 21ns
V
0.48 ⋅ 20
µs
Vxdstep − 2.8 / ( g m / ID ) V
ts = tslew + tlin ≅ − τ ln εd ,tol od ,final
β ⋅ SR Vod ,lin
Cs Cs
Vxdstep = Vidstep ≅ Vidstep
Cf CL Cs + Cin + Cf
Cs + Cin +
Cf + CL
<1
• Note that circuits with large closed loop gain tend to slew less
– Since Vid,step cannot be larger than Vod,final/Gain
– E.g. Vod,final=2V, Gain =8 ⇒ Vxdstep < Vidstep < 250mV
• The circuit won’t slew at all if gm/ID < 2.8/250mV = 11.2 S/A
2
v o2 1
∆f
(
= 4kT γ n g mn + γ p g mp ⋅ R )
j ω CLtot
2
γ p g mp R
= 4kT γ n g mn 1 + ⋅
γ n g mn 1 + j ω RCLtot
γ p g mp 2 1
= 4kT γ n g mn 1 + ⋅R ⋅
γ n g mn 4RCLtot
γ p g mp 1 1
= 4kT γ n g mn 1 + ⋅ ⋅
γ n g mn β g mn 4CLtot
g mp Want small
1 kT γ p g mp 1 kT γp ID gmp/ID
= γn 1 + = γn 1 +
β CLtot 1 γ n g mn β CLtot γ n g mn
424 3
14243 ID
Excess noise due
to active load
ଶ
1 2 2
ܲ௦,௫ 2 ܸ௩ − ݃ /ܫ − ݃ /ܫ
= ܴܦ =
ܲ௦ ݇ܶ ߛ ݃ /ܫ
2ܥ ߛ 1 + ߛ ⋅
௧௧ ݃ /ܫ
ଶ
K / max(K) (dB)
2 2 -1
ܸ௩ − −
݃ /ܫ ݃ /ܫ
=ܭ
ߛ ݃ /ܫ -2
1+ ⋅
ߛ ݃ /ܫ Vavail=1.4V
-3 Vavail=1.0V
Vavail=0.6V
Example: -4
5 10 15 20 25 30
gmp/ID (S/A)
γp/γn = 1
gmn/ID = 15 S/A Conclusion: Optima are shallow
Vavail = 0.6, 1.0, 1.4 V
Start with gmp/ID = gmn/ID in a typical low
voltage design
ࢼܩ 1 ܥ
∝ ܹܤ ∝ ܴܦ ߚ=
ܥ௧௧ 1 ݇ܶ ܥ + ܥ௦ +
ࢼ ܥ௧௧
Optimum Cin
ߚܩ
ܥ௧௧
∝ ܴܦ ⋅ ܹܤ ∝ ߚ ଶ ܩ = = ்
݇ܶ + ௦ +
βC୲୭୲
ଶ
1
∝ ܴܦ ⋅ ܹܤ ௗ =
ܥ + ܥ௦ + + ௦
0.8
ߚௗ
0.6 ߚ௧ =
2
0.4
If the tradeoff between power
0.2 and bandwidth was perfectly
0.5 1 1.5 2 2.5 3 3.5 4
linear, then this would also be
Cin / (Cs+Cf)
the optimum of BW*DR/P
ߚܩ 1
⋅ Cs
ܥ௧௧ 1 ݇ܶ Vout
ܴܦ ⋅ ܹܤ ߚ ܥ௧௧ ܩ Gm
∝ ∝ ߚଶ
ܲ ܫ ܫ
ܩ ⋅
ܩ Cin CL=kCf
ܩ Γ ܩ
= Γ= ⋅ ߱ ் = ܿݐݏ݊. (assuming square law)
ܫ ்߱ ܫ
ܩ ߱௨ Γ ߱௨
= ⋅ ∝ ߱௨ = ܿݐݏ݊. (assume ωu is a given spec)
ܫ ߱ ் ߱௨ ߱ ்
߱௨ ଶ
ܴܦ ⋅ ܹܤ ܩ ݇+1 −1 ߱௨
்߱
∝ ߚଶ ∝ ߱
ܲ ܫ ܩ+1− ௨ ்߱
்߱
߱௨
݇+1 −1
்߱
ߚ= ߱ Plot this3
ܩ+1− ௨
்߱
Normalized BW⋅DR/P
1
0.5 k=1
k=2
0
2 4 6 8 10 12 14
ω T/ω u
1
β/βiideal
0.5
0
2 4 6 8 10 12 14
ω T/ω u
Optimum versus G
10
(ωT/ωu)opt
4
0 2 4 6 8 10
G
0.72
k=1
βopt/βiideal
0.7 k=2
0.68
0.66
0 2 4 6 8 10
G
(ωT/ωu)opt 40
0.7
βopt/βiideal
Outline
• Basic considerations
– OTA vs. OpAmps
– Application requirements for OTAs
– The case for fully differential circuits
• Analysis of the basic differential pair topology
– CMFB, linear half circuit model
– Feedback analysis, linear settling
– Slewing
– Noise analysis
– Feedback factor optimization
• Topologies for increased gain and signal swing
– Telescopic architecture
– Current mirror architecture
– Folded cascode architecture
• Folded Cascode OTA Design Example
(
Vodpp,max = 2 VDD − VDsatp − VDsatn − VDsat,tail )
Example Vic=Voc=VDD/2
90
80
Vod/Vid [V/V] -30%
70
60
Vodpp,max
50
40
-1.5 -1 -0.5 0 0.5 1 1.5
Vod [V]
ron ⋅ rop 1 1
a0 = gmn ⋅ = a0n = a0n
ron + rop r gmp a0n
1 + on 1+
rop gmn a0p
1
a0 = a0n
( gm / ID )p a0n
1+
( gm / ID )n a0p
• Gm = M⋅gm1
• Input-referred noise
1 2
~4 1+
ଵ
M does not help
• Non-dominant pole
due to mirror scales
gm1 as 1/M
• Useful for mostly for
low-bandwidth
applications
– See e.g. Yao,
JSSC 11/04
v x iy iz vo
T (s ) = − ⋅ ⋅ ⋅
vo v x iy iz
1 −1
= −β ⋅ Gm ⋅ ⋅
s sCLtot
1−
p2
gm '
p2 = −
Cy
ωT
⇒ ω p2 ≅
3
• Phase margin ~ 80
degrees
– Non-dominant pole
p2 is not an issue in
this case
• Since ωp2 ~ωT/3, this
means that ωc (and
hence closed-loop BW)
cannot be higher than
~ωT/15 in this scenario
• Phase margin ~ 28
degrees
– Not acceptable in
practice
• How much phase
margin should we
design for?
Step Response
ε d,spec=0.01%
1.6
ε d,spec=0.1%
1.4
ε d,spec=1% • Typically want to
1.2 shoot for phase
1 margin ~70-75
degrees
0.8
0.6
0.4
0.2
0
50 60 70 80 90
Phase Margin [deg]
ω ω p2
PM ≅ 180° − 90° − tan −1 c PM ≅ tan −1
ω p2 ωc
ωp2/ω c Approximate PM
1 45°
2 63°
3 72°
4 76°
5 79°
“Load Compensation”
Gm
ωc = β
CLtot
1 fT f 20 GHz
fs,max = ⋅ ≅ T = = 666 MHz
2.9 9 30 30
1 kT g ω
v o2 = γ 1 + m2 c
β CLtot g m1 ω p 2
g m1 gm 2
ωc = β ω p2 =
CLtot Cx
ωc = 1.94 GHz
PM = 70.1 deg
Noise Simulation
PSD M1
Total
M2 noise rolls in at high freq.
CT: Noise may be filtered out
SC: Noise will alias
Total
Integral
M1
M2
1 gmp2 + gmbp2
ωc ≤ For PM ≥ 75°
4 2Cddp2 + Cssp2
25
L=0.06um
20
1 gm + gmb
f p2 [GHz]
15
2π 2Cdd + Css
10
L=0.25um
5
L=1um
0
5 10 15 20
gm/I D [S/A]
1V
LP2=0.25µm
gm/ID=15 Swing ~± 400mV
0.6V
Differential
0.4V
0.2V
LN2=0.25µm
gm/ID=15
4 1 gm
1 gm + gmb fT =
2π Cgg
[GHz]
2π 2Cdd + Css 3
(for comparison)
2
fp2 = 1.8GHz
1
5 10 15 20
gm/I D [S/A]
1 1 1
fc = fp2 = 450MHz ts = ⋅ ln = 2.4ns
4 2πfc ε
d,spec
Design Equations
Capacitor Ratios Cs = G ⋅ Cf = G ⋅ CL
Feedback Cf 1
β= =
Factor Cf + Cs + Cgg1 1 + G + Cggn1 / Cf
Total Integrated 1 kT ( gm / ID )2
Ntot = 2γ 1+ 2 γ ≅ 0.8
Noise β CLtot ( g / I )
m D 1
I D1 [A] 1
0.5
0
5 10 15 20 Chosen 25
(g /I ) [S/A]
m D 1 Point
0.3
0.25 L=606250nm
β
0.2
0.15
0.1
5 10 15 20 25
(gm/I D)1 [S/A]
gnd
G0
+ voc vom
ggain:gcmfb vcm vm
-
V5
vdc:vdd/2 ideal_balun
vod vop
vdm vp
gnd I5
Testbench Schematic
Cfp
Clp
cf
cl
Rsm
r:rs
Csm
cs
Csp
cs
Rsp
r:rs
Cfm
Clm
cf
cl
fu = 250 MHz
(too low)
PM = 79 deg
(too high)
Error Analysis
fu = 356 MHz
(better)
PM = 74.5 deg
(OK)
Transient Settling
±0.1%
ts=1.7ns
Noise Simulation
• Done!
• The errors in the initial design point are due to the first-order
nature of our design equations, which must omit second order
effects to be useful
– This why we still run simulations_
• But, as we have seen, the design can be scaled to spec with
only a few iterations in the simulator
– If desired, the information learned from these iterations can
be included into the Matlab script for the next design_
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
Transconductor
-gm (e.g. CS or CE stage, differential pair)
gm Current Buffer
(CG or CB stage)
1/gm
1/gm
Voltage Buffer
Av 1
(CD or CC stage)
Conceptual Schematic of a
Two-Stage Amplifier
vo
gm1 -gm2
βvo
C1 R1 C2 R2
߱ଵ ߱ଶ
ܽ = ݃ଵ ܴଵ ݃ଶ ܴଶ
Mag ( jω ) β ⋅ a (s )
a2 ( s )
−180° ω
Narrowbanding Compensation
T0
• Idea: Make one of the loop poles dominant, leave the other
poles unchanged
• Wasteful if ωp2 is at a low frequency
• Acceptable if ωp2 is at a high frequency
– Like in a load compensated amplifier, where the second
stage is really just a wideband current buffer
߱ଶ ߱ଵ
-gm gm
Cgs CL
1/gm
T0
߱௨ ≅ ܶ ߱ଵ ߱ଶ
1
߱௨ᇱ ≅ ܶ ߱ଵ ≅ ߱ଶ
3
Miller Compensation
Cc
gm1 -gm2
C1 R1 C2 R2
C1C2
1 gm2Cc g 1 C C C + C2
ωp1 ≅ ωp2 ≅ ≅ m2 ≅ 1 + 2 1+ 1
gm2R2 R1CC C1C2 + Cc (C1 + C2 ) C2 ωp2 gm2 gm2 Cc
β gm1R1gm2R2 βgm1
GBW ≅ ωp1T0 ≅ =
gm2R2 R1CC CC
“Pole Splitting”
c
c c
~gm2/C2
gm2R2R1
a(s) = −
f(s) = −sCc (1 + sR1 [C1 + Cc ]) (1 + sR2 [C2 + Cc ])
Mag ( jω ) -gm2
a(s)
C1+Cc R1 C2+Cc R2
1
f(s)
ω
RHP Zero
• Unfortunately, the right half plane zero due to Cc can destroy the PM
RHP LHP
ωz −ωz
ω ω
1− j → − 90 o 1+ j → + 90 o
ωz ωz
Phase Phase
ωz ω
0° + 90°
− 45° + 45°
− 90° 0°
ωz ω
Rz Cc
gm1 -gm2
C1 R1 C2 R2
• p1 and p2 unchanged, new pole p3, and a “knob” to tune the zero
Implementation Example
Third Pole
1
ωp3 ≅
R z C1
gm2
• For Rz = 1/gm2 ωp3 ≅ ≅ ωT
C1
gm2 ωT
• For Rz = (1+C2/Cc)/gm2 ωp3 ≅ ≅
C2 C2
1+ C1 1+
Cc Cc
• Thus, as we try to cancel the second pole, the third pole moves to a lower
frequency, and may move to a frequency that is comparable to the original
ωp2 before cancellation
• My recommendation: Simply push the zero to infinity
• Typical textbook recommendation: Spice-monkey the zero into the LHP and
try to squeeze out some phase margin
gm=KVOV
Carusone, page 260
Ron=1/(KVOV)=1/gm
Mag ( jω ) Cm2
Cm1
gm1, gm2
PM = 85 deg !
Feedforward Compensation
ω
• Very large achievable bandwidth
|p1| |p2| |z1|
• Potential issue
φ(jω)
ω
– The doublet p1, z1 can make it
– π/2 difficult to achieve a fast
–π transient response
• See Kamath, JSSC 12/1974
B.Y.T. Kamath, R.G. Meyer and P.R. Gray, "Relationship between frequency response and
settling time of operational amplifiers," IEEE JSSC, Vol. 9, No. 6, pp.347–352, Dec. 1974.
B.Y.T. Kamath, R.G. Meyer and P.R. Gray, "Relationship between frequency response and
settling time of operational amplifiers," IEEE JSSC, Vol. 9, No. 6, pp.347–352, Dec. 1974.
VDD
Slew Rate
SR- = ITAIL/2CC
~ “ac” ground
Slewing Time
ITAIL
SR =
Cc
2 2
0 for Vxdstep <
g m / ID
tslew = 2 2
Vxdstep −
g m / ID
else
β ⋅ SR
IB2 I /2
≥ TAIL
CLtot + Cc Cc
ITAIL CLtot
IB2 ≥ 1+
2 Cc
iOP vOP
vO1P
vO1M
vOC
iOM
vOM
iOP vOP
vO1P
vOC
vO1M
iOM
vOM
2 2
M2 ≤ VDD − −
VDSsatN
( g m / I D ) P ( g m / I D )N
Design Example
Cf
CL
Cs
+ -
Vsd Vid Vod
- +
Cs
CL
Cf
Specifications:
Dynamic range = 75 dB
Settling time = 10 ns
Dynamic Settling Error ≤ 0.1%
Static Settling Error ≤ 0.5%
CL= 1pF, Cs = Cf = 1pF
Prototype Amplifier
2x M4a M4b
CMFB
Vip Vim
M1a M1b ID2 Vom
ID1 Vop
Cn=Cgd1
M3a M3b Cc Cc
M2a M2b
• 11 Variables: ID1, W1, L1, W3, L3, ID2, W2, L2, W4, L4, Cc
2
0.5 ⋅Vod ,peak 1 kT γ p g m 3 kT γ p gm 4
DR = v o2 ≅ ⋅ γ n 1 + + 1 + γ n 1 +
2
v od β Cc γ n g m1 CLtot γ n g m 2
g m1 Cf
ωc ≅ β β=
− 0 .7 Cc Cs + Cf + Cgg1
ts ≅ ln( εd ,spec )
ωc
gm 2
−1 ω p 2 ω p2 ≅
(No slewing, PM≅75°) PM ≅ tan C1CLtot
ωc + C1 + CLtot
Cc
1 g m1 gm2
εs ≅ T0 = β ⋅ ⋅
T0 gds1 + gds 3 gds 2 + gds 4
Optimization Approach
g m1 Cf
ωc ≅ β β=
Cc Cf + Cs + Cgg1
CLtot Cgg 2
gm2 1 Cgg 2 CLtot Cgg 2 + CLtot
ωp2 ≅ ≅ + 1+
CLtot Cgg 2 ω p2 gm 2 gm2 Cc
+ Cgg 2 + CLtot
Cc
“parallel combination”
>> idtotal
idtotal =
0.0010447
m1 = m2 =
cgg: 2.0000e-012 cgg: 1.7500e-012
cdd: 8.4569e-013 cdd: 8.6409e-013
gm: 0.0059 gm: 0.0161
ft: 4.7039e+008 ft: 1.4597e+009
gmid: 18.8069 gmid: 21.9751
id: 3.1431e-004 id: 7.3040e-004
idw: 0.5368 idw: 1.0039
W: 5.8551e-004 W: 7.2755e-004
cgd: 3.7701e-013 cgd: 3.4988e-013
-4
x 10
• Near-optimum
10 design point
– Cgg1/(Cs+Cf)=0.3
8 – Cgg2/CLtot =0.3
I Dtotal
– IDtotal = 534uA
6
4
1
1
0.5
0.5
C /C 0 0
gg2 2 C /(C +C )
gg1 s f
parameters CS = 1.000000e-012
parameters CF = 1.000000e-012
parameters CL = 1.000000e-012
parameters CC = 2.689790e-012
parameters CN = 1.061561e-013
parameters RZ = 1.643900e+002 Include this as a
parameters W1 = 1.648643e-004 model library file
parameters L1 = 4.000000e-007
parameters ID1 = 2.430537e-004
parameters W2 = 1.890538e-004
parameters L2 = 3.000000e-007
parameters ID2 = 2.909095e-004
parameters W3 = 8.528657e-006
parameters L3 = 3.000000e-007
parameters W4 = 9.233185e-005
parameters L4 = 4.000000e-007
80
60 – PM = 75°
40
20 – T0 > 200
0
-20 • Discrepancies in fc
-40 -2 0 2 4 and PM due to
10 10 10 10
f [MHz] inaccuracy in
capacitance
Phase [degrees]
0 estimates, VDS
-50 dependencies etc.
-100 – Easy to track
-150 down (and
-2 0 2 4 potentially fix)
10 10 10 10
f [MHz]
PSD [V2/Hz]
• Target
– DR = 75 dB
-20
10
• Discrepancy
10
5
10
10
mostly due to
f [Hz] flicker noise
Sqrt(Integral) [µVrms]
0 5 10
10 10
f [Hz]
10 • Response to
Vod [mV]
small transient
5 step (10mV)
0 • Target
0 5 10 15 20 25
Time [ns]
– ts = 10ns
es=-0.14%, ts=12.33ns • Discrepancy
mostly due to
Error [%]
0 error in fc, PM
-0.2
-0.4
8 10 12 14 16
Time [ns]
Gain Boosting
1 + T ( port shorted )
Z port = Z port ( k = 0 ) ⋅
1 + T ( port open )
Rout
a0
VB Rout ( a0 = 0 ) ≅ ro 2 (1 + g m 2r01 )
M2
gm2
T ( port shorted) ≅ a0 ≅ a0
g m 2 + g mb 2
M1
T ( port open ) = 0
Rout ≅ ro 2 (1 + g m 2r01 ) ⋅ ( a0 + 1)
• Loop gain
gm3 1 ω 1
T (s ) = = u
sC2 Cgs 3 s Cgs 3
1+ s 1+ s
gm2 gm 2
gm2
= k ⋅ ωu k = 2...4
Cgs 3
1
௭ = ௨ = ௨ =
⇒ , , ௭
[Bult]
• Implementation aspects
– How to sense
– How to compare to desired value
– How to provide a "knob" for adjusting Voc
Comparison Circuit
R. Schreier, et al., "A 375-mW Quadrature Bandpass Delta Sigma ADC With 8.5-MHz BW and
90-dB DR at 44 MHz," IEEE J. Solid-State Circuits, vol. 41, no. 12, pp.2632-2640, Dec. 2006.
1 Ccmfb gmx
ωc ≅
2C Cx C ⋅ 0.5Cx
cmfb + CL + cmfb
2 Ccmfb + 0.5Cx
• Nondominant pole
gmn
ωp 2 ≅
Cy
iOP vOP
vO1P
vO1M
vOC
iOM
vOM
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
|H(j )| |H(j )|
Passband Stopband
Filter Design
|H(j )| Passband
Ripple
Maximum/
Apmax Transition
minimum
passband Apmin band
gain
Stopband
As
gain
p s
Qp=0.5
0
Qp=1/sqrt(2)
Qp=1
Magnitude [dB]
-10
1
H(s) =
s s2
-20 1+ + 2
ωPQP ωP
-30
-40 4 5 6
10 10 10
f [Hz]
0.5 , 1 4 1 ωP
2
ωP/2QP
0.5 , 1 1 4
2
Carusone, p. 164
Real Poles
s2
Pole Positions
5 5 5
x 10 x 10 x 10
6 6 6
4 4 4
2 2 2
Imaginary
Imaginary
Imaginary
1
0 QP = 0.5 0 QP = 0 QP = 1
2
-2 -2
-2
-4 -4
-4
-6 -6
-6
-6 -4 -2 0 -6 -4 -2 0 -6 -4 -2 0
Real x 10
5 Real x 10
5 Real x 10
5
1 1 1
ψ = cos−1 =0
o
ψ = cos−1 = 45
o
ψ = cos−1 = 60
o
2Q
P 2Q
P 2Q
P
“pegs”
no zeros
0
zeros on imaginary axis 2
s
-5 1+
ωZ
Magnitude [dB]
-10 H(s) = 2
-15 s s
1+ +
-20 ωPQP ωP
-25
2
-30 ω
H( jω ) ω→∞ = P
ωZ
-35
-40 4 5 6 7
10 10 10 10
f [Hz]
0
H(s) = H1(s) ⋅ H2 (s)
-5
1
H1(s) =
Magnitude [dB]
-10 2
s s
-15 1+ +
ωPQP ωP
-20
1
-25 H1(s), QP=1/sqrt(2) H2 (s) =
s
-30 H2(s), ω P*=ω P 1+
-35 H1(s) ⋅H2(s)
ωP*
-40 4 5 6
10 10 10
f [Hz]
0
H(s) = H1(s) ⋅ H2 (s)
-5
1
H1(s) =
Magnitude [dB]
-10 2
s s
-15 1+ +
ωPQP ωP
-20
1
-25 H1(s), QP=1 H2 (s) =
s
-30 H2(s), ω P*=ω P 1+
-35 H1(s) ⋅H2(s)
ωP*
-40 4 5 6
10 10 10
f [Hz]
• Win-win improvement
– Passband flat, roll-off steeper
2 1 j(2k −1)π
H(s) = H(s) ⋅ H( −s) = − s2 1/n
−s 2
n = ( −1) =e n k = 1,2,3...,n
1+ 2 ωP2
ω
P
ωP = 1
1 1 1 1
0 0 0 0
-1 -1 -1 -1
-1 -0.5 0 -1 -0.5 0 -1 -0.5 0 -1 -0.5 0
Real Real Real Real
http://en.wikipedia.org/wiki/Butterworth_filter
ωP = 1
n Denominator Polynomial
1 (s + 1)
2 s2 + 1.4142s + 1
3 (s + 1)(s2 + s + 1)
4 (s2 + 0.7654s + 1)(s2 + 1.8478s + 1)
5 (s + 1)(s2 + 0.6180s + 1)(s2 + 1.6180s + 1)
6 (s2 + 0.5176s + 1)(s2 + 1.4142s + 1)(s2 + 1.9319s + 1)
7 (s + 1)(s2 + 0.4450s + 1)(s2 + 1.2470s + 1)(s2 + 1.8019s + 1)
8 (s2 + 0.3902s + 1)(s2 + 1.1111s + 1)(s2 + 1.6629s + 1)(s2 + 1.9616s + 1)
2
s s
-2 1+ +
ωP1QP1 ωP1
-4
H1(s), QP1=0.541, ω P1=1 1
-6 H2(s), QP2=1.307, ω P2=1
H2 (s) = 2
s s
H1(s) ⋅H2(s) 1+ +
-8 ωP2QP2 ωP2
-10 -4 -2 0
10 10 10
ω [rad/sec]
1 1 1
ψ = cos−1 QP1 = = 0.541 QP2 = = 1.307
2QP (
2cos 22.5o ) (
2cos 67.5o )
B. Murmann EE315A - Chapter 6 17
Increasing QP2
10
5
Magnitude [dB]
-10 -4 -2 0
10 10 10
ω [rad/sec]
10
Magnitude [dB] 0
• This may not a bad choice of we can tolerate some peaking or ripple
0
Magnitude [dB]
-2
-4
-6
Butterworth
-8 QP2=3, ω P1=0.7
-10 -2 -1 0 1
10 10 10 10
ω [rad/sec]
1 1 1 1
0 0 n=3 0 0 n=5
n=2 n=4
-1 -1 -1 -1
-1 -0.5 0 -1 -0.5 0 -1 -0.5 0 -1 -0.5 0
Real Real Real Real
Matlab Code
wp = 1; % Edge of passband
R = 1; % Passband ripple in dB
[z, p, k] = cheby1(4, R, wp, 's'); 4
sys = zpk(z, p, k);
2
w = logspace(-2, 1, 1000);
1 dB
[mag, phase] = bode(sys, w); 0
Magnitude [dB]
db = 20*log10(reshape(mag, 1, length(w)));
-2
figure(1)
-4
semilogx(w, db, 'linewidth', 2); hold on;
plot([w(1) w(end)], [0 0], '--'); -6
plot([w(1) w(end)], [-1 -1], '--');
-8
set(gca, 'fontsize', 14);
xlabel('\omega [rad/sec]') -10 -2 -1 0 1
ylabel('Magnitude [dB]'); 10 10 10 10
ω [rad/sec]
axis([min(w) max(w) -10 4])
grid;
2 2 2 2
1 1 1 1
Imaginary
0 0 0 0
-1 -1 -1 -1
-2 -2 -2 -2
n=2 n=3 n=4 n=5
-3 -3 -3 -3
Matlab Code
-5
Magnitude [dB]
wp = 1; % Edge of passband
Rp = 1; % Passband ripple in dB
-10
Rs = 20; % Stopband attenuation
[z, p, k] = ellip(4, Rp, Rs, wp, 's'); -15
-20
-25 -2 -1 0 1
10 10 10 10
ω [rad/sec]
2 2 2 2
1 1 1 1
Imaginary
0 0 0 0
-1 -1 -1 -1
-2 -2 -2 -2
n=2 n=3 n=4 n=5
-3 -3 -3 -3
Design Example
-30
sys = zpk(z, p, k);
f = logspace(4, 7, 1000);
[mag, phase] = bode(sys, 2*pi*f); -40
db = 20*log10(reshape(mag, 1, length(f)));
figure(1)
-50 4 5 6 7
semilogx(f, db, 'linewidth', 2); 10 10 10 10
Frequency [Hz]
12
Butterworth
Elliptic
10
Chebyshev 1 & 2
8
Required Order
0
2 3 4 5 6 7 8 9 10
ω s/ω p
0.8
Output
0.6
0.4
0.2
0
0 1 2 3 4 5 6
Time [µsec]
-40
-60 4 5 6 7
10 10 10 10
Frequency [Hz]
0
Phase [degrees]
-100
߱ଶ 0° ߱ ≤ ߱௭
=൜
߱ > ߱௭
∡ 1−
߱௭
ଶ 180°
Magnitude [dB]
Qp=1
20
Qp=10
0 Qp=100
-20
-40 -1 0 1
10 10 10
ω /ω P
0
Qp=1
Phase [deg]
-50 Qp=10
-100 Qp=100
-150
-1 0 1
10 10 10
ω /ω P
• The phase of a complex pole pair changes more abruptly for higher QP
– Can show that the phase slope is QP·(-45°/decade) at ω=ω P
• For QP→∞ (poles approaching the imaginary axis), the phase approaches an
abrupt jump, just like the imaginary zeros we looked at
v out (t) = A1 H( jω1) sin ( ω1t + φ(ω1)) + A 2 H(jω2 ) sin ( ω2t + φ(ω2 ) )
φ(ω1) φ(ω2 )
= A1 H( jω1) sin ω1 t + + A 2 H(jω2 ) sin ω2 t +
ω1 ω2
φ(ω1) φ(ω2 )
− =0
ω1 ω2
φ(ω) = T ⋅ ω T = constant
Linear
Phase (φ1 = π/2)
Filter
t
0 ω1 ω2 ω1
∂φ ω1 ω2
∂ω T (Fixed delay)
[U. Moon]
unmatched
φ(ω1) φ(ω2 )
≠
ω1 ω2
Group Delay
• The name group delay (or envelope delay) comes from the fact
that it specifies the delay experienced by a narrow-band “group‘”
of sinusoidal components within some ∆ω around a carrier wc
• The width of ∆ω is limited to a range over which dφ/dω is
approximately constant
• For example, for an AM modulated signal, the carrier
experiences a delay of τp (phase delay) and the envelope sees
a delay of τg (group delay)
• For a proof, see e.g.
– http://ccrma-www.stanford.edu/~jos/fp2/Derivation_Group_Delay_Modulation.html
• In this course, we are using the term group delay merely to refer
-dφ/dω (and not to argue about group delay per se)
• All poles
• Poles are relatively low Q
• Maximally flat group delay
• Poor magnitude roll-off
Order (N) Re Part (-σ) Im Part (±jω)
1 1.0000
2 1.1030 0.6368
1.0509
3 1.0025
1.3270
1.3596 0.4071
4
0.9877 1.2476
1.3851
0.7201
5 0.9606
1.4756
1.5069
http://www.rfcafe.com/references/electrical/bessel-poles.htm
[H. Khorramabadi]
Pulse Response
[H. Khorramabadi]
L.P. H.P.
x x [U. Moon]
x
o
o o
o
x
2-zeros at ∞ (e.g. Arbitrary n=2)
x x 2-zeros at origin
The s-domain poles and zeros simply become inverted. As shown by the
examples, zeros at infinity move to the origin, and finite-valued poles become
|1/poleLP| in magnitude and become conjugates (flips between quadrant II &
III). The mapping boundary is the unit circle.
2
sLP ± j 1−
sLP ≈ sLP ± j fm
= “Q” ; f m =
s = where a = f 1 f 2 ; ∆f = f 2 − f 1
BP 2a 2a 2a ∆f
1
circle
2a
o
unit circle xo
L.P. x B.P. x
xo
[U. Moon]
x
(e.g. “Narrowband” n=3)
xo
x x
o xo
For a “narrowband” approximation, the s-domain poles and zeros simply become
replicated at ±jω with a smaller unit circle of radius 1/2a. To realize a wideband
filter, use a cascade of highpass and lowpass filters.
• An interesting filter
that combines three
different approaches
– Passive LC
– Active RC
– Switched capacitor
The Challenge
1
sC 1 1
H = = =
1 1 + sRC + s2 LC s s2
+ R + sL 1+ +
sC P QP 2
P
1 1 L
ωP = QP =
LC R C
On-Chip Capacitors
~1mm
1 X( ω )
In general Y= ⇒ Q=
R + jX( ω ) R
1 ωL
Y= ⇒ QL =
Rs + j ωL Rs
ωL 1 L QL L ω
QL = QP = = = QL P
Rs R C ωL C ω
Summary
http://www.engnetbase.com/ej
ournals/books/book_summary/
summary.asp?id=475
(Section 3.5)
• The above circuit is not all that useful for our lowpass filter; we
need a “floating” inductor
− Don’t want the inductance to be ground referenced
Floating Gyrator
http://www.engnetbase.com/ej
ournals/books/book_summary/
summary.asp?id=475
(Section 6.4)
1 v in (t )
C∫ R
vout (t ) = − dt
1
Vout ( s ) = − V (s)
sRC in
State-Space Realization
State variables
(integrator outputs)
1 1
C∫ L∫
vc (t ) = ic (t )dt iL (t ) = v L (t )dt
1 1
Vc ( s ) = I (s) IL ( s ) = VL ( s )
sC c sL
1 1
Vc = Ic = I = Vout
sC sC L
1 1
IL = VL = (Vin − ILR − Vout )
sL sL
• Looks promising, but the problem with this realization is that the
first integrator takes a voltage at the input and produces a
current at the output
– We need the opposite if we want to realize the circuit with an
RC integrator
A1 A2 A3
Vout ‒1
H s = =
Vin s 1 + sRC + s2 LC
KHN Biquad
W.J. Kerwin, L.P. Huelsman, R.W Newcomb, "State-Variable Synthesis for Insensitive Integrated Circuit Transfer
Functions," IEEE JSSC, vol.2, no.3, pp. 87-92, Sep. 1967.
1 R1 R2 + R1 R3 + R2 R3
ωo = Q=
Vo VLP K′ RC 2R1 R3
= =
Vi Vi s s2 2R2 R3 R 1
1+ +
ωo Q ωo 2 K′ = = 2∙
R1 R2 + R1 R3 + R2 R3 R1 Q
τ τ τ = RC
s 2 τ2 −s τ HLP ( s ) =
1
HHP ( s ) = HBP ( s ) =
s s2 s s2 s s2
1+ + 2 1+ + 2 1+ + 2
ωPQP ωP ωPQP ωP ωPQP ωP
HP
LP
BP
GENERAL
[B. Boser]
P. E. Fleischer and J. Tow, “Design Formulas for biquad active filters using three operational
amplifiers,” Proc. IEEE, vol. 61, pp. 662-3, May 1973.
Vo1 ( b a − b ) s + ( b2a0 − b0 )
= −k 2 2 1 2 1
Vin s + a1s + a0
Vo 2 b2s 2 + b1s + b0
= 2
Vin s + a1s + a0
Vo 3 1 ( b0 − b2a0 ) s + ( a1b0 − a0b1 )
=−
Vin k1 a0 s 2 + a1s + a0
Sallen-Key LPF
G
H s =
s s2
1+ +
ωp Qp ωp 2
[B. Boser] 1
ωp =
R1 C1 R2 C2
R.P. Sallen and E. L. Key “A Practical Method of Designing RC Active
Filters.” IRE Trans. Circuit Theory, Vol. CT-2, pp. 74-85, 1955
ωp
Qp =
• Single gain element 1 1 1‒ G
+ +
R1 C1 R2 C1 R2 C2
– typically 1 ≤ G ≤ 10
• Poles only, no zeros
• Sensitive to parasitic capacitances
• Versions exist for HP, BP, .
– http://en.wikipedia.org/wiki/Sallen_Key_filter
Sensitivity
• The sensitivity of any variable y to any parameter x is defined as
(See e.g. Gray & Meyer, Section 4.2)
∆y / y x ∆y x ∂y
Sxy = lim = lim =
∆x → 0 ∆x / x y ∆x →0 ∆x y ∂x
• Example
∆x ∆y
Sxy = 10 = 2% ⇒ ≅ 20%
x y
Tow-Thomas Sallen-Key
1 1
ωP = ∝
R8 1 R1C1R2C2 RC
ωP = ∝
R2R3R7C1C2 RC
ωP
QP = ωP R1C1 ∝ 1 QP = ∝1
1 1 1− G
+ +
R1C1 R2C1 R2C2
1
SRωP1 = SRωP2 = SCωP1 = SCωP2 = −
1 2
ωP =
R1C1R2C2 1 R 2C2
SRQ1P = −SRQ2P = − + QP
2 R1C1
ωP 1 R1C2 R 2 C2
QP = SQC1P = −SCQ2P = − + QP +
1 1 1− G 2 RC R1C1
+ + 2 1
R1C1 R2C1 R2C2
R1C1
SQGP = QPG
R 2C2
1
SRQ1P = −SRQ2P = − + QP = 9.5
2
Example (2)
• For G=1, we have
ωP
QP =
1 1
+
R1C1 R2C1
and it follows that
1 R2
SRQ1P = −SRQ2P = − + =0 for R1 = R2
2 R1 + R2
R8 1
ωP = SRωP2 = SRωP3 = SRωP3 = −SRωP8 = SCω1P = SCωP2 = −
R2R3R7C1C2 2
SRQ1P = 1
R8C1 1
QP = ωP R1C1 = R1 SRQ2P = SRQ3P = SRQ7P = −SRQ8P = −SCQ1P = SCQ2P = −
R2R3R7C2 2
0.5
A 0 B
-0.5
[Yee, ESSCIRC 2000]
-1
-1 -0.5 0
Real
A
B
(s^2/2.786e013 + 1) (s^2/5.715e013 + 1)
= ----------------------------------------------------------------------------------------
(s/1.89e006 + 1) (s^2/1.034e013 + s/4.6640e+006 + 1) (s^2/1.664e013 + s/3.1308e+007 + 1)
0 0
-10 -0.5
Magnitude [dB]
Magnitude [dB]
-1
-20
-1.5
-30
-2
-40 -2.5
-50 4 -3
5 6 7 5 6
10 10 10 10 10 10
Frequency [Hz] Frequency [Hz]
1.5
1
ωP QP
-0.5
z1,2 ± j1203.2 kHz
-1.5
-0.6 -0.4 -0.2 0
Real [MHz]
(s^2/2.786e013 + 1) (s^2/5.715e013 + 1)
------------------------------------ -----------------------------------
(s^2/1.664e013 + s/3.1308e+007 + 1) (s^2/1.664e013 + s/3.1308e+007 + 1)
10 10
Magnitude [dB]
Magnitude [dB]
0 0
-10 -10
-20 4 5 6 7
-20 4 5 6 7
10 10 10 10 10 10 10 10
f [Hz] f [Hz]
± 1V
10 10 10
5 5 5
Magnitude [dB]
Magnitude [dB]
Magnitude [dB]
0 0 0
-5 -5 -5
-20 4 6
-20 4 6
-20 4 6
10 10 10 10 10 10
f [Hz] f [Hz] f [Hz]
In Out
Ordering the Biquads from low-Q to high-Q generally yields “smooth” transfer functions from the
input to the intermediate nodes, and often helps minimize harmonic distortion, but the output will
have significant noise peaking near the corner frequency due to the last stage with high-Q.
In Out
Reversing the ordering will allow the later stages to filter out the noise peaking near corner
frequency. May also filter out harmonics (but not intermodulation).
In practical filter design, it would be worthwhile giving some thoughts to the options that you
may have for the ordering of the biquads. In a non-lowpass filter application, inherent ac-
coupling may also be used to your advantage to suppress offset accumulation.
5 5 5
Magnitude [dB]
Magnitude [dB]
Magnitude [dB]
0 0 0
-5 -5 -5
-10 4 5 6
-10 4 5 6
-10 4 5 6
10 10 10 10 10 10 10 10 10
f [Hz] f [Hz] f [Hz]
10 10 10
Magnitude [dB]
Magnitude [dB]
Magnitude [dB]
5 5 5
0 0 0
-5 -5 -5
-10 4 5 6
-10 4 5 6
-10 4 5 6
10 10 10 10 10 10 10 10 10
f [Hz] f [Hz] f [Hz]
• At first glance this looks bad, but the noise from the high-Q
biquad is filtered before it reaches the output
– We will revisit this situation in the context of noise analysis
(s^2/2.786e013 + 1) (s^2/5.715e013 + 1) 1
----------------------------------- ----------------------------------- ----------------
(s^2/1.664e013 + s/3.1308e+007 + 1) (s^2/1.034e013 + s/4.6640e+006 + 1) (s/1.89e006 + 1)
K1*(s^2/2.786e013 + 1) K2*(s^2/5.715e013 + 1) K3
----------------------------------- ----------------------------------- ----------------
(s^2/1.664e013 + s/3.1308e+007 + 1) (s^2/1.034e013 + s/4.6640e+006 + 1) (s/1.89e006 + 1)
• Since the overall gain is unity (with no peaking above 1), this
means Vout swings only 314mV, meaning that we are “wasting”
available signal range
Analysis (2)
• A more desirable outcome may be to scale K1, K2, K3 such that all
stages utilize the maximum available swing as the input tone is
swept across all frequencies
– Note that in general, the maximum output swings for each
stage may not occur at the same frequency
• In our example
and therefore
0 0 0
-5 -5 -5
Magnitude [dB]
Magnitude [dB]
Magnitude [dB]
-20 4 5 6
-20 4 5 6
-20 4 5 6
10 10 10 10 10 10 10 10 10
f [Hz] f [Hz] f [Hz]
2x Tow-Thomas
Vo 2 b2s 2 + b1s + b0
= 2 b1 = 0
Vin s + a1s + a0
1 1 1 k1 a0 R8
R4 = R5 = R6 = R7 = k 2R8
k 2 a1b2 C1 b0C2 b2
R6 R8
ωZ = ωP = QP = ωP R1C1
R3R5R7C1C2 R2R3R7C1C2
• a0, a1, b0, b1, b2 are known; can pick k1, k2, C1, C2 and R8
• Reasonable starting values
– k1 = k 2 = 1
– Set C1 = C2 to a reasonable value that is easily
implemented, e.g. 1pF
– Set R8 to a reasonable value that is easily implemented and
represents an integer multiple or fraction of R2, R3 or R7
B. Murmann EE315A - Chapter 6 99
−k 2
( b2a1 − b1 ) s + ( b2a0 − b0 ) b2s 2 + b1s + b0
s 2 + a1s + a0 s 2 + a1s + a0
Sensitivity Analysis
-1
– E.g. calculate variations in
-1.5
the passband ripple as a
-2 function of the percent error
-2.5 in R2
-3
5 6
• This is almost impossible or at
10 10
Frequency [Hz] least impractical to do in
practice
R6 1 R8 1
ωZ = ∝ ωP = ∝ QP = ωP R1C1 ∝ 1
R3R5R7C1C2 RC R2R3R7C1C2 RC
R6 R8
ωZ = ωP = QP = ωP R1C1
R3R5R7C1C2 R2R3R7C1C2
4
+4%
2 -4%
0
Magnitude [dB]
-2
-4
-6
-8
-10 4 5 6
10 10 10
Frequency [Hz]
0
Magnitude [dB]
-2
Worse.
-4
-6
+4%
-8
-4%
-10 4 5 6
10 10 10
Frequency [Hz]
0
Magnitude [dB]
-2 Bad !
-4
-6
+4%
-8
-4%
-10 4 5 6
10 10 10
Frequency [Hz]
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
x
x
x In Out
x
x
x
x
x
[U. Moon]
x
x
x
x
x
x
Sensitivity = 0 (!)
Passband gain
L, C
i 4 = v outY4 = i3
v 2 = i3Z3 + v out
i 2 = v 2Y2
i1 = i 2 + i 3
v in = i1Z1 + v 2
= (v 2Y2 + v outY4 ) Z1 + v 2
LC Ladder Synthesis
• Filter tables
– A. Zwerev, Handbook of filter synthesis, Wiley, 1967
– R. Saal, Handbook of filter synthesis, AEG-Telefunken, 1979
– A. B. Williams and F. J. Taylor, Electronic filter design, 3rd edition,
McGraw-Hill, 1995
• CAD tools
– http://www.circuitsage.com/filter.html
• Comprehensive list of available tools
– http://tonnesoftware.com/elsie.html
• Free version of Elsie supports ladder synthesis up to 7th order
– http://www.nuhertz.com/download.html
• FilterFree – up to 3rd order
• FilterSolutions – $$$
– Agilent ADS
• Denormalization
R
Li ,den = Li
ω −3dB
1
Ci ,den = Ci
ω −3dB ⋅ R
• R is the desired
value of the source
and termination
resistor
[Schaumann]
ω
θ = sin−1 p
ωs
L2 L4
C2 C4
C1 C3 C5
-10 -6
-6.5
Magnitude [dB]
Magnitude [dB]
-20
-7
-30 -7.5
-8
-40
-8.5
-50 4 5 6 7 4 5
10 10 10 10 10 10
Frequency [Hz] Frequency [Hz]
-5
+20% +20%
-10 -20% -20%
-5.5
Magnitude [dB]
Magnitude [dB]
-20 -6
-6.5
-30
-7
-40
-7.5
-50 4 5 6 7 4 5 6
10 10 10 10 10 10 10
Frequency [Hz] Frequency [Hz]
I2 I4
+ + +
Vin V1 V3 V5 Vout
- - -
I1 1 Vin − V1
V1 = = − I2 + [V3 − V1 ] sC2
sC1 sC1 R
C V − V1 1 C
V1 1 + 2 = in − I2 + V3 2
C1 R sC1 C1
1 Vin V1 V2
V1 = − − + + − V3sC2
s (C1 + C2 ) R R Rx 2
1 Vin V1 V2
V1 = − − + + − V3sC2
s (C1 + C2 ) R R R x 2
Implementation of L2 Integrator
C2 C4
1
I2 = ( V1 − V3 )
sL 2
I2 I4
+ + +
Vin Vout R 2x2 V1 V
V1
-
V3
-
V5
-
V2 = I2R x2 = − − + 3
sL 2 R x2 R x2
1 V2 V
V3 = − − + 4 − V1sC2 − V5sC4
s (C2 + C3 + C4 ) R x 4 R x 4
Rx24 V3 V
V4 = I4R x 4 = − − + 5
sL4 Rx 4 Rx 4
1 V5 V4
Vout = V5 = − − − V3sC4
s (C4 + C5 ) R R x 4
Complete Realization
-1
Symbol
V1p V2p
Realization in a differential circuit
V1m V2m
Simulation Setup
• AC analysis with 1V
applied at the input
• Amplifiers are ideal,
with an open loop gain
of 106
• Set Rx2=Rx4=R=10kΩ
– Somewhat arbitrary
at this point
1.6
1.4
1.2 V4
Magnitude
|V1|max = 0.8505 V
1
V2
|V2|max = 1.5585 V
0.8
|V3|max = 0.9039 V
0.6 |V4|max = 1.7072 V
0.4 |Vout|max = 0.5000 V
0.2 V1 V3
Vout
0 5 6
10 10
Frequency [Hz]
0.8
Magnitude
0.6
0.4
0.2
0 5 6
10 10
Frequency [Hz]
ci2 ci4
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
- a0
p
Rnoise Ra
-a0 1
1
noiseless ωp = ωu ≅ a0 ⋅ω p
Ca RaCa
a0 aω ω
a( s ) = − ≅− 0 p ≅− u for ω >> ω p
s s s
1+
ωp
1 ω Vout (s ) T (s )
A∞ = − =− 0 A(s ) = = A∞
sRC s Vin (s ) 1 + T (s )
s
R a0 ω0 ωu
T (s ) = −a(s ) = ωp ≅
1 s s a0
R+ 1+ 1+
sC ωp ω0
100 A
Magnitude [dB]
∞
50 T(s)
0 A(s)
-50
-100 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
A
150
Phase [deg]
∞
“phase lag” A(s)
100
50
0 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
a0=10,000, ωu→∞
100 A
Magnitude [dB]
∞
50 T(s)
0 A(s)
-50
-100 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
A
150
Phase [deg]
∞
“phase lead” A(s)
100
50
0 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
100 A
Magnitude [dB]
∞
50 T(s)
0 A(s)
-50
-100 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
A
150
Phase [deg]
∞
A(s)
100
50
0 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω /ω 0
ω 1 1
Aactual (s ) = − o
s ω s
A ideal
1+ 0 1+
ωu ω o + ωu
Magnitude error Undesired pole
(Magnitude and phase error)
• The first error term modifies only the magnitude, and effectively
alters the integration time constant (RC = 1/ω0)
L
Ci1 =
Rx2 Ci 2 = C
1 1 1 1
H(s) = − 2
=− 2
ωP = = = ω01 ⋅ ω02
1+ sRC + s LC s s LC RxCi1RxCi2
1+ + 2
ωPQP ωP
ωo 1
Aactual (s ) ≅ −
s 1+ s
ωu
H filter (s ) s = p →∞
ideal
s
H filter s 1 + →∞
ωu s = pactual
and therefore
p pideal = α i ± j β i
pideal = pactual 1 + actual
ωu pactual = α a ± j β a
α + j βa
αi + jβi = ( αa + jβa ) 1 + a
ωu
1 ωPideal
QPideal = − >> 1 ωPideal = αi2 + βi2 ≅ βi
2 αi
1 ωPactual
QPactual = − >> 1 ωPactual = α a2 + βa2 ≅ βa
2 αa
α β2 α
αi = α a 1 + a − a βi = βa 1 + 2 a
ωu ωu ωu
to obtain
βa2
αi ≅ α a − βi ≅ βa
ωu
βa2
α a ≅ αi + β a ≅ βi
ωu
ωPideal ωu
2 ⋅ 30 ⋅ < 2% > 3000 (!)
ωu ωPideal
-50
-100 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω/ω0
A
150
Phase [deg]
∞
A(s)
100
50 Phase = 89.98º
0 -6 -4 -2 0 2 4
10 10 10 10 10 10
ω/ω0
ωo 1 + sRzC
=−
s ω s Rz
1+ o + 1+
ωu ωu R
ωo 1 1 + sRzC
=−
s ω
1+ o Rz
1+ R
1+ s
ωu
ωo
ωu 1 +
ωu
Rz
1+ R
• We can achieve “ideal” operation by letting =RC
ω
z
ωu 1 + o
ωu
1
• Assuming ωu >> ω0, this is accomplished for Rz ≅
ωuC
Auxiliary Amplifiers
Rf
A∞ = −
Rs Rf 1
A(s ) = −
Rs s Rf
ω u Rs 1+ 1 +
T (s ) ≅ ω u Rs
s Rs + Rf
a(s ) = −a0
R sRC
T (s ) = a0 = a0
1 sRC + 1
R+
sC
1 1 1 1 1
Aactual (s ) = − =− = −ω 0
sRC 1 + 1 sRC 1 + 1 + sRC 1 ω
s 1+ + 0
T (s ) a0sRC
a0 a0
1 Q
QPactual ≅ QPideal ≅ QPideal 1 − 2 Pideal
Q a0
1 + 2 Pideal
a0
30
2⋅ < 2% a0 > 3000
a0
Summary
• Wait!
– Can’t we cancel the QP enhancement against the QP
degradation?
Noise
Filter
Signal
Noise
1 2
Psignal v̂ out
SNR = =f 2
Pnoise 2 2
v
∫ ∆outf ⋅ df
f 1
f2 2
1
2
vout = ∫ 4kTR ⋅ df
f
1 + j 2πf ⋅ RC
1
f2
df du
= 4kTR ∫ 2
; ∫ 1 + u 2 = tan
−1
u
f1 1 + ( 2πfRC )
∞ 2
1
,tot = ∫ 4kTR ⋅
2
v out df
0
1 + j 2πf ⋅ RC
∞
df du
= 4kTR ∫ 2
; ∫ 1 + u 2 = tan
−1
u
0 1+ ( 2πfRC )
1
= 4kTR ⋅
4RC
kT
=
C
2 1
ωP =
∞ LC
1
,tot = ∫ 4kTR ⋅
2
vout df
s s2
0 1+ + 2 1 L
ωPQP ωP QP =
R C
Useful Integrals
∞
1 1
,tot = ∫ 4kTR ⋅
2
vout 2
df ωP =
0 s s LC
1+ +
ωPQP ωP2
1 L
QP =
ωPQP R C
= 4kTR
4
1
kT ωPQP =
= RC
C
Christian C. Enz and Eric A. Vittoz, Charge-Based MOS Transistor Modeling: The EKV Model for
Low-Power and RF IC Design, Wiley, 2006 (p. 106)
ଶ
= 4 · ( 2 ) PSD
Δ
ஶ
Christian C. Enz and Eric A. Vittoz, Charge-Based MOS Transistor Modeling: The EKV Model for
Low-Power and RF IC Design, Wiley, 2006 (p. 107)
1 1
= lim · () = lim · ()
ஶ ௦→ஶ ௦→
1 1
ଶ = · −
ஶ
Example: LC Ladder
1
ஶ = 43
Rs
=0
Rt
ଶ = = 9.7௦
ஶ
10k
-16
Rs=∞ -16
Rs=10k
10 10
Noise PSD [V ]
Noise PSD [V ]
2
-17 -17
10 10
-18 -18
10 10
-19 -19
10 10
4 5 6 7 4 5 6 7
10 10 10 10 10 10 10 10
Frequency [Hz] Frequency [Hz]
Rs
Vin - Vout
2
∞
1 1 R
∫ 4kT R + Rs ⋅ 1 + j 2πf ⋅ RC df
2
vout ,res =
0
2
∞
R 1
= ∫ 4kT R 1 + ⋅ df
R 1 + j 2 π f ⋅ RC
0 s
kT R
= 1 + (noise due to resistors only)
C Rs
v n2 = 4kTRnoise ∆f
vx
s
1+
ωu vx Rs 1 ω0
vout = − (v + v n ) = =
s x vout Rs +
1
1+
R
1+
s
1 Rs ωx
+ sC
R
1 1
ω0 = ωx = Rx = R Rs
RC RxC
R ωnQ ω2n R ω ω
2 2
1
2
v out = 4kTRnoise 1 + = kTRnoise 1+ u 0
ω2x
,amp
R
x 4 2
z x
R 1 R 1
ω R +
u x ω0
ω R
2
1+ u x Note: The same result
ω0 R can be obtained by
= kTRnoise ωu ≅ kTRnoise ωu approximating vout/vn as
R ω R
a single pole response
x 1+ u x
R ω R
before carrying out the
0 integral.
kT Rnoise ωu
≅
C R ω0
2 2 2 kT R Rnoise ωu
vout ,tot = vout ,res + v out ,amp ≅ 1+ +
C Rs R ω0
0
ω u=1000 ω 0
-50
ω u=10ω 0
-100 -5 0 5
10 10 10
ω /ω 0
Phase [deg]
150
ω u=1000 ω 0
100
ω u=10ω 0
50
0 -5 0 5
10 10 10
ω /ω 0
PSD/(4kTRnoise*(R/Rx) )
2
0
10
ω u=100ω 0
ω u=10ω 0
-4 -2 0 2 4 6
10 10 10 10 10 10
ω /ω 0
10
ω u=100ω 0
Integral/(kT/C)
8
ω u=10ω 0
6
4
2
-4 -2 0 2 4 6
10 10 10 10 10 10
ω /ω 0
1
i n 2 = 4kT
1
∆f H( s ) =
Rx s s2
1+ + 2
ωPQP ωP
1
ωP =
LC
1 L
2
i n1 = 4kT
R
+ 2 ∆f
QP =
R
x R
x
R C
QP Q
1+ s s P
vout Rx v out ωP ωP
= 2 =R 2
≅R
i n1 s s in2 s s s s2
1+ + 2 1+ + 2 1+ + 2
ωPQP ωP ωPQP ωP ωPQP ωP
2 2
s
∞
2 R Rx ∞
QP2 R 2
∫ 4kT Rx + R 2 ⋅
2
= ωP
vout ,1 2
df 2
vout ,2 = ∫ 4kT ⋅ df
0 x 1+ s
+
s
0
Rx s s2
1+ + 2
ωPQP ωP2 ωPQP ωP
Optimum
1 Rx
N = (1 + 2k ) + QP2 k=
k R
dN 1
= 2 − QP2 2 = 0
dk k
QP
kopt =
2
kT 2 kT
2
vout 2
= vout 2
,1 + vout ,1 = 1+
C 2
+ 2 QP =
C
1 + 2 2QP ( )
• In a properly designed filter (and for large QP,) the noise will be
roughly proportional to QP
• For a poorly designed filter, the noise can be proportional to QP2
[B. Boser]
QP=7
QP=30
R1 = R4 = 42kΩ 10kΩ
QP = 30 7
Phase [deg]
900 1100
Frequency [Hz]
10 1k 100M 10G
Frequency [Hz]
Noisy Amplifiers
2.8µV
[V/rt-Hz], [Vrms]
10 1k 100M 10G
Frequency [Hz]
Without RC
Mag [dB]
10 1k 100M 10G
Frequency [Hz]
[V/rt-Hz], [Vrms]
10 1k 100M 10G
Frequency [Hz]
Summary
MOSFET-C Integrator
C
• MOSFET in triode used to replace
R resistor
Vin - Vout
• Advantages
– Continuous tuning mechanism
C for integrator time constant
VC
– Potentially cheaper fabrication
process
Vin - Vout
• Disadvantages
– Large parasitics, distributed RC
W VDS
ID = µCox VGS − Vt − 2 VDS along channel
L
– Bias point sensitivity
1 dID W
= = µCox (VGS − Vt − VDS ) – Weakly nonlinear
RMOS dVDS L
Gm-OTA-C Integrator
C.A. Laber, P.R. Gray, "A 20-MHz sixth-order BiCMOS parasitic-insensitive continuous-
time filter and second-order equalizer optimized for disk-drive read channels ," IEEE J.
Solid-State Circuits, vol. 28, no. 4, pp.462-470, Apr. 1993.
Example (2)
• Advantages
– No OTA, no op-amp!
• Lower power
• Less phase shift!
– Continuous tuning mechanism
for integrator time constant
For Ro → ∞ • Via IBIAS of Gm cell
Gm • Disadvantages
H (s ) ≅
sC – Nonlinearity of Gm cell
– Sensitive to finite output
resistance (Ro)
– Sensitive to parasitics
Original Paper
Gm-C Biquad
_
_
_
+
+
+
+
Gm Gm Gm Gm Gm Gm
_
_
_
+
+
+
+
_
_
+
+
+
Vin Gm Gm Gm Gm Gm Vout
_
_
+
+
C2 C4
_ _ _ _ _
+ + + + +
V1 I2 V3 I4 V5
C1 L2 C3 L4 C5
Choosing an Implementation
Discrete active
RC filters
Switched-capacitor filters
• Active RC filters
– Superior linearity
– Dynamic range ~60-90 dB
– Usable signal BW typically up to few tens of MHz
• Gm-C
– Linearity limited
• Usually have to use degeneration, etc.
– Dynamic range ~40-70 dB
– Distortion performance limited to ~60 dB level
– Usable signal BW up to a few hundred MHz
• Both implementations typically require some form of tuning
Transconductor Implementation
W
+ −≅
(V GS −VTH )V in − 21V 2in
1
io = io − io = µc OX
L
R MOSFET
Vin Io + Io− Vin
+ −
2 2
Second-order nonlinear term is cancelled by a
duplicate MOSFET with small VGS control voltage:
VC
W
i o = µc OX
L
(V GS1−VTH )V in − 21V in2
W
Io + Io−
− µc OX
L
(V GS 2 −VTH )V in − 21V in2
Vin Vin
+ VC2 −
2 2 W
= µc OX
L
((V GS1−V GS 2)V in )
VC1 “ VGS1> VGS2 ” because VC1>VC2
Z. Czarnul, Y. Tsividis, “MOS tunable transconductor,” Electronics Letters, June 19, 1986, pp. 721-722.
Wu & Schaumann Gm
Io+ Io−
Vin 1 1 Vin
+ X X 1X −
2 4 4 2
Vin
Io+ Io−
Vin
1X
1
X
1
1X
Vin Bipolar implementation by Schmook (1975)
+ 4 X −
2 4 2 and later modified/improved version by
DeVeirman (1992).
S. D’Amico et al., “A 4.1mW 79dB-DR 4th order Source-Follower-Based Continuous-Time Filter for
WLAN Receivers”, IEEE J. Solid-State Circuits, Dec. 2006.
• Various objectives
– Tune out circuit nonidealities such as phase lead/lag
– Absorb global process variations
• Gm, R, C
– Vary filter bandwidth
– Vary other filter parameters
• E.g. “boost” in disk drive filters
Q-Tuning
• Lock R (1/Gm) or
frequency (Gm/C,
1/RC) in a replica to
a reference
Built using
same RC or
• Slave replica's
Gm–C cell control voltage into
used in main main filter circuit
filter
C1
C2
R1
ref Vc _ R2 oscillator
Dummy Filter _
(master) +
+
−1 −1
s R1C1 s R2C 2 G1G 2
TF ( s ) = =
1 1 1 2
s C1C 2 + s C 2G 4 + G 2G3
1+ +
s R 4C1 s R3C1 s R 2C 2 0
osc. phase C.P.
(master) Vc Without R4 D ( s ) = s C1 C 2 + G 2 G3 ≡ 0
2
freq
detector
G 2G3
poles at ± j Banu (1985)
fREF C1C 2
1
∠LP( s )| = ∠ = −90
s = j ωo ωo2 2
− ωo2 + j + ωo
Q
V. Gopinathan et al., “Design Considerations for High-Frequency Continuous-Time Filters and Implementation
of an Anti-aliasing Filter for Digital Video,” IEEE JSSC, Vol. 25, No. 6, Dec. 1990.
C3 Possible settings/frequencies:
C2 C1, C2, C3, C1+C2, C1+C3,
C2+C3, and C1+C2+C3
C1
_
+
Example (1)
To main circuit
G. Bollati et al., “An Eighth-Order CMOS Low-Pass Filter with 30–120 MHz Tuning
Range and Programmable Boost,” IEEE J. Solid-State Circuits, July 2001.
Boris Murmann
Stanford University
[email protected]
Copyright © 2014 by Boris Murmann
Outline
• History
• Basic concepts
• SC integrators
• SC biquads
• Nonidealities
History: 1968
History: 1977
V1 − V2
i=
R
∆q = C (V1 − V2 )
∆q ∆q
iavg = = = fs ⋅ C (V1 − V2 )
∆t Ts
1
Ravg = (Note: current flows in “bursts”)
fs ⋅ C
SC integrator
SC gain stage
1
Ravg =
fs ⋅ C
1
Ravg =
fs ⋅ C
φ1 C φ2
V1 + - V2
vrc
C0
1p
• SC output is a “staircase
approximation” of the RC
filtered signal
RC
– Slightly delayed
SC
Waveform Details
p2 p1 p2 p1 p2
Vin
p1 p2 p1 p2 p1
Frequency Response ?
• Looking at the transient waveforms is fun, but what can we say
about the frequency response of the SC circuit?
• Looks like a tough question since the output signal looks
“complicated”
– Not just a sine wave with shifted phase and altered
magnitude, as in the RC case
– Instead we have a staircase waveform with “rounded” edges
(due to finite switch resistance)
• Part of the problem is that SC circuits are time variant
– The configuration is periodically switched between two
states
• Time variant circuits, in principle, introduce new frequencies
– Think about spectral components caused by the voltage
“steps” at the output
t1 t2
t0 t2
• The sum of the charges must be equal to the charges that were
previously on C1 and C2, before the φ2 switch turned on, i.e.
QC1( t2 ) + QC 2 ( t 2 ) = QC1( t1 ) + QC 2 ( t0 )
C1 T C2
Vout (t 2 ) = Vin t 2 − s + V (t − T )
C1 + C2 2 C1 + C2 out 2 s
• Laplace Transform
V(t ) → V( s )
V(t − ∆t ) → V( s )e − s ∆t
Ts
C1 −s C2
Vout ( s ) = Vin ( s ) e 2 + Vout ( s ) e − sTs
C1 + C2 C1 + C2
Ts
C2 C1 −s
Vout ( s ) 1 − e −sTs = Vin ( s ) e 2
C1 + C2 C1 + C2
T
−s s
Vout ( s ) e 2
H( s ) = =
Vin ( s ) 1 + C2 1 − e − sTs
C1
( )
• Let’s plot this frequency response and compare to the simple
RC filter
Frequency Response
Magnitude [dB]
0
-10 SC
-20 RC
-30 3 4 5 6 7
10 10 10 10 10
f [Hz] Close only for f << fs
200
Phase [deg]
-200 3 4 5 6 7
10 10 10 10 10
f [Hz]
Ts f
1− jω 1− j π
Vout ( j ω ) 2 fs
≅ =
Vin ( j ω ) 1 + C2 j ωT 1+ jω
1
C
C1 s
fs ⋅ C1 2
1 23
" Ravg "
-20 SC
RC
-40 3 4 5 6 7
10 10 10 10 10
f [Hz] Better!
200
Phase [deg]
-200 3 4 5 6 7
10 10 10 10 10
f [Hz]
Magnitude [dB] 0
-20
SC
RC
-40
2 4 6 8 10 The transfer
f [Hz] x 10
6
function is periodic
200 with period fs
Phase [deg]
Why?
0
-200
0 2 4 6 8 10
f [Hz] x 10
6
Aliasing (1)
1
fs = = 1000kHz
Amplitude
Ts
fin = 101kHz
Time
f
v in ( t ) = cos ( 2π ⋅ fin ⋅ t ) v in ( n ) = cos 2π ⋅ in ⋅ n
fs
n 101
t → n ⋅ Ts = = cos 2π ⋅ ⋅n
fs 1000
1
fs = = 1000kHz
Amplitude
Ts
fin = 899kHz
Time
Aliasing (3)
1
fs = = 1000kHz
Amplitude
Ts
fin = 1101kHz
Time
• Bottom line
– The frequencies fin and N·fs ± fin (N integer), are
indistinguishable when the signal is represented using
discrete times samples at a rate of fs
these times
∞
Vdirac ( t ) = Vin ( t ) ⋅ ∑ δ( t − nTs )
n =−∞
1 ∞ n
Vdirac ( f ) = ∑ Vin f − T
Ts n =−∞ s
Spectrum
Amplitude Envelope
0.9
0.8
0.7
Magnitude [dB]
0.6
Tp sin( πfTp )
0.5
Ts πfTp
0.4
0.3
0.2
0.1
0
1 2 3 4 5 6 7 8 9 10
f [Hz] x 10
6
0
0
-10
-5
Magnitude [dB]
Magnitude [dB]
-20
-10 -30
-40
-15
-50
-20
2 4 6 8 10 -60
2 4 6 8 10
f [Hz] x 10
6
f [Hz] x 10
6
vrc
C0
1p
R2
R3
clock_gen Is1
s1 p1! s4 p2!
1
Is2
vi vi_samp
Pin Pout
ideal sampler
V0 Nin Nout
vrc
vsc
vrc
Droop
vsc
Transient Waveforms
vsc
vsc_samp
vsc_samp
vi_samp
vsc_samp/vi_samp
• All signals in this processing chain are continuous in time (as all
physical signals)
• However, the core of the filter ( “sampled data filter” block) can typically
be modeled as a “discrete time” system z-transform
– The core takes voltage samples at the input and produces samples
at the output
– The internal transients that generate these samples are irrelevant,
as long as they have settled at the time the sample is taken
time
Continuous Time Signal
T/H Signal
("Sampled Data Signal")
Clock
T
−s s
Vout ( s ) e 2
H( s ) = = z = esTs
Vin ( s ) 1 + C2 1 − e −sTs
C1
( )
1
−
V (z) z 2
H( z ) = out =
Vin ( z ) 1 + C2 1 − z −1
C1
( )
φ2
φ1
t/Ts Qs QI
n-1 Cs·Vi(n-1) CI·Vo(n-1)=CI·Vo(n-3/2)
n-1/2 0 CI·Vo(n-1/2) = CI·Vo(n-3/2) + Cs·Vi(n-1) Vo2
n Cs·Vi(n) CI·Vo(n) = CI·Vo(n-1) + Cs·Vi(n-1) Vo1
n+1/2 & &
1 3
CIVo 2 n − = CIVo 2 n − + CsVi ( n − 1)
2 2
1 3
− −
CIVo 2 ( z )z 2 =z 2 C V ( z ) + z −1C V ( z )
I o2 s i
1
−
V ( z ) Cs z 2 “LDI Integrator”
H2 ( z ) = o 2 = (Lossless Digital Integrator)
Vi ( z ) CI 1 − z −1
−1
C z 2 Cs 1
H2 ( ω ) = H2 ( z ) z = e j ωTs = s =
CI 1 − z −1 CI 1
−
1
z = e j ωTs z 2 −z 2
z = e j ωTs = cos ( ω Ts ) + j sin ( ω Ts )
Cs 1
=
CI ωT ω Ts ω Ts ω Ts
cos s + j sin 2 − cos 2 + j sin 2
2
Cs 1 ω Ts C 1 ω Ts f
= ≅ s for = π << 1
CI j ω Ts ω T CI j ω Ts 2 fs
14 24 3 2 sin s
Ideal
14 2 3
4244
Magnitude error
Cs z −1
H1( ω ) = H1( z ) z = e j ωTs =
CI 1 − z −1
z = e j ω Ts
1
− ω Ts
C z 2 Cs 1 ωTs −j
= s = e 2
CI 1 1 CI j ωTs ωT 1
424
3
z 2 −z
−
2 14 24 3 2 sin s Phase error
z = e j ωTs Ideal
14 2 3
4244
Magnitude error
Inverting Integrator
φ2
φ1
1 Reset Cs
−
2 (output held
Cs z at previous value)
H2 ( z ) = − “LDI”
CI 1 − z −1
phi1 phi2
C1 Vo1
phi1c
Vi1
phi2c
phi2 phi1 Vo2
phi2
phi1 phi1
C2
Vi2
phi2 phi2
C3
Vi3
C1 z −1 C 1 C
Vo1 ( z ) = 1
Vi 1 ( z ) − 2 1
Vi 2 ( z ) − 3 Vi 3 ( z )
Ci 1 − z − Ci 1 − z − Ci
−1 −1
C z 2 C2 z 2 C
Vo 2 ( z ) = 1 1
Vi1 ( z ) − 1
Vi 2 ( z ) − 3 Vi 3 ( z )
Ci 1 − z − Ci 1 − z − Ci
RLC Prototype
1
−
1 z 2
→
s 1 − z −1
• Key objective
– Avoid integrator phase errors
• Conceptually two possible solutions
– Try to use only LDI integrators
– Combine delaying (DDI) and non-delaying integrator to
achieve LDI behavior
p1! p1!
Cf
p1! p1!
p2!
p2!
Cr1
p2!
p2!
clock_gen
Iclk
p1!
p2!
Ci1
Ci2
vx2
vo2
A1 A2
p1! p1! p1! p2! Is1
I31
vx1 gain_ideal vo1 gain_ideal vo_samp
Pin Pout
G:-1e+06 G:-1e+06
Cs1
Cs2
p2!
p2!
p2!
p1!
ideal sampler
Nin Nout
1 z-1
Is2
vi vi_samp
Pin Pout
V0
ideal sampler
Nin Nout
Component Values
Target: ω P := 2 ⋅π ⋅ 10kHz QP := 5
1 1
LC component values: R := = 318.31 ⋅kΩ L := = 25.33 H
ω P ⋅ QP ⋅ C 2
ω P ⋅C
SC component values:
1
Ci2 := C = 10 ⋅ pF Cs1 := = 1 ⋅ pF
f s ⋅ Rx
L R
Ci1 := = 25.33 ⋅ pF Cr1 := = 0.318 ⋅ pF
2 2
Rx f s ⋅ Rx
1 1
Cf := = 1 ⋅pF Cs2 := = 1 ⋅ pF
f s ⋅ Rx f s ⋅ Rx
CT – SC Integrator Comparison
fs f
fRC = sin π SC
π fs
fs f
1 fRC = sin π SC
π fs
0.9
0.8
“midpoint integration
• A much more accurate way to
integrate is using a trapezoidal
(“bilinear”) integration rule
v o ( nTs ) = v o ( nTs − Ts )
Signal Amplitude
Ts
+ v i ( nTs ) + v i ( nTs − Ts )
2
Ts
v o ( nTs ) = v o ( nTs − Ts ) + v i ( nTs ) + v i ( nTs − Ts )
2
1 − z −1 Vo ( z ) = Ts 1 + z −1 Vi ( z )
2
Vo ( z ) Ts 1 + z −1
HBL ( z ) = =
Vi ( z ) 2 1 − z −1
• Bilinear transform
2 1 − z −1
s→
Ts 1 + z −1
1
= HBL ( z )
0.5 s s = 2πjfRC z = e2 πjfBLTs
0.4 fs f
⇒ fRC = tan π BL
π fs
0.3
f BL/f s
Alternative
• Let Matlab do all of thisK
• Design filter in z-domain, e.g.
“Low-Q” Biquad
fs f 1MHz 10kHz
fPRLC = tan π P = tan π = 10.002MHz
π fs π 1MHz
1 2 1 − z −1
H( s ) = s→
s s2 Ts 1 + z −1
1+ + 2
ωPRLCQP ωPRLC
• Compute H(z)
• Implement using Biquad
• Simulate, plot frequency responseK
-20
Magnitude [dB]
-40
-60
Notch at fs/2
-80
-100 2 3 4 5 6
10 10 10 10 10
f [Hz]
-20
Magnitude [dB]
-40
-60
-80
-100
0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
f [Hz] x 10
6
n-1 n n+1
2
a0
1
t/Ts Qs QI
n-1/2 Cs·Vi(n-1/2) CI·Vo2(n-1)·[1+1/a0]
n Cs·Vo2(n)/a0 CI·Vo2(n)·[1+1/a0]
= CI·Vo2(n-1)·[1+1/a0] + Cs·Vi(n-1/2) - Cs·Vo2(n)/a0
1
−
Vo 2 ( z ) Cs z 2 C 1
= ≅ s
Vi ( z ) CI 1 1 Cs CI 1 1 Cs
1 + 1 − z +
−1
1 + sTs +
a0 a0 CI a0 a0 CI
Cs 1
≅
CITs 1 1 Cs
1 + s +
a0 a0 CITs
φ1
φ2
௨௧ ିଵ/ଶ
=
=
() 1 + ଶ 1 − ିଵ
ଵ
,ଵ
ଶ
2 ௨௧,ଵ
ଶ ,ଵ
ଶ
⋅ ఠ்ೞ ଶ
= =
Δ ௦ ଵ Δ Δ
,ଵ
ଶ
= ௨௧,ଵ
ଶ
ଵ
=?
Noiseless
H(z)
• The output noise PSD follows from passing the input noise
through the (known) transfer function (magnitude squared)
• What is the variance of the output samples?
– Can be calculated by integrating output PSD from 0Kfs/2
φ1 Noise Integral
ଵ/ଶ
ଶ
1 1 1
=
1+ 1− 2 1 + 2
Useful integral: ିଶగ
ଶ
ೞ /ଶ గ
2 2 ௦
ି
1
௨௧,ଵ
ೞ
ଶ
௦ ଵ 2 1 + 2 ଶ
= ⋅ = ⋅
௦ ଵ ଶ ଶగ
ଵ
ି
ଵ
1+ 1− ೞ
1 1 ଶ
௨௧,ଵ
ଶ
ଵ 1 + 2 ଶ 2 ଶ + ଵ
= = Slightly less than ½ kT/C2
ଵ ଶ 2
4kTR∆f 4kTR∆f
R R Vout
ଵ ଶ
Vout
ଶ
=
C1 C2 C1 C2
ଶ
ଵ + ଶ
Charge Transfer
ଵ
௨௧ =
Vin Vout
ଵ + ଶ
ଵ ଶ
C1 C1 C2
=
ଶ
ଵ + ଶ
ଵ + ଶ
= ଶ
ଵ ଶ
ଵ + ଶ ଵ ଶ ଵ + ଶ ଵ + ଶ
ଶ ଶ
,ଶ
ଶ
= ଶ
= =
ଶ
ଵ ଶ ଵ + ଶ ଵ ଶ ଵ ଶ
ଵ + ଶ 1 1 ଶ + ଵ
௨௧,ଶ
ଶ
ଵ ଶ 1 + 2 ଶ 2 ଶ + ଵ
= = Slightly more than ½ kT/C2
ଵ ଶ 2
1 ଶ 1 ଵ + ଶ
௨௧,ଵ
ଶ
+ ௨௧,ଶ
ଶ
2 ଶ + ଵ 2 ଶ + ଵ
= + =
ଶ
ଶ 2 ଶ 2
Simulation Circuit
300K
300K
R1
R2
C1 = 68.83 fF
C2 = 1 pF
fs = 1 MHz
f-3dB = 10 kHz
φ2 noise
φ1 noise
300K
R1
R2
ideal
sres p1!
noiseless
• Expecting to see
– White noise spectrum
– Total integrated noise equal to
2 2
kT C1 C1C2 1
v 2
out = + kT = 21.7µVrms
C1 C1 + C2 C1 + C2 C2
1442443 144 42444 3
φ1 noise referred to output φ 2 noise
Good match!
Noise in an SC Integrator
q 2 kTC
i 22 = =
Ts2 Ts2
2 2 2 2 i2 2 1
i = i + i = 2kTCf
1 2 s = 2kTCfs2 = 4kTCfs = 4kT
∆f fs Ravg
Same noise as a resistor!
“Equivalent”
Good luck!
2 kT kT 1 kT 1
v in,tot = + + αγ x = gm ⋅ 2Ron
Cs Cs 1 + 1 Cs 1 + x
{
φ1 1444 x424444 3 [Schreier, TCAS1, 2005]
φ2
ଶ
ଶ ହ 1 1
௨௧ ଵ ଶ
ଶଶ ଵ ଶ ହ ହ ଶ ௦
References (1)
• Floorplanning
– blocks, power/ground
– metal density rule
• Passives: resistors, capacitors,
• Transistors
Tapeout
Schematics Layout Mask Silicon
Tapeout
• Layout database is
stored in gds format
• Transfer to foundry
was done on
magnetic tape
(Tapeout)
• Tape is not used
today.
Design Rules
• Design rules defines geometry in x-y dimension
– Width, spacing, overlap
• z dimension is pre-determined by the
foundry/process
• Understand design rules
– Design rules: must
– Recommended rules: want
– Guidelines: nice to have
• Following design rules ensures functionality and
yield
Metal Routing
• Width of metal:
– Electro-migration: ~1mA/um
– IR drop: ~50-100mohms/square/layer
– Wide metal rule < ~10um (process dependent) but
use multiple layers or parallel lines
CMP Effect
• Chemical-Mechanical Polishing (CMP) process
planarizes wafer surface after each metal layer;
Otherwise, unevenness of one layer that may
affect the next layer
• Relative hardness of metal and oxide affects the
polishing
• Solution:
– Metal coverage rule: Keep relatively uniform density
of metal/oxide over ~100um diameter
– Metal density rule to avoid large area without metal
dummy metal fill
– Limit the width of metal to avoid large area with only
metal
metal slot rules
D.Su & B. Murmann EE315A - Chapter 10 12
Dummy Metal Fill
Wide Metal
• Metal width can not be too wide
– Copper is softer than oxide.
– CMP can over polish the copper, reducing its
thickness (increasing resistance) and making
the overall surface less planar (more difficult
for higher layer metal)
• Add slots to metal width to increase the
density of oxide
– Or, avoid using very wide metal, use several
narrower metal lines in parallel
D.Su & B. Murmann EE315A - Chapter 10 14
Matching
• A major advantage of VLSI design is device
matching:
– Fully differential circuits CMRR, offset
– Current mirrors
– Ratioed devices: capacitors, resistors, transistors
• Random mismatch:
– Process: geometry, implant dose, =
• Systematic:
– Mask gradient
– Thermal gradient
Systematic
Random
σ
−3σ −2σ −σ σ 2σ 3σ
L
R intrinsic = # of Squares × R
W
D.Su & B. Murmann EE315A - Chapter 10 17
Poly Resistor 1
Metal 1
L contact
W Poly
Salicide Block
• Types (consult design/electric rules)
– p or n doped
– salicided or non-salicided
– Recommended width > minimum poly width
– Choice: R, voltage coefficient, matching
Metal 1
L contact
W Poly
Salicide Block
Resistor Matching
• Systematic Mismatch
– Use identical unit elements
– Keep same orientation, environment
• Use dummy resistors
• Minimize metal routing over resistors (keep all metal routing
identical) to reduce noise coupling
– Watch out for mask gradient, temperature gradient,
pressure gradient
• Keep devices in close proximity
• Use interdigitated layout
• Random Mismatch
– Keep W and L large to reduce random mismatch
– Reduce the contribution of Rend
Dummy
Dummy
RA RB RA RA RB RA
Top View
• Interdigitated: ABAABA
• Remove linear gradient in temperature, mask CD,
pressure
D.Su & B. Murmann EE315A - Chapter 10 21
Capacitor
• Metal sandwich capacitor
– Small fF/um^2
• MiM: Metal-insulator-Metal (process option)
– 1-2 fF/um^2
– Best matching
• Interdigitated metal capacitor
– Standard process
– Almost as high density as standard MiM
– Matching is not as good as MiM
• MOS capacitors
– High density
– Poor voltage coefficient
D.Su & B. Murmann EE315A - Chapter 10 22
Intrinsic Capacitor
Top
Bottom
Cross Section
Sandwich Capacitor
M6
Top CINT
Bottom Top
M5
M4
CBOT CTOP
M3
M2
Bottom Capacitor Model
Cross Section
Capacitor Matching
• Systematic Mismatch
– Use identical unit elements in an array
– Keep same environment
• Use dummy capacitors
– Watch out for mask, temperature, pressure gradient
• Keep devices in close proximity
• Use common centroid layout
– Keep routing parasitics small and matched
• Random Mismatch
– Use large area to reduce random mismatch
C1 C2
C2 C1
Top View
D.Su & B. Murmann EE315A - Chapter 10 27
MOS Transistors
• Layout
• Random Mismatch
– Process tolerance Large W and L
– Vt, beta keep Vgs-Vt large
• Systematic Mismatch
– Gradient: Common centroid layout
– Implant angle: Step symmetry vs mirror
symmetry
– Neighbor effect: add dummies
Metal 1
drain source
gate
n+ n+
STI p STI
drain source
contact
Metal 1
W
N-diff
Poly
L
D.Su & B. Murmann EE315A - Chapter 10 30
PMOS Transistor Top View
gate
drain source
contact
Metal 1
W
P-diff
Poly
L Nwell
Gate Resistance
• Gate resistance:
– Keep W short
– Connect on one end: Rg = 1/3 x (W/L) x R
– Connect on both ends: Rg = 1/12 x (W/L) x R
Rg
Ref: Razavi et al, “Impact of distributed gate resistance on the performance of MOS devices,”
IEEE Trans circuits & systems I, Nov 1994.
4σ ∆2Vt
σ ∆2I D / I D = + σ ∆2β / β
(VGS − VT ) 2
Ref: Pelgrom et al, “Matching Properties of MOS Transistors,” JSSC, Oct. 1989.
D.Su & B. Murmann EE315A - Chapter 10 33
Random
σ
−3σ −2σ −σ σ 2σ 3σ
AVT
σ ∆Vt ≈
W ×L AVT = 3 – 10 mV µm
Ignoring distance effect Process Dependent
Ref: Pelgrom et al, “Matching Properties of MOS Transistors,” JSSC, Oct. 1989.
D.Su & B. Murmann EE315A - Chapter 10 34
Example: Threshold Mismatch
V1 v2
50 / 1 50 / 1
If AVT = 5mVµm
AVT 5mVµm
σ ∆ (V 1−V 2 ) ≈ = = 0.71mV
W ×L 50 µm × 1µm
Ignoring distance effect
Ref: Pelgrom et al, “Matching Properties of MOS Transistors,” JSSC, Oct. 1989.
D.Su & B. Murmann EE315A - Chapter 10 35
β Mismatch
Aβ
σ∆ ∆β / β ≈
W ×L
Ignoring distance effect
Aβ ≈ 0.5 - 3 %
90nm data
[Chang,
AVT~tox Trans.
Electron
Devices,
7/2005]
gm 2
σ ∆2I ≅ σ ∆Vt + σ ∆2β
I1 I1 β
Gradient Cancellation
• Gradient: Thermal, Mask, Pressure
• Linear gradient is easy to cancel
– Common centroid layout
• Other techniques exist for higher order
gradient cancellation
– Ref: G. Van der Plas, et al, JSSC, Dec 1999
n+ n+
STI p STI
Step Symmetry
S D S D
Mirror Symmetry
Not preferred
S D D S
M1 M2
S D D S
S D D S
M2 M1
D D
M1 M2
S S
D D
M2 M1
S S
Dummy Dummy
SS SS
D1 D2 M1 M2
D1 D2
M1 M2 M1 M2
SS SS
SS M2 M1
D2 D1
M2 M1
SS SS
Dummy Dummy
Neighbor Effects
• Keep the “neighborhood” of matched
transistors identical
• Add dummy transistors for the “edged”
devices
• Watch out for z-direction as well
– Metal layers must also match
– Avoid Metal-1 overlap
Antenna Rule
• Implant/deposition process can induce charge on metal
and create voltage stress on gate capacitance
• Q=CV; If C is small, V is large Damage! Large VT shift
– Q depends on area (Copper) and perimeter (Aluminum) of metal
– C depends on the W x L (area) of the transistor gate
Area/Perimeter of Metal
V ∝ Metal - Gate Ratio =
Gate area of transistor
• “Antenna rule” violation when induced voltage V exceeds
safe limits.
• Solution: Add “antenna” (reverse-biased) diodes to shunt
charge
D.Su & B. Murmann EE315A - Chapter 10 48
Length of Diffusion (LOD) Effect
SD
SA SB
Shallow
Trench
Isolation
Edge
Different SB
• P. G. Drennan et al., "Implications of Proximity Effects for Analog Design," Proc. CICC, pp.169-
176, Sep. 2006.
D.Su & B. Murmann EE315A - Chapter 10 52
Minimizing WPE Effect
Matched
Keep SC large
NWELL
Transistor Matching
• Keep transistor area large
• Use same size, shape, orientation, and in
close proximity
• Keep same voltage, current, temperature
• Minimize gradient effect: common centroid
• Keep neighbors (up to >10um) identical in
x, y, and z directions
– Use dummy devices
– Avoid edge of chip
D.Su & B. Murmann EE315A - Chapter 10 54
Part II: Design Related Issues
Noise Interference
Noise
Noise Coupling
Source
Sensitive
Circuits
D.Su & B. Murmann EE315A - Chapter 10 56
Noise Coupling Mechanisms
• Capacitive
– E.g. through on-chip wire crosstalk
• Inductive
– E.g. through bond wires
• Supply coupling
– Modulation of supplies due to IR or Ldi/dt drop
• Substrate coupling
t
Vx
t
High cap:
Noise Coupling slow recovery
small bounce
Capacitor Parasitics
C
Ideal Capacitor
C
n1 n2
n1 n2
Typical Integrated C
C
Circuit Capacitor
Keep wiring as short as possible and do not cross with any other signal
May want to place a “clean” shield between wires and substrate
Layout
Gregorian & Temes, pp. 518, 524
LVDS Outputs
Helps minimize
dynamic currents
due to I/O
Analog Devices Application Note 586: "LVDS Data Outputs for High Speed ADCs"
BAD
BETTER
M. Ingels and M.S.J. Steyaert, "Design strategies and decoupling techniques for reducing the effects
of electrical interference in mixed-mode IC's," IEEE J. Solid-State Circuits, pp.1136-1141, July 1997.
V1 V2=V1
I1 I2
∆I = I1 − I 2 ≅ g mVwire
M1 M2
∆I g m
- Vwire + ≅ Vwire
I1 I1
Rwire
Iref
http://www-tcad.stanford.edu/tcad/pubs/theses/iorga.pdf
D.Su & B. Murmann EE315A - Chapter 10 75
Substrate Types
"Epi Substrate"
D. K. Su, M. J. Loinaz, S. Masui, and B. A. Wooley, "Experimental results and modeling techniques for substrate
noise in mixed-signal integrated circuits," IEEE Journal of Solid-State Circuits, vol. 28, pp. 420 - 430, April 1993.
Observed Waveforms
• Majority of current
flows in low-
resistivity wafer
• Coupling is very
weak function of
distance
Large guard
rings increase
w/o coupling!
w
Epi substrate
D.Su & B. Murmann EE315A - Chapter 10 82
Backside Contact
Noise vs. L4
(Epi)
Breaks p+
channel
stop implant
(Epi)
http://www.commsdesign.com/showArticle.jhtml?articleID=192200561
Deep N-Well
http://www.commsdesign.com/showArticle.jhtml?articleID=192200561
Selected References
• R. Gharpurey and R. G. Meyer, "Modeling and analysis of substrate coupling in
integrated circuits," IEEE Journal of Solid-State Circuits, vol. 31, pp. 344 - 353, March
1996.
• Balsha R. Stanisic, Nishath Verghese, Rob A. Rutenbar, L. Richard Carley, David J.
Allstot,"Addressing substrate coupling in mixed-mode ICs: Simulation and power
distribution synthesis," IEEE Journal of Solid-State Circuits, vol. 29, pp. 226 - 238,
March 1994.
• Kuntal Joardar, "A simple approach to modeling cross-talk in integrated circuits,"
IEEE Journal of Solid-State Circuits, vol. 29, pp. 1212 - 1219, October 1994.
• Nishath Verghese and David J. Allstot, "Computer-aided design considerations for
mixed-signal coupling in RF integrated circuits," IEEE Journal of Solid-State Circuits,
vol. 33, pp. 314 - 323, March 1998.
• A. Samavedam, A. Sadate, K. Mayaram, and T. S. Fiez, "A scalable substrate noise
coupling model for design of mixed-signal ICs," IEEE Journal of Solid-State Circuits,
vol. 35, pp. 895 - 904, June 2000.
• Tallis Blalack et al., “On-Chip RF-Isolation Techniques,”
http://www.commsdesign.com/showArticle.jhtml?articleID=192200561
Minimize RS and RW
using proper guard
rings!
http://www.analog.com/library/analogDialogue/archives/35-05/latchup/
What is ESD?
• Electrostatic discharge
• Example: Charge built up on human body
while walking on carpet...
• Charged objects near or touching IC pins
can discharge through on-chip devices
• Without dedicated protection circuitry, ESD
events are destructive
500V
http://www-tcad.stanford.edu/tcad/pubs/theses/chun.pdf
[http://www.ce-mag.com/archive/03/ARG/dunnihoo.html]
http://www-tcad.stanford.edu/tcad/pubs/theses/chun.pdf