International Journal of Engineering Trends and Technology (IJETT) – Volume 12 Number 1 - Jun 2014 Area & Power Efficient LDPC Decoder Shubham singh1, Nagendra sah2 (1Student and 2supervisor, ECE department, PEC University of technology Chandigarh, India) ABSTRACT: In this paper we represent an efficient LDPC decoder for which we simply utilize matrix multiplication technics. The basic LDPC decoder has very simple structure, for decoding a string of input is given as an array, which is processed with an Hmatrix. This gives a decoded output data and transmitted through communication system. By direct multiplication we save significant amount of area and power which is the primary objective of the paper. At the same time simulation time is less and coding is short and precise. The decoder designed here can detect and correct the errors of the incoming, encoded data signal of 12 bits length. For simulation we have used Xlinx 14.2 suit and coding language is Verilog. Keywords: Matrix multiplication, LDPC decoder, area and power reduction. I.INTRODUCTION In information theory, a low-density parity-check (LDPC) code is a linear error correcting code, a method of transmitting a message over a noisy transmission channel,[1][2] and is constructed using a sparse bipartite graph. LDPC codes are capacity-approaching codes, which means that practical constructions exist that allow the noise threshold to be set very close (or even arbitrarily close on the BEC) to the theoretical maximum the Shannon limit for a symmetric memory less channel. The noise threshold defines an upper bound for the channel noise, up to which the probability of lost information can be made as small as desired. Using iterative belief propagation techniques, LDPC codes can be decoded in time linear to their block length. LDPC codes are also known as Gallager codes, in honour of Robert G. Gallager, who developed the LDPC concept in his doctoral dissertation at the Massachusetts Institute of Technology in 1960,[3][4]. II.LDPC DECODER Representations for LDPC codes basically there are two different possibilities to represent LDPC codes. Like all linear block codes they can be described via matrices. The second possibility is a graphical representation. Matrix Representation Let’s look at an example for a low-density parity-check matrix first. The matrix defined in equation (1) is a parity check matrix with dimension n ×k for a (8, 4) code. We can now define two numbers describing this matrix. Wr for the number of 1’s in each row and Wc for the columns. For a matrix to be called lowdensity the two conditions Wc <<n and Wr<< m must ISSN: 2231-5381 H= 01011001 1 1 1 0 0 10 0 00100111 10011010 (1) In this matrix, each row represents one of the three parity-check constraints, while each column represents one of the six bits in the received code word. Code words can be obtained by putting the parity-check matrix H into this form [P T | In-k ] through basic row operations which is called generator matrix G. Finally, by multiplying all possible n-bit strings by G, all valid code words are obtained[5]. The marked path c2 - f1 - c5 - f2 - c2 is an example for a short cycle. Those should usually be avoided since they are bad for decoding performance. Be satisfied, In order to do this, the parity check matrix should usually be very large, so the example matrix can’t be really called low-density. Figure 1: Tanner graph corresponding to the parity check matrix in equation (1). 2.1.LDPC’s architecture: The circular matrix permutations that are required for aligning the message vectors associated with the sub matrices of a parity-check matrix to the PEs. The Gamma FU is used to subtract extrinsic value from the current bit value. In the Alpha-beta FU the minima search and LLR accumulation operations of the min-sum algorithm are performed. The new extrinsic value is recombined with the bit value in the DALU FU. LMEM is again used as intermediate storage [6] [7]. Fig 2 data path –LDPC mode http://www.ijettjournal.org Page 23 International Journal of Engineering Trends and Technology (IJETT) – Volume 12 Number 1 - Jun 2014 III.IMPLEMENTATION In this present paper, a Low-Density Parity Check decoder is implemented using VERILOG coding technique. The decoder designed here can detect and correct the errors of the incoming, encoded data signal of 12 bits length. For simulation, synthesis and timing analysis Xlinx 14.2. Fig 4: waveform for LDPC decoder Fig 3Symbol for LDPC decoder (Technology schematic) 4.2 Technology Schematic: This schematic is generated after the optimization and technology targeting phase of the synthesis process. It shows a representation of the design in terms of logic elements optimized to the target Xilinx device or "technology”. Viewing this schematic allows us to see a technology-level representation of our HDL optimized for a specific Xilinx architecture, which help us to discover design issues early in the design process. To achieve good performance, LDPC codes should have the following properties: (a) Large code length: The performance improves as the code length increases, and the code length cannot be too small (at least 1K) (b) Not too many small cycles: Too many small cycles in the code bipartite graph will seriously degrade the error-correcting performance. (c) Irregular node degree distribution: It has been well demonstrated that carefully designed LDPC codes with irregular node degree distributions remarkably out perform regular ones [8]. IV. EXPERIMENTAL RESULTS: The experiment results are divided into six parts. Which are simlutaion results as waveform, technology schematic, RTL schematic, utilization of resourses , area in terms of LUTs & delay and cell usage(gates). Steps for simulation in any coding is development of the algorithm to be coded..Once the algorithm is ready, coding is started and different modules are developed. These modules are independently checked for errors and later they are assembled to form the exact code. The whole code is also checked for errors and logic is checked by simulating the code 4.1 Simulation results: Simultaion is done on ISIM P.28xd, where 12 bit data is decoded into 6 bit data with help verilog code, for which total memory usage is 244556 kilobytes. By entering any value in input array we can obtain decoded data. ISSN: 2231-5381 Fig 5: technology schematic-1 for LDPC decoder 4.3 RTL schematic: After the HDL synthesis phase of the synthesis process, we can display a schematic representation of our synthesized source file. This schematic shows a representation of the pre-optimized design in terms of generic symbols, such as adders, multipliers, counters, AND gates, and OR gates, that are independent of the targeted Xilinx device. Fig 6: RTL Schematic for LDPC decoders http://www.ijettjournal.org Page 24 International Journal of Engineering Trends and Technology (IJETT) – Volume 12 Number 1 - Jun 2014 4.4 Utilization of resourses : In any design the utilization of resourses is most important, it defines the utility of device. For LDPC design made by me utilization is as follows: Fig 7. Critical Path Table 3. Usage of Function blocks 4.6 Cell usage in terms of gates: Following table gives the usage of gates , flipflpos and I/O buffers. B E L S Table 4. Resourse summary of usage of cells 4.5 SYNTHESIS: It is the final step in the design procedure. Once the code is simulated, synthesis is done. If the simulated code is not synthesisable, corrections have to be done to synthesis the code. 4.5.1Area in terms of LUTs and delay: Area of any design can be measured in terms of LUTs. The following Table shows the results obtained during the synthesis of the code which is developed to implement the LDPC decoder. A N D 2 A n d 3 I N V O R 2 X O R 2 F F s L D P C I O B U F F 1 8 I B U F F O B U F F 1 20 1 5 1 14 6 6 1 6 1 3 2 6 2 5 Table 5.usage of fates. Flipflops and I/O buffer V.APPLICATION OF LDPC DECODER 1. 2. 3. 4. 5. 6. G.hn/G.9960 (ITU-T Standard for networking over power lines, phone lines and coaxial cable) 802.3an (10 Giga-bit/s Ethernet over Twisted pair) CMMB(China Multimedia Mobile Broadcasting) DVB-S2 / DVB-T2 / DVB-C2 (Digital video broadcasting, 2nd Generation) DMB-T/H (Digital video broadcasting) WiMAX (IEEE 802.16e standard for microwave communications) [9] [10]. VI.CONCLUSION AND FUTURE SCOPE Table 1 area, delay, PI and Po counts table 2. Performance summary of LDPC decoder ISSN: 2231-5381 The decoder for LDPC codes is implemented with the use of the bipartite graph. This graph is obtained from the given ’H’ matrix. The code is first simulated and then synthesised to obtain detailed analysis of the decoder designed. We observed that, a high throughput LDPC decoding architectures should exploit the benefit of parallel decoding algorithms while reducing the interconnection complexity. The partially parallel architecture is a good trade-off between throughput and hardware cost. The fully parallel LDPC decoding architecture can achieve high decoding throughout, but it suffers from large hardware complexity caused by a large set of processing units and complex interconnections. A practical http://www.ijettjournal.org Page 25 International Journal of Engineering Trends and Technology (IJETT) – Volume 12 Number 1 - Jun 2014 solution of area efficient decoders is to use the partially parallel architecture in which a PU is shared for a several rows or columns. It is important in the partially parallel architecture to determine the rows or columns to be processed in a PU and their processing order. The dependencies between rows and columns should be considered to minimize the overall processing time by overlapping the decoding operations. REFERENCES: [1]. David J.C. MacKay (2003) Information theory, Inference and Learning Algorithms, CUP, ISBN 0-521-64298-1 [2]. Todd K. Moon (2005) Error Correction Coding, Mathematical Methods and Algorithms. Wiley, ISBN 0-47164800-0 [3]. Larry Hardesty (January 21, 2010). "Explained: Gallager codes".MIT News. Retrieved August 7, 2013. [4]. R.G. Gallager, “Low density parity check codes,” IRE Trans. Inform. Theory, vol. IT-8, pp. 21–28, Jan. 1962. [5].http://en.wikipedia.org/wiki/Low-density_parity-check_code [6]. S. Kunze, E Matuˇs, G. Fettweis, T. Kobori.“Combining LDPC, TURBO and VITERBI Decoder: Benefits and cost”, 978-1-4577-1921-9©2011©IEEE. [7]. Ashima sood, shubham singh, nagendra sah,“comparative study of LDPC decoders and Viterbi decoders”,vol2 issue 3 IJSRD may 2014. [8].Hao Zhong and Tong Zhang, “JOINT CODE-ENCODERDECODER DESIGN FOR LDPC CODING SYSTEM VLSI IMPLEMENTATION”, ISCAS 2, page 389-392. (2004). [9]. Li-Hsieh Lin and Kuei-Ann Wen, “A Novel Application of LDPC-Based Decoder for WiMAX Dual-mode Inner Encoder”, 2- 9600551-5-2© 2006 EuMA [10]. Ashima sood, shubham singh, nagendra sah,“comparative study of LDPC decoders and Viterbi decoders”,vol2 issue 3 IJSRD may 20 ISSN: 2231-5381 http://www.ijettjournal.org Page 26