SlideShare a Scribd company logo
International Journal of Electrical and Computer Engineering (IJECE)
Vol. 7, No. 4, August 2017, pp. 1824~1832
ISSN: 2088-8708, DOI: 10.11591/ijece.v7i4.pp1824-1832  1824
Journal homepage: http://iaesjournal.com/online/index.php/IJECE
VHDL Design and FPGA Implementation of a High Data Rate
Turbo Decoder based on Majority Logic Codes
A. Boudaoud, M. El Haroussi, E. Abdelmounim
ASTI Laboratory, FST Settat, Hassan I University, Settat, Morocco
Article Info ABSTRACT
Article history:
Received Jan 6, 2017
Revised Mar 10, 2017
Accepted Mar 27, 2017
This paper presents the electronic synthesis, VHDL design and
implementation on FPGA of turbo decoders for Difference Set Codes (DSC)
decoded by the majority logic (ML). The VHDL design is based on the
decoding Equations that we have simplified, in order to reduce the
complexity and is implemented on parallel process to increase the data rate.
A co-simulation using the Dsp-Builder tool on a platform designed on
Matlab/Simulink, allows the measurement of the performance in terms of
BER (Bit Error Rate) as well as the decoder validation. These decoders can
be a good choice for future digital transmission chains. For example, for the
Turbo decoder based on the product code DSC (21.11)² with a quantization
of 5 bits and for one complete iteration, the results show the possibility of
integration of our entire turbo decoder on a single chip, with lower latency at
0.23 microseconds and data rate greater than 500 Mb/s.
Keyword:
Error correcting codes
FPGA implementation
Interleaver
ML-DSC codes
Turbo decoding
VHDL language
Copyright © 2017 Institute of Advanced Engineering and Science.
All rights reserved.
Corresponding Author:
Abdelghani Boudaoud,
ASTI Laboratory, FST Settat,
Hassan I University,
B.P: 577, Casablanca Road, Km 3, Settat, Morocco.
Email: boudaoud586@gmail.com
1. INTRODUCTION
The discovery, of Turbo-Codes by C.Berrou [1] in 1993, represents an essential step forward for
information transmission systems. Indeed, most terrestrial and satellite transmission standards have also
adopted them. Thus NASA uses it in all their space probes since 2003; similarly, the European Space Agency
(ESA) lunar probe SMART-1. Turbo-codes are also used as in UMTS, ADSL-2 and in mobile networks 4G-
LTE and LTE-Advanced [20].
Initially, the turbo codes were based on convolutional codes concatenated in parallel. R.Pyndiah in
1994 [2] proposed the turbo block codes (TBC), which are an alternative to turbo convolutional codes. These
TBC used the decoding weighted inputs and outputs (SISO). The iterative decoding process that we use,
follows the model proposed by Pyndiah and built from the “One Step Majority Logic Decodable Codes”
(OSMLD) [3] using the soft-out extension threshold decoding classic of Massey [4-9], [14].
The majority decoding uses a linear combination of a reduced set of syndromes represented by the
orthogonal Equations.
The current digital systems and channel coding especially decoding, require high data rates.
Decoding rate depends on the chosen architecture in the electronic design; the complexity of the circuit (ie its
surface) is often considered as a critical parameter. In this context of very high throughput, the operating
speed must be maximized while minimizing complexity.
IJECE ISSN: 2088-8708 
VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud)
1825
2. CODING AND DECODING OF PRODUCT CODES
2.1. Product Codes Construction
Consider tow systematic block linear codes C1(n1, k1, d1) and C2(n2, k2, d2). Where ni, ki and di are,
in order: the code word length, the information symbols number and the Hamming distance (i = 1,2).
Product code CP=C2C1 built based on C1 and C2, which has the parameters (n1×n2, k1×k2, d1×d2),
is obtained by encoding the k2×k1 information symbols by the C1 code and k2×n1 symbols by C2 code, see
Figure 1. In this work, we choose C1=C2 and, DSC(7,3,1), DSC(21,11,2) and DSC(73,45,4) codes.
2.2. Turbo Decoding Principle
A turbo decoder consists of SISO decoders (generally two decoders) and interleavers as shown in
Figure 2. The channel symbols are received by line machine, by the first decoder which gives soft priori
information, and then the channel information and the extrinsic information are interleaved and supplied
column by column, to the input of the second decoder. A complete iteration consists of activating each
decoder once. Thus, with more iteration, the decoder converges to the right solution, however it requires
more time.
Figure 1. Product code principle
Figure 2. Structure of the turbo decoder
3. THE SISO DECODER
3.1. Threshold Decoding Algorithm
The SISO (Soft In-Soft Out) decoder is the base element of the turbo decoding. We used SISO
decoder for which the threshold decoding algorithm [3], [4], [13] is given below:
For each j = n to 1
a. Calculate the terms Bi and ωi with iє {1,..,M}
b. Calculate B0 and w0
c. Calculate the extrinsic information 

M
i iij ByW 1
)21()( 
d. Calculate
jjj Wyy
Es
yLLR
N

0
4
)(
e. If (LLR(yj)>0)  Hard Decision =1
else  Hard Decision =0
Where:
a. n: Code length;
 ISSN: 2088-8708
IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832
1826
b. M: number of orthogonal Equations;
c. Bi: the orthogonal Equation on the ith
bit, after remove of ith
bit;
d. ωi: proportional to the reliability of ith
parity Equation,
e. W (yj): extrinsic information representing the estimated orthogonal Equations on the symbol yj;
f. LLR (yi) the decision function on the symbol yj;
And:





















nik
kik
ik
nik
kik
ik
L
L
i
,1
,1
)
2
tanh(1
)
2
tanh(1
ln
(1)
3.2. Structural Diagram of SISO Decoder
We have designed, in VHDL, a SISO decoder, which can be used in an iterative process. This
iterative process we use follows the model proposed by Pyndiah [3]; See Figure 3.
The soft input and respectively the soft output of the qth
step (half-iteration) of the iterative decoding
are given by:
)()()1( qWqRqR 
)()(4)(
0
qWqR
N
E
qLLR s

Where R represents the lines or columns of the received and quantified word, W(q) the extrinsic
information calculated by the previous decoder and α is a coefficient which varies with each iteration. In
addition to its threshold output, the decoder has a hard decision output that we used for its validation.
Figure 3. SISO Decoder (elementary cell of turbo decoding)
3.3 FPGA Implementation of the SISO Decoder
To reduce the complexity of the algorithm, we used, to simplify the expression (1), the Equation (2)
below proposed by [12] and applied to the majority logic codes by [13], [11], [21].
The simplified expression of our decoder becomes:
(2)
The architecture of the proposed SISO decoder was described in VHDL and implemented on FPGA
using Quartus II tool from Altera. We used The EPC4CE115F29C7 FPGA type, containing about 115,000



n
k
ikik
ni
k
LsignLi
1
1
)(*min
IJECE ISSN: 2088-8708 
VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud)
1827
LEs. We studied the complexity evolution of our decoders for different quantization bit number using
C(7,3)C(7,3), C(21,11)C(21,11) and C(73,45)C(73,45) product codes.
The results obtained, after the Quartus II synthesis, are summarized in Table 1. Figure 4 shows a
functional simulation example of our SISO decoder for DSC (7,3) code on which it is reported that the
outputs are updated at each rising edge of the clock, hence the latency is one clock cycle.
Figure 4. Simulation example of our SISO decoder for the DSC (7,3) code, with 5 bits of quantization.
Table 1. The Obtained Data for Different SISO Decoders
4. THE INTERLEAVER
4.1. The Interleaver Principle
An interleaver is a system that receives a sequence of symbols in its input and provides another of
the same alphabet to the output in a completely different order. In our case of product codes, the operation of
the interleaver is summarized in two stages: receipt of all symbols of the product code matrix n2*n1, and
swapping row-column of this matrix.
4.2. FPGA Implementation of the Interleaver
The used interleavers are described in VHDL and implemented on the same FPGA circuit using
Quartus II tool for C(7,3)C(7,3), C(21,11)C(21,11) and C(73,45)C(73,45) product codes. The Figure 5
shows the external structure of the interleaver design for the C(7,3)C(7,3) product code.
SISO Decoders Characteristics
Quantization bit number
4 Bits 5 Bits 6 Bits 7 Bits
DSC(7,3)
Complexity(LE) 714 994 1141 1302
Frequency max. (MHz) 47.62 43.71 41.51 41.46
throughput max.(Gb/s) 0.33 0.31 0.29 0.29
Latency (ns) 21.00 22.88 24.09 24.12
DSC(21,11)
Complexity(LE) 5334 6496 7749 8863
Frequency max. (MHz) 24.99 24.30 23.58 23. 34
throughput max.(Gb/s) 0.52 0.51 0.50 0.49
Latency (ns) 40.02 41.15 42.41 42.84
DSC(73,45)
Complexity(LE) 52516 63155 78833 90513
Frequency max. (MHz) 20.02 18.56 16.86 16.12
throughput max.(Gb/s) 1.46 1.35 1.23 1.18
Latency (ns) 49.95 53.88 59.31 62.03
 ISSN: 2088-8708
IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832
1828
In Figure 6, which illustrates an example of functional simulation of that interleaver, we note that
input lines are recovered as columns on the outputs with latency equals to the length of the base code, seven
clock periods in this case.
Table 2 summarizes the readings of the complexity, the maximum frequency and the maximum
throughput, for different interleavers depending on the quantization bit number.
Figure 5. Interleaver structure for DSC(7,3)C(7,3) product code
Figure 6. Example of functional simulation of the interleaver for DSC(7,3) code on Quartus II software.
Table 2. Caracteristics of the Intereleavers
Interleaver Characteristics
Quantization bit number
4 Bits 5 Bits 6 Bits 7 Bits
7 To7
Symbols
Complexity(LE) 570 708 850 988
Frequency max. (MHz) 219.44 218.67 209.16 203.04
throughput max.(Gb/s) 1.54 1.53 1.46 1.42
Latency (ns) 31.90 32.01 33.47 34.48
21 To 21
Symbols
Complexity(LE) 4643 5799 6962 8113
Frequency max. (MHz) 152.00 148.19 139.94 130.77
throughput max.(Gb/s) 3.19 3.11 2.94 2.75
Latency (ns) 138.16 141.71 150.06 160.59
73 To 73
Symbols
Complexity(LE) 57388 71867 86014 100302
Frequency max. (MHz) 84.31 82.22 80.03 76.95
throughput max.(Gb/s) 6.15 6.00 5.84 5.62
Latency (ns) 865.85 887.86 912.16 948.67
IJECE ISSN: 2088-8708 
VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud)
1829
5. THE TURBO DECODER
5.1. FPGA Implementation of Turbo Decoder
Our turbo decoder consists of two SISO decoder and four interleavers similar to those discussed
above, see Figure 7. Figure 8 shows the evolution of the silicon surface (expressed in logic element LE),
occupied by the components of the Turbo decoder for C(7,3)C(7,3), C(21,11)C(21,11) and
C(73,45)C(73,45) product codes, with a quantization of 5 bits. Figure 9 illustrates this surface with
quantization of 3 to 7 bits for C(21,11)C(21,11) codes.
Figure 7. Detailed structure of our Turbo decoder
Figure 8. Area occupied by different SISO decoders
for quantization of 5 bits
Figure 9. DSC(21,11)² SISO decoders occupied
area for different bits of quantization (3 to 7 bits)
5.2. Validation of our Turbo Decoder
After functional simulation on Quartus II software, our design is also validated on a co-simulation
chain on Matlab / Simulink and DSP Builder.
The co-simulation chain proposed (Figure 10) consists of the main components of a digital
transmission chain: the information to be transmitted is generated in a random manner, coded by a product
coder before being modulated on Binary Phase Shift Keying (BPSK) modulation. The channel, AWGN (Add
white Gaussian Noise) will insert random errors in the information received. The block called in the figure 11
"Turbo decoder" contains the Turbo decoder to test, functions for the quantization and a data adaptation.
Quantization assigns to each symbol a fixed number of bits, according to the decoder. The loop is
closed by a counter of "bit error" in order to measure the BER performance (Bit Error Rate) versus
SNR(Signal-to-Noise Ratio). Figure 11 illustrates the performance for the DSC(21,11) turbo decoder at the
first iteration in the theoretical case and in VHDL with quantization of 4, 5 and 7 bits.
In Figure 12, we presented the BER performance of the same turbo decoder with a quantization of 5
bits for 1st
, 2nd
and 3rd
iteration
 ISSN: 2088-8708
IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832
1830
Figure 10: the proposed co-simulation chain for the BER performance measurement of the turbo decoder
Figure 12. BER performances of Turbo decoder for 1st
, 2nd
and 3rd
iteration
5.3. Performances of our Turbo Decoder
Our turbo decoder designed and implemented on the EPC4CE115F29C7 FPGA circuit presents the
performances summarized in Table 3. It is evident from Table 4, that the proposed design has a good
performance compared to other recent architectures; and especially the latency that is nine times lower than
the least one in the other designs.
Table 3. Summary of DSC (21, 11) Turbo Decoder Performances With a Quantization of 5 Bits.
IterationPath*
Throughput
max. (Mb/s)
Latency
min. (µs)
Complexity
(LE)
Occupation
(%)
BER at
SNR=3dB
1 2S+I 510 0.224 24 590 21.38% 4.72 10-2
2 4S+3I 255 0.590 36 188 31.46% 9.91 10-4
3 6S+5I 170 0.956 36 188 31.46% 5.62 10-5
(*) Information path: S for SISO decoder and I for Interleaver
Table 4. Comparaison With Others Turbo Decoder Design
This work [18]
2010
[15]
2005
[16]
2003
[17]
20132nd
iter. 3rd
iter.
Number of Iterations 2 3 5 6 4 NA
Throughput (Mb/s) 255 170 930 758 75.6 346
Latency(µs) 0.59 0.956 5.5 10.5 5.35 NA
Frame length 441 441 5120 5120 432 NA
BER at SNR=3dB 9.9 10-4
5.6 10-5
4 10-6
NA 4 10-7
2 10-3
Modulation BPSK BPSK BPSK NA NA BPSK
Channel type AWGN AWGN AWGN NA NA AWGN
Code rate 0.274 0.274 NA NA 0.33 0.33
IJECE ISSN: 2088-8708 
VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud)
1831
6. CONCLUSION
The approach of the VHDL design using a parallel mode and the FPGA implementation of the
proposed turbo decoder has allowed us a high data rate, low complexity and very low latency. This will
justify its use in future communication channels.
Use of a FPGA circuit with better “Speedgrad” could further increase data rate and reduce latency.
In addition, a review of the interleaver architecture is necessary to reduce more its complexity.
REFERENCES
[1] C Berrou, A. Glavieux, P. Thitimajshima, “Near Shannon Limit Error Correcting Coding and Decoding: Turbo
Codes”, IEEE International Conference on Communication ICC93, vol. 2/3, May 1993.
[2] R. Pyndiah, A. Glavieux, A. Picart, S. Jacq, “Near Optimum Decoding of Product Codes”, Globecom'94, San
Fransisco,1994.
[3] M. Belkasmi, M. Lahmer, F. Ayoub, “Iterative Threshold Decoding of Product Codes Constructed from Majority
Logic Decodable Codes”, ICCTA conf, Damascus,Syria, pp. 2376- 2381, April 2006.
[4] J. L. Massey, “Threshold Decoding”, M.I.T. Press, Cambridge, Massachusetts, 1963.
[5] E. J.. Weldon Jr, “Difference-Set Cyclic Codes”, Bell System Technical Journal, Vol.45, pp. 1045_1055, sep 1966.
[6] R. L. Graham, F. J. MacWilliams, “On the Number of Information Symbols in Difference-Set Cyclic Codes”, Bell
System Technical Journal, vol. 45, pp. 1057-1070, Sep 1966.
[7] J. Singer, “A Theorem in Finite Projective Geometry and Some Applications to Numbers Theory”, AMS Trans.,
vol. 43, pp. 377-385, 1938.
[8] F. J. MacWilliams, “A Table of Primitive Binary Idempotents of odd Length n, 7 ≤n ≤511”, IEEE Trans. Inform.
Theory, vol. IT-25, pp. 118–123, Jan. 1979.
[9] F. J. MacWilliams, J. Seery, “The weight Distributions of some minimal Cyclic Codes,” IEEE Trans. Inform.
Theory, vol. IT-27, pp. 796–806, Nov. 1981
[10] C. Clarck, B. Cain, “Error-Correction Coding for Digital Communications,” Plenum Press, 1983.
[11] M. Elharoussi, M. Belkasmi, “VHDL Design and FPGA Implementation of a Fully Parallel Architecture for
Iterative Decoder of Majority Logic Codes for High Data Rate Applications”, Journal of Wireless Networking and
Communications (JWNC), 2(4), pp. 35-42, 2012
[12] J. Hagenauer, E. Offer, L. Papke, “Iterative Decoding of Binary Block and Convolutional Codes”, IEEE Trans.
Inform. Theory, Mars 1996, Vol. 42, pp. 429-446.
[13] A.Boudaoud, E.Abdelmounim, A. Barazzouk, J. Zbitou, M.Belkasmi, “FPGA Implementation of HIHO and SIHO
Decoders for DSC Codes”, IEEE explorer, pp. 1461 – 1464, April 2014
[14] L. D. Rudolph, “Geometric Configuration and Majority Logic Decodable Codes”, PhD thesis, University of
Oklahoma, Norman, 1964.
[15] G. Prescher, T. Gemmeke, T.G. Noll, “A parametrizable Lowpower High-throughput Turbo-decoder,” in IEEE Int.
Conf. Acoustics, Speech, and Signal Processing (ICASSP), volume 5, pages 25-28, Mar. 2005.
[16] B. Bougard, A. Giulietti, V. Derudder, J. Willem, S. Dupont, F. Catthoor, L. Hollevoet, L. V. der Perre, H. D. Man,
R. Lauwereins, “A scalable 8.7 nj/bit 75.6 Mb/s parallel concatenated convolutional (turbo-)codec,” in IEEE Int.
Solid-State Circuit Conf., pp. 152–484, Feb. 2003.
[17] Rahul Shrestha, Roy P Paily, “Design and Implementation of a High Speed MAP Decoder Architecture for Turbo
Decoding”, 26th
IEEE International Conference on VLSI Design and the 12th IEEE International Conference on
Embedded Systems, pp. 86-91, 2013.
[18] S. M. Karim, I. Chakrabarti, “An Improved Low-power High-throughput log-MAP Turbo Decoder", IEEE Trans.
Consum. Electron., vol. 56, no. 2, pp. 450-457, 2010
[19] A. Z. Jidin, T. Sutikno, “FPGA Implementation of Low-Area Square Root Calculator”, TELKOMNIKA
Telecommunication, Computing, Electronics and Control, 2015; 13(4): 1145-1152.
[20] Yi Bo-nian, “Turbo Code Design and Implementation of High-Speed Parallel Decoder”, TELKOMNIKA, Vol. 11,
no. 4, April 2013, pp. 2116~2123
[21] M. Elharoussi, M. Belkasmi, “Design and FPGA Implementation of a Fully Parallel Architecture for Turbo
decoding of majority logic codes For High data rate Applications”, International Journal of Computing and
Information Technology (IJCIT), Vol. 3, N_2, pp. 81-95, 2011
 ISSN: 2088-8708
IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832
1832
BIOGRAPHIES OF AUTHORS
Abdelghani BOUDAOUD was born in Azilal Morocco in 1973. He is graduated from High
Normal School of Technical Education (ENSET) in 1996 at Mohammedia Morocco. In 2003, he
had the diploma of aggregation in electrical engineering at ENSET of Rabat Morocco. In 2011 he
obtained the Master in «Laser Instrumentation and Optoelectronic Components” at the Faculty of
Science and Technology (FST) Hassan I University, Settat Morocco. Currently, he is PhD student
in “System Analysis and Information Technology Laboratory “(ATSI) in FST, Hassan I
University, Settat, Morocco.
Mustapha ELHAROUSSI was born in Azilal Morocco in 1974; he received his PhD in Error
Correcting Codes from Mohammed V University Morocco in 2013. In 2014 he joined, as
Professor, applied Physics department of FST, Hassan I University, Settat, Morocco. His current
research interests include hardware design of algorithms applied to information processing and
control of industrial systems at System Analysis and Information Technology Laboratory at
Hassan I University, Settat, Morocco.
Elhassane ABDELMOUNIM was born in Oued-Zem Morocco in 1965; he received his PhD in
Spectral analysis from Limoges University France in 1994. In 1996, he joined, as Professor,
applied physics department of FST, Hassan I University, Settat, Morocco. His current research
interests include digital signal processing and machine learning. He is currently coordinator of a
Bachelor of Science in electrical engineering and he is researcher at System Analysis and
Information Technology Laboratory at Hassan I University, Settat, Morocco.
Ad

Recommended

Hardware implementation of the serpent block cipher using fpga technology
Hardware implementation of the serpent block cipher using fpga technology
IAEME Publication
 
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Www
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Www
guest3f9c6b
 
G364246
G364246
IJERA Editor
 
Fpga implementation of (15,7) bch encoder and decoder for text message
Fpga implementation of (15,7) bch encoder and decoder for text message
eSAT Journals
 
Dw2645274531
Dw2645274531
IJMER
 
K0216571
K0216571
IOSR Journals
 
SC-FDM-IDMA Scheme Employing BCH Coding
SC-FDM-IDMA Scheme Employing BCH Coding
IJECEIAES
 
Design and implementation of log domain decoder
Design and implementation of log domain decoder
IJECEIAES
 
1570285065
1570285065
Chiranjeevi Shilam
 
AN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODER
IJCSEA Journal
 
Efficient Design of Reversible Sequential Circuit
Efficient Design of Reversible Sequential Circuit
IOSR Journals
 
2016 03-03 marchand
2016 03-03 marchand
SCEE Team
 
Graphical Model Selection for Big Data
Graphical Model Selection for Big Data
Alexander Jung
 
RISC Implementation Of Digital IIR Filter in DSP
RISC Implementation Of Digital IIR Filter in DSP
iosrjce
 
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Editor IJCATR
 
Differential 8 PSK code with multisymbol interleaving
Differential 8 PSK code with multisymbol interleaving
Saša Đorđević
 
J0445255
J0445255
IJERA Editor
 
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
IJORCS
 
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
ALYAA AL-BARRAK
 
Network Coding
Network Coding
Kishoj Bajracharya
 
Fpga 11-sequence-detector-fir-iir-filter
Fpga 11-sequence-detector-fir-iir-filter
Malik Tauqir Hasan
 
Simple regenerating codes: Network Coding for Cloud Storage
Simple regenerating codes: Network Coding for Cloud Storage
Kevin Tong
 
