Está en la página 1de 4

CÓDIGOS CONVOLUCIONALES

HISTORIA
En concreto, mientras que el proceso de codificación en los códigos de bloques
lineales consiste en una asignación lineal de palabras del código de longitud ja
a cada grupo de símbolos de una longitud dada, en los códigos convolucionales
la generación de la redundancia se realiza con un proceso más general: la
secuencia del código es la respuesta de un sistema lineal e invariante en el
tiempo a la secuencia completa de símbolos del mensaje. Los códigos
convolucionales (introducidos en 1955 por P. Elias y presentados de nuevo en
1959 por D. W. Hagel Barger bajo el nombre de códigos recurrentes) son
conceptualmente simples y poseen, en la mayoría de los casos, una capacidad
de control de errores tan buena o mejor, a igual tasa de codificación, que la de
los códigos de bloques; por contra, presentan una estructura matemática menos
simple que la de éstos últimos, y eso explica que sea más difícil analizar con
exactitud sus prestaciones, así como que sólo se hayan podido determinar hasta
la fecha unos pocos criterios empíricos de diseño.
Desde el hallazgo de un algoritmo óptimo y eficiente de decodificación (el
algoritmo de Viterbi), los códigos convolucionales comenzaron a ser
ampliamente aplicados a la construcción de sistemas de comunicaciones
digitales. Encuentran utilidad, sobre todo, en canales con fuertes limitaciones de
ancho de banda (por ejemplo, en la transmisión de datos a través de una línea
telefónica, en ciertos sistemas de comunicaciones por satélite o en redes de
telefonía móvil digital) porque, cuando se combinan con técnicas de modulación
digital apropiadas, consiguen un notable incremento de la fiabilidad del canal sin
el coste de aumentar el ancho de banda de la señal modulada.
El uso integrado de códigos convolucionales y modulaciones digitales se conoce
como modulación trellis, y ha demostrado ser uno de los avances más
significativos en la aplicación de las técnicas de codificación de canal durante la
década de los ochenta.
DEFINICIÓN
Los códigos convolucionales son códigos lineales, donde la suma de dos
palabras de código cualesquiera también es una palabra de código. Y al contrario
que con los códigos lineales, se prefieren los códigos no sistemáticos.
El sistema tiene memoria: la codificación actual depende los datos que se envían
ahora y que se enviaron en el pasado.
Un código convolucional queda especificado por tres parámetros (n,k,m);
La codificación convolucional es una codificación continúa en la que la secuencia
de bits codificada depende de los bits previos. El codificador consta de un
registro de desplazamiento de k segmentos de longitud k (en total kk) que se
desplaza de k posiciones por ciclo y genera n funciones XOR también por ciclo.
La tasa de codificación es, entonces R=k/n.
Debido a la memoria del código es necesario disponer de medios adecuados
para determinar la salida asociada a una determinada entrada.
Hay tres métodos gráficos:
- Diagrama de árbol o árbol del código: representación mediante un árbol
binario de las distintas posibilidades.
- Diagrama de estados: es la forma menos utilizada
- Diagrama de Trellis o enrejado: es la forma más utilizada porque es la que
permite realizar la decodificación de la forma más sencilla
PRINCIPALES CARACTERÍSTICAS
APLICACIONES
Al ser un sistema codificable linealmente es posible programar en circuitos
lógicos o microcontroladores, las principales aplicaciones son desarrolladas en
el área de la codificación y decodificación de dispositivos de telecomunicaciones,
principalmente radio transmisiones de baja frecuencia.
CONSTRUCCIÓN
Un código convolucional es un tipo de código de detección de errores. Los
códigos convolucionales están especificados comúnmente por tres parámetros:
(n, k, m). n= número de bits de salida k = número de bits de entrada m = número
de registros de memoria
PARÁMETROS DEL CÓDIGO Y LA ESTRUCTURA DEL CÓDIGO
CONVOLUCIONAL
La estructura del código convolucional es fácil de dibujar desde sus parámetros.
Se dibujan m cajas representando los m registros de memoria. Entonces se
dibujan sumadores de módulos representando los n bits de salida. Ahora se
conectan los registros de memoria a los sumadores usando el generador
polinomial como puede verse en la siguiente figura:

