UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1....

18
1 UPSTREAM FEC CODEWORD FILLING BASED ON DATA BURST SIZE Rich Prodan

Transcript of UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1....

Page 1: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

1

UPSTREAM FEC CODEWORD FILLING BASED ON DATA BURST SIZE

Rich Prodan

Page 2: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

2

UPSTREAM FULL FEC CODEWORD SIZES PREVIOUSLY ADOPTED

Long codeword:

16200 total bits

14400 information bits including 40 CRC bits

1800 parity bits

88.9% code rate with 88.6% overall efficiency

Medium codeword:

5940 total bits

5040 information bits including 40 CRC bits

900 parity bits

84.8% code rate with 84.2% overall efficiency

Short codeword:

1120 total bits

840 information bits including 40 CRC bits

280 parity bits

75% code rate with 71.4% overall efficiency

Page 3: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

3

BASIC STEPS FOR DETERMINING CODEWORD SIZES

Choice of codeword sizes is based entirely on data burst size

Unambiguous at both ends

Details of algorithm, including codeword sizes and thresholds for shortening, are embedded in spec

Basic steps for conversion in either encode or decode side:

If there are enough bits to create a full long codeword, do so. Keep doing this until there aren't enough bits left.

If there are now enough bits to create a shortened long codeword (subject to the thresholds above), do so, and end the burst.

Otherwise, if there are enough bits to create a full medium codeword, do so. Keep doing this until there aren't enough bits left.

If there are now enough bits left to create a shortened medium codeword (subject to the thresholds above), do so, and end the burst.

Otherwise, if there are enough bits to create a full short codeword, do so. Keep doing this until there aren't enough bits left.

Use whatever bits remain to create a shortened short codeword, and end the burst.

Page 4: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

4

OPTIMUM SHORTENING SOLUTION

Upon completion of filling the last shortened short (N,K) codeword, check if this codeword is at least half full of information bits. That is, check if the last codeword contains at least K/2 information bits.

If not, then move K/2 information bits from the next-to-last codeword into the shortened short last codeword.

This results in two last shortened codewords where each is at least half full.

Page 5: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

5

EFFICIENCY (CODE RATE) VS. BURST SIZE (INFORMATION BITS)

Page 6: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

6

EFFICIENCY (CODE RATE) VS. BURST SIZE (INFORMATION BITS)

Page 7: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

7

EFFICIENCY (CODE RATE) VS. BURST SIZE (INFORMATION BITS)

Page 8: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

8

EFFICIENCY (CODE RATE) VS. BURST SIZE (INFORMATION BITS)

Page 9: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

9

UPSTREAM FEC ENCODE PROCESS

XGMII interface

64B/66B Line Encoder

FEC parity

FEC payload

TXD<

0>

TXD<

31>

first XGMIItransfer

2 9 65

D0 D1 D2 D3 D4 D5 D6 D7

sync header

9 65

C0 C1 C2 C3 C4 C5 C6 C79

C0 C1 C2 C3 C4 C5 C6 C7

1 65

Aggregate BQ 65-bit Shortened Line Encoded blocks

BQ

651

BQ-1

651B2

651

B1

651

(N, K) LDPC FEC Encoder

22

Shortened FEC payload

B1

651

CRC-40 Calculation

0 1

TXD<

0>

TXD<

31>

second XGMIItransfer

A2

651

BQ

651

BQ-1

651

B2

651

Additional PHY Layer Processing

CRC-40

401

Zero Pad M1

CRC-40

401

AR

P1

Zero Pad

P+1

65

A1

6541

shortened sync header

1

Zero Pad 601

Page 10: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

10

UPSTREAM FEC DECODE PROCESS

XGMII interface

64B/66B Line Decoder

FEC payload

TXD<

0>

TXD<

31>

first XGMIItransfer

2 9 65

D0 D1 D2 D3 D4 D5 D6 D7

sync header9 65

C0 C1 C2 C3 C4 C5 C6 C79

C0 C1 C2 C3 C4 C5 C6 C7

1 65

Segment BQ 65-bit Shortened Line Encoded blocks

BQ

651

BQ-1

651B2

651

B1

651

(N, K) LDPC FEC Decoder

22

CRC-40 Calculation and Check

0 1

TXD<

0>

TXD<

31>

second XGMIItransfer

Initial PHY Layer Processing

CRC-40

401

Zero Pad M1

shortened sync header

1

FEC parityShortened FEC payload

B1

651

A2

651

BQ

651

BQ-1

651

B2

651

CRC-40

401

AR

P1

Zero Pad

P+1

65

A1

6541

Page 11: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

11

CODEWORD PARAMETERS

Codeword (N,K) Info Parity CRC Info-CRC Parity+CRC Total Rate Encode Decode

(bits) K N - K (bits) Threshold Threshold

(16200, 14400) 14400 1800 40 14360 1840 16200 0.88641975 6600 8440

(5940, 5040) 5040 900 40 5000 940 5940 0.84175084 1600 2540

