Documentos de Académico
Documentos de Profesional
Documentos de Cultura
I. OBJETIVOS
Se tienen como objetivos primordiales de la práctica: Algunas de las características deseables de los códigos de
Realizar la simulación de los diversos códigos de línea son:
línea y analizar su DEP viéndose de esta manera las
ventajas que tienen algunos códigos de línea sobre Auto sincronización: contenido suficiente de señal de
otros. temporización (reloj) que permita identificar el tiempo
correspondiente a un bit.
II. TEORÍA Capacidad de detección de errores: la definición del
código incluye el poder de detectar un error.
1. CONCEPTO: Inmunidad al ruido: capacidad de detectar
adecuadamente el valor de la señal ante la presencia de
La transmisión de datos en forma digital implica una cierta
codificación. A la forma de transmisión donde no se usa una ruido (baja probabilidad de error).
portadora se la conoce como transmisión en banda base. Densidad espectral de potencia: igualación entre el
espectro de frecuencia de la señal y la respuesta en
Los códigos de línea son usados para este tipo de frecuencia del canal de transmisión.
transmisión. Existen varios tipos de códigos, entre ellos Ancho de banda: contenido suficiente de señal de
Unipolar NRZ, Polar NRZ, Unipolar RZ, Bipolar RZ (AMI), temporización que permita identificar el tiempo
Manchester, CMI, etc. Algunos de estos códigos se muestran en correspondiente a un bit.
la siguiente figura: Transparencia: independencia de las características
del código en relación a la secuencia de unos y ceros
que transmita.
Sobre la densidad espectral de potencia se hizo uso de los Ahora, sabemos que una señal digital o código de línea puede
siguientes conceptos para el posterior análisis de los códigos de representarse por
línea:
Para calcular la PSD de una función w(t):
Primero definimos la versión truncada de la forma de onda a
través de
Siendo f(t) la forma de pulso de símbolo y Ts la duración de un
símbolo.
Y la expresión general para la PSD de una señal digital es:
Y utilizando la definición de potencia promedio normalizada
Se obtiene
Donde F(f) es la TF de la forma de pulso f(t) y R(k) es la
autocorrelación de los datos.
La autocorrelación está dada por
Empleando el Teorema de Parseval se tiene
Gráficamente se tiene
Para k ≠ 0, existen I = 4 posibilidades para los valores de
productos: AxA, Ax0, y 0xA, 0x0.
Todos ellos ocurrirán con una probabilidad de 1/4. Por lo tanto,
para k ≠0,
2) CÓDIGO UNIPOLAR – RZ
Por lo que haciendo uso de la definición de la PSD, la densidad Para la señalización RZ, la duración del pulso es Tb/2. Entonces
espectral de potencia para una señalización unipolar NRZ es para formas de pulso RZ se tendrá que:
Y como
TELECOMUNICACIONES 2 (EE514M) 4
Reemplazándolo en la ecuación de definición de PSD, se tendrá Obteniéndose así la PSD para la señal polar NRZ:
que la densidad espectral de potencia para la señalización
unipolar RZ es como sigue
Eligiéndose un valor de A=2 para que la potencia promedio Se selecciona A=1 para la que la potencia normalizada sea igual
normalizada de la señal unipolar RZ sea uno. a uno. La PSD resultante se muestra a continuación:
Por lo tanto
Por lo tanto
5) CÓDIGO AMI – RZ Por otro lado la transformada del pulso base del código es:
El código AMI y(t) se puede representar como la convolución
de :
Resultando:
1
𝑃(𝑇1) = 𝑃(𝑇0) =
2
2
𝑦(𝑡) = 𝑥(𝑡) ∗ 𝑝(𝑡) => 𝑆𝑦 (𝑓) = 𝑆𝑥(𝑓) |𝑃(𝑓) |
TELECOMUNICACIONES 2 (EE514M) 6
000𝑉
𝑃𝐴𝑀𝐼 𝑁𝑅𝑍 (𝑓) = 𝐴2 𝑇𝑏 (𝑠𝑖𝑛𝑐(𝑓𝑇𝑏 ))2 (𝑠𝑖𝑛(𝜋𝑓𝑇𝑏 ))2 𝑓(𝑥) = {
100𝑉 𝑜 𝑅00𝑉 𝑜 𝐵00𝑉
Cuyo gráfico es:
7) CÓDIGO HDB – 3
8) CÓDIGO MANCHESTER
Codificación:
CÓDIGO UNIPOLAR – RZ
%% DEP UNIPOLAR-RZ
Codificación: hold off;
A=2;
Tb=1;
R=1/Tb;
%% Unipolar RZ L=2*R;
clc f=0:L/50:L;
clear all del=0;
h=[1 1 1 0 0 0 1 1 1 0 ]; %Codigo P=(A.^2*Tb)/16*(sinc(f*Tb/2)).^2;
binario de Entrada g=plot(f,P);
n=1; title('DEP: UNIPOLAR RZ');
h(11)=1; hold on;xlabel('Frecuencia');ylabel('Potencia
while n<=10; Normalizada');
t=n-1:0.001:n; axis([0 L 0 1.1*Tb]);set(g,'LineWidth',2.5);
%Graficación de los CEROS (0) stem([0 R],[(A.^2*Tb)/8
if h(n) == 0 P(26)+0.1],'LineWidth',2.5);hold off;
if h(n+1)==0
y=(t>n); set(gca,'XTickMode','manual','XTick',[R,2*R]);grid
else on;
y=(t==n);
end set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]);
d=plot(t,y); set(gca,'XTickLabel',{['R'];['2R']})
title(['Codigo UNIPOLAR RZ [ set(gca,'YTickLabel',{['0.5*Tb'];['Tb']})
',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
%Graficación de los UNOS (1)
else
if h(n+1)==0
y=(t<n-0.5);
else
y=(t<n-0.5)+1*(t==n);
end
d=plot(t,y);
title(['Codigo UNIPOLAR RZ [
',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
end
n=n+1;
end
TELECOMUNICACIONES 2 (EE514M) 10
Codificación:
Densidad Espectral de Potencia:
%% Codificicaión POLAR NRZ
clc %% DEP POLAR-NRZ
clear all hold off;
h=[1 1 1 0 1 0 1 1 1 0 ]; %Codigo A=1;
binario de Entrada Tb=1.5;
n=1; R=1/Tb;
h(11)=1; L=2*R;
while n<=10; f=0:L/50:L;
t=n-1:0.001:n; del=0;
if h(n) == 0 P=(A.^2*Tb)*(sinc(f*Tb)).^2;
if h(n+1)==0 g=plot(f,P);hold
y=-(t<n)-(t==n); on;xlabel('Frecuencia');ylabel('Potencia
else Normalizada');
y=-(t<n)+(t==n); title('DEP: POLAR NRZ')
end axis([0 L 0 1.01*Tb]);set(g,'LineWidth',2.5);
d=plot(t,y);
title(['Codigo POLAR NRZ [ set(gca,'XTickMode','manual','XTick',[R,2*R]);grid
',num2str(h),' ]']) on;
grid on
set(d,'LineWidth',2.5); set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]);
hold on; set(gca,'XTickLabel',{['R'];['2R']})
axis([0 10 -1.5 1.5]); set(gca,'YTickLabel',{['0.5*Tb'];['Tb']})
else
if h(n+1)==0
y=(t<n)-1*(t==n);
else
y=(t<n)+1*(t==n);
end
d=plot(t,y);
title(['Codigo POLAR NRZ [
',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
end
n=n+1;
end
CÓDIGO POLAR – RZ
Codificación:
%% Codificacion POLAR RZ
clc
clear all
h=[1 1 1 0 0 0 1 1 1 0 ]; %Codigo
binario de Entrada
n=1;
h(11)=1;
while n<=10;
t=n-1:0.001:n;
if h(n) == 0
if h(n+1)==0
y=-(t<n-0.5)-(t==n);
TELECOMUNICACIONES 2 (EE514M) 11
else
y=-(t<n-0.5)+(t==n);
end
d=plot(t,y);
title(['Codigo POLAR RZ [
',num2str(h),' ]'])
grid on
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
else
if h(n+1)==0
y=(t<n-0.5)-1*(t==n);
else
y=(t<n-0.5)+1*(t==n);
end
d=plot(t,y);
title(['Codigo POLAR RZ [ ',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
end
n=n+1;
end
CÓDIGO AMI – NRZ
Codificación:
%% Codificación AMI-NRZ
clc
clear all
h=[1 1 1 0 0 0 1 1 1 0 ]; %Codigo
binario de Entrada
n=1;
h(11)=1;
ami=-1;
while n<=10;
t=n-1:0.001:n;
if h(n) == 0
if h(n+1)==0
y=(t>n);
else
if ami==1
y=-(t==n);
else
y=(t==n);
end
Densidad Espectral de Potencia: end
d=plot(t,y);
title(['Codigo AMI RZ [
%% DEP POLAR-RZ
',num2str(h),' ]'])
hold off;
grid on
A=2;
set(d,'LineWidth',2.5);
Tb=1.5;
hold on;
R=1/Tb;
axis([0 10 -1.5 1.5]);
L=2*R;
else
f=0:L/50:L;
ami=ami*-1;
P=(A.^2*Tb)/8*(sinc(f*Tb/2)).^2.*(1-
if h(n+1)==0
cos(2*pi*f*Tb));
if ami==1
g=plot(f,P);
y=(t<n);
title('DEP: BIPOLAR RZ');
else
hold on;xlabel('Frecuencia');ylabel('Potencia
Normalizada'); y=-(t<n);
axis([0 L 0 1.1*Tb]);set(g,'LineWidth',2.5); end
else
set(gca,'XTickMode','manual','XTick',[R,2*R]);grid if ami==1
on; y=(t<n)-(t==n);
else
set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]); y=-(t<n)+(t==n);
set(gca,'XTickLabel',{['R'];['2R']}) end
set(gca,'YTickLabel',{['0.5*Tb'];['Tb']}) end
TELECOMUNICACIONES 2 (EE514M) 12
d=plot(t,y);
title(['Codigo AMI NRZ [
',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
end
n=n+1;
end
CÓDIGO AMI – RZ
Codificación:
%% Codificación AMI-RZ
clc
clear all
h=[1 1 1 0 0 0 1 1 1 0 ]; %Codigo
binario de Entrada
Densidad Espectral de Potencia: n=1;
h(11)=1;
ami=-1;
while n<=10;
%% DEP AMI-NRZ t=n-1:0.001:n;
hold off; if h(n) == 0
A=1; if h(n+1)==0
Tb=1; y=(t>n);
R=1/Tb; else
L=2*R; if ami==1
f=0:L/50:L; y=-(t==n);
else
P=(A.^2*Tb)*(sinc(f*Tb)).^2.*(sin(pi*f*Tb)).^2.; y=(t==n);
g=plot(f,P); end
title('ESPECTRAL DENSITY: AMI NRZ'); end
hold on;xlabel('Frequency');ylabel('Normalized d=plot(t,y);
Power'); title(['Codigo AMI RZ [
axis([0 L 0 1.1*Tb]);set(g,'LineWidth',2.5); ',num2str(h),' ]'])
grid on
set(gca,'XTickMode','manual','XTick',[R,2*R]);grid set(d,'LineWidth',2.5);
on; hold on;
axis([0 10 -1.5 1.5]);
set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]); else
set(gca,'XTickLabel',{['R'];['2R']}) ami=ami*-1;
set(gca,'YTickLabel',{['0.5*Tb'];['Tb']}) if h(n+1)==0
if ami==1
y=(t<n-0.5);
else
y=-(t<n-0.5);
end
else
if ami==1
y=(t<n-0.5)-(t==n);
else
y=-(t<n-0.5)+(t==n);
end
end
d=plot(t,y);
TELECOMUNICACIONES 2 (EE514M) 13
title(['Codigo AMI RZ [
',num2str(h),' ]'])
grid on;
set(d,'LineWidth',2.5);
hold on;
axis([0 10 -1.5 1.5]);
end
n=n+1;
end
CÓDIGO HDB - 3
Codificación:
%% Codificación HDB-3
xn=[1 0 1 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0];
%Codigo binario de Entrada
yn=xn;
%Codigo a Modificar
num=0;
%variable para contar los 1s y determinar si son
pares o impares
%Generacion de Codigo AMI
for k=1:length(xn)
if xn(k)==1
Densidad Espectral de Potencia: num=num+1;
if num/2== fix(num/2)
%% DEP AMI-RZ %Condicion para numeros de 1s pares
hold off; yn(k)=-1;
A=2; else
Tb=1; yn(k)=1;
R=1/Tb; %Condicion para numeros de 1s impares
L=2*R; end
f=0:L/50:L; end
end
P=(A.^2*Tb)/4*(sinc(f*Tb/2)).^2.*(sin(pi*f*Tb)).^2
.; %conteo de 0s continuos para cambiar el codigo por
g=plot(f,P); 000v o B00V
title('DEP: AMI NRZ'); num=0;
hold on;xlabel('Frecuencia');ylabel('Potencia %Reinicio de la variable de conteo de 1s
Normalizada'); yh=yn;
axis([0 L 0 1.1*Tb]);set(g,'LineWidth',2.5); %Variable nueva del codigo almacenado en yn
sign=0;
set(gca,'XTickMode','manual','XTick',[R,2*R]);grid %Variable de signo
on; V=zeros(1,length(yn));
%Variable para guardar las violaciones (V)
set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]); B=zeros(1,length(yn));
set(gca,'XTickLabel',{['R'];['2R']}) %Varible para guardar las B
set(gca,'YTickLabel',{['0.5*Tb'];['Tb']}) for k=1:length(yn)
if yn(k)==0
num=num+1;
%Incremento del contador de 0s
if num== 4
%Comprueba si hay 4 ceros continuos para realizar
el cambio
num=0;
%Reestablece el contador de 0s
yh(k)=1*yh(k-4);
TELECOMUNICACIONES 2 (EE514M) 14
axis([0 L 0 1.1*Tb]);set(g,'LineWidth',2.5);
set(gca,'XTickMode','manual','XTick',[R,2*R]);grid
on;
set(gca,'YTickMode','manual','YTick',[0.5*Tb,Tb]);
set(gca,'XTickLabel',{['R'];['2R']})
set(gca,'YTickLabel',{['0.5*Tb'];['Tb']})
REFERENCES
[1] Sistemas de comunicación digitales y analógicos Leon W.Couch
[2] Digital Communicatio T.Singal
https://books.google.com.pe/books?id=RWBwCgAAQBAJ&pg=PT189
&lpg=PT189&dq=psd+hdb+3&source=bl&ots=azfkc7kd5l&sig=JChiO
dtAarXVKCcBfsVc1fC4LiA&hl=es&sa=X&ved=0ahUKEwi65vCThfT
UAhWBHT4KHaYLBlgQ6AEIMTAC#v=onepage&q=psd%20hdb%20
3&f=false
[3] http://www.monografias.com/trabajos105/codigo-linea/codigo-
linea.shtml
[4] https://es.slideshare.net/nica2009/lecture-9-codificacin-de-lnea-y-psd
[5] http://www.ti.com/lit/ds/snas334e/snas334e.pdf