Vous êtes sur la page 1sur 70

Transmisin Digital

Prof. Francisco Paiva


paiva.francisco@gmail.com
CAPTULO III
PARTE II
Codificacin de Canal

Prof. Francisco Paiva
Mayo 2014
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
ASPECTOS INTRODUCTORIOS DE LA CODIFICACIN DE CANAL
Codificacin de Canal (CC: Channel Coding) se refiere a la transformacin que
se aplica a la seal digital correspondiente a la data de usuario con el fin de
mejorar el desempeo del proceso de comunicacin al brindar a sta una mayor
fortaleza frente a las condiciones adversas presentes en el canal como
desvanecimiento, ruido, o interferencias.

El objetivo de la CC es de reducir la probabilidad de error, o reducir el Eb/No
requerido, a expensas de aumentar el ancho de banda de la seal que se
transmite, dado que para lograr el objetivo se agregan bits adicionales (bits de
redundancia).

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
ASPECTOS INTRODUCTORIOS DE LA CODIFICACIN DE CANAL
La codificacin de canal est dividida en dos reas de estudio: una de ellas se
centra en el diseo de la forma de onda de las seales utilizadas para codificar y
la otra en la estructuracin ms apropiada de secuencias digitales con bits de
redundancia utilizados para deteccin y correccin de errores.

La Codificacin de Canal tiene como propsito obtener la mejor forma de onda
de modo que el proceso de deteccin sea menos propenso a cometer errores o
la mejor secuencia, aquellas con la mayor distancia posible entre las
diferentes palabras que conformen el cdigo para minimizar la probabilidad de
confundir una secuencia con otra.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Codificacin de Canal
Sealizacin M-aria
Antipodalidad
Ortogonalidad
Bi-ortogonalidad
Trans-ortogonalidad
Forma de Onda Secuencias Estructuradas
Por Bloques
Convolucionales
Turbo
Ambas categoras en que se ha divido la codificacin de canal aumentan el
ancho de banda necesario para transmitir la seal, sin embargo las secuencias
estructuradas lo hacen en menor grado que la codificacin de forma de onda.
Transmisin Digital
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Sealizacin Antpoda: Seales de igual magnitud pero de polaridad opuesta.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Sealizacin
Ortogonal:
En general, un conjunto de seales de igual energa E, donde
es ortogonal (temporalmente hablando) si
i
s ( t )
i 1,2,3,...,M =
T
i j i j
0
1 si i j
1
z s ( t )s ( t )dt
0 si i j E
=

= =

=

}
Donde es llamado coeficiente de correlacin cruzada.
i j
z
T
2
i
0
E s ( t )dt =
}
;
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La idea es mantener el coeficiente de correlacin cruzada lo ms pequeo
posible. El valor ms bajo se obtiene cuando las seales son antpodas pero
esto solo es posible en sistemas de sealizacin binaria (M=2). En la prctica
es posible hacer que el coeficiente de correlacin cruzada sea cero para ,
es decir, tener un conjunto ortogonal de seales.

La correlacin cruzada provee una medida de la distancia entre los vectores
representativos de las seales pertenecientes al conjunto, a menor correlacin
cruzada mayor distancia entre vectores.
i j =
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La figura ilustra la
codificacin de una
secuencia de bit con
longitud de palabra igual
a 2 bit con un cdigo
ortogonal y su
correspondiente
codificacin ortogonal de
forma de onda.
T
i j i j
0
1 si i j
1
z s ( t )s ( t )dt
0 si i j E
=

= =

=

}
Data set
Codeword set
Channel
coded
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Cuando el conjunto de formas de onda es representado por dgitos binarios el
coeficiente de correlacin cruzada esta dado por:
i j
i j
# dgitos coincidentes # dgitos no coincidentes
z
#total de dgitos
1 ;i j
z ;con i, j 1,2,3,....,M
0 ;i j
M tamao del conjunto de cdigos

=
=

= =

=
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
i j
i j
# dgitos coincidentes # dgitos no coincidentes
z
#total de dgitos
1 ;i j
z ;con i, j 1,2,3,....,M
0 ;i j

=
=
= =

Podemos demostrar fcilmente que el conjunto de cdigos mostrado es