(1120, 840) 840 280 40 800 320 1120 0.71428571

Codeword (N,K) Information Information Parity Codeword Codeword Rate

(bits) 65-bit blocks Pad (bits) 65-bit blocks 65-bit blocks Pad (bits) (64/[66-1])

(16200, 14400) 220 60 29 249 45 0.8699413

(5940, 5040) 76 60 15 91 35 0.82231615

(1120, 840) 12 20 5 17 5 0.69502262

New

Page 12: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

12

CODEWORD FILLING TABLE

New Payload Shortened Last CW (mixed)

Shortened

Rate

Shortened

Rate

Info

Payload

Last Codeword

Info Zero Pad

Encoded

Payload

(65-bit blocks) # Long # Medium # Short (bits) (65-bit blocks) (bits) (bits) (bits)

1 0 0 1 0.168831169 0.166666667 65 735 390

12 0 0 1 0.709090909 0.705882353 780 20 1105

13 0 0 2 0.569023569 0.565217391 845 735 1495

24 0 0 2 0.709090909 0.705882353 1560 20 2210

25 0 1 0 0.633528265 0.625 1625 3375 2600

76 0 1 0 0.840136054 0.835164835 4940 60 5915

77 0 1 1 0.798882682 0.793814433 5005 795 6305

89 0 1 1 0.821149752 0.816513761 5785 15 7085

90 0 1 2 0.787348587 0.782608696 5850 750 7475

101 0 1 2 0.806015961 0.801587302 6565 795 8190

102 1 0 0 0.782762692 0.778625954 6630 7730 8515

220 1 0 0 0.885997522 0.883534137 14300 60 16185

221 1 0 1 0.869288956 0.866666667 14365 795 16575

233 1 0 1 0.875180584 0.872659176 15145 795 17355

234 1 0 2 0.859807801 0.857142857 15210 730 17745

245 1 0 2 0.865254007 0.862676056 15925 795 18460

246 1 1 0 0.851891316 0.848275862 15990 3370 18850

297 1 1 0 0.874122708 0.870967742 19305 4995 22165

298 1 1 1 0.862038273 0.858789625 19370 790 22555

310 1 1 1 0.866666667 0.863509749 20150 790 23335

311 1 1 2 0.855299344 0.852054795 20215 725 23725

322 1 1 2 0.859548255 0.856382979 20930 790 24440

323 2 0 0 0.850861196 0.847769029 20995 7665 24765

441 2 0 0 0.886226619 0.883767535 28665 14295 32435

442 2 0 1 0.877787962 0.875247525 28730 790 32825

… … … … … … … … …

Page 13: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

13

CODEWORD FILLING THRESHOLDS

New

Threshold ΔThreshold Threshold ΔThreshold

0 800 800 1120 1120

1 1600 800 2240 1120

2 5000 3400 5940 3700

3 5800 800 7060 1120

4 6600 800 8180 1120

5 14360 7760 16200 8020

Encode (bits) Decode (bits)

Page 14: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

14

CODEWORD FILLING ALGORITHM

0) Initialization

Δthreshold[0:5]; threshold=Δthreshold[0]; #blocks=0; I=0

1) Find start Burst Marker

2) Get next block

add to CW_Buffer[ ]; #blocks = #blocks+1

3) If end Burst Marker found

Go to step 7

4) If #blocks > threshold

I = I+1 modulo 6; threshold = threshold + Δthreshold[I]

Else Go to step 2

5) If I = 0

Process and output Long Codeword in CW_Buffer[ ]; reset CW_Buffer[ ]

6) If end Burst Marker not found

Go to step 2

7) Process and output Codewords in CW_Buffer[ ] using value of I

New

Page 15: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

15

CODEWORD FILLING ALGORITHM (CONTINUED)

Codewords in CW_Buffer[ ] processed for value of I as follows:

New

I CW_Buffer[ ]

0 shortened SHORT

1 full SHORT; shortened SHORT

2 shortened MEDIUM

3 full MEDIUM; shortened SHORT

4 full MEDIUM; full SHORT; shortened SHORT

5 shortened LONG

Page 16: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

16

CONCLUSION

The method for selecting, combining, and shortening of multiple codeword sizes and rates that maximizes overall efficiency (aggregate code rate) is described

A solution to mitigate the sparse last shortened codeword decoding problem is described which maintains the optimum efficiency

Loss of efficiency for single size codewords has been shown

A reversible upstream FEC encoding and decoding procedure is proposed

Page 17: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

17

PROPOSED MOTION

Move to:

Adopt the upstream codeword filling algorithm from prodan_3bn_01_0114.pdf for EPoC.

Moved: Richard Prodan

Second:

Page 18: UPSTREAM FEC C BASED D Bgrouper.ieee.org/groups/802/3/bn/public/jan14/prodan_3bn... · 2014. 1. 24. · 9 UPSTREAM FEC ENCODE PROCESS X GMII interface 64B/ 66B Line Encoder FEC parity

18

Thank You