You are on page 1of 4

TELECOMUNICACIONES III TRABAJO AUTONOMO

CODIGOS DE CANAL
Marcos Bernard, Calixto Lpez
1310174@utp.edu.pe

es la distancia libre de cdigo y, para cdigos con la


misma tasa, la distancia libre aumenta cuanto mayor es
la longitud de influencia del cdigo y en ello mayor es la
capacidad del cdigo.

RESUMEN: En el presente artculo, se da una


breve introduccin a los tipos de cdigo de canal y se
presenta uno de estos desarrollado con el software
matlab en su versin r2015a.

Cdigo convolucional

INTRODUCCION

En teora de la informacin, un cdigo convolucional


es un tipo de cdigo de deteccin de errores donde:

En un canal de comunicaciones la informacin enviada


est afectada por desvanecimientos evitando alcanzar el
nivel de seal adecuado para obtener una relacin seal
a ruido (s/n) suficiente para recuperar la informacin sin
errores. Con el fin de detectar y corregir los bits errneos
se aplican a la seal transmitida una serie de
transformaciones.
El objetivo de la codificacin de canal es reducir la
probabilidad de error o bien garantizar una s/n necesaria
para garantizar una cierta tasa de error. Esta
herramienta consiste en transforma secuencias binarias
en secuencias mejores que incluyan redundancia
estructurada: los bits redundantes pueden ser utilizados
para detectar y corregir errores. Existen dos tipos de
estrategias:

Deteccin de errores y retransmisin.

Correccin de errores.

Cdigos Trellis
Cdigos
convolucionales

La transformacin es funcin de los k smbolos


anteriores, donde k es la longitud del cdigo.

Sin embargo, a diferencia de los cdigos bloque, las


palabras de un cdigo convolucional se generan no slo
a partir de los dgitos de informacin actuales sino
tambin con la informacin anterior en el tiempo. Es
decir, un codificador convolucional es un sistema con
memoria y, en consecuencia, lleva asociada una cadena
de Markov aunque sta no es visible en la salida, pero s
la condiciona.

Cdigos de canal

Cdigos
no
lineales

2.

Los cdigos convolucionales son cdigos lineales al


igual que los cdigos bloque (como los cdigos de
Hamming, por ejemplo) y, por tanto, se utilizan para
proteger la informacin aadiendo redundancia a la
misma, de manera que las palabras del cdigo tengan la
distancia mnima necesaria.

Tabla 1.0. Clasificacin de cdigos de canal.

Cdigos
lineales

Cada smbolo de m bits de informacin se


transforma, al ser codificado, en un smbolo de
n bits, donde m/n es la tasa del cdigo (n m).

Caractersticas

Tipos de cdigos de canal

Cdigos bloque

1.

Codificacin

Cdigos
Coset

Existen varios mtodos de codificacin de cdigos


convolucionales, aunque una de la ms usuales es la
basada en registros de desplazamiento conectados con
sumadora base 2 en los que se realiza la codificacin.
Por cada bit que entre en el codificador se obtienen n
bits.

Cdigos
cclicos

Decodificacin
La decodificacin de un cdigo convolucional consiste
en escoger la secuencia ms probable entre todas las
posibles. Existen diversos algoritmos que permiten la
decodificacin de este tipo de cdigos y la
decodificacin ptima se consigue mediante el algoritmo
de Viterbi.

Capacidad correctora
Este trmino depende de la denominada distancia
mnima libre. Cuanto menor es la tasa del cdigo mayor

TELECOMUNICACIONES III TRABAJO AUTONOMO

.
desarroll varios esquemas de codificacin que
mejoraban notablemente los cdigos existentes. La
clave de todos sus sistemas era intercalar entre los bits
de datos los de paridad, a continuacin, se muestran los
principales parmetros de este cdigo.

Cdigo Hamming

En informtica, el cdigo de Hamming es un cdigo


detector y corrector de errores que lleva el nombre de su
inventor, Richard Hamming. En los datos codificados en
Hamming se pueden detectar errores en un bit y
corregirlos, sin embargo, no se distingue entre errores
de dos bits y de un bit (para lo que se usa Hamming
extendido). Esto representa una mejora respecto a los
cdigos con bit de paridad, que pueden detectar errores
en slo un bit, pero no pueden corregirlo.

Bit
de
Validacin

Posiciones verificadas

C0

1,3,5,7,9,11,13,15,17, etc.

Posi
C1cin

C2

Si se aaden junto al mensaje ms bits detectorescorrectores de error y si esos bits se pueden ordenar de
modo que diferentes bits de error producen diferentes
resultados, entonces los bits errneos podran ser
identificados. En un conjunto de siete bits, hay slo siete
posibles errores de bit, por lo que con tres bits de control
de error se podra especificar, adems de que ocurri un
error, en qu bit fue.

C3

3 4 5 6 7 8 9 1 1
2,3,67,10,11,14,15,18, 21,22, etc.
0 1

1
2

k C k k k C k k k k
0
2
1
2
3
3
4
5
6
7
4,5,6,7,12,13,14,15,20,21,22,23,
etc.

8,9,10,11,12,13,14,15,24,25,26,27,28,
etc.

Hamming(n , k )
n: #de bits de la palabra cdigo.
k: # bits de la palabra dato.

Hamming estudi los esquemas de codificacin


