Enhancing BER Performance Limit of BCH and RS Codes Using Multipath Diversity †

: Modern wireless communication systems suffer from phase shifting and, more importantly, from interference caused by multipath propagation. Multipath propagation results in an antenna receiving two or more copies of the signal sequence sent from the same source but that has been delivered via different paths. Multipath components are treated as redundant copies of the original data sequence and are used to improve the performance of forward error correction (FEC) codes without extra redundancy, in order to improve data transmission reliability and increase the bit rate over the wireless communication channel. For a proof of concept Bose, Ray-Chaudhuri


Introduction
The past decade or so has witnessed remarkable growth in the demand for providing reliable communication links and high transmission rates.A reliable digital communication system involves the sending and receiving of data with vanishingly small error rates [1,2].Any wireless communication system is prone to a certain level of noise, reflection, diffraction, shadowing, and fading.Furthermore, the signal that is transmitted through a wireless channel arrives at the receiver via a number of different paths, referred to as multipath transmission, and this leads to fading (signal distortion and burst errors) [3].Therefore, transmission reliability is very challenging on wireless channels.One of the most widely used techniques to provide reliable communication is forward error correction (FEC).The investment of FEC requires either increasing channel bandwidth or decreasing the rate of the transmission [4].Therefore, the high transmission rate and transmission reliability need high bandwidth, but the bandwidth is a substantial issue for communication which means that

Forward Error Correction
Appropriate techniques are necessary to overcome the problem of errors that are introduced during the transmission which occur due to inter-symbol interference (ISI), the multipath phenomenon, and noise.FEC is used for combatting this issue in a communication system.FEC techniques add some redundancy to the data which enables the receiver to detect and correct errors.BCH and RS codes are FEC techniques which work by appending extra data at the end of each message, known as a codeword (see Figure 1).This section shows some preliminaries of BCH and RS codes.

BCH Codes
A BCH code is a kind of binary cyclic code discovered by Bose, Ray-Chaudhuri, and Hocquenghem [9].This code has been studied intensively due to the strict algebraic structure introduced in the codes.In BCH codes, the codewords are created by dividing a polynomial mi(x) by a generator polynomial g(x) and taking the remainder which will be presented as parity check bits r(x).The encoded data C(x) will be constituted as: The characteristics of the code are determined by the selected generator polynomial g(x).For integers and t, the BCH can correct up to independent errors, and its possible codes are [1]: Parity check bits: where ≥ 3, < 2 and the distance represents Hamming distance.The decoding procedure of this code is more complicated and is performed in three steps [10,11]: Calculate the syndrome from the received codeword.The syndrome vector is only a function of the error pattern;

•
The error location polynomial is found by using a set of equations derived from the syndrome; and • Erroneous bits are corrected by using the error location polynomial.
One of the most significant advantages of this code is that it is quite simple to be encoded and decoded.The decoder can be simply implemented compared with modern coding technology, such as the turbo and low-density parity check (LDPC).Another advantage is the BCH code can detect and correct errors up to nearly 25% [12].

Reed-Solomon Codes
The RS codes belong to the family of BCH codes, but the symbols in this code are non-binary (multiple bits per symbol (integer)).RS codes are very efficient for dealing with bursts of errors [13] because, even if all of the bits of one symbol are in error, this counts as only one symbol error in terms of the correction capacity of the RS code.For integers m and t, the RS possible codes are: Parity check bits: where represents the number of bits per symbol, N represents the number of symbols in each codeword, and t is the number of symbol errors that can be corrected in a codeword, where:

BCH Codes
A BCH code is a kind of binary cyclic code discovered by Bose, Ray-Chaudhuri, and Hocquenghem [9].This code has been studied intensively due to the strict algebraic structure introduced in the codes.In BCH codes, the codewords are created by dividing a polynomial m i (x) by a generator polynomial g(x) and taking the remainder which will be presented as parity check bits r(x).The encoded data C(x) will be constituted as: The characteristics of the code are determined by the selected generator polynomial g(x).For integers m 1 and t, the BCH can correct up to independent errors, and its possible codes are [1]: where m ≥ 3, t < 2 m−1 and the distance represents Hamming distance.
The decoding procedure of this code is more complicated and is performed in three steps [10,11]: • Calculate the syndrome from the received codeword.The syndrome vector is only a function of the error pattern;

