实 验 报 告
哈尔滨工程大学教务处制
软件单人实验 AMI码与HDB3波形及功率谱密度实验
一、实验目的
1、掌握AMI和HDB3码有关概念及设计原则;
2、了解AMI和HDB3码波形特点;
3、掌握AMI和HDB3码的编码规则;
4、掌握AMI和HDB3码功率谱特性。
二、基本原理
(1)AMI码
我们用“0”和“1”代表传号和空号。AMI码的编码规则是“0”码不变,“1”码则交替地转换为+1和-1。当码序列是100100011101时,AMI码就变为:+100-1000+1-1+10-1。这种码型交替出现正、负极脉冲,所以没直流分量,低频分量也很少,它的频谱如图5-1所示,AMI码的能量集中于f0/2处(f0为码速率)。
信息代码:1 0 0 1 1 0 0 0 1 1 1……
AMI码: +1 0 0-1+1 0 0 0-1+1-1……
由于AMI码的传号交替反转,故由于它决定的基带信号将出现正负脉冲交替,而0电位保持不变的规律。这种基带信号无直流成分,且只有很小的低频成分,因而它特别适宜在不允许这些成分通过的信道中传输。
除了上述特点以外,AMI码还有编译码电路简单以及便于观察误码情况等优点,它是以种基本的线路码,在高密度信息流得数据传输中,得到广泛采用。但是,AMI码有一个重要缺点,即当它用来获取定时信息时,由于它可能出现长的连0串,因而会造成提取定时信号的困难。
(2)HDB3码
HDB3码是对AMI码的一种改进码,它的全称是三阶高密度双极性码。其编码规则如下:用B脉冲来保证任意两个相连取代节的V脉冲间“1”的个数为奇数。当相邻V脉冲间“1”码数为奇数时,则用“000V”取代,为偶数个时就用“B00V”取代。在V脉冲后面的“1”码和B码都依V脉冲的极性而正负交替改变。为了讨论方便,我们不管“0”码,而把相邻的信码“1”和取代节中的B码用B1B2 ......Bn表示,Bn后面为V,选取“000V”或“B00V”来满足Bn的n为奇数。当信码中的“1”码依次出现的序列为VB1B2B3...BnVB1时,HDB3码为+-+-...——+或为-+-+...++—。由此看出,V脉冲是可以辩认的,这是因为Bn和其后出现的V有相同的极性,破坏了相邻码交替变号原则,我们称V脉冲为破坏点,必要时加取代节BOOV,保证n永远为奇数,使相邻两个V码的极性作交替变化。由此可见,在HDB3码中。相邻两个V码之间或是其余的“1”码之间都符合交替变号原则,而取代码在整修码流中不符合交替变号原则。经过这样的变换,既消除了直流成分,又避免了长连“0”时位定时不易恢复的情况,同时也提供了取代信息。图5-2给出了HDB3码的频谱,此码符合前述的对频谱的要求。
例如:
代码: 1 0 0 0 0 1 0 0 0 0 1 1 000 0 1 1
AMI码: -1 0 0 0 0 +1 0 0 0 0 -1 +1 000 0 -1 +1
HDB3码:-1 0 0 0 -V +1 0 0 0 +V -1 +1 -B00 -V +1 -1
HDB3码的特点是明显的,它除了保持AMI码的优点外,还增加了使连0串减少到至多3个的优点,而不管信息源的统计特性如何。这对于定时信号的恢复是十分有利的。HDB3码是CCITT推荐使用的码型之一。
三:实验内容
1、利用MATLAB软件,编写.M文件,随机产生一组双极性归零码与双极性非归零码,并计算出功率谱
2、通过AMI和HDB3编码规则,利用.M文件产生AMI码与HDB3码。
3.、然后得出AMI码与HDB3的功率谱
四、实验代码
function x=f2t(X)
global dt df t f T N
%x=f2t(X)
%x为时域的取样值矢量
%X为x的傅氏变换
%X与x长度相同并为2的整幂
%本函数需要一个全局变量dt(时域取样间隔)
X=[X(N/2+1:N),X(1:N/2)];
x=ifft(X)/dt;
%x=[tmp(N/2+1:N),tmp(1:N/2)];
End
function X=t2f(x)
global dt df N t f T
%X=t2f(x)
%x为时域的取样值矢量
%X为x的傅氏变换
%X与x长度相同,并为2的整幂。
%本函数需要一个全局变量dt(时域取样间隔)
H=fft(x);
X=[H(N/2+1:N),H(1:N/2)]*dt;
End
global dt df t f N
close all
N=2^14; %采样点数
L=64; %每码元的采样点数
M=N/L; %码元数
Rb=2;
Ts=0.5; %码元宽度是0.5us
dt=Ts/L;
df=1/(N*dt); %MHz
RT=0.5; %占空比
T=N*dt ; %截短时间
Bs=N*df/2; %系统带宽
t=[-T/2+dt/2:dt:T/2]; %时域横坐标
f=[-Bs+df/2:df:Bs]; %频域横坐标
EPAMI=zeros(size(f));
EPHDB=zeros(size(f));
for ii=1:8
ami=zeros(1,M);
hdb=zeros(1,M);
a=round(rand(1,M));
b=3;%表示0000之间循环个数
c=-1;%记载相邻V之间的1元素个数
sign1=-1; %标志前一个信号
sign2=-1; %标志前一个信号
for ii=1:M
if a(ii)==1
sign1=0-sign1;
ami(ii)=sign1;
end
end
for ii=1:M
if b==3 %表示非0000
if a(ii)==1
sign2=0-sign2;
hdb(ii)=sign2;
if c>=0 %表示不是第一个0000
c=c+1; %用来计算相邻v之间的非0元素个数
end
elseif ii<=M-3 & a(ii)+a(ii+1)+a(ii+2)+a(ii+3)==0
if mod(c,2)==1 %000V
hdb(ii+3)=sign2;
else %B00V
sign2=0-sign2;
hdb(ii)=sign2;
hdb(ii+3)=sign2;
end
c=0;
b=0;
end
elseif b<3 %对0000的循环
b=b+1;
end
end
for i=[1:L]
ami1(i+[0:M-1]*L)=ami;
hdb1(i+[0:M-1]*L)=hdb;
end
AMI=t2f(ami1);
PAMI=AMI.*conj(AMI)/T;
HDB=t2f(hdb1);
PHDB=HDB.*conj(HDB)/T;
EPAMI=(EPAMI*(ii-1)+PAMI)/ii;
EPHDB=(EPHDB*(ii-1)+PHDB)/ii;
%画出RNZ、AMI、HDB3码波形
figure(1)
subplot(3,1,1)
tt=[1:40];
stem(a(1:40))
axis([1,40,-1.5,1.5])
title('原始NRZ信号')
subplot(3,1,2)
stem(tt,ami(1:40)')
title('AMI信号')
subplot(3,1,3)
stem(tt,hdb(1:40))
title('HDB3码')
%画出AMI的功率谱密度图
figure(2)
aa=30+10*log10(EPAMI+eps);%加eps以避免除以零
bb=30+10*log10(EPHDB+eps);
plot(f,aa,'r');
grid
axis([-8,+8,-80,40])
xlabel('f (MHz)')
ylabel('AMIPs(f) (dBm/MHz)')
title('AMI的功率谱密度图')
%画出HDB3的功率谱密度图
figure(3)
plot(f,bb,'b');
grid
axis([-8,+8,-80,40])
xlabel('f (MHz)')
ylabel('HDB3Ps(f) (dBm/MHz)')
title('HDB3的功率谱密度图')
end
五.实验结果
由图可以看出,实验结果正确,可以看出他们功率谱密度以f=0对称,实验完成。
六、心得体会
第一次使用matlab软件仿真,真心很艰难。通过此次实验了解了AMI和HDB3的编码规则和波形图及功率谱密度的形状,应用matlab是对基本知识的实践证实,学习了信号仿真的过程,印象深刻。但还是不太明白,寻求了好些人帮助,要更努力学习。
七、参考文献
吴鹏《MATLAB高效编程技巧与应用:25个案例分析》
郭黎利《通信原理》
第二篇:哈工程通信原理硬件实验二
实 验 报 告
哈尔滨工程大学教务处制
一、实验目的
1、掌握绝对码、相对码概念及它们之间的变换关系。
2、掌握用键控法产生2ASK、2FSK、2PSK、2DPSK信号的方法。
3、掌握相对码波形与2PSK信号波形之间的关系、绝对码波形与2DPSK信号波形之间的关系。
4、了解2ASK、2FSK、2PSK、2DPSK信号的频谱与数字基带信号频谱之间的关系。
二、实验内容
1、用示波器观察绝对码波形、相对码波形。
2、用示波器观察2ASK、2FSK、2PSK、2DPSK信号波形。
3、用频谱仪观察数字基带信号频谱及2ASK、2FSK、2DPSK信号的频谱。
三、实验仪器
双踪示波器一台、通信原理VI实验台一台、M6信号源模块和MI数字调制模块
四、实验步骤
1、熟悉数字信源单元及数字调制单元的工作原理。
2、连线:数字调制单元的CLK、BS-IN、NRZ-IN分别连至信源单元CLK、BS、NRZ。打开交流电源开关和两模块的电源开关。
3、用数字信源模块的FS信号作为示波器的外同步信号,示波波CH1接AK,CH2接BK
,信源模块的K1、K2、K3置于任意状态(非全0),观察AK、BK波形,总结绝对码至相对码变换规律以及从相对码至绝对码的变换规律。
4、示波器CH1接2DPSK,CH2分别接AK及BK,观察并总结2DPSK信号相位变化与绝对码的关系以及2DPSK信号相位变化与相对码的关系(此关系即是2PSK信号相位变化与信源代码的关系)。注意:2DPSK信号的幅度可能不一致,但这并不影响信息的正确传输。
5、示波器CH1接AK、CH2依次接2FSK和2ASK;观察这两个信号与AK的关系(注意“1”码与“0”码对应的2FSK信号幅度可能不相等,这对传输信息是没有影响的)。
五、实验结果
步骤三实验现象 K1 00110000 K2 01100000 K301000100
步骤四实验现象
上面的波形为CAR 下面的为CAR-D
步骤五现象
步骤六现象
2FSK-OUT
2ASK-OUT