Está en la página 1de 28

1

Cdigos Bsicos de
Deteccin y
Correccin de
Errores
Por
Daniel Quintana C.
2
Cdigos de Bloque
Conceptos Bsicos
informacin paridad
k
n
n-k
Cdigo(n,k)
Rc = k / n
Se adhieren con
el objeto de detectar
o corregir errores
3
La capacidad de un cdigo de detectar o
corregir errores depende de la distancia de
cdigo
Cdigos de Bloque
10110
11001
01111
d = 4
EL peso de un cdigo est dado por el
nmero de elementos distintos de cero de la
palabra de cdigo.
Distancia mnima
Parmetros importantes de un cdigo:
Rc, distancia y peso
4
Propiedades:
Linealidad: o1C1 + o2C2 es palabra de cdigo
debe contener al elemento cero.
Sistemtico: los bits de paridad se aaden al final
de los bits de informacin.
Cclico: es palabra cdigo
tambin lo es
Cdigos de Bloque
] ,......, , [
0 2 1
C C C C
n n
=
] , ,..., , [
1 0 3 2
=
n n n
C C C C C
5
Las tcnicas de codificacin y decodificacin
hacen uso de las construcciones matemticas
conocidas como Campos Finitos
Para cualquier nmero p, existe un campo
finito que contiene p elementos: GF(p)
Extensin del campo de GF(p)
En la prctica: caso binario: GF(2)

Cdigos de Bloque
) (
m
p GF
) 2 (
m
GF
} ,..., , , 1 , 0 { ) 2 (
2 2 2
=
m
m
GF o o o
6
Ejemplos de Cdigos
Cdigo Hamming: fue el primer CCE.
Existe el binario y el no-binario. El binario
tiene la propiedad que:

Cdigo Hadamard: seleccionando las filas
de la matriz Hadamard como palabras.
Cdigos de Bloque
) 1 2 , 1 2 ( ) , ( m k n
m m
=
m
min
N N
N
N
d 2 ;
2
1100
0110
0011
0000
= =
(
(
(
(

7
Cdigo Golay: es un cdigo binario lineal
(23,12). Posee dmin=7 capacidad de
corregir 3 errores
Cdigo Cclico: Se puede generar a partir de
un polinomio generador g(p) de grado n-k:

Un mensaje polinomial x(p) puede ser
definido como:

Cdigos de Bloque
1 ... ) (
1
1
1
+ + + + =

p g p g p p g
k n
k n
k n
0 1
1
1
... ) ( x p x p x p x
n
k
+ + + =

8
La palabra cdigo resultante ser:
c(p)=g(p) x(p); c(p) de grado menor que n
Cdigos de Bloque
1 ) (
1
1
2
2
3
+ + + = p g p g p p g
E Dp Cp Bp Ap p x + + + + =
1 2 3 4
) (
... ) (
7
+ = Ap p c
A B C D E
k
n
9
Cdigo BCH: es el ms importante de
todos dado que existe para un amplio rango
de tasas, logrando una ganancia de cdigo
significativa y pudiendo ser implementado
an en altas velocidades.

El n de errores que puede corregir:

Se puede generalizar para crear clases de
cdigos no-binarios, que usan m bits por
smbolo de cdigo.
Cdigos de Bloque
3 ; 2
1
> =

m n
m
2
1 2
<
m
t
10
Cdigo Reed Solomon: Es un cdigo no-
binario que es capaz de corregir errores que
se presentan en rfagas.

El n de smbolos de paridad que deben ser
usados para corregir E errores es: n-k = 2E
dmin= 2E+1
Cdigos de Bloque
1
2

=
m
n
11
Conceptos Bsicos
Cdigos Convolucionales
Secuencia de
informacin
Secuencia de
Inform. codificada
Encoder
Mapeo altamente estructurado.
Puede lograr mayor ganancia de Cdigo que los
cdigos de bloque.
12
Cdigos Convolucionales
k bits
de
datos
N etapas
k k k 1 1 1
+
+
+
1
2
n
Codificacin
N:= restriccin de longitud (poder y complejidad)
Rc = k / n
(n,k)
13
Representacin
Matriz generadora: semi-infinita dado que
la entrada es semi-infinita.
Polinomio Generador: n vectores de dimensin
2k (uno para cada sumador) indican la conexin
del encodificador a se mdulo.
Tabla Lgica: muestra las salidas y el estado del
encoder par la secuencia de entrada presente.
Cdigos Convolucionales
14
Diagrama de estados:
0
1
2
3
Cdigos Convolucionales
Los estados del encoder y las posibles transiciones
15
Cdigos Convolucionales
Diagrama de rbol:
B
C
d
e
e
A
d
f
16
Diagrama Trellis:
B
d e
A
f
Cdigos Convolucionales
Es la representacin
compacta del rbol
17
Decodificacin
Cdigos Convolucionales
ABCDE
Encoder
ABCDE
Decoder
Tx
Rx
k
Estimar la informacin de
entrada al encoder con
el mnimo n de errores
Estimar el camino a travs
del trellis que sigui el
encoder
18
Algoritmo de Viterbi:

Cdigos Convolucionales
B
d e
A
f
1 V(S 0,0)=0 , i=1
2 Se calculan las
medidas para las
rutas que entran
a cada nodo
3
7
3 V(SA,1) = 3
4 Se borran las ramas
que no sobreviven
19
Cdigos Convolucionales
Algoritmo de Viterbi:

1 V(S 0,0)=0 , i=1
2 Se calculan las
medidas para las
rutas que entran
a cada nodo
d e
A
3
3 V(SA,1) = 3
4 Se borran las ramas
que no sobreviven
5 si i < L+ m
i = i + 1
y vuelve a 2
20
Una vez que todos los valores de los nodos
se han calculado, se ha definido una nica
ruta de regreso y que corresponde a la salida
decodificada.
Cuando se implementa decodificacin de
decisin dura, la mtrica es la distancia
Hamming. Si la decodificacin es de
decisin suave se utiliza la distancia
Euclidiana
Cdigos Convolucionales
21
Decodificacin secuencial de Fano:
Busca la ruta ms probable examinando
una a la vez.
Se incrementa la mtrica de c/rama
segn la probabilidad de recibir la seal en
esa rama, adems de una constante que se
agrega a cada rama.
constante la mtrica para el camino
correcto se incrementa en el promedio y las
incorrectas se decrementan.

Cdigos Convolucionales
22
Comparando la mtrica de la ruta observada
con algn umbral, el algoritmo detecta y
descarta rutas.
Comparacin: Tasa de error similar a la de
Viterbi
desventajas: retardo significativamente mayor
ventaja: requiere menos almacenaje
Cdigos Convolucionales
23
Algoritmo de Stack:
Cdigos Convolucionales
Ruta 1
Ruta 2
Ruta 3
V(ruta1)>V(ruta2)>V(ruta3)
Ruta 1-1
Ruta 1-2
Ruta 1-3
Ruta 1-4
Ruta 1-5
Ruta 1-6
B
C
e
d
f d e
A
3
6
7
Se reordenan segn la
mtrica y se descartan las
que estn por debajo de
alguna porcin de la mtrica
de la ruta top.
24
Comparacin con Viterbi: pocos clculos de
mtricas, pero alto trabajo computacional en
el reordenamiento de los stacks despus de
cada iteracin.
Con Fano: Computacional% ms simple,
dado que no se necesita recalcular la misma
ruta. Por otra parte, requiere de ms
almacenaje que el algoritmo de Fano.
Cdigos Convolucionales
25
Decodificacin Realimetada:



La decisin dura de si es un 1 o un 0 depende si
la ruta de la mnima distancia Hamming, que
comienza en la etapa j y termina en la etapa
j+m, contiene un 0 o un 1en la rama que sale de
la etapa j.
Despus de la decisin, solo la parte del rbol
que sigue del bit seleccionado (de la etapa j) se
mantiene y el resto se descarta. Se extiende en
una rama la parte sobreviviente y se repite.
Cdigos Convolucionales
+
+
+
1
2
n
j
j+m
B
C
d
e
e
A
d
f
j
j+m
26
Preguntas:
Como elegir m ?
N< m < 2N
Retardo?
Menor que Viterbi que es usualmente de 5N
Cdigos Convolucionales
27
Referencias
Wireless Communications T.Rappaport
Digital Communications John G. Proakis
http://hideki.iis.u-tokyo.ac.jp/~robert/codes.html
28
Fi n

También podría gustarte