Está en la página 1de 10

Alarcón Pacalagua Johan Vladimir

Casas Ortiz David


Osorio León Juan Andrés

Práctica #11: Codificación de canal


Marco teórico

La codificación de canal se puede definir como la optimización en la representación y transmisión de unos y


ceros lógicos, que hacen referencia a una señal digital que viaja a través de un medio. Esto trae distintos
beneficios como los son señales más fuertes contra el ruido, la distorsión, la interferencia y otros fenómenos que
están presentes en este tipo de señales a la hora de trasmitirlas. Esto se logra al convertir los valores discretos
TTL a una señal más adecuada.

Existen distintos métodos o tipos de codificación, lo que permite cubrir parámetros de diseño y optimizar
dependiendo de lo que se necesite en cada caso. Los principales parámetros son:

1. Densidad espectral de potencia


2. Ancho de banda
3. Capacidad de detección de errores
4. Auto sincronización
5. Inmunidad al ruido
6. Transparencia

La densidad espectral de potencia o también llamada PSD puede obtenerse de:

¿ F ( f ) ∨¿2 ∞
Ps ( f ) = ∑ R (k )e− jωk T ¿
s

Ts K =−∞
Donde F(f) es la transformada de Fourier del pulso f(t), y R(k) es la autocorrelación de los datos. Esta
correlación está dada por:
I
R ( k ) =∑ ( an∗an+k )i Pi
i=1

Donde a ny a n+k son los niveles (en voltios) de los pulsos de información en las posiciones n-ésima y n+k-ésima,
respectivamente, y Pi es la probabilidad de tener el i-ésimo producto entre a n y an +k .

Para lo que es la probabilidad de error de bit se tiene que:

m i m −i
Pi=( ) P e ( 1−Pe )
i

h=[1 0 0 1 1 0 1 0 1 0]
Ilustración 1 SEÑAL DE ENTRADA SIN CODIFICAR

Ilustración 2 UNRZ

La codificación unipolar deja el nivel dc de 1 igual y el nivel de 0 lo deja en 0

Ilustración 3 MANCHESTER

Manchester cuando hay un 1 deja la primera mitad de Tb en 1 y la otra la pone en 0, caso contrario para un bit
en 0 que la primera mitad de Tb lo deja en 0 y la ora lo cambia a 1 “ suponiendo que un bit en 0 es un nivel de
energía en -1”
Ilustración 4 SEÑAL SIN CODIFICAR

Ilustración 5 AMI NRZ

Ami alterna su nivel de bit cada vez que se presenta un 1 en la señal

Ilustración 6 UNIPOLAR RZ

Unipolar cuando se presenta un 1 deja su nivel de bit por un tiempo de TB/2 luego cambia
Ilustración 7 POLAR NRZ

Polar NRZ a diferencia de NRZ pone el nivel de bit de 0 en el negativo del bit en 1
h=[1 0 0 1 1 0 1 0 1 0]

function PNRZ(h)
close all
clear all
%Example:
h=[1 0 0 1 1 0 1 0 1 0];
%PNRZ(h)
clf;
n=1;
l=length(h);
h(l+1)=1;
while n<=length(h)-1;
t=n-1:0.001:n;
if h(n) == 0
if h(n+1)==0
y=-(t<n)-(t==n);
else
y=-(t<n)+(t==n);
end
d=plot(t,y);grid on;
title('POLAR NRZ');
set(d,'LineWidth',2.5);
hold on;
axis([0 length(h)-1 -1.5 1.5]);
disp('zero');
else
if h(n+1)==0
y=(t<n)-1*(t==n);
else
y=(t<n)+1*(t==n);
end
d=plot(t,y);grid on;
title('Line code POLAR NRZ');
set(d,'LineWidth',2.5);
hold on;
axis([0 length(h)-1 -1.5 1.5]);
disp('one');
end
n=n+1;
%pause;
end

%-------------------------------------------------------------------
h=[1 0 0 1 1 0 1 0 1 0];%Señal
est_inicial=-1;%Estado inicial
%-------------------------------------------------------------------
clc;%Limpia el command window
close all;%Cierra todas las figuras.
con=est_inicial;%Puede ser 1 Û -1
long=length(h);%Número de bits de la señal
n=1;%Estado inicial para el ciclo "while"
ac=[];%Matriz vacía que contendrá· la señal codificada.
bits=[];%Matriz vacía que contendrá· la señal original.
h(long+1)=0;%Valor de extensión de la señal
while n<=long% Codifica hasta terminar los bits de la señal.
if h(n)==1 %Si el bit es 1
bit=[ones(1,100)];
s=[con*ones(1,50) -con*ones(1,50)];
con=con*-1;%Conmuta el estado de la señal.
else %Si el bit es 0
bit=[zeros(1,100)];
s=[con*ones(1,100)];
if h(n+1)==0%Si el siguiente bit es 0
con=con*-1;%Conmuta el estado de la señal
end
end
ac=[ac s];%Acumulador de la señal Miller.
bits=[bits bit];%Acumulador de la señal original.
n=n+1;%Incremento del contador del loop
s=[];%Reset de la matriz temporal s.
end
subplot(2,1,1);plot(bits,'LineWidth',2);
title('Señal de entrada');
set(gca,'xtick',0:100:100*long)%Grid solo para espacios de 100
axis([0 100*(length(h)-1) -2 2])
grid on %Activa el grid
%*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
subplot(2,1,2);plot(ac,'LineWidth',2)%Grafica la señal.
title('Señal Codificada MILLER')
set(gca,'xtick',0:100:100*long)%Grid solo para espacios de 100
axis([0 100*(length(h)-1) -2 2])%Seteo de los ejes
grid on %Activa el grid

Ahora variamos
h=[1 1 1 0 0 0 1 0 1 0 1 1 0 0]

h=[1 1 1 0 0 0 1 0 1 0 1 1 0 0]

h=[1 1 1 0 0 0 1 0 1 0 1 1 0 0]
h=[1 1 1 0 0 0 1 0 1 0 1 1 0 0]

h=[1 1 1 0 0 0 1 0 1 0 1 1 0 0]
Densidad espectral de la potencia
1. ¿Cuáles son las ventajas y desventajas de la codificación de línea?

Cuando no se hace codificación de linea y se transmite un tren de 0`s, el receptor no tiene como sincronizarse
con el transmisor por ende al hacer codificacion de linea se evita este tipo de problemas.

Para el caso de ami y manchester reducen ese problema en caso de que también ocurra una transmision de un
tren de 1`s.

También al aplicar codificacion de linea se reduce el ancho de banda necesario para transmitir el mensaje.

2. ¿Cuáles son las variables que afectan la densidad espectral en los códigos de línea y cómo varía en cada
caso?

f(t)= la forma de pulso de simbolo


(Varía el ancho de banda y la densidad de probabilidad de error)

Ts: tiempo de simbolo = Tb: representación binaria


(Varía el ancho de banda y la densidad de probabilidad de error)

F ( f )= transformada de fourier de la forma de pulso


Rk= auto correlación de datos

a n= al valor binario
(varía la densidad de probabilidad de error)
Pi= probabilidad de bit
(varía la densidad de probabilidad de error)
A = nivel de bit
(varía la densidad de probabilidad de error)