•
The error location polynomial is found by using a set of equations derived from the syndrome; and

•
Erroneous bits are corrected by using the error location polynomial.
One of the most significant advantages of this code is that it is quite simple to be encoded and decoded.The decoder can be simply implemented compared with modern coding technology, such as the turbo and low-density parity check (LDPC).Another advantage is the BCH code can detect and correct errors up to nearly 25% [12].

Reed-Solomon Codes
The RS codes belong to the family of BCH codes, but the symbols in this code are non-binary (multiple bits per symbol (integer)).RS codes are very efficient for dealing with bursts of errors [13] because, even if all of the bits of one symbol are in error, this counts as only one symbol error in terms of the correction capacity of the RS code.For integers m and t, the RS possible codes are: where m 2 represents the number of bits per symbol, N represents the number of symbols in each codeword, and t is the number of symbol errors that can be corrected in a codeword, where: The codewords are formatted by first multiplying the data by x N−K , then dividing the result by the generator polynomial, g(x), to produce a quotient q(x) and a remainder r(x).The transmitted codeword C(x) will be presented as: The general decoding process steps of RS code are [14]: • From the received codeword, calculate the syndrome.The syndrome is the error pattern which can be derived directly from the received data [15]);

•
Find the error locator and error value polynomial by using 2t nonlinear equations derived from the syndrome; and Correct the corrupted symbols by using the error location and error value polynomial.
The major advantage of the RS code is the capability of correcting both burst errors and erasures.RS codes have a special attraction because their efficiency grows with the code length [16].

Multipath Propagation
The multipath phenomenon is caused by atmospheric ducting, reflective surfaces (including water, buildings, and mountains), and ionospheric refraction [4].This phenomenon results in the receiver antenna receiving two or more copies of the same signal via different routes (see Figure 2).The various path lengths cause each signal to have a different propagation delay.The first received signal is known as the line-of-sight (LoS), and the other signals are non-line-of-sight (NLoS).The codewords are formatted by first multiplying the data by , then dividing the result by the generator polynomial, g(x), to produce a quotient q(x) and a remainder r(x).The transmitted codeword C(x) will be presented as: The general decoding process steps of RS code are [14]: • From the received codeword, calculate the syndrome.The syndrome is the error pattern which can be derived directly from the received data [15]); • Find the error locator and error value polynomial by using 2t nonlinear equations derived from the syndrome; and Correct the corrupted symbols by using the error location and error value polynomial.
The major advantage of the RS code is the capability of correcting both burst errors and erasures.RS codes have a special attraction because their efficiency grows with the code length [16].

Multipath Propagation
The multipath phenomenon is caused by atmospheric ducting, reflective surfaces (including water, buildings, and mountains), and ionospheric refraction [4].This phenomenon results in the receiver antenna receiving two or more copies of the same signal via different routes (see Figure 2).The various path lengths cause each signal to have a different propagation delay.The first received signal is known as the line-of-sight (LoS), and the other signals are non-line-of-sight (NLoS).Since all paths differ in their transmission length and propagation delay, the receiver could probably separate some of them and obtain two or more copies from the transmitted signal, considering the generalised assumption that the electromagnetic signals propagate through a vacuum at the speed of light, if the following condition is satisfied [17,18]: TL represents the minimum transmission length.In this case, the delay time (τ) needed to receive an uncorrelated path is: Since all paths differ in their transmission length and propagation delay, the receiver could probably separate some of them and obtain two or more copies from the transmitted signal, considering the generalised assumption that the electromagnetic signals propagate through a vacuum at the speed of light, if the following condition is satisfied [17,18]: TL represents the minimum transmission length.In this case, the delay time (τ) needed to receive an uncorrelated path is: Computers 2017, 6, 21 5 of 13 For example, in the wideband code division multiple access (WCDMA) receiver, if the chip rate is 5 Mcps then L will be at less than 60 m, and the chip duration or multipath delay τ is equal to 0.2 µs, which will be enough to separate the multipath components to obtain more than one copy.Table 1 shows different chip rates and the delay time required.In order to provide a wireless communication system with a high data transmission rate, these copies are employed to increase the error correction capability of RS and BCH codes without adding more redundant bits.

