10GBASE-R Test Patterns

advertisement
10GBASE-R Test Patterns
John Ewen
IBM
jfewen@us.ibm.com
Test Pattern
• Want to evaluate “pathological” events that occur on
average once per day
• At 10Gb/s “once per day” is equivalent to a
probability of 1.1×10–15 ~ 1/250
– Equivalent to 7.9σ for a Gaussian distribution
• 231 – 1 PRBS repeats ~ 200ms
– Sufficient to meet worst case criteria of once per day?
• 258 – 1 PRBS repeats in ~ 1 year
– Too long for practical testing
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Test Pattern Function
PCS
Coder
Insert patterns at scrambler
Scrambler
Block Gen.
Decoder
Descrambler
Insert patterns at gearbox
66:16 Gearbox
Sync Detect
16:66 Gearbox
16
16
PMA
PMD
Test here (or wrap only)?
BER Rx
IEEE 802.3ae
3/12/2001
BER Tx
10GBASE-R Test Patterns
IBM
Proposed Test Sequence
• Use existing 1 + x39 + x58 scrambler
– Seed register with defined value
– Run for N bits (propose N= 216)
• Allow non-zero scrambler data inputs for additional flexibility
– Reset scrambler & repeat
• Can use scrambler data input to reset its state (pseudo-seed)
• Seed can be set via management registers
• Seed chosen to stress:
– Maximum run-length
– Minimum transition density
– Maximum baseline wander
• N arbitrary, but …
– Choose power of 2 for easy implementation
– Choose N < memory depth of typical BERT
• Periodically resetting the scrambler implies the pattern is no
longer “random”
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Test Pattern Structure
• Select a subset of the 258–1 PRBS using appropriate seed
• Map the test pattern into the payload of the 66-bit blocks
• Repeat the test pattern
3x1017 bits
1 + x39 + X58 PRBS
N-bit Test Pattern (« 1017)
0 1
64b data
0 1
64b data
…
0 1
64b data
66b blocks
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Test Pattern Generation
•
•
•
•
Seed the scrambler
Apply, short, repetitive data pattern (e.g. all zero’s)
Apply pseudo-seed after N bits to transition to pattern beginning
Repeat
Input
+
+
S0
S1
S2
S38
S39
S56
S57
p-Seed
Data
Output
« N bits
Input
Seed
Data
Data
…
p-Seed
Data
Data
…
Data
Output
Seed
Test Pattern
…
Test pattern
…
Test pattern
Time
N-bit test pattern
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Example
• Choose 1 + x6 + x7 PRBS,
– N= 16-bits
– Pattern = 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 (longest run-length)
• Initial Seed = 1 0 1 0 1 0 0
• To force scrambler to repeat the 16-bit pattern:
– “Data” = 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0
7bits reset the scrambler
All zeros otherwise
• ∴Seed= 1010100, Pseudo-seed= 0111001
• For Mth-order scrambler, need M-bits to reset the
scrambler
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Error Detection
• Only using a subset of the full 258–1 sequence
• Self-synchronous descrambler will generate “errors”
at pattern boundary
– “Errors” are deterministic due to pattern mismatch
• The “error” pattern at the descrambler equals the “data” pattern
used to reset the scrambler to generate the test pattern
– Can be taken into account to compute real error rate
– Increases somewhat the complexity at the error detector
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Pattern Characteristics
• Compare proposed pattern with a 216 –1 PRBS
– PRBS choice is arbitrary
– Want “random” pattern of ~216 length for comparison
– 1+ x + x3 + x12 + x16 is convenient choice
• Evaluate
–
–
–
–
–
Running disparity
Transition density
Autocorrelation
Power spectral density
Baseline wander
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Running Disparity
Nomenclature
• “216–1 PRBS”:
350
58
2 -1 PRBS
16
2 -1 PRBS
300
– 216 bits long
(one cycle + 1 bit)
– 1 + x + x3 + x12 + x16
Running Disparity
250
200
• “258–1 PRBS”:
150
– 216 bits long
(« one cycle)
– 1 + x39 + x58
– Seed chosen for
max run-length ~8kb
from pattern
beginning
100
50
0
-50
-100
-150
0
IEEE 802.3ae
3/12/2001
1
2
3
4
Time (UI)
5
6
10GBASE-R Test Patterns
7
4
x 10
IBM
Transition Density
Transition Density
0.7
• Transition density
averaged over 200 UI
• 216–1
16
2 -1 PRBS
0.6
– 16 UI max run-length
– 50% average density
– 38% minimum density
0.5
0.4
0.3
0
• 258–1
1
2
3
4
5
6
7
Transition Density
4
x 10
0.8
– 58 UI max run-length
– 44% average density
– 3% minimum density
58
2 -1 PRBS
0.6
0.4
0.2
0
0
1
IEEE 802.3ae
3/12/2001
2
3
4
Time (UI)
5
6
7
4
x 10
10GBASE-R Test Patterns
IBM
Autocorrelation
Autocorrelation
216 - 1 PRBS
•
0.1
0.05
•
0
-0.05
-0.1
0
1
2
4
5
6
4
258 - 1 PRBS
0.15
Autocorrelation
3
•
x 10
Random data = delta
function
Full PRBS closely
approximates
random data
Partial PRBS more
correlated than
random data
0.1
0.05
0
-0.05
0
IEEE 802.3ae
3/12/2001
1
2
3
4
Time (UI)
5
6
4
x 10
10GBASE-R Test Patterns
IBM
Power Spectral Density
•
Power Spectral Density (dB/Hz)
5
0
•
-5
-10
0
0.05
0.1
0.15
0.2
Increased low
frequency
content in partial
PRBS pattern
Tones due to
correlation in
sequence
58
2 -1
16
2 -1
0
-10
-20
-30
0
IEEE 802.3ae
3/12/2001
0.5
1
1.5
Relative Frequency
10GBASE-R Test Patterns
2
IBM
16
2
Baseline
Wander
-1 PRBS
58
2 -1 PRBS
1
1
0.8
0.6
0.5
0.2
Amplitude
Amplitude
0.4
0
-0.2
0
-0.4
-0.5
-0.6
-0.8
-1
-1
0
0.5
1
Time (UI)
1.5
DJσ= 0.004,DJ-pp= 0.026
Total ISI= -0.33 dB, Penalty= -0.03 dB, BLWσ= 0.02442
IEEE 802.3ae
3/12/2001
0
0.5
1
Time (UI)
1.5
DJσ= 0.007,DJ-pp= 0.089, Min. PW= 0.911
Total ISI= -0.88 dB, Penalty= -0.62 dB, BLW σ= 0.04551
10GBASE-R Test Patterns
IBM
|Amplitude| Histogram (216–1 PRBS)
Normal Probability Plot
3500
3000
Probability
2500
2000
1500
1000
500
0
0.9
1
1.1
1.2
0.999
0.997
0.99
0.98
0.95
0.90
0.75
0.50
0.25
0.10
0.05
0.02
0.01
0.003
0.001
0.95
Relative Amplitude
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
1
1.05
Relative Amplitude
IBM
|Amplitude| Histogram (258–1 PRBS)
Normal Probability Plot
8000
7000
6000
Probability
5000
4000
3000
2000
1000
0
0.6
0.8
1
1.2
0.999
0.997
0.99
0.98
0.95
0.90
0.75
0.50
0.25
0.10
0.05
0.02
0.01
0.003
0.001
1.4
0.8
Relative Amplitude
0.9
1
1.1
1.2
Relative Amplitude
“tails” in
distribution
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Running Disparity
Alternate 258–1 PRBS Segments
600
• “258–1 PRBS”:
400
– 216 bits long
(« one cycle)
– 1 + x39 + x58
– Seed chosen for
run-length of 58
~8kb from pattern
start
200
0
-200
Transistion Density
0
1
2
3
Time (UI)
4
5
6
x 10
4
• “258–1 Alternate”
0.6
0.4
0.2
0
0
0.5
IEEE 802.3ae
3/12/2001
1
1.5
Time (UI)
2
2.5
3
x 10
4
10GBASE-R Test Patterns
– 216 bits long
(« one cycle)
– 1 + x39 + x58
– Seed chosen for
run-length of 50
~8kb from pattern
start
IBM
Baseline Wander
58
58
2 -1 PRBS
2 -1 PRBS (Alternate)
1
1
0.5
Amplitude
Amplitude
0.5
0
0
-0.5
-0.5
-1
-1
0
0.5
1
Time (UI)
1.5
DJσ= 0.007,DJ-pp = 0.089, Min. PW = 0.911
Total ISI = -0.88 dB, Penalty = -0.62 dB
BLW σ = 0.0455, BLWpp = 0.365
IEEE 802.3ae
3/12/2001
0
0.5
1
Time (UI)
1.5
DJσ= 0.005,DJ-pp = 0.036, Min. PW = 0.964
Total ISI = -0.39 dB, Penalty = -0.05 dB
BLW σ = 0.0255, BLWpp = 0.17
10GBASE-R Test Patterns
IBM
Baseline Wander
258-1 PRBS (Alternate)
0.999
0.997
0.99
0.98
0.95
0.90
0.75
Probability
Probability
258-1 PRBS
0.50
0.25
0.10
0.05
0.02
0.01
0.003
0.001
0.8
IEEE 802.3ae
3/12/2001
0.9
1
1.1
|Amplitude|
1.2
0.999
0.997
0.99
0.98
0.95
0.90
0.75
0.50
0.25
0.10
0.05
0.02
0.01
0.003
0.001
0.9
10GBASE-R Test Patterns
0.95
1
1.05
|Amplitude|
1.1
IBM
Alternate “Data” Inputs
Running Disparity
400
• “0000… data”
0000... data
1000... data
– Seed chosen for
max run-length ~8kb
from pattern start
– Data input to
scrambler all zeros
200
0
-200
0
2
4
6
8
x 10
4
• “1000… data”
Transition Density
0.8
0.6
0.4
0.2
0
0
IEEE 802.3ae
3/12/2001
2
4
Time (UI)
6
8
– Seed chosen for
max run-length
– Data input to
scrambler = 1 + 63
zeros
– 64-bit data pattern
repeats
4
x 10
10GBASE-R Test Patterns
IBM
Summary
• Use existing scrambler / descrambler to generate and
check test patterns
• Wide variety of pattern characteristics available
– Select long PRBS segments using short seed values
• Pattern can be set via management registers
– New patterns can be defined in the future without modifying
hardware
• Cost: increased complexity in the pattern checker
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
IBM
Backup Material
Stressed Eye
58
2 -1 PRBS
1
1
0.5
0.5
Amplitude
Amplitude
K28.5 + Random 8B/10B Data
0
0
-0.5
-0.5
-1
-1
0
0.5
1
Time (UI)
1.5
DJσ= 0.030,DJ-pp = 0.084, Min. PW = 0.986
Total ISI = 3.01 dB, Penalty = -2.84 dB
IEEE 802.3ae
3/12/2001
0
0.5
1
Time (UI)
1.5
DJσ= 0.028,DJ-pp = 0.089, Min. PW = 0.981
Total ISI = -2.99 dB, Penalty = -2.76 dB
10GBASE-R Test Patterns
IBM
OC-192 “CID” Pattern
OC-192 CID Pattern
800
•
•
•
•
A1/A2
700
Running Disparity
600
500
400
300
16kb PRBS
•
32kb PRBS
16kb PRBS •
200
•
100
•
•
0
-100
-200
0
72 1’s
72 0’s
IEEE 802.3ae
3/12/2001
1
2
3
4
5
Time (UI)
6
7
10GBASE-R Test Patterns
192 bytes A1
192 bytes A2
64 bytes C1
128 bytes of “stuff”
(return disparity to
0 with 50%
transition density)
16kb PRBS
(x10+ x7+1)
72 zeros
32kb PRBS
(x15+ x14+1)
72 ones
16kb PRBS
(x10+ x7+1)
8
4
x 10
IBM
Running Disparity
800
OC-192 CID
258 - 1 PRBS
700
Running Disparity
600
500
400
300
200
100
0
-100
-200
0
IEEE 802.3ae
3/12/2001
1
2
3
4
5
Time (UI)
10GBASE-R Test Patterns
6
7
8
4
x 10
IBM
Transistion Density
Transistion Density
Transition Density
OC-192 CID Pattern
0.7
• Transition density
averaged over 200 UI
• OC-192 CID
0.6
0.5
– 72 UI max run-length
– 50% average density
– 21% minimum density
0.4
0.3
0.2
0
• 258–1
1
2
3
4
5
258 - 1 PRBS
0.8
6
7
8
4
x 10
– 58 UI max run-length
– 44% average density
– 3% minimum density
0.6
0.4
0.2
0
0
1
IEEE 802.3ae
3/12/2001
2
3
4
5
6
7
4
Time (UI)
10GBASE-R Test Patternsx 10
IBM
Baseline Wander
OC-192 CID Pattern
1
1
0.5
0.5
Amplitude
Amplitude
58
2 -1 PRBS
0
0
-0.5
-0.5
-1
-1
0
0.5
1
Time (UI)
0
1.5
DJσ= 0.013,DJ-pp= 0.162
Total ISI= -2.25 dB, Penalty= -1.76 dB, BLWσ= 0.06953
IEEE 802.3ae
3/12/2001
0.5
1
Time (UI)
1.5
DJσ= 0.007,DJ-pp= 0.089, Min. PW= 0.911
Total ISI= -0.88 dB, Penalty= -0.62 dB, BLW σ= 0.04551
10GBASE-R Test Patterns
IBM
Baseline Wander (OC-192 CID)
3
x 10
Normal Probability Plot
4
2.5
Probability
2
1.5
1
0.5
0
0.5
1
1.5
0.999
0.997
0.99
0.98
0.95
0.90
0.75
0.50
0.25
0.10
0.05
0.02
0.01
0.003
0.001
0.6
Relative Amplitude
IEEE 802.3ae
3/12/2001
10GBASE-R Test Patterns
0.8
1
1.2
1.4
Relative Amplitude
IBM
Download