40120130406011 2-3
40120130406011 2-3
IAEME Publication
 
K505028085
K505028085
IJERA Editor
 
Pilot induced cyclostationarity based method for dvb system identification
Pilot induced cyclostationarity based method for dvb system identification
iaemedu
 
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
cscpconf
 
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
IJERA Editor
 
Lb35189919904
Lb35189919904
IJERA Editor
 
Turbo encoder and decoder chip design and FPGA device analysis for communicat...
Turbo encoder and decoder chip design and FPGA device analysis for communicat...
International Journal of Reconfigurable and Embedded Systems
 
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
VLSICS Design
 

More Related Content

What's hot (19)

1570285065
1570285065
Chiranjeevi Shilam
 
AN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODER
IJCSEA Journal
 
Efficient Design of Reversible Sequential Circuit
Efficient Design of Reversible Sequential Circuit
IOSR Journals
 
2016 03-03 marchand
2016 03-03 marchand
SCEE Team
 
Graphical Model Selection for Big Data
Graphical Model Selection for Big Data
Alexander Jung
 
RISC Implementation Of Digital IIR Filter in DSP
RISC Implementation Of Digital IIR Filter in DSP
iosrjce
 
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Editor IJCATR
 
Differential 8 PSK code with multisymbol interleaving
Differential 8 PSK code with multisymbol interleaving
Saša Đorđević
 
J0445255
J0445255
IJERA Editor
 
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
IJORCS
 
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
ALYAA AL-BARRAK
 
Network Coding
Network Coding
Kishoj Bajracharya
 
Fpga 11-sequence-detector-fir-iir-filter
Fpga 11-sequence-detector-fir-iir-filter
Malik Tauqir Hasan
 
Simple regenerating codes: Network Coding for Cloud Storage
Simple regenerating codes: Network Coding for Cloud Storage
Kevin Tong
 
40120130406011 2-3
40120130406011 2-3
IAEME Publication
 
K505028085
K505028085
IJERA Editor
 
Pilot induced cyclostationarity based method for dvb system identification
Pilot induced cyclostationarity based method for dvb system identification
iaemedu
 
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
cscpconf
 
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
IJERA Editor
 
AN EFFICIENT VITERBI DECODER
AN EFFICIENT VITERBI DECODER
IJCSEA Journal
 
Efficient Design of Reversible Sequential Circuit
Efficient Design of Reversible Sequential Circuit
IOSR Journals
 
2016 03-03 marchand
2016 03-03 marchand
SCEE Team
 
Graphical Model Selection for Big Data
Graphical Model Selection for Big Data
Alexander Jung
 
RISC Implementation Of Digital IIR Filter in DSP
RISC Implementation Of Digital IIR Filter in DSP
iosrjce
 
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Watermarking of JPEG2000 Compressed Images with Improved Encryption
Editor IJCATR
 
Differential 8 PSK code with multisymbol interleaving
Differential 8 PSK code with multisymbol interleaving
Saša Đorđević
 
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
IJORCS
 
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
Performance of BCH and RS Codes in MIMO System Using MPFEC Diversity Technique
ALYAA AL-BARRAK
 
Fpga 11-sequence-detector-fir-iir-filter
Fpga 11-sequence-detector-fir-iir-filter
Malik Tauqir Hasan
 
Simple regenerating codes: Network Coding for Cloud Storage
Simple regenerating codes: Network Coding for Cloud Storage
Kevin Tong
 
Pilot induced cyclostationarity based method for dvb system identification
Pilot induced cyclostationarity based method for dvb system identification
iaemedu
 
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
MODIFIED GOLDEN CODES FOR IMPROVED ERROR RATES THROUGH LOW COMPLEX SPHERE DEC...
cscpconf
 
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
Performance Study of RS (255, 239) and RS (255.233) Used Respectively in DVB-...
IJERA Editor
 

Similar to VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder based on Majority Logic Codes (20)

Lb35189919904
Lb35189919904
IJERA Editor
 
Turbo encoder and decoder chip design and FPGA device analysis for communicat...
Turbo encoder and decoder chip design and FPGA device analysis for communicat...
International Journal of Reconfigurable and Embedded Systems
 
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
VLSICS Design
 
Turbo Code
Turbo Code
SudhanshuSaini5
 
IRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo Codes
IRJET Journal
 
simulation of turbo encoding and decoding
simulation of turbo encoding and decoding
Gulafshan Saifi
 
Turbo Codes
Turbo Codes
vasanth_mtech
 
Research Paper
Research Paper
Anjali S Babu
 
Convolution codes and turbo codes
Convolution codes and turbo codes
Manish Srivastava
 
Presentation
Presentation
Lalit Garg
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
Reliability Level List Based Iterative SISO Decoding Algorithm for Block Turb...
Reliability Level List Based Iterative SISO Decoding Algorithm for Block Turb...
TELKOMNIKA JOURNAL
 
Simulation of convolutional encoder
Simulation of convolutional encoder
eSAT Journals
 
Simulation of convolutional encoder
Simulation of convolutional encoder
eSAT Publishing House
 
Simulation of Turbo Convolutional Codes for Deep Space Mission
Simulation of Turbo Convolutional Codes for Deep Space Mission
IJERA Editor
 
Low complexity turbo decoder with modified acs
Low complexity turbo decoder with modified acs
IAEME Publication
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
ijceronline
 
T04504121126
T04504121126
IJERA Editor
 
Lecture summary: architectures for baseband signal processing of wireless com...
Lecture summary: architectures for baseband signal processing of wireless com...
Frank Kienle
 
ANALOG MODELING OF RECURSIVE ESTIMATOR DESIGN WITH FILTER DESIGN MODEL
ANALOG MODELING OF RECURSIVE ESTIMATOR DESIGN WITH FILTER DESIGN MODEL
VLSICS Design
 
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
A NOVEL APPROACH FOR LOWER POWER DESIGN IN TURBO CODING SYSTEM
VLSICS Design
 
IRJET-Error Detection and Correction using Turbo Codes
IRJET-Error Detection and Correction using Turbo Codes
IRJET Journal
 
simulation of turbo encoding and decoding
simulation of turbo encoding and decoding
Gulafshan Saifi
 
Convolution codes and turbo codes
Convolution codes and turbo codes
Manish Srivastava
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD Editor
 
Reliability Level List Based Iterative SISO Decoding Algorithm for Block Turb...
Reliability Level List Based Iterative SISO Decoding Algorithm for Block Turb...
TELKOMNIKA JOURNAL
 
Simulation of convolutional encoder
Simulation of convolutional encoder
eSAT Journals
 
Simulation of Turbo Convolutional Codes for Deep Space Mission
Simulation of Turbo Convolutional Codes for Deep Space Mission
IJERA Editor
 
Low complexity turbo decoder with modified acs
Low complexity turbo decoder with modified acs
IAEME Publication
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
ijceronline
 
Lecture summary: architectures for baseband signal processing of wireless com...
Lecture summary: architectures for baseband signal processing of wireless com...
Frank Kienle
 
ANALOG MODELING OF RECURSIVE ESTIMATOR DESIGN WITH FILTER DESIGN MODEL
ANALOG MODELING OF RECURSIVE ESTIMATOR DESIGN WITH FILTER DESIGN MODEL
VLSICS Design
 
Ad

More from IJECEIAES (20)

Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
IJECEIAES
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
IJECEIAES
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
Neural network optimizer of proportional-integral-differential controller par...
Neural network optimizer of proportional-integral-differential controller par...
IJECEIAES
 
An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...
IJECEIAES
 
A review on features and methods of potential fishing zone
A review on features and methods of potential fishing zone
IJECEIAES
 