Methodology
Figure 3 shows the block diagram of a coded wireless communication system using BCH and RS codes with the existing multipath propagation.
Computers 2017, 6, 21 5 of 14 For example, in the wideband code division multiple access (WCDMA) receiver, if the chip rate is 5 Mcps then L will be at less than 60 m, and the chip duration or multipath delay τ is equal to 0.2 µs, which will be enough to separate the multipath components to obtain more than one copy.Table 1 shows different chip rates and the delay time required.In order to provide a wireless communication system with a high data transmission rate, these copies are employed to increase the error correction capability of RS and BCH codes without adding more redundant bits.

Methodology
Figure 3 shows the block diagram of a coded wireless communication system using BCH and RS codes with the existing multipath propagation.
On the transmitter side, binary sequences K-bits long are generated by a pseudo-random generator block and input into the BCH/RS encoder block.The encoder block maps k bits of the sequence into N bits of the sequence.The N bits are passed on to the BPSK modulator.The Gaussian-like (AWGN and Rayleigh) channel block is designed to introduce a fading effect and add noise to the modulated signal.The channel block helps to study and analyse the effect of the actual signal properties.On the receiver side, L signals are chosen (LoS and (L − 1) from NLoS).The threshold which is used to choose L paths was selected randomly for each transmission.It represents the minimum signal-to-noise ratio (SNR) that can be accepted to consider the received signal as a copy of the original transmitted signal.If the received signal has a SNR less than the threshold, the receiver will ignore it.The threshold ranges between 40% and 75% from the SNR of the LoS signal.After selecting L signals (copies), the signals are first demodulated by the demodulation block to obtain the coded signals.After that, the demodulated signals pass to the combiner block to combine them into one good signal.The BCH/RS decoder block takes the result of the combiner block as an input and performs the appropriate decoding operation to recover the transmitted signal.The final step in the simulation is to compute the BER to analyse and study the performance of the coded communication system with and without the existing multipath propagation.The BER calculator block is designed for this purpose.On the transmitter side, binary sequences K-bits long are generated by a pseudo-random generator block and input into the BCH/RS encoder block.The encoder block maps k bits of the sequence into N bits of the sequence.The N bits are passed on to the BPSK modulator.The Gaussian-like (AWGN and Rayleigh) channel block is designed to introduce a fading effect and add noise to the modulated signal.The channel block helps to study and analyse the effect of the actual signal properties.
On the receiver side, L signals are chosen (LoS and (L − 1) from NLoS).The threshold which is used to choose L paths was selected randomly for each transmission.It represents the minimum signal-to-noise ratio (SNR) that can be accepted to consider the received signal as a copy of the original transmitted signal.If the received signal has a SNR less than the threshold, the receiver will ignore it.The threshold ranges between 40% and 75% from the SNR of the LoS signal.After selecting L signals (copies), the signals are first demodulated by the demodulation block to obtain the coded signals.After that, the demodulated signals pass to the combiner block to combine them into one good signal.The BCH/RS decoder block takes the result of the combiner block as an input and performs the appropriate decoding operation to recover the transmitted signal.The final step in the simulation is to compute the BER to analyse and study the performance of the coded communication system with and without the existing multipath propagation.The BER calculator block is designed for this purpose.

Column Weight Multipath Combiner (CWMC)
This paper proposes a combiner based on Hamming weight (w h ) to combine the LoS and NLoS signals.This combiner receives L copies from one transmitted signal as the input (L should be an odd number and include the LoS signal), then arranges them in an L × N matrix: , and y ij .represents the combiner output.For example, we assume five different codewords (L = 5) which are ten bits long (N = 10) each: and: C 5 = 0 0 0 0 0 0 0 0 0 0 The matrix will be like the below: After calculating w 1,1 , w 1,2 , w 1,3 , • • • , w 1,10 , Y will be: Figure 4 shows that the combined packets improved the system BER performance, where the improvement is increased when the number of combined paths are increased.Additionally, the BER performance improvement depends on the threshold value (see Figure 5).In Figures 4 and 5, the red slope represents the uncoded signal (LoS), and the blue, brown, green, and magenta slopes represent the combining of the uncoded LoS with two, four, six, and eight uncoded NLoS signals, respectively.

