Signal Processing Design of Integrated Analog and...

Preview:

Citation preview

Signal Processing Design of Integrated Analog and Digital

FiltersProf. Paul Hasler

Types of Integrated Filters

Integrated Filters

Digital Filters(Binary valued)

Analog Filters(Continuous or multivalued)

AnalogContinuous-Time

Filters

AnalogSampled-Data

Filters

Where to divide Analog and Digital?

A/DConverter

Realworld(analog)

DSPProcessor

Computer(digital)

Realworld(analog)

DSPProcessor

Computer(digital)ASP

ICA/D

Specialized A/D

Analog-Digital ComparisonLow SNR: Analog / High SNR: Digital

[Sarpeskar 1997]

Analog-Digital Comparison

16bitA/D F

FT

DSP

10 bit A/D10

10 bit A/D10

10 bit A/D10

10 bit A/D10

filter

filter

filter

filter

Input

Input

DSPApplication

Program

DSPApplication

Program

DSP

SNR < 10bits

• What if exponentially spaced FFT?

Practical Interpretation of CostLow SNR: Analog / High SNR: Digital

[Sarpeskar 1997]

Circuit Issues for FiltersProgrammability / Tunability: flexibility and complexity

Available for digital (clocks/ crystals) as well as some analog (e.g. Floating-Gate) filters

Circuit Issues for Filters

High Signal-to-Noise Ratio (resolution):Ratio of the largest signal and the smallest signal

Largest signal: Harmonic Distortion (continuous-time filters), Range limitationsSmallest Signal: Noise

Programmability / Tunability: flexibility and complexityAvailable for digital (clocks/ crystals) as well as

some analog (e.g. Floating-Gate) filters

Circuit Issues for Filters

High Signal-to-Noise Ratio (resolution):Ratio of the largest signal and the smallest signal

Largest signal: Harmonic Distortion (continuous-time filters), Range limitationsSmallest Signal: Noise

Insensitivity to environmental fluctuations: Power-supply:Power Supply Rejection Ratio (PSRR)Temperature, etc.

Programmability / Tunability: flexibility and complexityAvailable for digital (clocks/ crystals) as well as

some analog (e.g. Floating-Gate) filters

Not a problem for digital filters, but can be the cause of severalproblems to other analog circuits

Circuit Issues for Filters

High Signal-to-Noise Ratio (resolution):Ratio of the largest signal and the smallest signal

Largest signal: Harmonic Distortion (continuous-time filters), Range limitationsSmallest Signal: Noise

Insensitivity to environmental fluctuations: Power-supply:Power Supply Rejection Ratio (PSRR)Temperature, etc.

Programmability / Tunability: flexibility and complexityAvailable for digital (clocks/ crystals) as well as

some analog (e.g. Floating-Gate) filters

Not a problem for digital filters, but can be the cause of severalproblems to other analog circuits

Typically, sampling in amplitude / time results in, • the more complexity is needed ( S/H blocks, anti-aliasing filters), • more power / lower-frequency / area

Design of Analog Filters

• Find the transfer function for a given filter

• “Partition” the transfer function, or an approximation, into simple parts that can be implemented.

• Implement the transfer function in a particular circuit technology

Design of Analog Filters

• Find the transfer function for a given filter

• “Partition” the transfer function, or an approximation, into simple parts that can be implemented.

• Implement the transfer function in a particular circuit technology

H(s) or H(z)

H1(s) H2(s) H3(s)

GND

V1[n]Vout[n]

GND

GND

Design of Analog Filters

H(s) or H(z)

H1(s) H2(s) H3(s)

GND

V1[n]Vout[n]

GND

GND

As basic building blocks we have • integrators, delay elements• first-order (low-pass / bandpass)• second order functions

(low-pass / bandpass / highpass)

The “circuit” design question is how to make these functionswhat inputs / outputs / internal variables

should be voltages / currents, etc.

Design of Analog Filters

H(s) or H(z)

H1(s) H2(s) H3(s)

GND

V1[n]Vout[n]

GND

GND

Design style constrainspartition

Design styleconstrainschoice of transfer function

Choosing H(s) or H(z) for a filter

Ideal lowpass filter• we can get other filters from lowpass

|H(s)|

frequency

Gain in db = 20 log10( amplitude )= 10 log10(signal power)

fpb

Passband

H(s) or H(z) for a lowpass filterLowpasslog |H(s)|

log(frequency)fpb fsb

Tpb

Tsb

1

Passband

Tra

nsiti

on R

egio

n

Stopband

H(s) or H(z) for a lowpass filterLowpasslog |H(s)|