Electrical signal interference minimization using appropriate core material f...
Electrical signal interference minimization using appropriate core material f...
IJECEIAES
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
Bibliometric analysis highlighting the role of women in addressing climate ch...
Bibliometric analysis highlighting the role of women in addressing climate ch...
IJECEIAES
 
Voltage and frequency control of microgrid in presence of micro-turbine inter...
Voltage and frequency control of microgrid in presence of micro-turbine inter...
IJECEIAES
 
Enhancing battery system identification: nonlinear autoregressive modeling fo...
Enhancing battery system identification: nonlinear autoregressive modeling fo...
IJECEIAES
 
Smart grid deployment: from a bibliometric analysis to a survey
Smart grid deployment: from a bibliometric analysis to a survey
IJECEIAES
 
Use of analytical hierarchy process for selecting and prioritizing islanding ...
Use of analytical hierarchy process for selecting and prioritizing islanding ...
IJECEIAES
 
Enhancing of single-stage grid-connected photovoltaic system using fuzzy logi...
Enhancing of single-stage grid-connected photovoltaic system using fuzzy logi...
IJECEIAES
 
Enhancing photovoltaic system maximum power point tracking with fuzzy logic-b...
Enhancing photovoltaic system maximum power point tracking with fuzzy logic-b...
IJECEIAES
 
Adaptive synchronous sliding control for a robot manipulator based on neural ...
Adaptive synchronous sliding control for a robot manipulator based on neural ...
IJECEIAES
 
Remote field-programmable gate array laboratory for signal acquisition and de...
Remote field-programmable gate array laboratory for signal acquisition and de...
IJECEIAES
 
Detecting and resolving feature envy through automated machine learning and m...
Detecting and resolving feature envy through automated machine learning and m...
IJECEIAES
 
Smart monitoring technique for solar cell systems using internet of things ba...
Smart monitoring technique for solar cell systems using internet of things ba...
IJECEIAES
 
An efficient security framework for intrusion detection and prevention in int...
An efficient security framework for intrusion detection and prevention in int...
IJECEIAES
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
IJECEIAES
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
IJECEIAES
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
Neural network optimizer of proportional-integral-differential controller par...
Neural network optimizer of proportional-integral-differential controller par...
IJECEIAES
 
An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...
IJECEIAES
 
A review on features and methods of potential fishing zone
A review on features and methods of potential fishing zone
IJECEIAES
 
Electrical signal interference minimization using appropriate core material f...
Electrical signal interference minimization using appropriate core material f...
IJECEIAES
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
Bibliometric analysis highlighting the role of women in addressing climate ch...
Bibliometric analysis highlighting the role of women in addressing climate ch...
IJECEIAES
 
Voltage and frequency control of microgrid in presence of micro-turbine inter...
Voltage and frequency control of microgrid in presence of micro-turbine inter...
IJECEIAES
 
Enhancing battery system identification: nonlinear autoregressive modeling fo...
Enhancing battery system identification: nonlinear autoregressive modeling fo...
IJECEIAES
 
Smart grid deployment: from a bibliometric analysis to a survey
Smart grid deployment: from a bibliometric analysis to a survey
IJECEIAES
 
Use of analytical hierarchy process for selecting and prioritizing islanding ...
Use of analytical hierarchy process for selecting and prioritizing islanding ...
IJECEIAES
 
Enhancing of single-stage grid-connected photovoltaic system using fuzzy logi...
Enhancing of single-stage grid-connected photovoltaic system using fuzzy logi...
IJECEIAES
 
Enhancing photovoltaic system maximum power point tracking with fuzzy logic-b...
Enhancing photovoltaic system maximum power point tracking with fuzzy logic-b...
IJECEIAES
 
Adaptive synchronous sliding control for a robot manipulator based on neural ...
Adaptive synchronous sliding control for a robot manipulator based on neural ...
IJECEIAES
 
Remote field-programmable gate array laboratory for signal acquisition and de...
Remote field-programmable gate array laboratory for signal acquisition and de...
IJECEIAES
 
Detecting and resolving feature envy through automated machine learning and m...
Detecting and resolving feature envy through automated machine learning and m...
IJECEIAES
 
Smart monitoring technique for solar cell systems using internet of things ba...
Smart monitoring technique for solar cell systems using internet of things ba...
IJECEIAES
 
An efficient security framework for intrusion detection and prevention in int...
An efficient security framework for intrusion detection and prevention in int...
IJECEIAES
 
Ad

Recently uploaded (20)

(Continuous Integration and Continuous Deployment/Delivery) is a fundamental ...
(Continuous Integration and Continuous Deployment/Delivery) is a fundamental ...
ketan09101
 
Stay Safe Women Security Android App Project Report.pdf
Stay Safe Women Security Android App Project Report.pdf
Kamal Acharya
 
Generative AI & Scientific Research : Catalyst for Innovation, Ethics & Impact
Generative AI & Scientific Research : Catalyst for Innovation, Ethics & Impact
AlqualsaDIResearchGr
 
Rapid Prototyping for XR: Lecture 3 - Video and Paper Prototyping
Rapid Prototyping for XR: Lecture 3 - Video and Paper Prototyping
Mark Billinghurst
 
Abraham Silberschatz-Operating System Concepts (9th,2012.12).pdf
Abraham Silberschatz-Operating System Concepts (9th,2012.12).pdf
Shabista Imam
 
Complete University of Calculus :: 2nd edition
Complete University of Calculus :: 2nd edition
Shabista Imam
 
Cadastral Maps
Cadastral Maps
Google
 
Deep Learning for Natural Language Processing_FDP on 16 June 2025 MITS.pptx
Deep Learning for Natural Language Processing_FDP on 16 June 2025 MITS.pptx
resming1
 
Industry 4.o the fourth revolutionWeek-2.pptx
Industry 4.o the fourth revolutionWeek-2.pptx
KNaveenKumarECE
 
Introduction to Python Programming Language
Introduction to Python Programming Language
merlinjohnsy
 
NEW Strengthened Senior High School Gen Math.pptx
NEW Strengthened Senior High School Gen Math.pptx
DaryllWhere
 
FUNDAMENTALS OF COMPUTER ORGANIZATION AND ARCHITECTURE
FUNDAMENTALS OF COMPUTER ORGANIZATION AND ARCHITECTURE
Shabista Imam
 
Machine Learning - Classification Algorithms
Machine Learning - Classification Algorithms
resming1
 
Deep Learning for Image Processing on 16 June 2025 MITS.pptx
Deep Learning for Image Processing on 16 June 2025 MITS.pptx
resming1
 
Learning – Types of Machine Learning – Supervised Learning – Unsupervised UNI...
Learning – Types of Machine Learning – Supervised Learning – Unsupervised UNI...
23Q95A6706
 
60 Years and Beyond eBook 1234567891.pdf
60 Years and Beyond eBook 1234567891.pdf
waseemalazzeh
 
Mechanical Vibration_MIC 202_iit roorkee.pdf
Mechanical Vibration_MIC 202_iit roorkee.pdf
isahiliitr
 
System design handwritten notes guidance
System design handwritten notes guidance
Shabista Imam
 
special_edition_using_visual_foxpro_6.pdf
special_edition_using_visual_foxpro_6.pdf
Shabista Imam
 
machine learning is a advance technology
machine learning is a advance technology
ynancy893
 
(Continuous Integration and Continuous Deployment/Delivery) is a fundamental ...
(Continuous Integration and Continuous Deployment/Delivery) is a fundamental ...
ketan09101
 
Stay Safe Women Security Android App Project Report.pdf
Stay Safe Women Security Android App Project Report.pdf
Kamal Acharya
 
Generative AI & Scientific Research : Catalyst for Innovation, Ethics & Impact
Generative AI & Scientific Research : Catalyst for Innovation, Ethics & Impact
AlqualsaDIResearchGr
 
