Presentation on theme: "Multi-Rate Layered Decoder Architecture for Block LDPC Codes of the IEEE 802.11n Wireless Standard Kiran Gunnam 1, Gwan Choi 2, Weihuang Wang 2, Mark Yeary."— Presentation transcript:
Multi-Rate Layered Decoder Architecture for Block LDPC Codes of the IEEE n Wireless Standard Kiran Gunnam 1, Gwan Choi 2, Weihuang Wang 2, Mark Yeary 3 1 Marvell Semiconductor, 2 Texas A&M University, 3 University of Oklahoma
Regulatory Patent Information The material contained in this presentation and ISCAS paper has features which are contained in the patent disclosure for LDPC decoding architectures. Written permission from Texas A&M University System is needed for the use of the concepts presented here.
3 Outline Introduction of LDPC Problem Statement On-the-fly computation for QC-LDPC Multi-rate Layered Decoder Results and performance comparison
4 Example LDPC Code
5 Decoder Architectures Fully Parallel Architecture: All the check updates in one clock cycle and all the bit updates in one more clock cycle. Huge Hardware resources and routing congestion. Serial Architecture All Check updates and bit updates in a serial fashion. Huge Memory requirement. Memory in critical path.
6 Semi-Parallel Architecture Check updates and bit updates using several units. Partitioned memory by imposing structure on H matrix. Practical solution for most of the applications. Complexity differs based on architecture and scheduling
7 The authors in  reported that 95% of power consumption of the decoder chip developed results from memory accesses. The authors in  reported that 50% of their decoder power is from memory accesses. Memory access is a bottleneck in preventing full utilization of units. Efficient implementations for the irregular codes is a hard problem Problem Statement  Yijun Li et al, "Power efficient architecture for (3,6)-regular low-density parity-check code decoder, IEEE ISCAS 2004  Mansour et al A 640-Mb/s 2048-Bit Programmable LDPC Decoder Chip-IEEE Journal of Solid-State Circuits, March 2006
8 Irregular QC-LDPC codes Different base matrices to support different rates. Different expansion factors (z) to support multiple lengths. All the shift coefficients for different codes for a given rate are obtained from the same base matrix using modulo arithmetic
9 Irregular LDPC codes
10 Irregular LDPC codes
11 Irregular LDPC codes
12 Irregular LDPC codes Existing implementations  show that these are more complex to implement. However these codes have the better BER performance and selected for IEEE e and IEEE n. It is anticipated that these codes will be the default choice for most of the standards. We show that with out-of-order processing and scheduling of layered processing, it is possible to design very efficient architectures  Hocevar, D.E., "A reduced complexity decoder architecture via layered decoding of LDPC codes," IEEE Workshop on Signal Processing Systems, SIPS pp , Oct. 2004
13 On-the-fly computation This research introduces the following concepts to LDPC decoder implementation [ ICASSP04,Asilomar06,VLSI07,ISWPC07,ISCAS07,ICC07] 1. Block serial scheduling 2. Value-reuse, 3. Scheduling of layered processing, 4. Out-of-order block processing, 5. Master-slave router, 6. Dynamic state, 7.Speculative Computation 8.Run-time Application Compiler [support for different LDPC codes with in a class of codes. Class:802.11n,802.16e,Array, etc. Off-line re-configurable for several regular and irregular LDPC codes] All these concepts are termed as On-the-fly computation as the core of these concepts are based on minimizing memory and re-computations by employing just in-time scheduling.
14 Decoder architecture New Dataflow Graph for Layered Decoding
15 Decoder for Irregular codes
16 Pipeline for Irregular codes R selection for R new operates out-of-order to feed the data for PS processing of next layer
17 Out-of-order layer processing for R Selection R selection is out-of-order so that it can feed the data required for the PS processing of the second layer. So here we decoupled the execution of R new messages with the execution of CNU processing. Here we execute the instruction/computation at precise moment when the result is needed!!! PS processingR selection
18 Out-of-order block processing for R Selection Re-ordering of block processing. While processing the layer 2, the blocks which depend on layer 1 will be processed last to allow for the pipeline latency. In the above example, the pipeline latency can be 5. The vector pipeline depth is 5.so no stall cycles are needed while processing the layer 2 due to the pipelining. [In other implementations, the stall cycles are introduced – which will effectively reduce the throughput by a huge margin.] The minimum number of stall cycles due to the memory configuration is 1.(due to FS write) It is possible to change the memory configurations such that FS write and FS read cycles are stall cycles. In this case, the FS memory will be a single port memory. Now there will be 2 stall cycles. PS processingR selection
19 Cyclic Shifter This arrangement can support the base matrices having the expansion factors multiples of z by using z x z cyclic shifters. Works for n in which the expansion factors are 27,54,81
21 Layered Decoder Throughput Results- FPGA, n
22 Layered Decoder Throughput Results- ASIC, n  Rovini, M.; L'Insalata, N.E.; Rossi, F.; Fanucci, L., "VLSI design of a high-throughput multi-rate decoder for structured LDPC codes," Digital System Design, Proceedings. 8th Euromicro Conference on, vol., no.pp , 30 Aug.-3 Sept  Y.Sun, M. Karkooti and J. R. Cavallaro, High Throughput, Parallel, Scalable LDPC Encoder/Decoder Architecture for OFDM Systems Fifth IEEE Dallas Circuits and Systems Workshop: Design, Application, Integration and Software. Oct 2006, Dallas. Proposed decoder takes around 100K logic gates and memory bits.  takes 375 K logic gates and RAM bits for memory for a throughput of 940 Mbps  takes 195 K logic gates for pipelined implementation, plus 77, 760 bits memories. for a throughput of 1 Gbps
23 Our other LDPC Publications 1. K.Gunnam, G. Choi, M.B. Yeary, and M. Atiquzzaman, VLSI Architectures for Layered Decoding for Irregular LDPC Codes of WiMax, Accepted for IEEE International Conference on Communications (ICC), June K. Gunnam,W. Wang, G. Choi and M.B. Yeary, VLSI Architectures for Turbo Decoding Message Passing Using Min-Sum for Rate-Compatible Array LDPC Codes, IEEE International Symposium on Wireless Pervasive Computing (ISWPC), February K.Gunnam, G. Choi and M.B. Yeary A Parallel Layered Decoder Architecture for Array LDPC Codes, IEEE VLSI Design Conference (VLSI), January K.Gunnam, G. Choi, W. Wang, E. Kim, and M.B. Yeary, Decoding of Quasi- cyclic LDPC Codes Using an On-the-Fly Computation, 40th Asilomar Conference on Signals, Systems and Computers (Asilomar), October K.Gunnam, G. Choi and M. B. Yeary, An LDPC Decoding Schedule for Memory Access Reduction, IEEE International Conference on Acoustics, Speech, and Signal Processing, May 2004 (ICASSP)
24 Other Publications 5. K. Gunnam, G. Choi, and M. Yeary, A low-power preamble detection methodology for packet based RF modems on all-digital sensor front-ends, IEEE-IMTC, Warsaw, May K.Gunnam, K.Chadha and M.B.Yeary, New Optimizations for Carrier Synchronization in Single Carrier Systems, IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP 2005). 3. J. Valasek, K.Gunnam, J. Kimmett, D. Hughes and J. Junkins., "Vision Based Sensor and Navigation System for Autonomous Aerial Refueling," Journal of Guidance and Control, October K.Gunnam, D.C.Hughes, J.L.Junkins and N.Kehtarnavaz,."A Vision Based DSP Embedded Optical Navigation Sensor IEEE Sensors Journal, vol.2.pp ,Oct K.Gunnam, D.C.Hughes, J.L.Junkins and N.Kehtarnavaz,."A DSP Embedded Optical Navigation System" Proceedings of Sixth IEEE International Conference on Signal Processing, ICSP 2002.
26 Acknowledgements NASA, ONR, DoD, Texas Instruments grants for the research Intel, Star Vision, Schlumberger for the research internships TAMU Ph.D. scholarship. Marvell who is supporting further development of this work in the commercial products