log(frequency)fpb fsb

Tpb

Tsb

1Normalized gain

StopBand FrequencyPassBand Frequency

StopBandMinimum

Gain

PassBandMinimum

Gain

Passband

Tra

nsiti

on R

egio

n

Stopband

H(s) or H(z) for a Highpass filterHighpasslog |H(s)|

log(frequency)fpbfsb

Tpb

Tsb

1Normalized gain

StopBand Frequency PassBand Frequency

StopBandMinimum

Gain

PassBandMinimum

Gain

Stopband

Tra

nsiti

on R

egio

n

Passband

H(s) or H(z) for a Highpass filterBandpasslog |H(s)|

log(frequency)fpb1fsb1

Tpb

Tsb

1Normalized gain

Low StopBandFrequency

Low PassBandFrequency

StopBandMinimum

Gain

PassBandMinimum

Gain

fsb1

High StopBandFrequency

fpb2

High PassBandFrequency

PassbandT

rans

ition

Reg

ion

Tra

nsiti

on R

egio

n

Four Canonical Cont-Time Filters

Butterworth: Maximally flat in passband…moderate rolloff

Chebyshev : Faster rolloff by allowing ripples in passband or stopband

Elliptic: Fastest rollff by appowing ripples in both passband and stopband

Bessel: Near linear phase, slow rolloff

Classic Analog Filters (IIR digital filters):

Four Canonical Cont-Time Filters

Butterworth: Maximally flat in passband…moderate rolloff

Chebyshev : Faster rolloff by allowing ripples in passband or stopband

Elliptic: Fastest rollff by appowing ripples in both passband and stopband

Bessel: Near linear phase, slow rolloff

Other FIR (digital) filters….Other filter design (H(s) or H(z)) techniques: Optimization approaches

Should we choose H(s) or H(z) for our representation?Partially due to particular circuit tradeoffs

(tunability? tools? continuous tunability? Accuracy? power consumption?)

Classic Analog Filters (IIR digital filters):

What happens if we just cascade first order stages?

T(s) = 1

(1 + j sτ)N

What happens if we just cascade first order stages?

T(s) = 1

(1 + j sτ)N

102 103 10410-3

10-2

10-1

100

Frequency (Hz)

Filte

r gai

n

N=1N=9

N=33

17

25

Corner shifts with N

Rolloff is not initiallysharp…..

Butterworth Filter Design

Tpb = √

1

1 + ε2

Definition of ε:Transfer Function: (low-pass)

T(s) = 11 + (-1)N+1 ε sNτN

Tpb = 1/ √2 for ε = 1

(fsb τ = 2π )

√1

1 + ε2 ω2Nτ2N|T(jω)| =

Butterworth Filter Design

Tpb = √

1

1 + ε2

Definition of ε:Transfer Function: (low-pass)

T(s) = 11 + j(-1)N+1 ε2 sNτN

Tpb = 1/ √2 for ε = 1

Need to solve to meet the specification of Tsb at fsb : Filter Order (N)

(fpb τ = 2π )

Tsb2 ( 1 + ε2(fsb / fpb )2N ) = 1

√1

1 + ε2 ω2Nτ2N|T(jω)| =

To meet specifications, one choosesthe next largest integer

Butterworth Filter Design

Tpb = √

1

1 + ε2

Definition of ε:Transfer Function: (low-pass)

T(s) = 11 + j(-1)N+1 ε2 sNτN

Tpb = 1/ √2 for ε = 1

Need to solve to meet the specification of Tsb at fsb : Filter Order (N)

(fsb τ = 2π )

Tsb2 ( 1 + ε2(fsb / fpb )2N ) = 1

√1

1 + ε2 ω2Nτ2N|T(jω)| =

To meet specifications, one choosesthe next largest integer

Pole locations: (ε = 1)

1/τk = (1/τ)(sin( (2k-1)π/(2N) ) + j cos( (2k-1)π/(2N) ) ), k=1…N

T(jω) = 1

(1 + s τ1 ) (1 + s τ2 ) … (1 + s τN )

Butterworth Filter Design

102 103 10410-1

100

101

Frequency (Hz)

Sub

-Filt

er g

ain

τ = 1.5915e-005

Q = 3.83, 1.31, 0.821, 0.630, 0.541, 0.504

Specs: ε = 1, fpb =1e4, fsb =1.5e4, Tsb = 1e-2

102 103 10410-6

10-5

10-4

10-3

10-2

10-1

100

Frequency (Hz)

Filte

r gai

n

N = 12

Chebyshev Filter Design

Tpb = √

