Beruflich Dokumente
Kultur Dokumente
FPGA Implementation of Encoder for (15, k) Binary BCH Code Using VHDL and
Performance Comparison for Multiple Error Correction Control
Amit Kumar Panda
Shahbaz sarik
Abhishek Awasthi
Dept. of ECE,IT
Guru Ghasidas Vishwavidyalaya
Bilaspur, India
amit.eldt@gmail.com
Dept. of ECE
National Institute of Sc. & Tech.
Berhampur, India
Sarik.114@gmail.com
Dept. of ECE,IT
Guru Ghasidas Vishwavidyalaya
Bilaspur, India
golu181175@yahoo.co.in
I.
INTRODUCTION
II.
778
783
780
g ( x) = LCM {1 ( x ),3 ( x )}
parameters:
= 1 + x4 + x6 + x7 + x8
Block length: n = 2m 1
Number of information bits: k n m*t
Minimum distance: dmin 2t + 1.
(3)
Here highest degree is 8 i.e (n-k = 8), thus the code is a
(15, 7) cyclic code with dmin 5.
For triple error correcting, BCH code of length n = 15 is
generated by
= 1 + x + x 2 + x 4 + x 5 + x 8 + x10
(4)
Here highest degree is 10 i.e (n-k = 10), thus the code is a
(15, 5) cyclic code with dmin 7.
III.
(1)
c ( x ) = x n k i ( x ) + b( x )
Where
(6)
c( x ) = c0 + c1 x + ..... + cn l x n l
i ( x ) = i0 + i1 x + ..... + ik l x k l
b( x ) = b0 + b1 x + ..... + cml x m l
(2)
x n k i ( x ) = q ( x ) q ( x ) b( x )
(7)
The k data bits will be present in the codeword. Using the
properties of cyclic codes [7], the remainder b(x) can be
obtained in a linear (n-k)-stage shift register with feedback
connections corresponding to the coefficients of the
generator polynomial
g ( x ) = 1 + g1 x + ..... + g n k l x n k l + x n k
1 ( x ) = 1 + x + x 4
3 (x ) = 1 + x + x 2 + x 3 + x 4
(8)
5 ( x ) = 1 + x + x 2
g ( x) = 1 ( x ) = 1 + x + x
Code Block
Information
Error Control
I1 I2 I3 ........ Ik-1 Ik
P1 ....... Pn-k-1 Pn-k
k Data bits
n-k parity check bits
(3)
Here highest degree is 4 i.e (n-k = 4), thus the code is a
(15, 11) cyclic code with dmin 3 Since the generator
polynomial is code polynomial of weighted 5, the minimum
distance of this code is exactly 3.
For double error correcting, BCH code of length n = 15 is
generated by
781
784
779
g1
b0
gn-k-1
g2
b1
bn -k-1
b2
xn -k i(x)
c(x)
S2
782
785
780
IV.
TABLE I.
Component
Utilization/ Time
No. of Slices
No. of Slice FF
4 input LUTs
Number of IOs
Simulation Clock
Maxm. Combinational
path delay
Maxm output required
Total CPU time to Xst
completion
(15, 11, 1)
BCH
Encoder
6
9
12
5
20 ns
(15, 7, 2)
BCH
Encoder
8
12
14
5
20 ns
(15, 5, 3)
BCH
Encoder
9
15
16
5
20 ns
9.159 ns
9.159 ns
9.159 ns
8.81 ns
8.73 ns
8.57 ns
6.13 sec
5.9 sec
5.7 sec
Synthesis report for the targeted device Xilinx Spartan 3S1000 FPGA
V.
CONCLUSION
783
786
781
area then (15, 11, 1) is better which can correct only 1 bit
error. Also redundancy is less and data rate is more in it.
BCH codes have been shown to be excellent errorcorrecting codes among codes of short lengths. They are
simple to encode and relatively simple to decode. Due to
these qualities, there is much interest in the exact
capabilities of these codes. The speed and device utilization
can be improved by adopting parallel approach methods.
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
784
787
782