Results
In this paper, analysis of BCH and RS codes over AWGN and Rayleigh channels has been conducted.The block length of (n1, k11) and (n1, k12) for the BCH code where k11 > k12, and (n2, k21) and for RS code where k21 > k22 and (n2, k22) are simulated with three, five, and seven paths.The threshold

Results
In this paper, analysis of BCH and RS codes over AWGN and Rayleigh channels has been conducted.The block length of (n1, k11) and (n1, k12) for the BCH code where k11 > k12, and (n2, k21) and for RS code where k21 > k22 and (n2, k22) are simulated with three, five, and seven paths.The threshold  Figures 6 and 7 show that the BCH and RS codes in a multipath transmission consistently perform better than the BCH and RS codes without CWMC in AWGN and Rayleigh channels under a binary environment.It can be seen that combining three, five, and seven coded paths result in a better slope than solely the coded LoS.The absolute BER performance of BCH and RS codes is improved by approximately 3 dB and between 8 and 9 dB over AWGN and Rayleigh channels, respectively, for three combining paths.The combining of five paths improved the BER performance by approximately 4 dBm and from 11 to 12 dB over AWGN and Rayleigh channels.The combining of seven paths improved the performance of BER more than the combining of three or five paths.The improvement was 6 dB over the AWGN channel and between 13 and 14 dB over the Rayleigh channel at a BER of 10 −3 .Similarly, the RS (15,13), RS (127,125), and RS (255,253) codes have error correction capability t1 = 1 and, for RS (15,11), RS (127,123), and RS (255,251) codes, t2 = 2. Figures 11-13 show that the combining of three paths improved the performance of RS (15,13), RS (127,123), and RS (255,251) codes.The performance is improved by approximately 2 dB, 2.5 dB, and 2.6 dB, respectively, over the AWGN channel, and 9 dB, 12 dB, and 13.5 dB, respectively, over the Rayleigh channel at a BER of 10 −3 .Furthermore, their performance is better than RS (15,11)

Conclusions
This paper shows that the performance of FEC codes can be improved in order to enhance BER performance.Furthermore, it demonstrates that a FEC with low redundancy and low error correction capability can perform better than ones with higher redundancy and higher error correction capability.This is achieved through utilising an existing phenomenon in wireless communication called multipath propagation and proposing a new combiner known as CWMC with low complexity.Additionally, the improvement in the performance of FEC increased by increasing the number of combined paths.
The CWMC combiner improved BER performance, and it can be enhanced by increasing the number of the combining paths, as shown in the simulation results.Additionally, the improvement of BER performance depends on the error correction capability of the FEC codes.Furthermore, the BER performance can be improved by increasing the error correction capability (t).In other words, increasing the redundancy will improve the BER performance, while it will reduce the gross transmission rate.It is shown in the simulations that the BCH and RS codes with n = 15, k = 7, and t = 2, and n = 15, k = 11, and t = 2, respectively, improved the performance of BER more than when n = 15, k = 11, and t = 1, and n = 15, k = 13, and t = 1, respectively.In contrast, the results show that

Conclusions
This paper shows that the performance of FEC codes can be improved in order to enhance BER performance.Furthermore, it demonstrates that a FEC with low redundancy and low error correction capability can perform better than ones with higher redundancy and higher error correction capability.This is achieved through utilising an existing phenomenon in wireless communication called multipath propagation and proposing a new combiner known as CWMC with low complexity.Additionally, the improvement in the performance of FEC increased by increasing the number of combined paths.
The CWMC combiner improved BER performance, and it can be enhanced by increasing the number of the combining paths, as shown in the simulation results.Additionally, the improvement of BER performance depends on the error correction capability of the FEC codes.Furthermore, the BER performance can be improved by increasing the error correction capability (t).In other words, increasing the redundancy will improve the BER performance, while it will reduce the gross transmission rate.It is shown in the simulations that the BCH and RS codes with n = 15, k = 7, and t = 2, and n = 15, k = 11, and t = 2, respectively, improved the performance of BER more than when n = 15, k = 11, and t = 1, and n = 15, k = 13, and t = 1, respectively.In contrast, the results show that BCH and RS codes with t = 1 can be improved to enhance BER performance more than BCH and RS codes with t = 2 by using CWMC, and the transmission rate is increased.Moreover, the simulation shows that the CWMC improved BCH performance more than RS over the AWGN channel.However, the CWMC improved RS performance more than BCH over the Rayleigh channel, because the RS codes are correcting burst errors.
In possible future work, this research could be extended by analysing and evaluating the performance of FEC techniques with high modulation schemes, multiple-input multiple-output (MIMO) systems, and over different wireless channel models.As open research topics, it is recommended to further investigate the following:

