Sunteți pe pagina 1din 15

/DERUDWRULR GH 7HUPLQDOHV

Codificacin de canal

6LVWHPD GH &RPXQLFDFLRQHV

Sistema de Comunicaciones:
Fuente
de
informacin

Codificador
de fuente

Codificador
de canal

Modulador

Canal

Destino

Decodificador
de fuente

Decodificador
de canal

Demodulador

Laboratorio de Terminales
2

6LVWHPD GH &RPXQLFDFLRQHV
'LJLWDOHV

Sistema de Comunicaciones Digitales:


Fuente
de
informacin

1001100...

1100110...
Canal
digital

Destino

Codificador

Decodificador

1101100...
1110011...
Informacin: secuencia de dgitos
Dgitos: 0 y 1
Palabra de longitud N: conjunto de N dgitos
Cdigo : conjunto de palabras C={00, 10, 01, 11} que puede
transmitir el codificador
Laboratorio de Terminales
3

&RGLILFDFLyQ GH FDQDO

Con el fin de evitar en la medida de lo posible las interferencias y el ruido que


introduce el canal, a menudo es necesario introducir de forma CONTROLADA
alguna redundancia en la secuencia binaria proporcionada por la fuente.
El codificador enva solamente palabras que pertenecen a su cdigo
Ej1.: un codificador que repite 3 veces el bit que tiene a su entrada
...1...

...111...

Canal
digital

...101...

...000...

Canal
digital

...001...

Codificador

...0...
Codificador

} errores!!!

C={000,111}
el decodificador elige la palabra ms parecida a las palabras del cdigo:
1 dgito diferente con ...111...

...101...

...111... palabra transmitida + probable

...1... dgito + probable

2 dgitos diferentes con ...000...

Laboratorio de Terminales
4

&RGLILFDFLyQ GH FDQDO

Ej2: El codificador toma los bits de 2 en 2 y aade un bit ms


