Está en la página 1de 4

Telecomunicaciones III EE515-M 2019-I

Experiencia N°4
Algunos Códigos Notables
Universidad Nacional de Ingeniería
Facultad de Ingeniería Eléctrica y Electrónica

Huamani Condori, Gianfranco 20121130G


Moreno Miranda, Miguel Angel 20121138H

Código de hammming r
r
q −1
Al tratarse de códigos lineales 1-correctores, se m ( q−1 )=q −1 ⇒ m=
sigue que la matriz de control no puede tener
q−1
es el número máximo de columnas que
menos de 3 columnas linealmente dependientes.
podr¶³amos poner en la matriz H. Por
Enefecto,
tanto, el valor de los parámetros de un código de
c=1=
[ ]
d−1
2
Haming (n; k) viene dado
por:

{
y recordemos que el numero q −1
r
mínimo de columna linealmente dependientes en m=
la matriz de control coincide con el valor de d. q−1
r
Sea r = n¡k = el número de ¯las de la matriz de q −1
control. k=n−r =m= −r
q−1
De todos los códigos 1-correctores que tienen el
mismo parámetro r (r es la redundancia del
código), el mejor será aquel para el cual la DECODIFICACION DE HAMMING
longitud n sea la más grande posible. En efecto, la
tasa de transmisión viene dada por Vamos a ver que no se necesita mantener en
memoria la tabla de sin-dromes, sino sólo la
k n−r r
R= = =1− matriz de control. Supongamos que se transmite la
n n n palabra-código x y se recibe y, donde y = x + e,
Por tanto, al aumentar n aumenta la tasa de siendo e el error que se ha producido. Si e es una
transmisión. palabra de peso 1 (porque el código de Hamming
No es difícil construir este tipo de códigos. Su es 1-corrector), se tiene
matriz de control solo puede contener conjuntos
H y =H ( x + e )=H x + H e
t t t t t
de 3 o más columnas linealmente dependientes.
En consecuencia, debe cumplir:
Si el error e = 0, obviamente Het = 0 ) Hyt = 0 y
(a) Todas la columnas deben ser diferentes.
(b) Ninguna columna es nula. decodificaremos aceptando Y como correcta. Pero
si, como hemos dicho antes, e es de peso 1,
(c) Ninguna columna puede ser un múltiplo de
otra. entonces e = ® ¢ ei (® 6= 0), donde ei denota la
cadena con todas sus componentes nulas salvo la
(d) Las columnas son de r (= n ¡ k) coordenadas
de A. que ocupa e el lugar i-esimo que es igual a α,
entonces Het = αhi, donde hi es la columna i-
(e) La matriz de control debe tener el mayor
número posible de columnas, esima de H.
Esta observación permite idear un método simple
para que la tasa de transmisión sea lo más
próxima a 1 que sea posible. de decodificar.
q r−1 es el número de columnas no nulas El codigo de reed-muller de primer orden
diferentes con r coordenadas. Si
m es el número total de columnas que verifican
Sea
las condiciones anteriores, cada una de ellas al
multiplicarlas por uno de los q ¡1 escalares no
nulos da otras q ¡ 1 columnas diferentes. Por
tanto, la colección de polinomios con grado a lo sumo 
, el cual es un subespacio lineal de
Telecomunicaciones III EE515-M 2019-I

.
Por la observación 7.3, una base de ella es

, y es, por tanto, de dimensión 

(15)

Definición 7.5 (Reed-Muller)   Para 


Codigo de golay

, sea  En los términos matemáticos el código binario


extendido de Golay consiste en un subespacio W
de 12 dimensiones del espacio V=F224 de
palabras de 24 bits de tal manera que dos
elementos distintos en el espacio W se diferencian
al menos en las últimas 8 coordenadas. De manera
la colección de palabras de código resultantes equivalente cualquier elemento no cero de W
como evaluaciones de los polinomios de grado a tiene al menos 8 coordenadas que no son cero.

lo sumo   en el espacio   de dimensión  .  El conjunto posible de coordenadas no cero


así como los rangos w sobre el espacio W son
Se tiene, naturalmente, que   es un llamadas palabras código. En el código
binario extendido de Golay todas las palabras
código-  , donde   está dado por la código tienen un peso Hamiltoniano de
ec. (15). Así pues sus palabras de código son de 0,8,12,16 ó 24.

longitud   y poseen   bits de información.  Hasta el reetiquetado de coordenadas, W es


Una generatriz de él es la matriz de único.
El código binario perfecto de Golay es un código
orden  :  perfecto, lo que significa que esferas de radio 3
alrededor de las palabras código forman una
partición del espacio vectorial.

Donde El grupo de automorfismos de código binario de


Golay es el grupo Mathieu M_23.Y el grupo de
automorfismo del código binario extendido de
    Golay es el Mathieu M_24. Los grupos Mathieu