Rapid Prototyping for XR: Lecture 3 - Video and Paper Prototyping
Rapid Prototyping for XR: Lecture 3 - Video and Paper Prototyping
Mark Billinghurst
 
Abraham Silberschatz-Operating System Concepts (9th,2012.12).pdf
Abraham Silberschatz-Operating System Concepts (9th,2012.12).pdf
Shabista Imam
 
Complete University of Calculus :: 2nd edition
Complete University of Calculus :: 2nd edition
Shabista Imam
 
Cadastral Maps
Cadastral Maps
Google
 
Deep Learning for Natural Language Processing_FDP on 16 June 2025 MITS.pptx
Deep Learning for Natural Language Processing_FDP on 16 June 2025 MITS.pptx
resming1
 
Industry 4.o the fourth revolutionWeek-2.pptx
Industry 4.o the fourth revolutionWeek-2.pptx
KNaveenKumarECE
 
Introduction to Python Programming Language
Introduction to Python Programming Language
merlinjohnsy
 
NEW Strengthened Senior High School Gen Math.pptx
NEW Strengthened Senior High School Gen Math.pptx
DaryllWhere
 
FUNDAMENTALS OF COMPUTER ORGANIZATION AND ARCHITECTURE
FUNDAMENTALS OF COMPUTER ORGANIZATION AND ARCHITECTURE
Shabista Imam
 
Machine Learning - Classification Algorithms
Machine Learning - Classification Algorithms
resming1
 
Deep Learning for Image Processing on 16 June 2025 MITS.pptx
Deep Learning for Image Processing on 16 June 2025 MITS.pptx
resming1
 
Learning – Types of Machine Learning – Supervised Learning – Unsupervised UNI...
Learning – Types of Machine Learning – Supervised Learning – Unsupervised UNI...
23Q95A6706
 
60 Years and Beyond eBook 1234567891.pdf
60 Years and Beyond eBook 1234567891.pdf
waseemalazzeh
 
Mechanical Vibration_MIC 202_iit roorkee.pdf
Mechanical Vibration_MIC 202_iit roorkee.pdf
isahiliitr
 
System design handwritten notes guidance
System design handwritten notes guidance
Shabista Imam
 
special_edition_using_visual_foxpro_6.pdf
special_edition_using_visual_foxpro_6.pdf
Shabista Imam
 
machine learning is a advance technology
machine learning is a advance technology
ynancy893
 

VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder based on Majority Logic Codes

  • 1. International Journal of Electrical and Computer Engineering (IJECE) Vol. 7, No. 4, August 2017, pp. 1824~1832 ISSN: 2088-8708, DOI: 10.11591/ijece.v7i4.pp1824-1832  1824 Journal homepage: http://iaesjournal.com/online/index.php/IJECE VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder based on Majority Logic Codes A. Boudaoud, M. El Haroussi, E. Abdelmounim ASTI Laboratory, FST Settat, Hassan I University, Settat, Morocco Article Info ABSTRACT Article history: Received Jan 6, 2017 Revised Mar 10, 2017 Accepted Mar 27, 2017 This paper presents the electronic synthesis, VHDL design and implementation on FPGA of turbo decoders for Difference Set Codes (DSC) decoded by the majority logic (ML). The VHDL design is based on the decoding Equations that we have simplified, in order to reduce the complexity and is implemented on parallel process to increase the data rate. A co-simulation using the Dsp-Builder tool on a platform designed on Matlab/Simulink, allows the measurement of the performance in terms of BER (Bit Error Rate) as well as the decoder validation. These decoders can be a good choice for future digital transmission chains. For example, for the Turbo decoder based on the product code DSC (21.11)² with a quantization of 5 bits and for one complete iteration, the results show the possibility of integration of our entire turbo decoder on a single chip, with lower latency at 0.23 microseconds and data rate greater than 500 Mb/s. Keyword: Error correcting codes FPGA implementation Interleaver ML-DSC codes Turbo decoding VHDL language Copyright © 2017 Institute of Advanced Engineering and Science. All rights reserved. Corresponding Author: Abdelghani Boudaoud, ASTI Laboratory, FST Settat, Hassan I University, B.P: 577, Casablanca Road, Km 3, Settat, Morocco. Email: [email protected] 1. INTRODUCTION The discovery, of Turbo-Codes by C.Berrou [1] in 1993, represents an essential step forward for information transmission systems. Indeed, most terrestrial and satellite transmission standards have also adopted them. Thus NASA uses it in all their space probes since 2003; similarly, the European Space Agency (ESA) lunar probe SMART-1. Turbo-codes are also used as in UMTS, ADSL-2 and in mobile networks 4G- LTE and LTE-Advanced [20]. Initially, the turbo codes were based on convolutional codes concatenated in parallel. R.Pyndiah in 1994 [2] proposed the turbo block codes (TBC), which are an alternative to turbo convolutional codes. These TBC used the decoding weighted inputs and outputs (SISO). The iterative decoding process that we use, follows the model proposed by Pyndiah and built from the “One Step Majority Logic Decodable Codes” (OSMLD) [3] using the soft-out extension threshold decoding classic of Massey [4-9], [14]. The majority decoding uses a linear combination of a reduced set of syndromes represented by the orthogonal Equations. The current digital systems and channel coding especially decoding, require high data rates. Decoding rate depends on the chosen architecture in the electronic design; the complexity of the circuit (ie its surface) is often considered as a critical parameter. In this context of very high throughput, the operating speed must be maximized while minimizing complexity.
  • 2. IJECE ISSN: 2088-8708  VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud) 1825 2. CODING AND DECODING OF PRODUCT CODES 2.1. Product Codes Construction Consider tow systematic block linear codes C1(n1, k1, d1) and C2(n2, k2, d2). Where ni, ki and di are, in order: the code word length, the information symbols number and the Hamming distance (i = 1,2). Product code CP=C2C1 built based on C1 and C2, which has the parameters (n1×n2, k1×k2, d1×d2), is obtained by encoding the k2×k1 information symbols by the C1 code and k2×n1 symbols by C2 code, see Figure 1. In this work, we choose C1=C2 and, DSC(7,3,1), DSC(21,11,2) and DSC(73,45,4) codes. 2.2. Turbo Decoding Principle A turbo decoder consists of SISO decoders (generally two decoders) and interleavers as shown in Figure 2. The channel symbols are received by line machine, by the first decoder which gives soft priori information, and then the channel information and the extrinsic information are interleaved and supplied column by column, to the input of the second decoder. A complete iteration consists of activating each decoder once. Thus, with more iteration, the decoder converges to the right solution, however it requires more time. Figure 1. Product code principle Figure 2. Structure of the turbo decoder 3. THE SISO DECODER 3.1. Threshold Decoding Algorithm The SISO (Soft In-Soft Out) decoder is the base element of the turbo decoding. We used SISO decoder for which the threshold decoding algorithm [3], [4], [13] is given below: For each j = n to 1 a. Calculate the terms Bi and ωi with iє {1,..,M} b. Calculate B0 and w0 c. Calculate the extrinsic information   M i iij ByW 1 )21()(  d. Calculate jjj Wyy Es yLLR N  0 4 )( e. If (LLR(yj)>0)  Hard Decision =1 else  Hard Decision =0 Where: a. n: Code length;
  • 3.  ISSN: 2088-8708 IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832 1826 b. M: number of orthogonal Equations; c. Bi: the orthogonal Equation on the ith bit, after remove of ith bit; d. ωi: proportional to the reliability of ith parity Equation, e. W (yj): extrinsic information representing the estimated orthogonal Equations on the symbol yj; f. LLR (yi) the decision function on the symbol yj; And:                      nik kik ik nik kik ik L L i ,1 ,1 ) 2 tanh(1 ) 2 tanh(1 ln (1) 3.2. Structural Diagram of SISO Decoder We have designed, in VHDL, a SISO decoder, which can be used in an iterative process. This iterative process we use follows the model proposed by Pyndiah [3]; See Figure 3. The soft input and respectively the soft output of the qth step (half-iteration) of the iterative decoding are given by: )()()1( qWqRqR  )()(4)( 0 qWqR N E qLLR s  Where R represents the lines or columns of the received and quantified word, W(q) the extrinsic information calculated by the previous decoder and α is a coefficient which varies with each iteration. In addition to its threshold output, the decoder has a hard decision output that we used for its validation. Figure 3. SISO Decoder (elementary cell of turbo decoding) 3.3 FPGA Implementation of the SISO Decoder To reduce the complexity of the algorithm, we used, to simplify the expression (1), the Equation (2) below proposed by [12] and applied to the majority logic codes by [13], [11], [21]. The simplified expression of our decoder becomes: (2) The architecture of the proposed SISO decoder was described in VHDL and implemented on FPGA using Quartus II tool from Altera. We used The EPC4CE115F29C7 FPGA type, containing about 115,000    n k ikik ni k LsignLi 1 1 )(*min
  • 4. IJECE ISSN: 2088-8708  VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud) 1827 LEs. We studied the complexity evolution of our decoders for different quantization bit number using C(7,3)C(7,3), C(21,11)C(21,11) and C(73,45)C(73,45) product codes. The results obtained, after the Quartus II synthesis, are summarized in Table 1. Figure 4 shows a functional simulation example of our SISO decoder for DSC (7,3) code on which it is reported that the outputs are updated at each rising edge of the clock, hence the latency is one clock cycle. Figure 4. Simulation example of our SISO decoder for the DSC (7,3) code, with 5 bits of quantization. Table 1. The Obtained Data for Different SISO Decoders 4. THE INTERLEAVER 4.1. The Interleaver Principle An interleaver is a system that receives a sequence of symbols in its input and provides another of the same alphabet to the output in a completely different order. In our case of product codes, the operation of the interleaver is summarized in two stages: receipt of all symbols of the product code matrix n2*n1, and swapping row-column of this matrix. 4.2. FPGA Implementation of the Interleaver The used interleavers are described in VHDL and implemented on the same FPGA circuit using Quartus II tool for C(7,3)C(7,3), C(21,11)C(21,11) and C(73,45)C(73,45) product codes. The Figure 5 shows the external structure of the interleaver design for the C(7,3)C(7,3) product code. SISO Decoders Characteristics Quantization bit number 4 Bits 5 Bits 6 Bits 7 Bits DSC(7,3) Complexity(LE) 714 994 1141 1302 Frequency max. (MHz) 47.62 43.71 41.51 41.46 throughput max.(Gb/s) 0.33 0.31 0.29 0.29 Latency (ns) 21.00 22.88 24.09 24.12 DSC(21,11) Complexity(LE) 5334 6496 7749 8863 Frequency max. (MHz) 24.99 24.30 23.58 23. 34 throughput max.(Gb/s) 0.52 0.51 0.50 0.49 Latency (ns) 40.02 41.15 42.41 42.84 DSC(73,45) Complexity(LE) 52516 63155 78833 90513 Frequency max. (MHz) 20.02 18.56 16.86 16.12 throughput max.(Gb/s) 1.46 1.35 1.23 1.18 Latency (ns) 49.95 53.88 59.31 62.03
  • 5.  ISSN: 2088-8708 IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832 1828 In Figure 6, which illustrates an example of functional simulation of that interleaver, we note that input lines are recovered as columns on the outputs with latency equals to the length of the base code, seven clock periods in this case. Table 2 summarizes the readings of the complexity, the maximum frequency and the maximum throughput, for different interleavers depending on the quantization bit number. Figure 5. Interleaver structure for DSC(7,3)C(7,3) product code Figure 6. Example of functional simulation of the interleaver for DSC(7,3) code on Quartus II software. Table 2. Caracteristics of the Intereleavers Interleaver Characteristics Quantization bit number 4 Bits 5 Bits 6 Bits 7 Bits 7 To7 Symbols Complexity(LE) 570 708 850 988 Frequency max. (MHz) 219.44 218.67 209.16 203.04 throughput max.(Gb/s) 1.54 1.53 1.46 1.42 Latency (ns) 31.90 32.01 33.47 34.48 21 To 21 Symbols Complexity(LE) 4643 5799 6962 8113 Frequency max. (MHz) 152.00 148.19 139.94 130.77 throughput max.(Gb/s) 3.19 3.11 2.94 2.75 Latency (ns) 138.16 141.71 150.06 160.59 73 To 73 Symbols Complexity(LE) 57388 71867 86014 100302 Frequency max. (MHz) 84.31 82.22 80.03 76.95 throughput max.(Gb/s) 6.15 6.00 5.84 5.62 Latency (ns) 865.85 887.86 912.16 948.67
  • 6. IJECE ISSN: 2088-8708  VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud) 1829 5. THE TURBO DECODER 5.1. FPGA Implementation of Turbo Decoder Our turbo decoder consists of two SISO decoder and four interleavers similar to those discussed above, see Figure 7. Figure 8 shows the evolution of the silicon surface (expressed in logic element LE), occupied by the components of the Turbo decoder for C(7,3)C(7,3), C(21,11)C(21,11) and C(73,45)C(73,45) product codes, with a quantization of 5 bits. Figure 9 illustrates this surface with quantization of 3 to 7 bits for C(21,11)C(21,11) codes. Figure 7. Detailed structure of our Turbo decoder Figure 8. Area occupied by different SISO decoders for quantization of 5 bits Figure 9. DSC(21,11)² SISO decoders occupied area for different bits of quantization (3 to 7 bits) 5.2. Validation of our Turbo Decoder After functional simulation on Quartus II software, our design is also validated on a co-simulation chain on Matlab / Simulink and DSP Builder. The co-simulation chain proposed (Figure 10) consists of the main components of a digital transmission chain: the information to be transmitted is generated in a random manner, coded by a product coder before being modulated on Binary Phase Shift Keying (BPSK) modulation. The channel, AWGN (Add white Gaussian Noise) will insert random errors in the information received. The block called in the figure 11 "Turbo decoder" contains the Turbo decoder to test, functions for the quantization and a data adaptation. Quantization assigns to each symbol a fixed number of bits, according to the decoder. The loop is closed by a counter of "bit error" in order to measure the BER performance (Bit Error Rate) versus SNR(Signal-to-Noise Ratio). Figure 11 illustrates the performance for the DSC(21,11) turbo decoder at the first iteration in the theoretical case and in VHDL with quantization of 4, 5 and 7 bits. In Figure 12, we presented the BER performance of the same turbo decoder with a quantization of 5 bits for 1st , 2nd and 3rd iteration
  • 7.  ISSN: 2088-8708 IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832 1830 Figure 10: the proposed co-simulation chain for the BER performance measurement of the turbo decoder Figure 12. BER performances of Turbo decoder for 1st , 2nd and 3rd iteration 5.3. Performances of our Turbo Decoder Our turbo decoder designed and implemented on the EPC4CE115F29C7 FPGA circuit presents the performances summarized in Table 3. It is evident from Table 4, that the proposed design has a good performance compared to other recent architectures; and especially the latency that is nine times lower than the least one in the other designs. Table 3. Summary of DSC (21, 11) Turbo Decoder Performances With a Quantization of 5 Bits. IterationPath* Throughput max. (Mb/s) Latency min. (µs) Complexity (LE) Occupation (%) BER at SNR=3dB 1 2S+I 510 0.224 24 590 21.38% 4.72 10-2 2 4S+3I 255 0.590 36 188 31.46% 9.91 10-4 3 6S+5I 170 0.956 36 188 31.46% 5.62 10-5 (*) Information path: S for SISO decoder and I for Interleaver Table 4. Comparaison With Others Turbo Decoder Design This work [18] 2010 [15] 2005 [16] 2003 [17] 20132nd iter. 3rd iter. Number of Iterations 2 3 5 6 4 NA Throughput (Mb/s) 255 170 930 758 75.6 346 Latency(µs) 0.59 0.956 5.5 10.5 5.35 NA Frame length 441 441 5120 5120 432 NA BER at SNR=3dB 9.9 10-4 5.6 10-5 4 10-6 NA 4 10-7 2 10-3 Modulation BPSK BPSK BPSK NA NA BPSK Channel type AWGN AWGN AWGN NA NA AWGN Code rate 0.274 0.274 NA NA 0.33 0.33
  • 8. IJECE ISSN: 2088-8708  VHDL Design and FPGA Implementation of a High Data Rate Turbo Decoder …. (A. Boudaoud) 1831 6. CONCLUSION The approach of the VHDL design using a parallel mode and the FPGA implementation of the proposed turbo decoder has allowed us a high data rate, low complexity and very low latency. This will justify its use in future communication channels. Use of a FPGA circuit with better “Speedgrad” could further increase data rate and reduce latency. In addition, a review of the interleaver architecture is necessary to reduce more its complexity. REFERENCES [1] C Berrou, A. Glavieux, P. Thitimajshima, “Near Shannon Limit Error Correcting Coding and Decoding: Turbo Codes”, IEEE International Conference on Communication ICC93, vol. 2/3, May 1993. [2] R. Pyndiah, A. Glavieux, A. Picart, S. Jacq, “Near Optimum Decoding of Product Codes”, Globecom'94, San Fransisco,1994. [3] M. Belkasmi, M. Lahmer, F. Ayoub, “Iterative Threshold Decoding of Product Codes Constructed from Majority Logic Decodable Codes”, ICCTA conf, Damascus,Syria, pp. 2376- 2381, April 2006. [4] J. L. Massey, “Threshold Decoding”, M.I.T. Press, Cambridge, Massachusetts, 1963. [5] E. J.. Weldon Jr, “Difference-Set Cyclic Codes”, Bell System Technical Journal, Vol.45, pp. 1045_1055, sep 1966. [6] R. L. Graham, F. J. MacWilliams, “On the Number of Information Symbols in Difference-Set Cyclic Codes”, Bell System Technical Journal, vol. 45, pp. 1057-1070, Sep 1966. [7] J. Singer, “A Theorem in Finite Projective Geometry and Some Applications to Numbers Theory”, AMS Trans., vol. 43, pp. 377-385, 1938. [8] F. J. MacWilliams, “A Table of Primitive Binary Idempotents of odd Length n, 7 ≤n ≤511”, IEEE Trans. Inform. Theory, vol. IT-25, pp. 118–123, Jan. 1979. [9] F. J. MacWilliams, J. Seery, “The weight Distributions of some minimal Cyclic Codes,” IEEE Trans. Inform. Theory, vol. IT-27, pp. 796–806, Nov. 1981 [10] C. Clarck, B. Cain, “Error-Correction Coding for Digital Communications,” Plenum Press, 1983. [11] M. Elharoussi, M. Belkasmi, “VHDL Design and FPGA Implementation of a Fully Parallel Architecture for Iterative Decoder of Majority Logic Codes for High Data Rate Applications”, Journal of Wireless Networking and Communications (JWNC), 2(4), pp. 35-42, 2012 [12] J. Hagenauer, E. Offer, L. Papke, “Iterative Decoding of Binary Block and Convolutional Codes”, IEEE Trans. Inform. Theory, Mars 1996, Vol. 42, pp. 429-446. [13] A.Boudaoud, E.Abdelmounim, A. Barazzouk, J. Zbitou, M.Belkasmi, “FPGA Implementation of HIHO and SIHO Decoders for DSC Codes”, IEEE explorer, pp. 1461 – 1464, April 2014 [14] L. D. Rudolph, “Geometric Configuration and Majority Logic Decodable Codes”, PhD thesis, University of Oklahoma, Norman, 1964. [15] G. Prescher, T. Gemmeke, T.G. Noll, “A parametrizable Lowpower High-throughput Turbo-decoder,” in IEEE Int. Conf. Acoustics, Speech, and Signal Processing (ICASSP), volume 5, pages 25-28, Mar. 2005. [16] B. Bougard, A. Giulietti, V. Derudder, J. Willem, S. Dupont, F. Catthoor, L. Hollevoet, L. V. der Perre, H. D. Man, R. Lauwereins, “A scalable 8.7 nj/bit 75.6 Mb/s parallel concatenated convolutional (turbo-)codec,” in IEEE Int. Solid-State Circuit Conf., pp. 152–484, Feb. 2003. [17] Rahul Shrestha, Roy P Paily, “Design and Implementation of a High Speed MAP Decoder Architecture for Turbo Decoding”, 26th IEEE International Conference on VLSI Design and the 12th IEEE International Conference on Embedded Systems, pp. 86-91, 2013. [18] S. M. Karim, I. Chakrabarti, “An Improved Low-power High-throughput log-MAP Turbo Decoder", IEEE Trans. Consum. Electron., vol. 56, no. 2, pp. 450-457, 2010 [19] A. Z. Jidin, T. Sutikno, “FPGA Implementation of Low-Area Square Root Calculator”, TELKOMNIKA Telecommunication, Computing, Electronics and Control, 2015; 13(4): 1145-1152. [20] Yi Bo-nian, “Turbo Code Design and Implementation of High-Speed Parallel Decoder”, TELKOMNIKA, Vol. 11, no. 4, April 2013, pp. 2116~2123 [21] M. Elharoussi, M. Belkasmi, “Design and FPGA Implementation of a Fully Parallel Architecture for Turbo decoding of majority logic codes For High data rate Applications”, International Journal of Computing and Information Technology (IJCIT), Vol. 3, N_2, pp. 81-95, 2011
  • 9.  ISSN: 2088-8708 IJECE Vol. 7, No. 4, August 2017 : 1824 – 1832 1832 BIOGRAPHIES OF AUTHORS Abdelghani BOUDAOUD was born in Azilal Morocco in 1973. He is graduated from High Normal School of Technical Education (ENSET) in 1996 at Mohammedia Morocco. In 2003, he had the diploma of aggregation in electrical engineering at ENSET of Rabat Morocco. In 2011 he obtained the Master in «Laser Instrumentation and Optoelectronic Components” at the Faculty of Science and Technology (FST) Hassan I University, Settat Morocco. Currently, he is PhD student in “System Analysis and Information Technology Laboratory “(ATSI) in FST, Hassan I University, Settat, Morocco. Mustapha ELHAROUSSI was born in Azilal Morocco in 1974; he received his PhD in Error Correcting Codes from Mohammed V University Morocco in 2013. In 2014 he joined, as Professor, applied Physics department of FST, Hassan I University, Settat, Morocco. His current research interests include hardware design of algorithms applied to information processing and control of industrial systems at System Analysis and Information Technology Laboratory at Hassan I University, Settat, Morocco. Elhassane ABDELMOUNIM was born in Oued-Zem Morocco in 1965; he received his PhD in Spectral analysis from Limoges University France in 1994. In 1996, he joined, as Professor, applied physics department of FST, Hassan I University, Settat, Morocco. His current research interests include digital signal processing and machine learning. He is currently coordinator of a Bachelor of Science in electrical engineering and he is researcher at System Analysis and Information Technology Laboratory at Hassan I University, Settat, Morocco.