1

1 + ε2

Definition of ε:

Tpb = 1/ √2 for ε = 1

(fpb τ = 2π )

Transfer Function(low-pass)

√1

1 + ε2 cos2( N cos-1( ωτ ) )|T(jω)| = ωτ >1

√ 1 + ε2 cosh2( N cosh-1( ωτ ) )= ωτ <1

Chebyshev Filter Design

Tpb = √

1

1 + ε2

Definition of ε:

Tpb = 1/ √2 for ε = 1

(fsb τ = 2π )

Transfer Function(low-pass)

Need to solve to meet the specification of Tsb at fsb : Filter Order (N)

√1

1 + ε2 cos2( N cos-1( ωτ ) )|T(jω)| = ωτ >1

√ 1 + ε2 cosh2( N cosh-1( ωτ ) )= ωτ <1

( 1 + ε2 cosh2( N cosh-1(fsb / fpb ) ) ) Tsb = 1

Chebyshev Filter Design

Tpb = √

1

1 + ε2

Definition of ε:

Tpb = 1/ √2 for ε = 1

(fsb τ = 2π )

Transfer Function(low-pass)

Need to solve to meet the specification of Tsb at fsb : Filter Order (N)

Pole locations:

Where k goes from 1, 2, ….N

√1

1 + ε2 cos2( N cos-1( ωτ ) )|T(jω)| = ωτ >1

√ 1 + ε2 cosh2( N cosh-1( ωτ ) )= ωτ <1

( 1 + ε2 cosh2( N cosh-1(fsb / fpb ) ) ) Tsb2 = 1

1/τk = (1/τ)(sin( (2k-1)π/(2N) ) sinh( (1/N) sinh-1(1/ ε) )

+ j cos( (2k-1)π/(2N) ) cosh( (1/N) sinh-1(1/ ε) ) )

Chebyshev Filter Design

102 103 10410-3

10-2

10-1

100

Frequency (Hz)

Filte

r gai

n

102 103 10410-2

10-1

100

101

Frequency (Hz)

Sub

-Filt

er g

ain

Specs: ε = 1, fpb =1e4, fsb =1.5e4, Tsb = 1e-2

N = 6

τ = 22.034µs, Q = 3.4645

τ = 16.288µs, Q = 12.804

τ = 53.433µs, Q = 1.0459

Fewer stages, higher Qs….

Transformations between s and z

z-1 = e-sTSimple Transformation

s ~

z-1 ~ 1 - sT

(1 - z-1 ) T

1

T = sampling period

Transformations between s and z

Bilinear transform

s ~ ~

z-1 ~

1 - z-1

1 + z-1

1 – s T 1 + s T

T

1

z-1 = e-sT

~ s

1 - e-sT

1 + e-sTT

1

1 - ( 1 – sT + 0.5*(sT)2 -…)

1 + 1 – sT + 0.5*(sT)2 -… T

1

Simple Transformation

s ~

z-1 ~ 1 - sT

(1 - z-1 ) T

1

T = sampling period

~

General Filter Topology

1st OrderΣ 1st OrderΣ 1st OrderΣ 1st OrderΣ… VoutVin

General Filter Topology

N*N parameters

N poles, N zeros for N-th order filter

Problem is underspecified…therefore can optimizefor SNR, complexity, etc…

Partitioning H(s) for Circuit Implementation

“Partition” the transfer function into simple parts

• Factorization into first order and second order terms• Nearest neighbor feedback (~LC ladder filter network)• Addition of factors

(maybe out of an approximation of an FIR filter)• Additional feedback / feedforward terms

Similar for either H(s) or H(z)

Typical Filter Topologies

2nd Order 2nd Order 2nd Order 2nd Order 1st OrderVin Vout

Cascade of First and Second-Order Sections

Typical Filter Topologies

2nd Order 2nd Order 2nd Order 2nd Order 1st Order

Vout

Vin

1stO

rder

1st OrderΣ 1st OrderΣ 1st OrderΣ 1st OrderΣ

Σ

Σ

1stO

rder

1stO

rder

Σ

Σ

1stO

rder

1stO

rder

Σ

Σ

1stO

rder

Vout

Vin

Nearest Neighbor Feedback (Inspired by LC ladder network filters)

VinVout

Cascade of First and Second-Order Sections

Conclusions

Basic directions for integrated circuit filters

• Continuous or Discrete: Time and/or Amplitude

• High level specifications of filters

• Obtaining a filter function (H(s) or H(z))

• Implementing the filter function into basic blocks(first and second-order filter sections, integrators, delays, etc.)

Recommended