W14L1-Coding_Part2(디지털통신)(1)
W14L1-Coding_Part2(디지털통신)(1)
Coding - Part 2
오류 정정…
Murphy’s Law
“If anything can go wrong, it will go!”
2
Redundancy를 이용
3
Good ECC(채널 코드)라면…
오류를 정정할 수 있어야 하고,
Encoding/ decoding을 고속/ 고효율로 할 수 있고,
Redundancy를 최소로 사용한다.
C
H
A
N Noise
N
E
L
4
Error Correction Codes
Cyclic Code
<Meggitt> Convolutional
Code
BCH Code
Turbo code
CDMA
RS
CD-ROM
Code
QR-code
5
Repetition Code
송신측 수신측 majority vote
6
3 Cards
#1 #2 #4
421
0 000
1 001 2
2 010 3 6
3 011 7
4 100 1 5 4
5 101
6 110
7 111
7
Encoder b1 b 2 b 3 b 4 b 5 b 6 b7 Bit position
1 0 1 1 4-bit message
b1 : 1 3 5 7 Even parity checks
(7, 4) b2 : 2 3 6 7
b4 : 4 5 6 7
Hamming
0 1 1 0 0 1 1 Tx codeword
Code
X Channel error
0 1 0 0 0 1 1 Received word
1 (1 pc ) 7 7 pc (1 pc ) 6
1 (0.999) 7 7 0.001(0.999) 6
1 0.993 0.00696
4 10 5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
10 1010
11 1011
p1 p2 1 p4 0 1 1 p8 0 0 1 0 1 0 1
12 1100
13 1101
질문 1. Determine parity checks p1, p2, p3, p4.
14 1110
2. Decode r = 1011 0100 1001 0010 15 1111
채널 부호
해밍 부호, RS 부호, 터보 부호, LDPC 부호, …
Galois field, …
11
BPSK…
BPSK Eb BPSK BER
변조 N0 복조 PB Q( 2 Eb / N 0 )
BER
PB 1.02 10 5 Coherent
BPSK
9.6 dB
12
sn=0.1 BER=0.762*10-23 sn=0.2 BER=0.287*10-6
13
Coded BPSK…
14
1 p correct
PB,coded with (n, k, t) Code… p error
n
1
j
n j
PB ,c
n
j t 1
j
p (1 p ) n j
1 n 2
When t=1, PB ,c 2 p (1 p ) n 2
n 2
(n 1) p 2 (1 p ) n 2
(n 1) p 2 , when p is small
B. Sklar, Digital communications: fundamentals and applications, 2nd ed., PH, 2001
15
BER(uncoded)
Coded BPSK… PB ,u Q( 2 Eb / N 0 ) Q( 18.24 )
(n, k, t) = (15, 11, 1) 부호 1.02 10 5
Eb
10 0.96 9.12(9.6 dB)
N0
E c k Eb Ec 11 Eb
6.69(8.3 dB)
N0 n N0 N 0 15 N 0
BER(coded) before correction
p Q ( 2 Ec / N 0 )
p Q( 13.38 ) 1.36 10 4
16
Matlab code
Eb_No = 10^-1:0.1:1000;
Ec_No = Eb_No*11/15; PB ,c (n 1) p 2
ENR = 10*log10(Eb_No);
PBu = Q(sqrt(2*Eb_No));
semilogy(ENR,PBu,'k');
hold on;
p = Q(sqrt(2*Ec_No));
PBc = 14 * p^2;
semilogy(ENR,PBc,'r');
grid on;
axis([0,15,10^-9,1])
xlabel('Eb/No');
ylabel('Coded BPSK and uncoded BPSK');
% function Qfunct = Q(x)
% Qfunct = 0.5*erfc(x/sqrt(2));
17
Better Performance…
BER(uncoded)
PB ,u 1.02 10 5
18
Coding Gain…
Or lower Eb/N0 for the
same performance !!
BER(uncoded)
PB ,u 1.02 10 5
BER(coded)
PB ,c 1.02 10 5 8.1 dB 9.6 dB
Coding gain of 1.5 dB
19
And More …
Decoded bit-error probability, pb
Hamming (7, 4) t = 1
Hamming (15, 11) t = 1
Hamming (31, 26) t = 1
Extended Golay (24, 12) t = 3
BCH (127, 36) t = 15
BCH (127, 64) t = 10
Uncoded
Greater CG
Eb/N0 dB
20
요약
3 codings
Source codes(압축) – mp3, jpeg, mpeg
Secrecy codes(보안) – DES, AES, RSA
Channel codes(보호) – block(Hamming, BCH, RS, LDPC),
convolutional, turbo, …
21
요약…
22