Vous êtes sur la page 1sur 40

1

Codificacin de canal:
Transforma las seales para mejorar el desempeo
de las comunicaciones, incrementando la robustez
contra los defectos del canal (ruido, interferencia,
desvanecimientos, ..)
Codificacin de formas de onda: Transforma las
formas de onda a mejores formas de onda
Secuencias estructuradas: Transforman las
secuencias de datos en mejores secuencias, con
redundancia estructurada.
Mejor en el sentido de hacer el proceso de decisin
menos sujeto a errores.
Qu es codificacin de canal?
2
Tcnicas de control de errores
Automatic Repeat reQuest (ARQ)
Conexin Full-duplex, cdigos de deteccin de
errores
El receptor enva una seal al transmisor,
indicando si se detect o no errores en los datos
recibidos (Not-Acknowledgement (NACK) y
Acknowledgement (ACK), respectivamente).
El transmisor retransmite los datos si recibe un
NACK.
Correccin de errores (FEC)
Conexin Simplex, cdigos correctores de error
El receptor trata de corregir algunos errores
ARQ hbrido (ARQ+FEC)
Full-duplex, cdigos de deteccin y correcin de
errores
3
Porqu usar codificacin de correccin de
errores?
Desempeo de error vs. ancho de banda
Potencia vs. ancho de banda
Tasa de datos vs. ancho de banda
Capacidad vs. ancho de banda
(dB) /
0
N E
b
B
P
A
F
B
D
C
E
No-codificado
Codificado
Ganancia de codificacin:
Para una probabilidad de error de bit dada,
la reduccin de la Eb/N0 que puede
lograrse usando un cdigo:
[dB] [dB] [dB]
c
0
u
0
|
|

\
|

|
|

