Coding gain: Difference between revisions

Content deleted Content added
changes have been made to make the example more realistic... the previous BER for the SNR was far better than reality for BPSK
Added {{More citations needed}} tag
 
(25 intermediate revisions by 14 users not shown)
Line 1:
{{Multiple issues|
In [[coding theory]] and related engineering problems, '''coding gain''' is the measure in the difference between the [[signal to noise ratio]] (SNR) levels between the uncoded system and coded system required to reach the same [[bit error rate]] (BER) levels when used with the [[error correcting code]] (ECC).
{{No footnotes|date=January 2013}}
{{Cleanup|reason = poor formatting, only a single source, and extremely difficult to read|date = October 2014}}
{{More citations needed|date=February 2025}}
}}
In [[coding theory]], [[telecommunications engineering]] and other related engineering problems, '''coding gain''' is the measure in the difference between the [[signal -to -noise ratio]] (SNR) levels between the uncoded system and coded system required to reach the same [[bit error rate]] (BER) levels when used with the [[error correcting code]] (ECC).
 
==Example==
If the uncoded [[BPSK]] system in [[AWGN]] environment has a [[Bitbit error rate]] (BER) of 10<mathsup>10^{-2}−2</mathsup> at the SNR level 4&nbsp;[[decibel|dB]], and the corresponding coded (''e.g.'', [[BCH code|BCH]]) system has the same BER at an SNR level of 2.5dB5&nbsp;dB, then we say the ''coding gain'' = 4dB-{{nowrap|1=4 dB − 2.5dB5 dB = 1.5dB5 dB}}, due to the code used (in this case BCH).
 
==Power-limited regime==
In the ''power-limited regime'' (where the nominal [[spectral efficiency]] <math>\rho \le 2</math> [b/2D or b/s/Hz], ''i.e.'' the ___domain of binary signaling), the effective coding gain <math>\gamma_\mathrm{eff}(A)</math> of a signal set <math>A</math> at a given target error probability per bit <math>P_b(E)</math> is defined as the difference in dB between the <math>E_b/N_0</math> required to achieve the target <math>P_b(E)</math> with <math>A</math> and the <math>E_b/N_0</math> required to achieve the target <math>P_b(E)</math> with 2-[[Pulse-amplitude modulation|PAM]] or (2&times;2)-[[Quadrature amplitude modulation|QAM]] (''i.e.'' no coding). The nominal coding gain <math>\gamma_c(A)</math> is defined as
 
: <math>\gamma_c(A) = \frac{d^2_{\min}(A) \over }{4E_b}.</math>
 
This definition is normalized so that <math>\gamma_c(A) = 1</math> for 2-PAM or (2&times;2)-QAM. If the average number of nearest neighbors per transmitted bit <math>K_b(A)</math> is equal to one, the effective coding gain <math>\gamma_\mathrm{eff}(A)</math> is approximately equal to the nominal coding gain <math>\gamma_c(A)</math>. However, if <math>K_b(A)>1</math>, the effective coding gain <math>\gamma_\mathrm{eff}(A)</math> is less than the nominal coding gain <math>\gamma_c(A)</math> by an amount which depends on the steepness of the <math>P_b(E)</math> ''vs.'' <math>E_b/N_0</math> curve at the target <math>P_b(E)</math>. This curve can be plotted using the [[union bound]] estimate (UBE)
 
: <math>P_b(E) \approx K_b(A)Q\sqrtleft(\sqrt{\frac{2\gamma_c(A)E_b/}{N_0}}\right),</math>
 
where <math>''Q(\cdot)</math>'' denotesis the [[error function|Gaussian probability -of -error function]].
 
For the special case of a binary [[linear block code]] <math>C</math> with parameters <math>(n,k,d)</math>, the nominal spectral efficiency is <math>\rho = 2k/n </math> and the nominal coding gain is &nbsp;''kd''/''n''.
 
==Example==
The table below lists the nominal spectral efficiency, nominal coding gain and effective coding gain at <math>P_b(E) \approx 10^{-5}</math> for [[Reed-MullerReed–Muller code|Reed-Muller codes]]s of length <math>n \le 64</math>:
 
{| class="wikitable"
! Code !! <math>\rho</math> !! <math>\gamma_c</math> !! <math>\gamma_c</math> (dB) !! <math>K_b</math> !! <math>\gamma_\mathrm{eff}</math> (dB)
|-
| [8,7,2] || 1.75 || 7/4 || 2.43 || 4 || 2.0
Line 54 ⟶ 59:
 
==Bandwidth-limited regime==
In the ''bandwidth-limited regime'' (<math>\rho > 2b2~b/2D</math>, ''i.e.'' the ___domain of non-binary signaling), the effective coding gain <math>\gamma_\mathrm{eff}(A)</math> of a signal set <math>A</math> at a given target error rate <math>P_s(E)</math> is defined as the difference in dB between the <math>SNR_\mathrm{norm}</math> required to achieve the target <math>P_s(E)</math> with <math>A</math> and the <math>SNR_\mathrm{norm}</math> required to achieve the target <math>P_s(E)</math> with M-[[Pulse-amplitude modulation|PAM]] or (M&times;M)-[[Quadrature amplitude modulation|QAM]] (''i.e.'' no coding). The nominal coding gain <math>\gamma_c(A)</math> is defined as
 
: <math>\gamma_c(A) = {(2^\rho - 1)d^2_{\min} (A) \over 6E_s}.</math>
 
This definition is normalized so that <math>\gamma_c(A) = 1</math> for M-PAM or (''M''&times;''M'')-QAM. The UBE becomes
 
: <math>P_s(E) \approx K_s(A)Q\sqrt({3\gamma_c(A)SNR_\mathrm{norm})},</math>
 
where <math>K_s(A)</math> is the average number of nearest neighbors per two dimensions.
 
==See also==
*[[Channel capacity]]
*[[Eb/N0]]
 
[[Eb/N0]]
 
==References==
: [http://ocw.mit.edu MIT OpenCourseWare], 6.451 Principles of Digital Communication II, Lecture Notes sections 5.3, 5.5, 6.3, 6.4
 
[[Category: Coding theory]]
: [http://ocw.mit.edu MIT OpenCourseWare], 6.451 Principles of Digital Communication II, Lecture Notes sections 5.3, 5.5, 6.3, 6.4
[[Category: Error detection and correction]]
 
[[Category: Coding theory]]
[[Category: Error detection and correction]]
 
[[de:Codegewinn]]