V1

U1 U1 U0 U1

V2
(1,0,1)
V3
(1,0,1)

Este código convolucional (3,1,3) tiene 3 registros de memoria, 1 bit de entrada


y 3 de salida
Un código convolucional queda especificado por tres parámetros:
- número de entradas k ←--- bits de información
- numero de salidas n ←---secuencia codificada de información, bits de
información ´+ bit de redundancia
- Memoria de código m
k
R = tasa del código
n
EJEMPLO
Dado la condición de conversión binaria para un sistema binario de tres bits se
tiene la
siguiente tabla Conclusión.
• Convolución Mediante convolución se puede determinar la respuesta del
sistema a una señal de entrada a partir de la respuesta del sistema a una
entrada impulso.
• La función h(t) se define para t>=0 y decrece cuando t->00, para la
mayoría de los sistemas físicos. Por tanto, La respuesta en t0 depende de
los valores actual y pasados de la entrada y de la respuesta al impulso.
• Los valores más recientes de x(t) son multiplicados por sus
correspondientes más antiguos (y más grandes) valores de h(t).
Debido a que los códigos convolucionales tienen memoria podemos codificar la
información por medio de controladores, además podemos expresarlas como
registros de desplazamiento, para ello consideremos el siguiente ejemplo:
Considere un código convolucional con k=1, n=2, m=3.
1
La tasa del código será R =
2
Mediante registros de desplazamiento expresaremos el código de la siguiente
manera

Salida 1-01 (output 1)


Secuencia en
entrada desde
S1 S2 S3 O1O2
el bit más
antiguo…
Salida 2-02 (output 2)

Cabe resaltar que esta es solo una forma de expresar un código convolucional,
existen muchas formas de expresar, eso también depende del valor de m, k, y n.
Si queremos codificar una secuencia por ejemplo la secuencia 0101 empezamos
estableciendo a S1, S2, S3 con valores 0

O1

0101 0 0 0 O1O2

O2

Posteriormente insertamos el primer símbolo de derecha a izquierda, es este


caso el 1
O1 = 1+0 = 1

010 1 0 0 O1O2 = 11

O2 = 1+0 = 1

Ahora S1 es igual a 1, S2 y S3 son 0 y el dato de salida es 11, al momento de


poner el segundo símbolo recorremos S1.
O1 = 0+0 = 0

01 0 1 0 O1O2 = 01

O2 = 0+1 = 1
Seguimos así hasta terminar todos los bits de símbolos

O1 = 1+1 = 0

0 1 0 1 O1O2 = 01

O2 = 1+0 = 1

O1 = 0+0 = 0

0 1 0 O1O2 = 01

O2 = 0+1 = 1

La salida codificada será 01-01-01-11.


Teniendo en cuenta el sistema de ecuaciones para este caso
O1 = S1 + S3
O2 = S1 + S2
Podemos elaborar una tabla de entradas y salidas de todos los posibles casos
para este ejemplo

S1S2S3 O 1O 2
O1
000 00
100 11
010 01 S1 S2 S3
001 10
110 10 O2
011 11
101 01
111 00

CUESTIONARIO
1. Los códigos convolucionales comenzaron a ser ampliamente aplicados a la
construcción de sistemas de comunicaciones digitales.
a) verdadero b) falso
2. Los códigos convolucionales son aplicables para transmisiones de baja
frecuencia?
a) verdadero b) falso
3. Los códigos convolucionales, se trata de codificación de canal para:
a. añadir redundancia para lograr una transmisión fiable de la información
b. añadir eficiencia para lograr una recepción fiable de la información
c. añadir códigos instantáneos para lograr transmitir información fiable

También podría gustarte