\
|
=
N
E
N
E
G
b b
4
Modelos de canal
Canales discretos sin memoria
Entrada discreta, salida discreta
Canales Binarios Simtricos
Entrada binaria, salida binaria
Canales Gaussianos
Entrada Discreta, salida continua
II. Cdigos de Bloque Lineal
6
Definiciones
Ejemplos de espacios vectoriales
El conjunto de n-tuplas binarias, denotado por
Subespacio vectorial:
Un subconjunto S del espacio vectorial se llama
subespacio si:
El vector de puros ceros est en S.
La suma de dos vectores cualesquiera en S tambin est en
S.
Ejemplo:
. de subespacio un es )} 1111 ( ), 1010 ( ), 0101 ( ), 0000 {(
4
V
n
V
n
V
)} 1111 ( ), 1101 ( ), 1100 ( ), 1011 ( ), 1010 ( ), 1001 ( ), 1000 (
), 0111 ( ), 0101 ( ), 0100 ( ), 0011 ( ), 0010 ( ), 0001 ( ), 0000 {(
4
= V
7
Definiciones
Conjunto generador:
Una coleccin de vectores ,
cuyas combinaciones lineales incluyen a todos los
vectores en un espacio vectorial V, se denomina el
conjunto generador para V.
Ejemplo:
Bases:
Un conjunto generador de V con cardinalidad mnima
se denomina base de V.
Cardinalidad de un conjunto es el nmero de onjetos en el
conjunto.
Ejemplo:
{ } . para base una es ) 0001 ( ), 0010 ( ), 0100 ( ), 1000 (
4
V
{ } . a genera ) 1001 ( ), 0011 ( ), 1100 ( ), 0110 ( ), 1000 (
4
V
{ }
n
G v v v , , ,
2 1
=
8
Cdigos de bloque lineal
Cdigos de bloque lineal (n,k)
Un conjunto con cardinalidad se llama
cdigo de bloque lineal, si y slo si, es un
subespacio del espacio vectorial .
Los miembros de C se llaman palabras de cdigos.
La palabra de cdigo de puros ceros es una palabra de
cdigo.
Cualquier combinacin lineal de palabras de cdigo es
una palabra de cdigo.
n
V
n
V C
k
2

n k
V C V
9
Cdigos de bloque lineal
n
V
k
V
C
Bases de C
mapeo
10
Qu son los Cdigos de Bloque Lineal?
La secuencia de informacin se segmenta en
bloques de mensajes de largo fijo.
Cada mensaje de informacin de k-bits se
codifica en una palabra de cdigo (o cdigo)
de n-bits (n>k)
Cdigos de Bloque Lineal
Codificador
de Bloques
Binarios
2
k
Mensajes de k-bit
2
k
Cdigos
DISTINTOS
de n-bit
11
Cdigos de bloque lineal
El tren de bits de datos se divide en bloques de k bits.
Cada bloque se codifica en un bloque mayor de n bits.
Los bits codificados se modulan y envan por el canal.
El proceso inverso se ejecuta en el receptor.
Bloque datos
Codificador
de canal
Cdigo
k bits n bits
bits redundantes
tasa del cdigo
c
n - k
k
R
n
=
12
Cdigos de bloque lineal
El peso Hamming del vector U, denotado por
w(U), es el nmero de elementos no-ceros en
U.
La distancia Hamming entre dos vectores U y V,
es el nmero de elementos en los cuales
difieren.
La distancia mnima de un cdigo de bloque es
) ( ) ( V U V U, = w d
) ( min ) , ( min
min i
i
j i
j i
w d d U U U = =

13
Cdigos de bloque lineal
La capacidad de deteccin de errores est
dada por
La capacidad t de corregir errores de un
cdigo, definida como el mximo nmero de
errores corregibles en forma garantizada por
palabra de cdigo, es
(


=
2
1
min
d
t
1
min
= d e
14
Cdigos de bloque lineal
Para canales sin memoria, la probabilidad
que el decodificador cometa un error es
es la probabilidad de transicin o probabilidad de
error en el bit del canal.
La probabilidad de error en el bit
decodificado es
j n j
n
t j
M
p p
j
n
P

+ =

|
|

\
|

) 1 (
1
j n j
n
t j
B
p p
j
n
j
n
P

+ =

|
|

\
|

) 1 (
1
1
p
15
Cdigos de bloque lineal
Para un canal discreto, sin memoria, simtrico
Notar que en sistemas codificados, los bits
codificados se modulan y transmiten en un canal. Por
ejemplo, para modulacin M-PSK en canal AWGN
(M>2):
donde es energa por bit codificado, dada por
Tx. bits Rx. bits
1-p
1-p
p
p
( ) ( )
|
|

\
|
|

\
|
=
|
|

\
|
|

\
|

M N
R E M
Q
M M N
E M
Q
M
p
c b c

sin
log 2
log
2
sin
log 2
log
2
0
2
2 0
2
2
c
E
b c c
E R E =
1
0 0
1
16
Cdigos de bloque lineal
Una matriz G se construye usando como
filas los vectores en la base, .
n
V
k
V
C
Bases de C
mapeo
} , , , {
2 1 k
V V V
(
(
(
(

=
(
(
(

=
kn k k
n
n
k
v v v
v v v
v v v

2 1
2 22 21
1 12 11
1
V
V
G
17
Qu son los Cdigos de Bloque Lineal?
Suma Mdulo-2 de dos palabras de cdigo
cualesquiera es tambin una palabra de cdigo
Cada palabra de cdigo v de un cdigo de bloque C
es una combinacin lineal de k palabras de cdigo
linealmente independientes en C, es decir,
Cdigos de Bloque Lineal
[ ]
0 1 1
0 1 1
0 1 k-1
i
v g g g
g
k
i i i ,n
u u ... u ,
g g ... g

= + + +
=
18
Independencia Lineal
Un conjunto de vectores g
0
, g
1
,, g
k-1
son
linealmente independientes si no existen
escalares u
0
, u
1
,, u
k-1
que satisfagan
0 1 1 0 1 k-1
v g g g 0
k
u u ... u

= + + + =
A menos que u
0
=u
1
== u
k-1
=0
Ejemplos
[0 1 0 ], [1 0 1], [1 1 1] son
Linealmente Dependientes
[0 1 0 ], [1 0 1], [0 0 1] son
Linealmente Independientes
19
Porqu lineal?
Proceso de Codificacin
Guardar e indexar 2
k
palabras de cdigo de largo n
Complejidad
Grandes requerimientos de memoria para grandes k
Procesos complejos de bsqueda para grandes k
Cdigos de Bloque LineaL
Almacena k palabras de cdigo g
i
linealmente independientes
Se codifica mediante una combinacin lineal de las palabras g
0
,
g
1
,, g
k-1
basada en el mensaje u=[u
0
, u
1
,, u
k-1
]
00 01 0 1 0
10 11 1 1 1
1 0 1 1 1 1 1
g
g
.
G=
.
.
g
,n
,n
k , k , k ,n k
g g ... g
g g ... g
. . .
. . .
. . .
g g ... g


( (
( (
( (
( (
=
( (
( (
( (
( (

Matriz Generadora
v=u.G
20
Ejemplo: cdigo (7,4)
0
1
3
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
2
g
g
G=
g
g
( (
( (
( (
=
( (
( (

1111111
0101110
0001101
1011100
1001011
0011010
0111001
1101000
0010111
1000110
1100101
0110100
0100011
1110010
1010001
0000000
Cdigo
1111
1110
1101
1100
1011
1010
1001
1000
0111
0110
0101
0100
0011
0010
0001
0000
Mensaje
g
0
g
1
g
2
g
3
u= [0 1 1 0]
Codificador de
Bloque Lineal
(v=u.G)
v= g
1
+g
2
v= [1 0 0 0 1 1 0]
21
Ejemplo (de un mal codificador)
0
1
3
1 1 0 1 0 0 0
0 0 1 0 1 1 1
1 1 1 1 1 1 1
1 0 1 0 0 0 1
2
g
g
G=
g
g
( (
( (
( (
=
( (
( (

u= [0 1 1 1]
Codificador de
Bloques (v=u.G)
v= g
1
+g
2
+g
3
v= [0 1 1 1 0 0 1]
Linealmente
Dependientes
u= [1 0 0 1]
Codificador de
Bloques (v=u.G)
v= g
0
+g
3
v= [0 1 1 1 0 0 1]
IGUALES
22
Cdigos de bloque lineal
Codificacin de un cdigo de bloque (n,k)
Las filas de G, son linealmente
independientes.
mG U =
k n
k
k n
m m m u u u
m m m u u u
V V V
V
V
V
+ + + =
(
(
(
(

=
2 2 2 1 1 2 1
2
1
2 1 2 1
) , , , (
) , , , ( ) , , , (


23
Cdigos de bloque lineal
Ejemplo: cdigo de bloque (6,3)
(
(
(

=
(
(
(

=
1
0
0
0
1
0
0
0
1
1
1
0
0
1
1
1
0
1
3
2
1
V
V
V
G
1
1
1
1
1
0
0
0
0
1
0
1
1
1
1
1
1
0
1
1
0
0
0
1
1
0
1
1
1
1
1
0
0
0
1
1

1
1
0
0
0
1
1
0
1

0
0
0
1
0
0
0
1
0
1
0
0
1
1
0
0
1
0

0
0
0
1
0
0
0
1
0
Vector mensaje Cdigo
24
Cdigos de bloque lineal
Cdigo de bloque sistemtico (n,k)
En un cdigo sistemtico, los primeros (o
ltimos) k elementos de la palabra de cdigo
son bits de informacin.
[ ]
matriz identidad
( ) matriz de paridad
k
k
k
k k
k n k
=
=
=
G P I
I
P
1 2 1 2 1 2
bits paridad
bits mensaje
( , ,..., ) ( , ,..., , , ,..., )
n n k k
u u u p p p m m m

= = U


25
Cdigos de Bloque Lineal Sistemticos
Parte de Chequeo
Redundante
Parte de Mensaje
n-k bits k bits
[ ]
00 01 0 1
10 11 1 1
1 0 1 1 1 1
1 0 0
0 1 0
0 0 1



G= P I



,n k
,n k
k
k , k , k ,n k
p p ... p
...
p p ... p
...
. . .
. . .
. . .
. . .
. . .
. . .
p p ... p
...



(
(
(
(
=
(
(
(
(

matriz P Matriz identidad k x k
26
Circuito de codificacin para un
cdigo sistemtico lineal (n,k)
27
Codificador sistemtico (7,4)
28
Cdigos de bloque lineal
Cdigo Hamming (7,4)
29
30
Matriz de Chequeo de Paridad
Para cualquier matriz G k x n con k filas
linealmente independientes, existe una matriz H
(n -k) x n (Chequeo de Paridad), tal que
G.H
T
=0
[ ]
00 01 1 0
01 11 1 1
0 1 1 1 1 1
1 0 0
0 1 0
0 0 1
T



H= I P



k ,
k ,
k
,n k ,n k k ,n k
p p ... p
...
p p ... p
...
. . .
. . .
. . .
. . .
. . .
. . .
p p ... p
...


(
(
(
(
=
(
(
(
(

31
Ejemplo
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
G
(
(
(
=
(
(

1 0 0 1 0 1 1
0 1 0 1 1 1 0
0 0 1 0 1 1 1
H
(
(
=
(
(

32
Sndrome de Error
Caracterstica de la matriz de chequeo de paridad (H)
=
T
v.H 0

T
v.H 0
v C
v C
Canal
v
r
+
v
r=v+e
e
Patrn de Error
Sndrome
T
s=r.H
33
Deteccin de Error
s 0
r C
r NO es cdigo vlido
Se detecta un Error: Cules son las opciones?
Solicitar la Retransmisin del Bloque
Automatic Repeat Request (ARQ)
Intentar la Correccin del Bloque
Forward Error Correction
34
Patrones de Error Indetectables
Se puede estar seguro que r=v ??
NO! PORQUE?
= s 0
r C
e C r C
Cuntos patrones indetectables existen?
2
k
-1 Cdigos no ceros significan
2
k
-1 patrones de error indetectables
35
Clculo del Sndrome cdigo (n,k)
36
Clculo Sndrome cdigo (7,4)
37
Tabla de verdad para los patrones de
error corregibles del cdigo (7,4)
38
Circuito decodificador cdigo (7,4)
39
Circuito Codificador
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
G
(
(
(
=
(
(

u
0
u
1
u
2
u
3
Entrada u
Al canal
+ + +
v
0
v
1
v
2
Registro Paridad
Registro Mensaje
[u
0
u
1
u
2
u
3
]
[v
0
v
1
v
2
u
0
u
1
u
2
u
3
]
Salida v
Circuito Codificador
40
Circuito de Clculo del Sndrome
1 0 0
0 1 0
0 0 1
1 1 0
0 1 1
1 1 1
1 0 1
T
H
(
(
(
(
(
=
(
(
(
(
(

0 0 3 5 6
1 1 3 4 5
2 2 4 5 6
s r r r r
s r r r r
s r r r r
= + + +
= + + +
= + + +
r
1
r
2
r
3
r
4
r
5
r
6
r
0
+ + +
s
0
s
1
s
2

Vous aimerez peut-être aussi