ocurren como estabilizadores de uno o de varios
es una enumeración de los puntos en   con elementos de W.
peso de Hamming a lo sumo  .
Las palabras código Golay son elementos de
S(5,8,24) del sistema Steiner.
Por ejemplo, para  , el

código   posee como generatriz a  Ejercicios


1) Consideremos la matriz
Telecomunicaciones III EE515-M 2019-I

( )
1 0 0 0 1 0 0 1 0 1 1 0 1 1 1
0 1 0 0 1 0 1 0 1 0 1 2.Consideremos
1 0 1 1 la matriz
H=
0 0 1 0 0 1 1 0 0 1 1 1 1 0 1
0 0 0 1 0 1 0 1 1 0 0 1 1 1 1

( )
1 0 0 1 0 1 0 1 1 2 1 2 0
Se trata de la matriz de control de un
código binario de Hamming.
H= 0 1 0 1 1 0 1 1 2 1 1 1 2
a) Encontrar la dimensión y la distancia 0 0 1 0 1 1 2 1 1 1 2 0 1
mínima. Se trata de la matriz de control de
b) Decodificar el mensaje recibido: un código de Hamming sobre el
i) y = 000000000000111 alfabeto
ii) y = 000000000111111
A = Z3 = {0, 1, 2}.
iii) y = 1000000000011111
a) Determinar la dimensión k y la
distancia mínima.
solución :
b) Codificar el mensaje 1112200010,
a) c) Decodificar las cadenas recibidas:
Dimensiones: i) y = 1000001211
La matriz H tiene la forma ii) y = 0000021210.
( n−k ) xn … ..(1)
La matriz es de dimensiones
4x15 Solución:
Reemplazando en uno Dimensiones:
n=15 La matriz H tiene la forma
K=11 ( n−k ) xn … ..(1)
Distancia mínima La matriz es de dimensiones
d=8 3x13
Reemplazando en uno
b) decodificar n=13
K=10
I. Y= 000000000000111 Distancia mínima
t
H y =(1 0 0 1) t d=9
El error se produce en la posición 9
La decodificación será b)codificar el mensaje
y−000000001000000 D=1112200010

( )
Y =000000001000111 1 1 0 1 0 0 0 0 0 0 0 0 0
II. y = 000000000111111
0 1 1 0 1 0 0 0 0 0 0 0 0
H y t=(1 0 10)t 1 0 1 0 0 1 0 0 0 0 0 0 0
El error se produce en la posición 9 0 1 2 0 0 0 1 0 0 0 0 0 0
La decodificación será 1 1 1 0 0 0 0 1 0 0 0 0 0
G=
y−000010000000000 1 2 1 0 0 0 0 0 1 0 0 0 0
Y =000010000111111 2 1 1 0 0 0 0 0 0 1 0 0 0
III. y = 1000000000011111 1 1 2 0 0 0 0 0 0 0 1 0 0
t t 2 1 0 0 0 0 0 0 0 0 0 1 0
H y =(1 0 0 0) 0 2 1 0 0 0 0 0 0 0 0 0 1
El error se produce en la posición 9
La decodificación será
y−100000000000000 C=DG
Y =000010000111111 C=( 0101112200010)
Telecomunicaciones III EE515-M 2019-I
3. Elaborar un programa para decodificar un syndrome-
de=bi2de(syndrome,'left-msb'); %%
mensaje codificado con un código de (se pasa el s¶³ndrome a la
Hamming, sobre un alfabeto ternario, con
redundancia y longitud dadas. e=trt(1+syndrome-de,:); %%(se
obtiene el error)
clc x=rem(y+e,2); %%(se corrige la
clear cadena recibida).

H=[1 0 0 1 0 1 0 1 1 2 1 2 0
0 1 0 1 1 0 1 1 2 1 1 1 2
0 0 1 0 1 1 2 1 1 1 2 0 1] %%
la matriz H
trt=syndtable(H);

y = [1 0 0 1 1 1 1];

y = [1001111]; %%(se introduce


la cadena recibida)
syndrome=rem(y*H',2); %%(se
calcula el s¶³drome)
syndrome-
de=bi2de(syndrome,'left-msb'); %%
(se pasa el s¶³ndrome a la

e=trt(1+syndrome-de,:); %%(se
obtiene el error)
x=rem(y+e,2); %%(se corrige la
cadena recibida).

4. Elaborar un programa para


decodificar un mensaje codificado con
un código binario de Hamming con
redundancia y longitud dadas

clc
clear

m=4;
[H, G, n, k]=hammgen(m)
d=randi([0 1],1,k)
c=rem(d*G,2)
%% la matriz H
trt=syndtable(H);

y = [1 0 0 1 1 1 1];

y = [1001111]; %%(se introduce


la cadena recibida)
syndrome=rem(y*H',2); %%(se
calcula el s¶³drome)

También podría gustarte