John Ewen jfewen@us.ibm.com
Test Pattern Want to evaluate pathological events that occur on average once per day At 1Gb/s once per day is equivalent to a probability of 1.1 1 15 ~ 1/2 5 Equivalent to 7.9σ for a Gaussian distribution 2 31 1 PRBS repeats ~ 2ms Sufficient to meet worst case criteria of once per day? 2 58 1 PRBS repeats in ~ 1 year Too long for practical testing
Test Pattern Function PCS Coder Insert patterns at scrambler Decoder Scrambler Block Gen. Insert patterns at gearbox Descrambler Sync Detect 66:16 Gearbox 16:66 Gearbox 16 16 PMA PMD Test here (or wrap only)? BER Rx BER Tx
Proposed Test Sequence Use existing 1 + x 39 + x 58 scrambler Seed register with defined value Run for N bits (propose N= 2 16 ) 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
Test Pattern Structure Select a subset of the 2 58 1 PRBS using appropriate seed Map the test pattern into the payload of the 66-bit blocks Repeat the test pattern 3x1 17 bits 1 + x 39 + X 58 PRBS N-bit Test Pattern («1 17 ) 1 64b data 1 64b data 1 64b data 66b blocks
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 + S S1 S2 S38 S39 S56 S57 Input Seed Output Seed Time Output «N bits Data Data p-seed Data Data p-seed Data Data Test Pattern Test pattern Test pattern N-bit test pattern
Example Choose 1 + x 6 + x 7 PRBS, N= 16-bits Pattern = 1 1 1 1 1 1 1 1 (longest run-length) Initial Seed = 1 1 1 To force scrambler to repeat the 16-bit pattern: Data = 1 1 1 1 7bits reset the scrambler All zeros otherwise Seed= 111, Pseudo-seed= 1111 For M th -order scrambler, need M-bits to reset the scrambler
Error Detection Only using a subset of the full 2 58 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
Pattern Characteristics Compare proposed pattern with a 2 16 1 PRBS PRBS choice is arbitrary Want random pattern of ~2 16 length for comparison 1+ x + x 3 + x 12 + x 16 is convenient choice Evaluate Running disparity Transition density Autocorrelation Power spectral density Baseline wander
Running Disparity 35 3 25 2 15 1 5-5 -1 Running Disparity 2 58-1 PRBS 2 16-1 PRBS Nomenclature 2 16 1 PRBS : 2 16 bits long (one cycle + 1 bit) 1 + x + x 3 + x 12 + x 16 2 58 1 PRBS : 2 16 bits long («one cycle) 1 + x 39 + x 58 Seed chosen for max run-length ~8kb from pattern beginning -15 1 2 3 4 5 6 7 x 1 4
Transition Density Transition Density Transition Density.7.6.5.4.3 1 2 3 4 5 6 7 x 1 4.8 2 58-1 PRBS.6.4.2 2 16-1 PRBS 1 2 3 4 5 6 7 x 1 4 Transition density averaged over 2 UI 2 16 1 16 UI max run-length 5% average density 38% minimum density 2 58 1 58 UI max run-length 44% average density 3% minimum density
Autocorrelation 2 16-1 PRBS Autocorrelation.1.5 -.5 -.1.15 1 2 3 4 5 6 2 58-1 PRBS x 1 4 Random data = delta function Full PRBS closely approximates random data Partial PRBS more correlated than random data Autocorrelation.1.5 -.5 1 2 3 4 5 6 x 1 4
Power Spectral Density Power Spectral Density (db/hz) 5-5 -1.5.1.15.2-1 -2 2 58-1 2 16-1 -3.5 1 1.5 2 Relative Frequency Increased low frequency content in partial PRBS pattern Tones due to correlation in sequence
1.8.6.4 2 16-1 PRBS Baseline Wander 1.5 2 58-1 PRBS Amplitude.2 -.2 Amplitude -.4 -.6 -.5 -.8-1.5 1 1.5 DJσ=.4,DJ-pp=.26 Total ISI= -.33 db, Penalty= -.3 db, BLWσ=.2442-1.5 1 1.5 DJσ=.7,DJ-pp=.89, Min. PW=.911 Total ISI= -.88 db, Penalty= -.62 db, BLWσ=.4551
Amplitude Histogram (2 16 1 PRBS) 35 Normal Probability Plot 3 25 2 15 1 5 Probability.999.997.99.98.95.9.75.5.25.1.5.2.1.3.1.9 1 1.1 1.2 Relative Amplitude.95 1 1.5 Relative Amplitude
Amplitude Histogram (2 58 1 PRBS) 8 Normal Probability Plot 7 6 5 4 3 2 1 Probability.999.997.99.98.95.9.75.5.25.1.5.2.1.3.1.6.8 1 1.2 1.4 Relative Amplitude tails in distribution.8.9 1 1.1 1.2 Relative Amplitude
Running Disparity Transistion Density 6 4 2-2.6.4.2 Alternate 2 58 1 PRBS Segments 1 2 3 4 5 6 x 1 4.5 1 1.5 2 2.5 3 x 1 4 2 58 1 PRBS : 2 16 bits long («one cycle) 1 + x 39 + x 58 Seed chosen for run-length of 58 ~8kb from pattern start 2 58 1 Alternate 2 16 bits long («one cycle) 1 + x 39 + x 58 Seed chosen for run-length of 5 ~8kb from pattern start
2 58-1 PRBS Baseline Wander 2 58-1 PRBS (Alternate) 1 1.5.5 Amplitude Amplitude -.5 -.5-1.5 1 1.5 DJσ=.7,DJ-pp =.89, Min. PW =.911 Total ISI = -.88 db, Penalty = -.62 db BLWσ =.455, BLWpp =.365-1.5 1 1.5 DJσ=.5,DJ-pp =.36, Min. PW =.964 Total ISI = -.39 db, Penalty = -.5 db BLWσ =.255, BLWpp =.17
Baseline Wander 2 58-1 PRBS 2 58-1 PRBS (Alternate) Probability.999.997.99.98.95.9.75.5.25.1.5.2.1.3.1 Probability.999.997.99.98.95.9.75.5.25.1.5.2.1.3.1.8.9 1 1.1 1.2 Amplitude.9.95 1 1.5 1.1 Amplitude
Running Disparity Transition Density 4 2 Alternate Data Inputs... data 1... data -2 2 4 6 8 x 1 4.8.6.4.2 2 4 6 8 x 1 4 data Seed chosen for max run-length ~8kb from pattern start Data input to scrambler all zeros 1 data Seed chosen for max run-length Data input to scrambler = 1 + 63 zeros 64-bit data pattern repeats
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
Backup Material
K28.5 + Random 8B/1B Data Stressed Eye 2 58-1 PRBS 1 1.5.5 Amplitude Amplitude -.5 -.5-1.5 1 1.5 DJσ=.3,DJ-pp =.84, Min. PW =.986 Total ISI = 3.1 db, Penalty = -2.84 db -1.5 1 1.5 DJσ=.28,DJ-pp =.89, Min. PW =.981 Total ISI = -2.99 db, Penalty = -2.76 db
Running Disparity 8 7 6 5 4 3 2 1-1 16kb PRBS 72 s A1/A2 OC-192 CID Pattern OC-192 CID Pattern 32kb PRBS 16kb PRBS 72 1 s -2 1 2 3 4 5 6 7 8 x 1 4 192 bytes A1 192 bytes A2 64 bytes C1 128 bytes of stuff (return disparity to with 5% transition density) 16kb PRBS (x 1 + x 7 +1) 72 zeros 32kb PRBS (x 15 + x 14 +1) 72 ones 16kb PRBS (x 1 + x 7 +1)
Running Disparity 8 7 6 OC-192 CID 2 58-1 PRBS Running Disparity 5 4 3 2 1-1 -2 1 2 3 4 5 6 7 8 x 1 4
Transistion Density Transistion Density.7.6.5.4.3.2 1 2 3 4 5 6 7 8 2 58-1 PRBS x 1 4.8.6.4.2 Transition Density OC-192 CID Pattern 1 2 3 4 5 6 7 x 1 4 Transition density averaged over 2 UI OC-192 CID 72 UI max run-length 5% average density 21% minimum density 2 58 1 58 UI max run-length 44% average density 3% minimum density
OC-192 CID Pattern Baseline Wander 2 58-1 PRBS 1 1.5.5 Amplitude Amplitude -.5 -.5-1 -1.5 1 1.5 DJσ=.13,DJ-pp=.162 Total ISI= -2.25 db, Penalty= -1.76 db, BLWσ=.6953.5 1 1.5 DJσ=.7,DJ-pp=.89, Min. PW=.911 Total ISI= -.88 db, Penalty= -.62 db, BLWσ=.4551
Baseline Wander (OC-192 CID) 3 x 14 Normal Probability Plot 2.5 2 1.5 1.5 Probability.999.997.99.98.95.9.75.5.25.1.5.2.1.3.1.5 1 1.5 Relative Amplitude.6.8 1 1.2 1.4 Relative Amplitude