通信系统综合实验西电.docx
《通信系统综合实验西电.docx》由会员分享,可在线阅读,更多相关《通信系统综合实验西电.docx(57页珍藏版)》请在冰豆网上搜索。
通信系统综合实验西电
目录
实验一数字基带仿真实验1
1.1实验目的1
1.2实验原理1
1.2.1蓝牙基带包的差错控制技术1
1.2.2蓝牙系统的跳频原理3
1.2.3数据流的加密与解密3
1.3实验内容及实验结果分析4
1.3.1差错控制实验4
1.3.2跳频实验6
1.3.3加密解密实验14
1.3.42/3FEC编程实验16
1.4思考题17
实验二语音传输实验19
2.1实验目的19
2.2实验原理19
2.2.1PCM编码和CVSD编码的基本原理19
2.2.2PCM/CSVD编码流程图20
2.3实验内容及实验结果分析23
2.3.1相同参数下的量化编码查看23
2.3.2相同随机错误与突发错误下译码波形比较23
2.3.3不同采样频率下译码后波形比较25
2.3.4语音传输32
2.4思考题32
实验三通信传输的有效性与可靠性分析35
3.1实验目的35
3.2实验原理35
3.2.1数据传输的流量控制35
3.2.2误码和差错控制36
3.3实验内容及实验结果分析36
3.3.1性能仿真36
3.3.2数据速率测试38
3.3.3文件传输41
3.4思考题42
实验四无线多点组网45
4.1实验目的45
4.2实验原理45
4.2.1通信网络拓扑结构45
4.2.2路由技术及组播和广播46
4.2.3Adhoc网络46
4.3实验内容及实验结果分析46
4.3.1组网过程46
4.3.2路由表47
4.3.3组播与广播47
4.4思考题50
参考文献53
实验一数字基带仿真实验
1.1实验目的
1.理解差错控制方法、差错控制编码分类及其纠检错能力;了解差错控制编码的生成和纠检错方法。
2.理解扩频通信(特别是跳频扩频通信)的基本概念、原理及其优缺点。
3.理解两种加密体制的同异,了解保密通信的全过程,以及密钥在保密通信中的作用。
1.2实验原理
1.2.1蓝牙基带包的差错控制技术
在数字通信中,由于信道传输特性的不理想和加性噪声的影响,使得有用信号与噪声中和的结果可能会产生差错;并且在已知信噪比的情况下,要达到一定的比特误码率指标,需要合理设计基带信号,选择调制解调方式,采用时域、频域均衡,使比特误码率尽可能降低。
但实际上,在许多通信系统中的比特误码率并不能满足实际的需求。
因此,需要进行差错控制。
常用的差错控制方法有:
检错重发(ARQ)、前向纠错(FEC)、混合纠错(HEC)。
按照误码控制的不同功能,可分为检错码、纠错码和纠删码等;按照误码产生的原因不同,可分为纠正随机错误的码与纠正突发性错误的码。
差错控制编码的实现方法为:
a.在发送端将被传输的信息附上一些监督码元,这些多余的码元与信息码元之间以某种确定的规则相互关联(约束);b.接收端按照既定的规则校验信息码元与监督码元之间的关系,一旦传输发生差错,则信息码元与监督码元的关系就受到破坏,从而接收端可以发现错误乃至纠正错误。
蓝牙基带包中采用的差错控制编码:
1.包头附加循环冗余校验码以保证包头的完整性,该差错控制通常被称为包头检查(HEC)
2.有效载荷中附加16比特的循环冗余校验码(由CRC-CCITT多项式210041(8进制表示)生成)
3.基带包附加CRC码后,一般还应进行前向纠错控制(FEC)
Ø包头检查
HEC的生成示意图见图1-1。
在产生HEC前,线性移位反馈寄存器(LFSR)需要初始化。
为易于理解,初始化值采用设备的高8位地址(UAP)。
输入数据为10位的包头信息(低位先入),输出数据为包头信息(10位,低位先出)+HEC(8位,低位先出)。
图1-1HEC的生成示意图
在接收端,恢复包头信息的示意图与图1-1相同。
此时,输入数据为18位的附加HEC的包头数据。
若8位寄存器的结果值全为0,则说明包头信息传输正确;反之,则说明包头信息传输错误,需重传。
Ø有效载荷校验
添加到有效载荷中的16位CRC循环冗余校验码,用来判断有效载荷数据传送得是否正确。
该16位码通过CRC-CCITT多项式210041(8进制表示)生成,见图1-2的生成示意图。
在生成CRC码前,采用设备的高8位地址初始化线性反馈移位寄存器。
实验中规定输入数据为80位的有效载荷信息(低位先入),输出为有效载荷(80位,低位先出)+CRC码(16位,低位先出)。
图1-2 有效载荷校验码的生成示意图
在接收端,恢复有效载荷信息的示意图与图1-2同。
此时,输入数据为96位的附加CRC的有效载荷数据。
若16位寄存器的结果值全为0,则说明有效载荷信息传输正确;反之,则说明有效载荷信息传输错误,需重传。
Ø前向纠错
基带包附加CRC码后,一般还应进行前向纠错控制(FEC)。
对包进行FEC纠错的目的是减少重传的次数。
但在可以允许一些错误的情况下,使用FEC会导致效率不必要的减小,因此对于不同的包,是否使用FEC是灵活的。
因为包头包含了重要的链路信息,所以总是用1/3FEC进行保护。
1/3FEC仅仅是使对每个信息位重复三次;2/3FEC码则是个缩短的(15,10)汉明码,用于有效载荷数据的纠错控制,能纠正1位错码,检出2位错码。
1.2.2蓝牙系统的跳频原理
扩频通信技术是广泛运用在公网和专网的一种无线通信技术。
扩频通信主要有直序扩频和跳频扩频两种,所谓跳频,就是指用一定码序列进行选择的多频率频移键控。
也就是说,用扩频码序列去进行频移键控调制,使载波频率不断地跳变。
跳频扩频的优点:
抗干扰、抗截获,并能做到频谱资源共享;抗衰落、抗多径、抗网间干扰和提高频谱利用率。
对于使用79个频道的蓝牙系统,它的工作频段为2400-2483.5MHz,射频信道为2402+kMHz(k=0,1,、、、,78),每个信道带宽为1MHz。
蓝牙系统一共定义了5种跳频序列。
为易于理解,本实验只介绍其中的3种:
查询状态跳频序列,查询扫描状态跳频序列和连接状态跳频序列。
查询和查询扫描状态是联系在一起的。
如果一个蓝牙设备希望发现在其工作范围内有哪些未知地址的设备,就进入查询状态,成为主设备;而一个蓝牙设备允许自己被其它设备发现,就进入查询扫描状态来响应查询消息,成为从设备。
二者的跳频速率都由本地时钟(28比特计数器)决定。
查询状态跳频序列以3200跳/秒的速率进行跳变,而查询扫描跳频序列则以1.28秒/跳的变化率进行跳变。
当查询设备的跳频频率与查询扫描设备的跳频频率发生击中时,从设备就向主设备发送ID包,从而完成链路建立的第一步。
当主/从蓝牙设备进入连接状态,跳频频率都由主设备的地址码和时钟决定。
连接状态的跳频速率为1600跳/秒。
1.2.3数据流的加密与解密
在通信过程中,某些信息需要加密。
对明文进行加密需要加密密钥,对密文进行解密需要解密密钥。
加密密钥和解密密钥可以相同也可以不同。
信息发送方用加密密钥,通过加密设备或算法,将信息加密后发送出去;接收方在收到密文后,用解密密钥将密文解密,恢复为明文。
如果传输中有人窃取,由于没有解密密钥,他只能得到无法理解的密文,从而对信息起到保密作用。
常用的密码体制有常规密钥密码体制和公开密钥密码体制。
蓝牙加密技术属于常规密钥密码体制,示意图如图1-3所示。
所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。
常规密钥密码体制的保密性取决于对密钥的保密,而算法是公开的。
图1-3蓝牙加密算法示意图
RSA属于公开密钥密码体制。
公开密钥密码体制使用不同的加密密钥与解密密钥,是一种由已知加密密钥推导出解密密钥在计算上是不可行的密码体制。
如图1-4所示。
图1-4公开密钥密码体制示意图
公开密钥(publickey)密码体制中,每个用户保存着一对密钥──公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制。
在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。
加密算法E和解密算法D也都是公开的。
虽然SK与PK是成对出现,但却不能根据PK计算出SK。
公开密钥算法的特点如下:
用加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文。
加密密钥不能用来解密,加密和解密的运算可以对调。
1.3实验内容及实验结果分析
1.3.1差错控制实验
(1)包头检验
UAP:
88;包头信息:
3e-->HEC包头数据为:
011111000011010011
无误码时的校验:
信道传输正确或产生不可检错误码!
校验结果(移位寄存器结果值)为:
00000000
有误码时的校验:
信道传输产生误码!
此时接收的包头数据为(LSB->MSB):
011111110011011011
校验结果(移位寄存器结果值)为:
01111001
结论:
包头检验可以检验出误码但无法纠错。
(2)有效载荷校验
循环冗余校验CRC码(MSB-->LSB):
0000100101101100
附加CRC码的信息比特(MSB-->LSB):
010001010110010001010010010001100101011001011001011001000011001000100100001100100000100101101100
无误码时的校验:
信道传输正确或产生不可检错误码!
此时接收的信息比特为(MSB-->LSB):
000010010110110001000101011001000101001001000110010101100101100101100100001100100010010000110010
校验结果为:
0000000000000000
有误码时的校验:
信道传输产生误码!
此时接收的信息比特为(MSB-->LSB):
000010011111010101100100011001000101001001000110010101000110010101100100010001010010010000110010
校验结果为:
010*********
结论:
循环冗余校验CRC码可以检验并纠正一位错码,对于两位错码只能检出但无法纠正。
(3)包的前向纠错(FEC)控制实验
a)1/3FEC实验结果:
编码前的二进制序列为(MSB-->LSB):
0101010001100100010100010010001101010110
经1/3FEC编码后的二进制序列为(MSB-->LSB):
000111000111000111000000000111111000000111000000000111000111000000000111000000111000000000111111000111000111000111111000
无误码时的译码:
信道传输正确!
译码结果为:
0101010001100100010100010010001101010110
有误码时的译码:
信道传输产生误码!
此时接收的二进制序列为:
000111000111000111000000000111111000000000011010000111000111000000000111000000111000000000111111101101110110101010111000
译码结果为:
0101010001100010010100010010001111111010
结论:
1/3FEC码可以检验并纠正一位错码,对于两位以上错码只能检出但无法正确译码。
b)2/3FEC实验结果:
输入的十六进制编码数据为:
123
编码前的二进制信息序列为(MSB-->LSB):
010*******
经2/3FEC编码后的二进制信息序列为(MSB-->LSB):
010*******
无误码时的译码:
信道传输正确或产生不可检测的误码序列!
接收序列为:
100010100100011
译码结果为:
010*******
十六进制结果为:
123
有一位误码的译码:
信道传输产生1位错码!
可纠错!
该码位于第12位,译码结果为:
010*******
十六进制结果为:
123
有二位误码的译码:
信道传输产生2位或2位以上错码!
超出2/3FEC码纠错范围,不可纠错!
译码结果为:
010*******
十六进制结果为:
12F
结论:
2/3FEC可以检验并纠正一位错码,对于两位以上错码只能检出不能纠正。
1.3.2跳频实验
(1)查询状态:
查询设备时钟:
2000000
查询接入码:
1000000
跳频个数:
100
52544145565811156062
4347026468461721
8106670121419231618
155254414556581115
6062434702646846
1721810667012141923
161815525441455658
111560624347026468
46172181066701214
192316181552544145
查询设备时钟:
2000000
查询接入码:
2000000
跳频个数:
100
565811156062434702
64684617218106670
121419231618152022
33375658111560624347
026468461721810
667012141923161815
20223337565811156062
4347026468461721
8106670121419231618
152022333756581115
查询设备时钟:
2000000
查询接入码:
3000000
跳频个数:
100
6062434702646846
1721810667012141923
161815202233372426
3760624347026468
46172181066701214
192316181520223337
2426376062434702
64684617218106670
121419231618152022
333724263760624347
查询设备时钟:
2000000
查询接入码:
1000000
跳频个数:
100
52544145565811156062
4347026468461721
8106670121419231618
155254414556581115
6062434702646846
1721810667012141923
161815525441455658
111560624347026468
46172181066701214
192316181552544145
查询设备时钟:
3000000
查询接入码:
1000000
跳频个数:
100
52544145565811156062
4347026468461721
8106670121419231618
155254414556581115
6062434702646846
1721810667012141923
161815525441455658
111560624347026468
46172181066701214
192316181552544145
查询设备时钟:
4000000
查询接入码:
1000000
跳频个数:
100
52544145565811156062
4347026468461721
8106670121419231618
155254414556581115
6062434702646846
1721810667012141923
161815525441455658
111560624347026468
46172181066701214
192316181552544145
(2)查询扫描状态实验结果:
查询扫描设备时钟:
2000000
查询接入码:
1000000
跳频个数:
100
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
20222426283032343638
40424446485052545658
606202468101214
16182022242628303234
36384042444648505254
565860620246810
查询扫描设备时钟:
2000000
查询接入码:
2000000
跳频个数:
100
8101214161820222426
28303234363840424446
485052545658606202
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
20222426283032343638
40424446485052545658
606202468101214
查询扫描设备时钟:
2000000
查询接入码:
3000000
跳频个数:
100
12141618202224262830
32343638404244464850
5254565860620246
8101214161820222426
28303234363840424446
485052545658606202
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
查询扫描设备时钟:
2000000
查询接入码:
1000000
跳频个数:
100
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
20222426283032343638
40424446485052545658
606202468101214
16182022242628303234
36384042444648505254
565860620246810
查询扫描设备时钟:
3000000
查询接入码:
1000000
跳频个数:
100
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
20222426283032343638
40424446485052545658
606202468101214
16182022242628303234
36384042444648505254
565860620246810
查询扫描设备时钟:
4000000
查询接入码:
1000000
跳频个数:
50
46810121416182022
24262830323436384042
44464850525456586062
024681012141618
20222426283032343638
40424446485052545658
606202468101214
16182022242628303234
36384042444648505254
565860620246810
(3)连接状态实验结果:
主设备时钟:
1000000
主设备地址:
2000000
跳频个数:
100
60396243647166756829
70337261746576317835
163367545749977
11213471551170194
36213825405342574423
46274855505952375441
56695873137317751526
19282161256323142716
29653367311835203777
41039304332452494
主设备时钟:
1000000
主设备地址:
30