efectivamente un conjunto ortogonal
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Considere un sistema de Transmisin Digital con sealizacin M-aria ( M = 2
k
)
y modulacin PSK (Phase Shift Key) transmitiendo data sobre un canal
contaminado con AWGN. El transmisor genera una de M posibles formas de
onda y modula en fase una portadora de RF durante el
intervalo de bit (T
b
) correspondientes a las amplitudes 1 y -1 voltio
respectivamente. En el receptor la seal recibida es demodulada a banda base
y conducida a un banco de M correlacionadores (o filtros ptimos). La
correlacin es llevada a cabo durante el intervalo de duracin del cdigo
ortogonal (T), donde T = (Log
2
M)T
b
= kT
b
. Con codificacin ortogonal, en
ausencia de ruido, la salida de todos los correlacionadores es cero
exceptuando la correspondiente al correlacionador adaptado al cdigo
transmitido.
0 | t =
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Cdigos Ortogonales:
Se obtienen a partir de una matriz denominada matriz de Haddamard cuyo
tamao ms reducido ocurre para k = 1:
Para una longitud de palabra de mensaje igual a k = 2 bit, tenemos:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Para una longitud de palabra de k = 3 bits:
De forma general, la matriz
de Haddamard tiene la
forma:
La probabilidad de error de
smbolo (palabra de cdigo)
es:
( )
k
b
s
0
E
P( k ) 2 1 Q k
N
| |
s
|
|
\ .
La probabilidad de error de bit y la de
smbolo estn relacionadas de la siguiente
forma:
k 1
b
k
s
P( k ) 2
P( k ) 2 1

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
( )
k
b
s
0
E
P( k ) 2 1 Q k
N
| |
s
|
|
\ .
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La idea del empleo de la ortogonalidad en los cdigos es proveer de
ortogonalidad a las formas de onda asociada a estos, aumentando la distancia
entre los vectores representativos de stas y disminuyendo as la probabilidad
de error.

La matriz de Haddamard es muy utilizada para generar cdigos ortogonales de
longitud 2
k
bits, donde k es la longitud de palabra del conjunto original de datos
(data-set). En los sistemas CDMA (IS-95, cdmaOne y CDMA2000) se emplean
los denominados cdigos Walsh que, dada sus caractersticas de
ortogonalidad basadas en la matriz de Haddamard, proveen de ortogonalidad a
las diferentes seales de usuario que se conectan a una misma celda.

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Al enviar al modulador pasa banda 2
k
bits en lugar de k bits, el ancho de
banda de la transmisin se incrementa en un factor igual a . Esto
contrasta, como veremos ms adelante, con el empleo de secuencias
estructuradas (cdigos: de bloque, cclicos, convolucionales, Trellis, Turbo y
otros) en donde por cada k bits en el data set, son enviados al modulador n
bits (n>k) por lo que el incremento de ancho de banda es , pero, en
contraste, el costo de implementacin es superior. En consecuencia los
cdigos ortogonales poseen una eficiencia espectral pobre si se les compara
con las secuencias estructuradas pero son ms fciles de implementar.
k
2 k
n k
Cdigos Ortogonales vs Secuencias Estructuradas:
Al ser el ancho de banda de los cdigos ortogonales su gran desventaja,
cabe preguntarse, es posible reducir la demanda de ancho de banda de
stos cdigos?, la respuesta viene dada a continuacin:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Cdigos Bi-ortogonales:
Dado un data set de longitud igual a k bits, el cdigo bi-ortogonal
correspondiente viene dado por la matriz B
k
definida en trminos de la matriz
de Haddamard como se muestra a continuacin:
k 1
_
k
k 1
H
B
H