•
The performance of FEC codes which utilise the multipath phenomenon can be compared with turbo code performance.

•
The performance of LDPC code can be compared with the performance of FEC codes which employ the multipath phenomenon.

•
The performance analysis can be extended to codewords with different lengths.

•
Analyse the overall system and compare it with turbo and LDPC codes in term of complexity and overhead.

Figure 3 .
Figure 3. Coded wireless communication system with multipath propagation.

Figure 3 .
Figure 3. Coded wireless communication system with multipath propagation.

Figure 4 .Figure 5 .
Figure 4. BER vs. SNR of CWMC, when three, five, seven, and nine paths are combined.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 5 .
Figure 5. BER vs. SNR of CWMC with different threshold values and channels.(a,b) The threshold value is 80% from the LoS signal SNR.(c,d) The threshold value is 20% from the LoS signal SNR.
Rayleigh channels has been conducted.The block length of (n 1 , k 11 ) and (n 1 , k 12 ) for the BCH code where k 11 > k 12 , and (n 2 , k 21 ) and for RS code where k 21 > k 22 and (n 2 , k 22 ) are simulated with three, five, and seven paths.The threshold value was set at 40-75% from the SNR of the LoS signal to choose the NLoS signals.The BER ratio was computed by changing E b /N 0 from 1 to 25.In the simulation results, the red slope represents the uncoded signal (LoS).The black and the black with stars slopes represent the LoS which is encoded by using codes where t = 1, and t = 2, respectively.The blue slope represents the combining of the coded LoS with two coded NLoS, where LoS and NLoS are encoded by using codes where t = 1.

Figure 7 .
Figure 7. BER vs. SNR of the RS (15,13) code with and without CWMC.(a) Over the AWGN channel; and (b) over the Rayleigh channel.

Figure 9 .
Figure 9. BER vs. SNR of the BCH (127,120) code with and without CWMC vs. the BCH(127,113) code CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the BCH(127,120) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 8 .
Figure 8. BER vs. SNR of the BCH (15,11) code with and without CWMC vs. the BCH (15,7) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the BCH(15,11) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 9 .
Figure 9. BER vs. SNR of the BCH (127,120) code with and without CWMC vs. the BCH(127,113) code CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the BCH(127,120) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 9 .Figure 10 .
Figure 9. BER vs. SNR of the BCH (127,120) code with and without CWMC vs. the BCH(127,113) code CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the BCH(127,120) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 11 .
Figure 11.BER vs. SNR of the RS (15,13) code with and without CWMC vs. the RS (15,11) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the RS (15,13) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 10 .
Figure 10.BER vs. SNR of the BCH (255,247) code with and without CWMC vs. the BCH (255,239) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the BCH (255,247) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 11 .Figure 12 .
Figure 11.BER vs. SNR of the RS (15,13) code with and without CWMC vs. the RS (15,11) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the RS (15,13) code.(a) The AWGN channel; and (b) the Rayleigh channel.Computers 2017, 6, 21 11 of 14

Figure 12 .
Figure 12.BER vs. SNR of the RS (127,125) code with and without CWMC vs. the RS (127,123) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the RS (127,125) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 12 .Figure 13 .
Figure 12.BER vs. SNR of the RS (127,125) code with and without CWMC vs. the RS (127,123) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the RS (127,125) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Figure 13 .
Figure 13.BER vs. SNR of the RS (255,253) code with and without CWMC vs. the RS (255,251) code without CWMC, where 3P represents the three paths that were combined to improve the error correction capability of the RS (255,253) code.(a) The AWGN channel; and (b) the Rayleigh channel.

Table 1 .
Different chip rates and the time delay needed to obtain more than one copy.

Table 1 .
Different chip rates and the time delay needed to obtain more than one copy.