para que el nmero total de 1`s en la palabra codificada sea
par.
codificador

00
codificador
01
codificador
10
codificador
11

000
011
101
110

canal
canal
canal
canal

decodificador

00
001
decodificador
01
011
decodificador
10 11
111
decodificador
01
011

Laboratorio de Terminales
5

$OJHEUD ELQDULD EiVLFD

Definimos K={0,1} como el conjunto de dgitos con el


que estamos trabajando. Kn es el conjunto de todas las
palabras binarias de longitud

Suma:

0 1
0 0 1
1 1 0
+

Ej: K

Multiplicacin
x 0 1

0 0 0
1 0 1

0 1
0 0 0
1 0 1
+

Ej: K

101+001=100

101x001=001

Laboratorio de Terminales
6

3DUiPHWURV GH FRGLILFDFLyQ

El principal problema de la codificacin es determinar el


cdigo ptimo para enviar nuestros mensajes.
Esta bsqueda va a estar condicionada por lo siguiente:
Caractersticas del canal
Recursos disponibles: lmites en la velocidad de transmisin.

Los principales parmetros a determinar son:


: longitud de los mensajes de entrada al codificador
: longitud de las palabras de salida del codificador

Kk

Kn

C Kn
Laboratorio de Terminales
7

3DUiPHWURV GH FRGLILFDFLyQ

Tasa de codificacin R: mide la proporcin de cada palabra codificada que


transporta informacin. R = k/n
Ej1: por cada bit de informacin el codificador genera palabras de 3 bits

R=1/3
Ej2: por cada 2 bits de informacin el codificador genera palabras de 3
bits

R=2/3
Peso de una palabra: nmero de veces que el dgito 1 aparece en la palabra
wt(0111010) = 4
Distancia entre dos palabras: nmero de dgitos en los que las dos palabras
no coinciden
d(0111010,0101011) = wt(0111010+ 0101011) = 2

Laboratorio de Terminales
8

&DQDO GLJLWDO

Un canal perfecto y sin ruido no produce errores en los


dgitos: la secuencia transmitida es exactamente igual a la
recibida

NO NECESITAMOS CODIFICACIN
Canal binario y simtrico:

1-p

1-p

0
1

Laboratorio de Terminales
9

&DQDO 'LJLWDO

Podemos modelar un canal BSC de la siguiente manera:


...00 00 11 10 01 01....

...000 000 110 101 011 011....


Codificador

...000 100 100 101 011 000....

000 100 010 000 000 011....

donde el canal es una fuente de bits donde el dgito 1 (que es


el que provoca errores) aparece con una probabilidad p

Laboratorio de Terminales
10

'HFRGLILFDFLyQ GH 0i[LPD
3UREDELOLGDG 0/'

El decodificador recibe palabras ( ) que pertenecen a Kn,


pero que no tiene necesariamente que pertenecer a C.
Calculamos la distancia entre todas las palabras que
pertenecen a C y la palabra recibida
d( , ) para toda C

Elegimos como palabra decodificada ( ) la que tenga la


mnima distancia con la palabra recibida
d( , ) < d( , ) para toda C,

Laboratorio de Terminales
11

&yGLJRV OLQHDOHV

La mayora de los cdigos con los que se trabajan van a ser lineales
porque nos va a permitir resolver el problema de la codificacin de
una manera muy sencilla.
Decimos que un cdigo C es lineal siempre que + sea una
palabra que pertenece a C cuando y pertenecen a C.
C1 = {000,111}
000 + 000 = 000
000 + 111 = 111

111 + 000 = 111


111 + 111 = 000

C2 = {000,001,101}
001 + 101 = 100 C2

Laboratorio de Terminales
12

&yGLJRV OLQHDOHV

Cualquier Cdigo Lineal deber contener la palabra cero


(todos sus dgitos son cero), ya que cualquier smbolo del
cdigo sumado consigo mismo es precisamente la palabra
cero.
Son lineales los siguiente cdigos?

C = {101, 111, 011}


C = {000, 001, 010, 011}
C = {0000, 0001, 1110}
C = {0000, 1001, 0110, 1111}
C = {000000, 101010, 010101, 111111}
C = {00000, 11111}

Laboratorio de Terminales
13

&yGLJRV OLQHDOHV

Cmo podemos generar un cdigo lineal ?


Elegimos un conjunto de palabras S y el cdigo es toda las posible
combinaciones lineales de estas

S = {0100, 0011, 1100}

C = < S > = {0000, 0100, 0011, 1100, 0111, 1000, 1111, 1011}
Podemos representar un cdigo lineal de una forma ms
sencilla que no sea listando todo el cdigo?
Mediante el conjunto de palabras S que lo genera

Laboratorio de Terminales
14

&yGLJRV OLQHDOHV

Para simplificar al mximo el conjunto S debemos tratar de


que no exista ningn vector que sea suma del resto (las
palabras componentes deben ser linealmente independientes).
Estamos as definiendo una base para el cdigo.
Ej: si aadimos la palabra 1111 que es combinacin lineal de 0011 +
1100 no aporta nada ya que el cdigo que generan ambos es el mismo.

S = {1111, 0100, 0011, 1100}


Decimos que la dimensin de un cdigo es el nmero de
palabras que contiene la base S. Si nuestro codificador genera
palabras de longitud a partir de palabras de longitud , su
dimensin es siempre

Laboratorio de Terminales
15

0DWUL] JHQHUDGRUD GH XQ FyGLJR


OLQHDO

Construimos la matriz generadora de un cdigo con las


palabras que componen su base:
S = {b1, b2, b3 , ..., , bk }
Trabajar con una matriz generadora nos va a facilitar el
proceso de codificacin (asignar a cada palabra de longitud
una palabra de longitud )

b1
b
2
G= .

.
b k

Ej:

0100
G = 0011

1100

Laboratorio de Terminales
16

0DWUL] JHQHUDGRUD GH XQ FyGLJR


OLQHDO

Ej. (cont.):

000
0000
001
1100

010
0011

0100

011 0011 = 1111


0100
100


1100

101

1000
110
0111

111
1011
Laboratorio de Terminales
17

0DWUL] GH FRQWURO GH SDULGDG

Una matriz de control de paridad H es aquella que para todo


que pertenece a C :
H=0
La matriz de control de paridad nos va ayudar fcilmente a
detectar si una palabra recibida pertenece al cdigo o no.
Generamos esta matriz de paridad a partir de la matriz
generadora G
Para ello necesitamos que G tenga la siguiente forma:
X
H=
G = [I X ]
I

Laboratorio de Terminales
18

0DWUL] GH FRQWURO GH SDULGDG

Ej: Conseguir que G tenga la forma G = [I X] lleva consigo


una serie de operaciones de cambio de vectores y suma entre
ellos:

0100 1100 1000


G = 0011 0100 0100

1100 0011 0011

0
0
H=
1

1

Laboratorio de Terminales
19

0DWUL] GH FRQWURO GH SDULGDG

Ej. (cont.):

0
0
[0111] = 0
1

1

0
0
[0101] = 1
1

1

Laboratorio de Terminales
20

'HFRGLILFDFLyQ FRQ OD PDWUL] GH


FRQWURO GH SDULGDG

Podemos obtener el conjunto de conjuntos:


C + = { + | u C}
Para todo que pertenece al conjunto Kn el nmero de co
conjuntos C + distintos que se generan es 2n-k si C es un
cdigo ( , ) y cada coconjunto contiene exactamente 2k
palabras.

Ej: C = {0000, 1011, 0101,1110}


C=( , )
C + 0000 = {0000, 1011, 0101,1110}
C + 1000 = {1000, 0011, 1101,0110}
C + 0100 = {0100, 1111, 0001,1010}
C + 0010 = {0010, 1001, 0111,1100}

Laboratorio de Terminales
21

'HFRGLILFDFLyQ FRQ OD PDWUL] GH


FRQWURO GH SDULGDG

Suponga que recibimos


donde C y es el error
que introduce el canal.
Por la definicin anterior de co-conjunto y van a
pertenecer al mismo co-conjunto.
Para decodificar una palabra elegimos dentro de su co
conjunto la palabra del coconjunto de menor peso,
suponiendo que el error que se va a producir siempre es el de
menor peso, y decidimos que la palabra codificada que se
transmiti es:
= +

Laboratorio de Terminales
22

'HFRGLILFDFLyQ FRQ OD PDWUL] GH


FRQWURO GH SDULGDG

El mtodo anterior de decodificacin implica muchos


clculos, hay que generar los coconjuntos, buscar dentro de
ellos la palabra que se ha recibido, buscar dentro de ese co
conjunto la palabra de menor peso y generar la palabra del
cdigo original.
Para facilitar todo esto se cumple que:
H= H
solamente si y pertenecen al mismo co-conjunto.
Llamamos sndrome de un co-conjunto al producto H

Laboratorio de Terminales
23

'HFRGLILFDFLyQ FRQ OD PDWUL] GH


FRQWURO GH SDULGDG

Para decodificar generamos todos los sndromes de las


palabras de menor peso (es ms fcil que calcular el co
conjunto completo).
Calculamos el sndrome de la palabra recibida y la corregimos
con la palabra de menor peso que tiene el mismo sndrome.
Ej: C = {0000, 1011, 0101,1110}
1 0 1 1
G=

0 1 0 1

1
0
H=
1

1
1

lder del co-conjunto


0000
1000
0100
0010

sndrome
00
11
01
10

Laboratorio de Terminales
24

'HFRGLILFDFLyQ FRQ OD PDWUL] GH


FRQWURO GH SDULGDG

Ej (cont.):
recibimos la palabra

recibimos la palabra

1111
w H = 01
de donde la palabra trasmitida es v = w + u= 1111 + 0100 = 1011
0101
w H = 00
de donde la palabra trasmitida es v = w + u= 0101 + 0000 = 0101

Laboratorio de Terminales
25

&yGLJRV +DPPLQJ

Son cdigos de longitud


cuya matriz de control de
paridad se forma con todas las palabras de longitud distintas

de cero.
111

Ej: n=7

110

101

H = 011
100

010

001

1000111
0100110

G=
0010101

0001011

Laboratorio de Terminales
26

&yGLJRV OLQHDOHV FtFOLFRV

Son unos cdigos lineales particulares cuyas palabras siempre


son desplazamientos de alguna palabra del cdigo.
110 011 101

C= {000, 110, 011, 101}


No es necesario una representacin matricial de estos cdigos
000 0

110 1 + x
011 x + x 2
Laboratorio de Terminales
27

&yGLJRV OLQHDOHV FtFOLFRV

Para representar estos cdigos es suficiente con buscar un


polinomio generador.
Se cumple que un polinomio generador de un cdigo de
longitud es siempre divisor del polinomio xn+1 = h(x)g(x)
Ej: g(x)= 1+x3

0(1 + x 3 ) = 0 000000
1(1 + x 3 ) = 1 + x 3 100100
x(1 + x 3 ) = x + x 4 010010
(1 + x)(1 + x 3 ) = 1 + x + x 3 + x 4 110110

Laboratorio de Terminales
28

&yGLJRV FRQYROXFLRQDOHV

Emplean registros de desplazamiento para codificar, son


codificadores con memoria, para codificar una palabra no slo
usan informacin de la palabra que tienen a la entrada del
decodificador sino de palabras anteriores, donde decimos
que es la memoria del codificador.
Los parmetros que caracterizan a estos cdigos son ( , , )

x1k

cdigo convolucional
(2,1,4)

uk
Z-1

Z-1

Z-1

Z-1

x2 k

Laboratorio de Terminales
29

S-ar putea să vă placă și