(
= (
(

Los cdigos resultantes son ortogonales entre s por la naturaleza de la matriz H
y antpodos a la vez. Esta combinacin de ortogonalidad y antipodalidad permite
reducir a la mitad los requerimientos de ancho de banda, por lo que estos
cdigos son ampliamente utilizados en sistemas de transmisin digital.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo de cdigo bi-ortogonal para una data set con k = 3
Note la
ortogonalidad
y antipodalidad
manifiesta del
cdigo. Compare la
cantidad de bits
agregados con
relacin a los
cdigos
ortogonales.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Cdigo Bi-ortogonal Cdigo Ortogonal
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La probabilidad de error de la codificacin bi-ortogonal est dada por:
( )
k
b b
s
0 0
E E
P( k ) 2 1 Q k Q 2k
N N
| | | |
s +
| |
| |
\ . \ .
Para data set con k > 3 la probabilidad de error de bit esta dada por la
siguiente aproximacin:
b s
1
P( k ) P( k )
2
~
De esta forma el cdigo bi-ortogonal ofrece una mejora de desempeo con
respecto a la probabilidad de error de bit comparado con el ortogonal y slo
demanda la mitad del ancho de banda de ste.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Si en el escenario previsto para la transmisin digital se puede permitir un
aumento del ancho de banda previsto para transmitir la data, los cdigos
ortogonales y bi-ortogonales, as como las secuencias estructuradas, permiten
disminuir la probabilidad de error, pero qu podramos hacer frente a un
escenario de ancho de banda limitado. La respuesta es conocida como Trellis-
Code-Modulation (TCM), este tpico ser cubierto ms adelante en el presente
curso, por el momento realizaremos una descripcin de las secuencias
estructuradas.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
SECUENCIAS ESTRUCTURADAS:
La idea consiste, no en transformar el data set, sino en agregarle a
continuacin de cada palabra de mensaje, bits de redundancia
estructurada los cuales permiten detectar y corregir errores en la
transmisin.

Las secuencias estructuradas estn divididas en dos importantes
categoras: codificacin por bloques y codificacin convolucional.

Las secuencias estructuradas permiten obtener un desempeo similar a la
codificacin de forma de onda y de los cdigos ortogonales pero con una
demanda de ancho de banda considerablemente inferior. En trminos
generales, las palabras de cdigos estructuradas que resultan de la
aplicacin de las tcnicas ya mencionadas no son ortogonales entre s.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Cdigos de chequeo de Paridad:
Utiliza bits de paridad aadidos al data set para deteccin y correccin de
errores. En su forma ms simple se agrega un bit de paridad par o impar a
cada palabra de data que se transmite en forma serial:
0100 10100 00100
1010 01010 10101
DATA WORD CODE WORD

PARIDAD PAR PARIDAD IMPAR
10100 01010 . . . .
BITS DE PARIDAD
Tx serial
En el receptor el procedimiento de decodificacin consiste en sumar mdulo
2 (or-exclusive) todos los bits de la palabra de cdigo recibida, el resultado
debe ser cero en el caso de la paridad par y uno para la paridad impar, de lo
contrario se detecta un error en la palabra transmitida.
00 0
01 1
10 1
11 0
OR-EXCLUSIVE
La tasa del cdigo puede ser expresada como
La ventaja del cdigo es su simplicidad y el poco
incremento de ancho de banda (poca redundancia),
su desventaja es que no puede detectar la presencia
de un nmero par de errores.
k k 1 +
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Asumiendo que todos los posibles errores son igualmente probables y que
ocurren de forma independiente, la probabilidad de que errores se
produzcan en un bloque de smbolos es:
j
n
j n j
n
P( j,n ) p ( 1 p )
j

| |
=
|
\ .
y es la probabilidad de que un smbolo en el canal sea recibido con error.
; donde:
n
n!
j j !( n j )!
| |
=
|

\ .
p
Para un cdigo de paridad simple, la probabilidad de no detectar un error
dentro de un bloque de bits es: n
n 2 ( paridad par )
( n 1 ) 2 ( paridad impar )
2 j n 2 j
nd
j 1
n
P p ( 1 p )
2 j

=
| |
=
|
\ .

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo:
n 2 ( paridad par )
( n 1 ) 2 ( paridad impar )
2 j n 2 j
nd
j 1
n
P p ( 1 p )
2 j

=
| |
=
|
\ .

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La paridad puede ser aplicada tambin a bloques de datos (formando lo que
se conoce como cdigo rectangular), por ejemplo en una transmisin en
paralelo como se ilustra a continuacin:
Bit de paridad Horizontal Bit de paridad Vertical
Data set
A diferencia de la paridad simple, aqu se puede detectar exactamente donde
se produce el error, dado que un error en un bit produce un cambio en la
paridad tanto horizontal como vertical de las filas y columnas de la matriz
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La tasa del cdigo rectangular es:
k MN
n ( M 1)( N 1)
=
+ +
Donde M = # filas y N = # columnas
En el ejemplo anterior M = N = 5 y el cdigo se denota como un cdigo (n, k) =
(36,25) con capacidad de deteccin y correccin de un error simple localizado
en una de 36 posiciones.
La probabilidad de que en un bloque de n smbolos se produzcan j errores,
llamada probabilidad de error de bloque o palabra error se indica a
continuacin para un cdigo capaz de detectar y corregir un mximo de t
patrones de error:
n
j n j
BE
j t 1
n
P p ( 1 p )
j

= +
| |
=
|
\ .

Para un cdigo (36,25) como el indicado con anterioridad, se tiene:


36
j 36 j
BE
j 2
36
P p ( 1 p )
j

=
| |
=
|
\ .

Sin embargo para valores bajos de p slo


el primer termino de la sumatoria es significativo
2 34
BE
36
P p ( 1 p )
2
| |
=
|
\ .
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ganancia de cdigo:
Los cdigos permiten disminuir los
requerimientos de Energa de bit a
medida que aumentan la redundancia
que aaden, pero mucha redundancia
aumenta la demanda de ancho de
banda.
La Ganancia de cdigo se define como la
reduccin (en dB) del Eb/No requerido
para alcanzar una determinada
probabilidad de error de bit en un
sistema que utilice un cdigo de
deteccin y correccin de errores con
relacin a un sistema que no emplea
codificacin (ambos sistemas deben
operar con el mismo esquema de
modulacin). Note que existe un umbral
(prximo a los 6dB) por debajo del cual
el cdigo resulta intil.
PSK Coherente
Sobre un canal Gausseano
2,5 dB
1,5 dB
9,5
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
CDIGOS LINEALES DE BLOQUE (LINEAR BLOCK CODES)
Constituyen una categora de cdigos de chequeo de paridad y responden a la
misma nomenclatura (n, k ) descrita anteriormente. El codificador transforma un
vector mensaje de k bits en un vector cdigo de n bits el cual constituye ahora
el alfabeto con el que sistema trabaja. Los vectores de mensaje sern referidos
en adelante como tuplas de k bits o k-tuples (secuencia de k bits). Los vectores
de cdigo sern referidos como n-tuples. El trabajo de codificador es establecer
una relacin univoca entre k-tuplas y n-tuplas (comnmente a travs de una
look-up-table) de forma, por su puesto, lineal.
0 0 0 0 0 0
0 1 1 0 1 0
1 0 1 1 0 0
1 1 0 1 1 1
= =
= =
= =
= =
Suma Multiplicacin
Las diferentes tuplas o secuencias de
bits definen un espacio vectorial Vn
sobre el campo binario de dos
elementos (1 y 0); este campo posee
dos operaciones bsicas: la suma y la
multiplicacin, definidas de la siguiente
forma:

Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Se define un sub-espacio S del espacio vectorial Vn de n-tuplas el cual va a
poseer las siguientes caractersticas:

1.- El vector todos ceros est contenido en S
2.- La suma de cualquier par de vectores en S debe estar contenida en S
(propiedad de autocontencin)
Estas propiedades son fundamentales
para la caracterizacin algebraica de los
cdigos lineales de bloque. La
caracterstica lineal del cdigo es
establecida por el hecho de que para
cualquier par de vectores de cdigo, la
suma de stos tambin debe resultar en
un vector de cdigo.

Un conjunto de 2
k
n-tuplas ser un cdigo
lineal de bloque si y slo si ste es un sub-
espacio del espacio vectorial de n-tuplas.
La suma de vectores en S debe dar
como resultado un vector en S.
n
2 n tuplas
k
2 n tuplas
n 4
k 2
=
=
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Un vector mensaje es codificado a uno de 2
k
vectores de cdigo en el sub
espacio y posteriormente transmitido. Dada las caractersticas del canal
(ruido) el cdigo recibido se distorsiona pero debido a las caracterstica de
linealidad es recibido como uno de los otros 2
n
vectores de Vn. Si ste
vector recibido no esta muy lejos de un vector vlido de cdigo (en el sub-
espacio) el decodificador podr decodificar el mensaje correctamente.
Los aspectos bsicos a considerar para la seleccin de un cdigo lineal de
bloque son:

Debemos poseer una eficiencia de cdigo lo ms alta posible, es decir, que
su uso demande la menor cantidad posible de exceso de ancho de banda,
pero a la vez, que el espacio vectorial Vn posea la mayor cantidad posible
de cdigos (tuplas).

Se desea que los vectores de cdigo estn separados entre s lo mayor
posible a los fines de poder detectar correctamente el vector de mensaje
aun cuando el vector transmitido experimente cambios debido a los efectos
del canal (ruido).
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo: cdigo lineal de bloque (6,3):

Existen = 8 vectores mensaje y por ende
slo 8 vectores de cdigo de 6 bits cada uno.

Existen 2
6
= 64 6-tuplas en el espacio
vectorial V
6.


Ante la eventualidad de un canal ruidoso y
en consecuencia un cambio impredecible en
el vector de cdigo recibido, el decodificador
evaluara la distancia entre la 6-tupla
recibida (una de 64 posibles) y el vector
vlido de cdigo (1 de 8 posibles) decidiendo
por aquel cdigo dentro del sub-espacio que
est ms prximo a la 6-tupla que se
recibe. A partir de est decisin, slo resta
eliminar la redundancia que fue aadida y se
obtiene el vector mensaje.
k
2
Parity bits
(redundancia)
Bits de mensaje
(data)
Forma de estructurar el
vector de cdigo
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Si el tamao de los mensajes que se desean transmitir es muy grande (valores
elevados de k) la implementacin de look-up-table se hace prohibitiva dada las
dimensiones de la tabla y su costo en capacidad de memoria de los sistemas.
Por ejemplo para un cdigo (127, 92) se tendra 2
92
, es decir,
aproximadamente 5x10
27
vectores de cdigos, esto es un costo enorme e
imprctico.

Para superar esta limitacin se utilizan procedimientos de generacin
inmediata de los vectores de cdigo en lugar de almacenarlos todos en una
tabla. Estos procedimientos utilizan matrices generadoras y chequeadoras de
cdigo, las cuales reducen los costos de memoria aunque a expensas de un
grado de complejidad mayor en el proceso de codificacin y decodificacin en
transmisores y receptores.


Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La matriz generadora G permite obtener el vector de cdigo U para cada
vector mensaje m a travs de una simple multiplicacin matricial:
U mG =
Donde que constituyen los bits de mensaje

1 2 k
m m , m , ....,m =
1 1 2 2 k k
U mV mV .....mV = + +
Con como vectores linealmente
independientes dentro del sub-espacio s
1 2 k
V ,V ,...V
| |
1
2
k
k
V
V
G P I
V
(
(
(
= =
(
(

; con P = Parity Bits (redundancia) e I = matriz identidad
(la condicin de linealidad independiente en esta rea significa que la suma
de dos cualesquiera de los vectores linealmente independiente que forman
un conjunto, no debe dar como resultado otro vector en el mismo conjunto)
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Para el ejemplo ilustrado anteriormente de cdigo (6,3):
La matriz generadora tiene la forma:
| |
1 2 3
110 100
U m m m 011 010
101 001
(
(
=
(
(

Luego:
110 100
G 011 010
101 001
(
(
=
(
(

Es decir:
1 3 1 2 2 3 1 2 3
U m m , m m , m m , m , m , m = + + +
P I
Parity bits Data
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La matriz chequeadora de paridad es utilizada en el receptor para decodificar
el vector de cdigo transmitido y adems detectar y corregir errores en caso
de que estos se produzcan durante la transmisin sobre el canal. La matriz
chequeadora se denota H y es de la forma:
T
n k
H I P

= (

y su versin transpuesta es:
n k
T
I
H
P

(
(
=
(
(

Para el ejemplo anterior H
T
es:
T
100
010
001
H
110
011
101
(
(
(
(
(
=
(
(
(
(
(

; se verifica que si U ha sido generado por G, entonces:
T
UH 0 =
En el decodificador se toma el
vector recibido y se multiplica por
H
T
, si el resultado es cero significa
que no hay error, de lo contrario el
error es detectado.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
En trminos generales, el decodificador recibe un vector r dado por:
r U e = + Donde e es un vector de ruido o vector de perturbacin y
representa el patrn de error introducido por el canal.
Se define el sndrome como: si r = U, S = 0, de lo contrario el
sndrome es diferente de cero y se detecta el error.
T
S rH =
T T T
S (U e )H UH eH = + = +
; pero
T
UH 0 =
por lo tanto
T
S eH =
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo:
Comentario: El sndrome puede utilizarse para conocer donde exactamente
se produjo el error. Cmo?
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Correccin de error:
Una propiedad importante de los cdigos lineales de bloque y fundamental
para el proceso de decodificacin, es que existe una correspondencia unvoca
entre los posibles patrones de error corregibles y el sndrome. Esta situacin
permite utilizar el sndrome como un indicador del patrn de error que afecto
al vector transmitido.
Se define un arreglo estndar para un cdigo (n, k) tiene la siguiente forma:
Coset Lideres: constituyen
los patrones de error corregibles
cosets
Vectores de cdigo
Se demuestra que todos los miembros de un coset tienen el mismo sndrome.
El sndrome de cada coset es diferente.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo: Arreglo estndar para el cdigo (6, 3):
Coset Lideres: constituyen
los patrones de error corregibles
Vectores
de
cdigo
Posibles vectores
contaminados con los coset
lideres
Note que existen 64 6-tuplas, los vectores de
cdigo son 8 y los patrones de error corregibles
son 8 (todos los posibles errores en un bit ms
un patrn de error en dos bits)
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Podemos determinar el sndrome correspondiente a cada patrn de error
corregible de acuerdo a:
Los resultados son:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Procedimiento de correccin de error:
1.- Se calcula el sndrome de vector recibido:
2.- Se localiza en el arreglo, el patrn de error corregible (el coset lder) cuyo
sndrome es igual al calculado en 1.
3.- Este patrn de error se asume como el introducido por el canal.
4.- El vector corregido, o vector de cdigo corregido, se calcula como:
T
S rH =
j
U r e = +
Podramos decir que, identificado el patrn de error, el vector corregido se
obtiene de restar al vector recibido el patrn de error, pero en aritmtica
de mdulo 2 la resta es equivalente a la suma.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Peso y distancia de vectores binarios
El peso Hamming de un vector est definido como el nmero de
unos presentes en el cdigo.
Si entonces
w(U ) U
U 100101101 =
w(U ) 5 =
La distancia de Hamming entre dos vectores de cdigo U y V, denotada
est definida por el nmero de bits por los cuales difieren.

Si y
d(U,V )
U 100101101 =
V 011110100 =
Entonces d(U,V ) 6 =
La distancia de Hamming es equivalente al peso del vector suma : U V
d(U,V ) w(U V ) =
Dentro de un conjunto de distancias de Hamming entre vectores de un espacio
la distancia mnima ( ) es el miembro ms pequeo de ese conjunto. El
inters en la distancia mnima radica en el hecho de que ella define la
capacidad de deteccin del cdigo y por ende su fortaleza.
min
d
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Dada la propiedad de linealidad del cdigo, la distancia mnima puede ser
determinada sin tener que evaluar todas las distancias posibles entre pares de
tuplas. Slo necesitamos examinar el peso de cada vector de cdigo
(excluyendo el todo ceros) en el sub-espacio; el vector de peso mnimo definir
la distancia mnima del cdigo. Equivalentemente la distancia mnima
corresponder a la ms reducida de las distancias entre el vector todos ceros y
los restantes vectores de cdigo.

Ejemplo: Considere el siguiente cdigo (3,6):
La distancia mnima es de 3
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Deteccin y correccin de error:
La tarea del decodificador es, habiendo recibido un vector r, estimar el
vector de cdigo U que fue transmitido. La estrategia ptima a seguir viene
en trminos de mxima verosimilitud similares a los ya estudiados.


El decodificador decide por un vector U si:
j
sobre todos los U
i j
r r
P mx P
U U
| |
| |
=
|
|
|
\ .
\ .
Esto se traduce en lo siguiente:
j
i j
sobre todos los U
d( r,U ) min d( r,U ) =
En otras palabras, el decodificador determina la distancia entre r y cada uno
de los posibles vectores de cdigos que pueden ser transmitidos U
i
y
selecciona aquel vector de cdigo U
j
que est ms cerca de r.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La figura presenta el escenario de dos
vectores de cdigo U y V as como otros
posibles vectores recibidos (r1, r2 y r3). El eje
est calibrado en distancia de Hamming, esto
quiere decir que, por ejemplo, r1 es un vector
que difiere en un solo bit del vector U y en
cuatro bits del vector V, de igual forma r3
difiere en cuatro bits de U y en un bit de V.
Si r1 es el resultado de un bit corrupto al
haberse transmitido U, el decodificador
corregir exitosamente el error, pero si r1 es el
resultado de 4 bits corruptos al haberse
transmitido el vector V se producir un error
de decodificacin. La distancia mnima es 5 y
el cdigo puede corregir hasta dos errores. En
general el cdigo es capaz de corregir t
errores:
min
d 1
t
2

(
=
(

Donde significa el entero
mayor que no excede
x
(

x
Cul es la capacidad
de deteccin de error
del cdigo?
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
El cdigo puede ser utilizado para detectar errores en lugar de corregirlos, la
capacidad de detectar errores e esta dada por:
min
e d 1 =
Un cdigo (n, k) es capaz de detectar patrones de error de longitud n.
n k
2 2
La probabilidad de que el decodificador cometa un error de decodificacin y que
el bloque de n bits presente un error est dada por:
n
j n j
E
j t 1
n
P p ( 1 p )
j

= +
| |
s
|
\ .

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

= +
| |
~
|
\ .

La probabilidad de error de bit es:


Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Constituyen una categora importante de los cdigos lineales de bloque. Son
fcilmente implementados utilizando registros de desplazamientos
realimentados. El clculo del sndrome es fcil de obtener utilizando en el
receptor registros de desplazamiento similares a los empleados en el
transmisor. El uso de registros de desplazamiento en lugar de look-up-tables es
una ventaja de estos cdigos.
Un cdigo de bloque (n, k) es cclico si cumple las siguientes propiedades:

Si la n-tupla:
es un vector de cdigo en el sub-espacio S, entonces:

, es decir, el vector rotado circularmente en un elemento tambin es un
elemento dentro del sub-espacio. Por extensin el vector rotado i elementos
, debe ser un vector dentro de S.

Los componentes de un vector U pueden ser tratados como coeficientes de un
polinomio U(X):
CODIGOS CCLICOS:
( )
0 1 2 n
U u , u , u , ......, u =
( i )
U
2 n 1
0 1 2 n 1
U( X ) u u X u X .... u X

= + + + +
( )
( 1 )
n 1 0 1 2 n 2
U u ,u , u , u , ......, u

=
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Por ejemplo la tupla: se representa as:
1001101
3 4 6
1 x x x + + +
1001100 se representa as:
3 4
1 x x + +
Se demuestra que si es un vector de cdigo, entonces el residuo de
dividir tambin es un vector de cdigo y se corresponde
al vector U rotado circularmente i veces.
U( X )
i n
X U( X ) X 1 +
i ( i )
i n ( i )
n n
X U( X ) U ( X )
q( X ) X U( X ) q( X )( X 1) U ( X )
X 1 X 1
= + = + +
+ +
El orden del polinomio es n -1 o inferior
Estructura algebraica de un cdigo cclico:
Cmo puedo generar un vector desplazado en forma algebraica?
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo: Considere U = 1101, para n = 4, obtenga el vector de cdigo
correspondiente a la tercera rotacin circular de U, es decir U
(3)
.
Solucin:
3 i 3 4 6
U( X ) 1 X X X U( X ) X X X = + + = + +
Dividiendo: y tomando el residuo resulta:
3
4
X U( X )
X 1 +
Residuo
Luego:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Generacin de cdigos cclicos:
Para generar un cdigo cclico (n, k), se utiliza un polinomio generador descrito de
la siguiente forma:
2 r
0 1 2 r
g( X ) g g X g X ..... g X = + + + +
;
0 r
r n k
g g 1
=
= =
Todos los vectores de cdigo en el sub-espacio son de la forma: U( X ) m( X )g( X ) =
2 n r 1
0 1 2 n r 1
m( X ) m m X m X ..... m X


= + + + +
U constituye un vector vlido de cdigo si y solo si no produce residuo.
U( X )
g( X )
El polinomio generador debe ser un factor de de modo que
n
X 1 +
n
X 1 g( X )h( X ) + =
; donde es otro polinomio que puede utilizarse
alternativamente como polinomio generador.
h( X )
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Por ejemplo:
7 3 2 4
X 1 (1 X X )(1 X X X ) + = + + + + +
Utilizando como polinomio generador de grado n k = 3,
podemos generar un cdigo cclico (n, k) = (7, 4). O alternativamente podemos
utilizar para obtener un cdigo (7, 3).
3
g( X ) 1 X X = + +
2 4
g( X ) 1 X X X = + + +
Se demuestra que:
n k
r( X ) X m( X ) q( X )g( X ) U( X )

+ = =
Donde es el residuo de dividir y se denota:
r( X )
n k
X m( X )
g( X )

n k
r( X ) X m( x ) U( X )

+ =
De la expresin: , se desprende que el vector de
cdigo tiene la forma:
0 1 n k 1 0 1 k 1
U ( r , r , ....., r , m , m , ......,m )

=
Bits de paridad
(redundancia)
Bits de mensaje
(data)

n k
r( X ) X m( X ) mdulo g( X )

=
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Codificacin sistemtica de un cdigo cclico utilizando registros de
desplazamientos realimentados
La forma general del shift register es:
Las conexiones de realimentacin del circuito, estn dadas por los coeficientes
del polinomio generador que se emplee.
g( X )
2 n k 1 n k
1 2 n k 1
g( X ) 1 g X g X ... g X X


= + + + + +
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Los siguientes pasos describen el proceso de codificacin:
1.- El interruptor nmero 1 se cierra durante los primeros k desplazamientos
para permitir la transmisin de los bits de mensaje dentro de las n k etapas
del circuito codificador.
2.- El interruptor nmero 2 est en la posicin inferior durante los rimeros k
desplazamientos para permitir la transmisin de los bits de mensaje
directamente hacia la salida del circuito.
3.- Finalizado los k primeros desplazamientos, el interruptor 1 se abre y el
interruptor 2 se conmuta a la posicin superior.
4.-Los restantes n k desplazamientos limpian las etapas del circuito
transmitiendo los bits de paridad hacia la salida del circuito.
5.- El nmero total de desplazamientos es n y la salida del circuito es el
vector o polinomio de cdigo
n k
r( X ) X m( X )

+
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Ejemplo:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Deteccin de error con un registro (n k) de desplazamiento
La deteccin de un vector transmitido la hace el receptor basado en que el
polinomio asociado al vector recibido sea divisible por el polinomio
generador sin que exista residuo, si esta condicin se cumple el
receptor interpreta que ha llegado un vector de cdigo vlido. Para lograr
determinar esta situacin se calcula el sndrome del polinomio
recibido. El sndrome es el residuo de dividir por , lo cual
nos permite escribir:
Z( X )
g( X )
S( X )
Z( X )
g( X )
Z( X ) q( X )g( X ) S( X ) = +
Al transmitir un polinomio vlido ste se contamina con ruido y se
produce una distorsin, lo cual implica que se recibe un vector que
se puede escribir como:
U( X )
Z( X )
Z( X ) U( X ) e( X ) = +
Se puede demostrar que:
e( X ) [ m( X ) q( X )]g( X ) S( X ) = + +
Comparando estas dos ultimas ecuaciones se deduce que el sndrome dado
por el residuo de la divisin de entre es el mismo que el
obtenido por la divisin de entre . De esta forma el sndrome
del polinomio recibido contiene la informacin necesaria para corregir el error
introducido por el patrn de error.
Z( X )
g( X )
e( X )
g( X )
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
El circuito mostrado en la figura permite obtener el sndrome del polinomio
asociado al vector que se recibe, como se observa se trata de un registro de
desplazamiento (n k) similar al empleado en el transmisor.
El interruptor 1 est
inicialmente cerrado y el
interruptor 2 est abierto. El
vector entregado desde el
detector es ingresado a las
etapas del registro, al finalizar
su ingreso, las etapas
contendrn el sndrome.
Si el sndrome es cero, se
interpreta el vector de cdigo
recibido como vlido, si el
sndrome es diferente de
cero, se detecta el error. El
error se puede corregir
sumando el vector de error
asociado al sndrome con el
vector recibido.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
CODIGOS BIEN CONOCIDOS:
Muchos sistemas de transmisin digital emplean cdigos para deteccin y
correccin de errores con el objetivo de aumentar el performance o desempeo
del enlace. Entre los cdigos de uso comn podemos mencionar:
Cdigo de Hamming: cdigo lineal de bloque
donde:
m m
( n, k ) ( 2 1, 2 1 m) =
Con m = 1, 2, 3...
Posee una distancia mnima de 3 y es capaz
de corregir todos los patrones de errores
sencillos o detectar todas las combinaciones
de dos o menos errores en un bloque de
datos. Su probabilidad de error de smbolo en
el canal utilizando BPSK con demodulacin
coherente es:
c
s
0
E
p Q 2
N
| |
=
|
|
\ .
;
c b
0 0
E E k
N n N
| |
=
|
\ .
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Otros cdigos utilizados son el
Golay, el Golay extendido, Los
cdigos BCH (Bose-Chadhuri-
Hocquenghem) y Reed-Salomon.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
CDIGOS CONVOLUCIONALES
Los cdigos convolucionales constituyen la segunda categora en que estn
divididas las secuencias estructuradas dentro de la codificacin de canal.. A
diferencia de los cdigos de bloque emplea la denominada longitud de restriccin
de cdigo (denota K) adems de poseer los parmetros (n , k) ya vistos
anteriormente. Otra diferencia es que la data ingresa a los registros de
desplazamiento en forma continua y no es dividida y procesada por bloques.
K es el nmero de etapas del
registro y nos da una
indicacin de cuantos bits de
mensaje se estn
involucrando en el proceso
de elaboracin del cdigo. La
idea del cdigo convolucional
es formar una secuencia de
cdigo a la salida como
combinacin de la data
mensaje.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La representacin de los codificadores convolucionales la podemos realizar a
travs de diagramas de conexin polinmica, diagrama de rbol y diagrama
Trellis.
Veamos un ejemplo practico de un codificador convolucional binario:
m 0 0 1 =
Lo siguiente consistira en introducir K-1 ceros hasta vaciar todas las K etapas
de registros. Esto debe ser as para asegurar que la totalidad del mensaje
haya atravesado todas las etapas del registro.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
La salida del codificador para m = 1 0 0 es llamada respuesta al impulso del
codificador. Luego para cualquier otro mensaje, por ejemplo, m = 1 0 1, la
salida puede ser obtenida por la superposicin o adicin lineal de las
respuestas impulsivas del codificador desplazadas tal y como se indica a
continuacin:
Observe que este resultado es el mismo obtenido por anlisis de la secuencia
que se muestra en la figura de la lmina siguiente. Esto demuestra el carcter
lineal del cdigo convolucional. Debido a la propiedad ilustrada en la tabla
anterior estos codificadores son llamados convolucionales.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Output secuence : 1110 00 10 11
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
El diagrama de rbol:
Si el bit de entrada es cero, su palabra de
rama asociada se halla movindose en
direccin ascendente. Si el bit de entrada es
uno, su palabra de rama asociada se halla
movindose en la direccin descendente.
Asumiendo que el contenido inicial de todos
los registros es cero, el diagrama muestra
de manera resaltada la secuencia de cdigo
que resulta ante la entrada:
m( X ) 1 1 0 1 1 =
La secuencia de salida est dada por:
0 1 0 0 0 1 0 1 1 1
Si la longitud de la secuencia de entrada es
muy larga el diagrama de rbol se hace
imprctico.
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Diagrama
Trellis:
m( X ) 1 1 0 1 1 =
0 1 0 0 0 1 0 1 1 1
State of the ( K 1) rightmost
stages of the register

El diagrama Trellis provee una simplificacin del diagrama de rbol y en


consecuencia una simplificacin del codificador.
Entrada:
Salida:
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
DECODIFICADOR:
CODIFICADOR:
Decodificacin convolucional
(Algoritmo de Viterbi): Seleccionar el
camino de menor mtrica.
ERROR
La mtrica se obtiene dado que el decodificador conoce la
estructura del codificador y simplemente coloca la
distancia de Hamming entre el cdigo de smbolo recibido
y la correspondiente palabra de rama presente en el
codificador
Transmisin Digital
Prof. Francisco Paiva
paiva.francisco@gmail.com
Fin del Captulo III

Vous aimerez peut-être aussi