existentes, incluido el de dos entre cinco, y generaliz
sus conclusiones. Para empezar, desarroll una
nomenclatura para describir el sistema, incluyendo el
nmero de los bits de datos y el de los bits detectorescorrectores de error en un bloque. Por ejemplo, la
paridad incluye un solo bit para cualquier palabra de
datos, as que las palabras del Cdigo ASCII que son de
siete bits, Hamming las describa como un cdigo (8.7),
esto es, un total de 8 bits de los cuales 7 son datos. con
base a la anterior repeticin, sera un cdigo (3.1),
siguiendo la misma lgica. La relacin de la informacin
es el segundo nmero dividido por el primero, por
nuestro ejemplo de la repeticin, 1/3.

Tabla 2.0. Distribucin de


Hamming.

bits para una codificacin

Tabla 2.1. Posiciones para determinar la palabra


redundante

Hamming tambin estudi los problemas que surgan al


cambiar dos o ms bits a la vez y describi esto como
"distancia" (ahora llamada distancia de Hamming en su
honor). La paridad tiene una distancia de 2, dado que
cualquier error en dos bits no ser detectado. La
repeticin (3.1) tiene una distancia de 3, pues son
necesarios el cambio simultneo de tres bits para
obtener otra palabra de cdigo. La repeticin (4.1) (cada
bit se repite cuatro veces) tiene una distancia de 4, as
que el cambio de dos bits en el mismo grupo quedar
sin definir.

En la tabla 2.1 se muestran las posiciones que se


deben tomar para determinar la palabra redundante, a
continuacin, se muestra un ejemplo para una mejor
comprensin:
Ejemplo
k =10110110 k0 =1, k1 =0, k2 =1, k3 =1, k4 =0, k5 =1, k6
=1, k7 =0

Hamming
estaba
interesado
en
solucionar
simultneamente dos problemas: aumentar la distancia
tanto como sea posible, a la vez que se aumentan al
mximo los bits de informacin. Durante los aos 40

Posici
n

C0 C11

C20

20 21

22

1
0

1
1

1
2

C30

23

TELECOMUNICACIONES III TRABAJO AUTONOMO

.
Tabla 2.2. Posicionamiento de bits de dato.

Ejemplo:

Paridad Par

Sea el dato:

C0 = 1 0 1 0 1= 1

C0 = 1

Dato :k 0 k 1 k 2 k 3 k 4 k 5 k 6 k 7=10110110

C1 = 1 1 1 1 1 = 1 C 1 = 1
C2 = 0 1 1 0 = 0

C2 = 0

C3 = 0 1 1 0 = 0

C3 = 0

k 0 =1, k 1=0, k 2=1, k 3 =1, k 4 =0, k 5=1, k 6 =1,


k 7 =0
n
n
( 5) xor ( n 7 ) xor ( n 9 ) xor ( n 11 )=1
( 3 ) xor
C0 =

La palabra cdigo es:


n= 111001100110
nota*. Para determinar la palabra redundante no se
toma en cuenta la primera posicin de la tabla n1, ya
que estas corresponden a posiciones mltiplos de
2n , en la seccin de desarrollo se vuelve a explicar
el mismo ejemplo utilizando el software matlab.

n
n
( 6) xor ( n7 ) xor ( n10 ) xor ( n 11 )=1
( 3 ) xor
C 0=

DESARROLLO
Desarrollar cualquier tipo de cdigo de canal y mostrar
los resultados obtenidos.

n
n
( 6) xor ( n7 ) xor ( n7 ) xor ( n12) =0
( 5 ) xor
C 0=

CODIFICACION Y DECODIFICACION
Para el presente artculo se decidi realizar la
codificacin Hamming (12,8).

Parmetros:

n
n
( 10) xor ( n11 ) xor ( n12) =0
( 9) xor
C 3=

Palabra dato:

Longitud : k =8

Dato : k 0 k 1 k 2 k 3 k 4 k 5 k 6 k 7

Por lo tanto:

Palabra redundante:

Codigo :

Longitud :r=log 2 k +1=3+1=4

n1 n2 n3 n 4 n5 n6 n7 n8 n9 n10 n 11 n12=111001100110

Redundante :C 0 C 1 C 2 C 3

En matlab se puede simular este tipo de codificacin


realizando el algoritmo mostrado en la parte anterior.

Palabra cdigo:

Longitud :r=log 2 k +1=3+1=4

Algoritmo:

Codigo :n1 n2 n3 n 4 n5 n6 n7 n8 n9 n10 n 11 n12

Codificacin:

TELECOMUNICACIONES III TRABAJO AUTONOMO

.
1.

Introducir dato.

2.

Colocar los bits del dato (8 bits) en las


posiciones no mltiplos a
2n de la
palabra cdigo (12 bits).

3.

Realizar las operaciones xor en los bits de


la palabra cdigo (12 bits) para determinar
cada bit de la palabra redundante (4 bits).

Decodificacin:
1.

Guardar en memoria la palabra cdigo


recibida (12 bits).

2.

Comprobar si hay errores realizando la


operacin xor respectiva para determinar
cada bit redundante.

3.

Si hay error, ir paso 5, sino, ir paso 4.

4.

Seleccionar los bits no mltiplos a


guardarlos en un vector de 8 bits.

5.

Pedir una retransmisin del dato.

2n

CONCLUSION

Se logr disear el programa necesario para


realizar una codificacin y decodificacin
hamming(12,8) con la ayuda del software
matlab en la versin r2015a.

You might also like