Partial Response and Viterbi Detection: Disadvantage - Feed-Forward Equalizer
Partial Response and Viterbi Detection: Disadvantage - Feed-Forward Equalizer
Viterbi Detection
([email protected])
(www.eecg.toronto.edu/~johns)
slide 1 of 59
University of Toronto
© D.A. Johns, 1997
Partial-Response Motivation
Disadvantage — Feed-Forward Equalizer
• An FFE boosts the noise in areas where received sig-
nal power is low
• Example:
FFE
Ak = ±1 output data
H tc(z) H 1(z) Â k = ± 1
input data
H tc H1 H tc × H 1
f f f
Nyquist Pulse
slide 2 of 59
University of Toronto
© D.A. Johns, 1997
Partial-Response Motivation
Disadvantage — Decision Feedback Equalizer
• A DFE does not make use of all the impulse response.
–1 –2
H tc(z) = 1 + 0.9z + 0.1z
Ak = ±1 qk output data
H tc(z)
input data – Â k = ± 1
DFE
H 2(z)
–1 –2
H 2(z) = 0.9z + 0.1z
slide 3 of 59
University of Toronto
© D.A. Johns, 1997
Partial-Response Motivation
slide 4 of 59
University of Toronto
© D.A. Johns, 1997
Nyquist Criterion for Zero ISI
Noise
Data Data
Transmitter Receiver
Filter
Channel Σ Filter
Detector
in kT out
slide 5 of 59
University of Toronto
© D.A. Johns, 1997
f t
1 1-
– ------ 0 ----- –T 0 T 2T
2T 2T
slide 6 of 59
University of Toronto
© D.A. Johns, 1997
Non-Minimum Bandwidth System
slide 7 of 59
University of Toronto
© D.A. Johns, 1997
Partial-Response Signaling
• By relaxing the zero-ISI criterion of Nyquist, the
maximum symbol rate of 2 symbols/hertz can be
achieved.
slide 8 of 59
University of Toronto
© D.A. Johns, 1997
Duobinary (1+z-1)
0, 1 –1
z
0, 1, 2 received signal
f
t
1 0 1 –T 0 T
– ------ ------ 2T
2T 2T
• Impulse response decays at a rate of 1 ⁄ t 2 since H(f)
is continuous but its first derivative is not.
• However, it transmits signal power at dc.
slide 9 of 59
University of Toronto
© D.A. Johns, 1997
Dicode (1-z-1)
0, 1 –1
z
– ± 1, 0
received signal
Equalized Channel Response
–1
1–z
H(f) h( t )
T
f t
–T 0 2T
1 0 1
– ------ ------
2T 2T
• Impulse response decays at a rate of 1 ⁄ t due to the
frequency discontinuity in H(f) .
• However, it does not transmit any signal power at dc.
slide 10 of 59
University of Toronto
© D.A. Johns, 1997
Modified Duobinary (1-z-2) — class 4
0, 1 –2
z
– ± 1, 0
received signal
Equalized Channel Response
–2 –1 –1
1–z = (1 – z )( 1 + z )
H(f) h( t )
f t
–T 0 T 2T
1 0 1
– ------ ------
2T 2T
slide 11 of 59
University of Toronto
© D.A. Johns, 1997
–1
1–z Encoder/Decoder (fs/2)
fs 1–z
–1
Encoder/Decoder (fs/2) fs
slide 12 of 59
University of Toronto
© D.A. Johns, 1997
Magnetic Recording Similarities
• At low densities, a magnetic read signal is inherently
1-D encoded (i.e. a dicode).
0 1 0 0 1 0 1 1 0
+1 -1 0 +1 -1 +1 0 -1
slide 13 of 59
University of Toronto
© D.A. Johns, 1997
0.9 t/T=0
0.8
0.7
0.6 t/T=1
|H(w)|
0.5
0.4
0.3
t/T=1.5
0.2
0.1 t/T=2
0
0 0.5 1 1.5 2 2.5 3 3.5
w
slide 14 of 59
University of Toronto
© D.A. Johns, 1997
Magnetic Recording Similarities
n
• Similar to ( 1 – z –1 ) ( 1 + z –1 ) partial-response channel.
n
Frequency Response of (1-D)(1+D) PRS Scheme
1
0.6
|H(w)|
0.5
0.4
n=2 (EPR4)
0.3
0.2
0.1
n=5
0
0 0.5 1 1.5 2 2.5 3 3.5
w
slide 15 of 59
University of Toronto
© D.A. Johns, 1997
1 ∆
-1
Uncoded binary signal “1-D” encoded ternary signal
slide 16 of 59
University of Toronto
© D.A. Johns, 1997
Trellis Introduction
Input
0, 1 –1 state
z Output
– ± 1, 0
0/0
time
k-1 k k+1
0/0 0/0
0 0
1/+1 1/+1
slide 17 of 59
University of Toronto
© D.A. Johns, 1997
Trellis
slide 18 of 59
University of Toronto
© D.A. Johns, 1997
Transmit Trellis for Dicode (1-z-1)
k-1 k
0/0
0
1/+1
0/-1
1
1/0
thresholds at ± 0.5
slide 21 of 59
University of Toronto
© D.A. Johns, 1997
large noise
0.00 0.64
0.09 0.16 0.81 0.64 0.01
Data
Received 1 1 0 1 0 0
slide 22 of 59
University of Toronto
© D.A. Johns, 1997
Viterbi Algorithm Example
0.64 large noise
0.00 0.64 0.49
0.73
0.00 0.64 0
3.24 1.69 1 0.36 1
0.04 0.64
0.00 0.09 0.16
Timestep 1 Timestep 3 0.13 0.29
large noise
0.64 0.73 0.49 1.3
Timestep 2 Timestep 4
slide 23 of 59
University of Toronto
© D.A. Johns, 1997
2 2
( yk + a ) ( yk – a ) branch metrics
2
( yk – 0 )
state metrics m1 k – 1 m1 k
• Equations:
2 2
m0 k = min { ( m0 k – 1 + y k ) , ( m1 k – 1 + ( y k + a ) ) }
2 2
m1 k = min { ( m1 k – 1 + y k ) , ( m0 k – 1 + ( y k – a ) ) }
slide 24 of 59
University of Toronto
© D.A. Johns, 1997
Simplifications to Remove Multiplications
• Remove y 2k terms since it occurs in both terms and
we are only interested in finding the minimum path
(don’t need the absolute length of the path).
• State-metrics can now be either positive or negative.
m0 k – 1 m0 k m0 k – 1 m0 k
2
( yk – 0 ) 0
2
–yk
2 2
( yk + a ) ( yk – a ) ( 2ay k + a )
2
( – 2ay k + a )
2
2
( yk – 0 ) 0
m1 k – 1 m1 k m1 k – 1 m1 k
slide 25 of 59
University of Toronto
© D.A. Johns, 1997
• Equations:
m0 k = min { m0 k – 1 , ( m1 k – 1 + y k + a ) }
m1 k = min { m1 k – 1 , ( m0 k – 1 – y k + a ) }
slide 26 of 59
University of Toronto
© D.A. Johns, 1997
Difference Metric Algorithm
• [Wood and Peterson, Trans. on Comm., May 1986]
slide 27 of 59
University of Toronto
© D.A. Johns, 1997
m0 k – 1 m0 k ∆m k – 1 m0 k
0 0
eliminating
m1 k – 1
y + a--- – y + a--- y + a--- – y + a---
k 2 k 2 k 2 k 2
0 0
m1 k – 1 m1 k 0 m1 k
slide 28 of 59
University of Toronto
© D.A. Johns, 1997
Difference Metric Algorithm
• Different path choices.
∆m k – 1
0 m0 k Condition
∆m a a
< y k + --- and ∆m k – 1 < y k – ---
k – 1
2 2
y + a--- – y + a---
k 2 k 2 Result
a
0 0 m1 k ∆m k = y k – ---
2
∆m k – 1 m0 k
0 Condition
∆m a a
y + a--- – y + a--- k – 1 > y k + --- and ∆m k – 1 > y k – ---
2 2
k 2 k 2
Result
0 0 m1 k a
∆m k = y k + ---
2
slide 29 of 59
University of Toronto
© D.A. Johns, 1997
∆m k – 1 m0 k
0 Condition
∆m a a
y + a--- – y + a--- k – 1 > y k + --- and ∆m k – 1 < y k – ---
2 2
k 2 k 2 IMPOSSIBLE
0 0 m1 k Result
do nothing
slide 30 of 59
University of Toronto
© D.A. Johns, 1997
Difference Metric Algorithm
• Equations:
a a
y k + --2- ∆m k – 1 > y k + ---
2
a a
∆m k = ∆m k – 1 y k – --- < ∆m k – 1 < y k + ---
2 2
a a
y k – --- ∆m k – 1 < y k – ---
2 2
slide 31 of 59
University of Toronto
© D.A. Johns, 1997
slide 32 of 59
University of Toronto
© D.A. Johns, 1997
Typical Digital Implementation
slide 33 of 59
University of Toronto
© D.A. Johns, 1997
slide 34 of 59
University of Toronto
© D.A. Johns, 1997
Typical Analog Implementation
slide 35 of 59
University of Toronto
© D.A. Johns, 1997
Analog Implementation
yk-a/2
+
+a/2 ∆mk-1+a/2 S
Q
0 ∆mk-1
DC
Mux ∆mk-1
- R to path
y(t) S/H level
S/H memory
-a/2 ∆mk-1-a/2 shifter + R
Q
S
yk+a/2
-
slide 36 of 59
University of Toronto
© D.A. Johns, 1997
Some Practical Limitations
slide 37 of 59
University of Toronto
© D.A. Johns, 1997
slide 38 of 59
University of Toronto
© D.A. Johns, 1997
Simulation and Experimental Results
• Simulation and experimental (discrete prototype)
results confirm validity of the analog approach and its
robustness against imperfections.
0 0 0
10 10 10
-1 -1 -1
10 10 10
-2 -2 -2
10 10
Bit Error Rate, BER
-4 -4
10 10 -4
10
o 2% o 2%
-5 x 5% -5 x 5%
10 + 10% 10 + 10% -5
10 o Measurment
--- Threshold Device --- Threshold Device
Viterbi Bound Viterbi Bound --- Threshold Device
-6 -6 Viterbi Bound
10 10 -6
0 5 10 15 0 5 10 15 10
Signal to Noise Ratio, SNR Signal to Noise Ratio, SNR 0 5 10 15
Signal to Noise Ratio, SNR
DC Offset or Absolute Gain Error Gain Mismatch
Offsets and mismatches are described in percentage of a Measured BER Performance of the Detector
(Path Memory = 17)
slide 39 of 59
University of Toronto
© D.A. Johns, 1997
Input-Interleaved Algorithm
slide 40 of 59
University of Toronto
© D.A. Johns, 1997
Input Interleaved Algorithm
slide 41 of 59
University of Toronto
© D.A. Johns, 1997
Input-Interleaved Algorithm
• Toggle between two S/Hs which store yk and yk-j
• Use a flip-flop to properly switch the DC signal
φ1.T
Vref
yk-yk-j-{
+ Polarity
0
Σ Switch +
- - S
-
Polarity To the Path
y(t) Vref
Switch Memory
+
+ + S Polarity
Σ Switch -
- yk-yk-j+{
0
Vref
φ1.T
T and T
T T S SR
F-F F-F
T S
slide 42 of 59
University of Toronto
© D.A. Johns, 1997
BiCMOS Integrated-Circuit Implementation
φ1.T φ1.T
A0
+ A1 A0
+ L L- + A0
Latch
- - B0
L DL
Bias B0
φ2 φ3
φ1.T - + - + S S
S T
+ V/I - + V/I -
SW + SW + + + SW
- +
+ +
+ - + - +
y(t) Switch Switch V/I Switch VDC A1 A0
- - - -
- - -
+ + - - - +
SW SW SW
+ V/I - + V/I -
φ1.T S T T
- + - +
φ2 φ3 Q Q
φ1
Bias A1
- L DL - A1
Latch
+ L+ B1
L- + T φ1.T φ1.T T
B1
φ1.T φ1.T
slide 43 of 59
University of Toronto
© D.A. Johns, 1997
bias2
out- out+
SW SW
in+ in-
in+ in-
Switch
bias3
V/I
in+
out+ out-
in-
L+ L- L
DL
bias3
Latch
slide 44 of 59
University of Toronto
© D.A. Johns, 1997
BiCMOS Integrated-Circuit Implementation
• Path memory consists of 2x12 multiplexed-input D
flip-flops
“0” D D ... D State “0”
B1/B0 B1/B0 φ4
in0/in1
out0/out1
in1/in0
A1/A0 A1/A0 φ5
• Clock phases
CLK
φ1 φ2 φ3 φ4 φ5
slide 45 of 59
University of Toronto
© D.A. Johns, 1997
slide 46 of 59
University of Toronto
© D.A. Johns, 1997
Integrated-Circuit Implementation
Analog
Control
Logic
Digital
Second
Dicode
0.1mm
slide 47 of 59
University of Toronto
© D.A. Johns, 1997
Experimental Results
slide 48 of 59
University of Toronto
© D.A. Johns, 1997
Experimental Results
• Setup
CLK
White
Noise
Generator
Level
Delay Compare
Translator
Error
Counter
−1
10
−2
10
Bit−Error Rate (BER)
−3
10
−4
10
−5
10
−6 o Measured at 50MHz/Dicode
10
x Measured at 100MHz/Dicode
−7 Threshold Device
10
−8
10
4 6 8 10 12 14 16 18
Signal−to−Noise Ratio (SNR), dB
slide 49 of 59
University of Toronto
© D.A. Johns, 1997
slide 50 of 59
University of Toronto
© D.A. Johns, 1997
A General Implementation Approach
• This approach takes full advantage of the ability of
simple analog circuits in realizing the ACS function
i = 1, 2, …, N
m i ( k ) = Max { m j ( k – 1 ) – e ji ( k ) }
j j = 1, 2, … , M
m1(k-1)
e1i
m2(k-1) e2i
mi(k)
...
eMi
mM(k-1)
slide 51 of 59
University of Toronto
© D.A. Johns, 1997
Circuit Realization
V
out
= Max { V in j } – v BE m
i
(k) = Max { m j ( k – 1 ) – e ji ( k ) } – v BE m
i
(k) = M ax { m j ( k – 1 ) – α R e ji ( k ) } –
j j j
slide 52 of 59
University of Toronto
© D.A. Johns, 1997
• Optional DC currents added to the error signals
reduce the unnecessary DC voltage drops across the
resistors
slide 53 of 59
University of Toronto
© D.A. Johns, 1997
Circuit Realization
• Branch currents in the differential cells are compari-
son results
• To achieve high speeds, ping-pong S/Hs are preferred
to master-slave S/Hs in feeding the state metrics back
slide 54 of 59
University of Toronto
© D.A. Johns, 1997
Design Example: Binary Dicode
bias1
bias2
φ1 φ1
ref
φ2 φ2
φ2 φ2
bias3 φ1 φ1
bias3
bias1
bias2
slide 55 of 59
University of Toronto
© D.A. Johns, 1997
slide 56 of 59
University of Toronto
© D.A. Johns, 1997
Integrated Circuit Implementation
Clock 50 Ω
Generator Drivers
EPR4
50 Ω
Drivers
Dicode
Test
Dicode
Clock
Generator
0.1mm
slide 57 of 59
University of Toronto
© D.A. Johns, 1997
• Results on dicode
−1
10
−2
10
Bit−Error Rate (BER)
−3
10
−4
10
−5
10 o Measured at 1 MHz
__ Viterbi Bound
−6
10
8 9 10 11 12 13 14
Signal−to−Noise Ratio (SNR), dB
slide 58 of 59
University of Toronto
© D.A. Johns, 1997
Summary
• The use of partial-response signals allows one to
send closer to the maximum rate of
2 symbols/hertz.
• Making use of partial-response signalling reduces
the need for large equalization boost.
• The difference algorithm is efficient for PR4 signals
• Analog realizations of the difference algorithm save
silicon and power over digital realizations
(however, an analog equalizer is needed)
• Input-interleaved algorithm increases the speed for
an analog implementation
• A general analog Viterbi approach was discussed.
(However, it makes use of bipolar transistors).
slide 59 of 59
University of Toronto
© D.A. Johns, 1997