数字基带仿真实验通信系统综合实验报告.docx
《数字基带仿真实验通信系统综合实验报告.docx》由会员分享,可在线阅读,更多相关《数字基带仿真实验通信系统综合实验报告.docx(46页珍藏版)》请在冰点文库上搜索。
数字基带仿真实验通信系统综合实验报告
数字基带仿真实验通信系统综合实验报告
实验一数字基带仿真实验
一.实验目的
1.了解汉明码、CRC码的基本原理。
2.了解跳频、扩频的基本原理。
3.了解常规和公开密钥密码体制的工作原理。
4.认识无线通信系统的基带信号处理方法。
二.实验设备与软件环境
本实验一人一组,其中
硬件:
PC机一台。
软件:
Windows2000或Windows操作系统,TTP基带仿真软件;VisualC++。
三.实验内容
1.蓝牙基带包的差错控制技术
1)包头检查(HEC),用于保证包的完整性;
2)数据有效载荷信息的循环冗余校验;
3)包的前向纠错(FEC)控制。
2.蓝牙系统的跳频原理
1)查询状态的跳频原理;
2)查询扫描状态的跳频原理;
3)连接状态的跳频原理。
3.数据流的加密与解密
1)蓝牙加密技术(常规密钥密码体制的加密与解密);
2)RSA公开密钥密码体制的加密与解密过程。
四.实验要求
1.差错控制实验:
记录包头校验、有效载荷校验、1/3FEC以及2/3FEC再有误码和无误码情况下的输入输出结果并加以分析。
2.跳频实验:
记录在查询状态、查询扫描状态以及连接状态下,不同查询设备时钟和接入码下产生的频点并加以分析。
3.加密解密实验中,记录密钥参数、密码流参数、明文和秘文。
4.编程实验结果比较分析。
五.实验原理
1.差错控制编码的基本原理
数字信号在传输过程中,常常由于信道特性不理想,信道加性噪声的影响而产生误码。
差错控制编码方法是有效降低信道误码率的方法之一。
1)汉明码编码的基本原理
汉明码是一种能够纠正一位错码且编码效率较高的线性分组码,利用奇偶校验位的概念,通过在原有数据中插入若干校验码来进行错误检查和纠正的编码技术。
接收端按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生差错,则信息码元与监督码元之间的校验关系将受到破坏,从而可以发现错误,乃至纠正错误。
在接收端通过纠错译码自动纠正传输中的差错来实现码纠错功能,称为前向纠错FEC。
汉明码通过信息码位与生成矩阵相乘产生相应的汉明码字,其码长为
,其中信息码位长为
,监督码位长为
(n为汉明码长度,k为信息位长度)。
汉明码的译码可以采用计算校正子,然后确定错误图样并加以纠正的方法。
2)CRC码编码的基本原理
CRC码(即校验和)加在帧尾,使CRC码的帧的多项式能被生成多项式
除尽;收方接收时
去除它,若有余数,则传输出错。
CRC码算法:
设
为r阶,在帧的末尾加r个0,使帧为m+r位,相应多项式为
;按模2除法用对应于
的位串去除对应于
的位串;按模2减法从对应于
的位串中减去余数(等于或小于r位),结果就是要传送的带校验和的多项式
。
2.跳频的基本原理
跳频扩频是一种利用载波频率的跳变来实现频谱展宽的扩频技术。
其方法是把一个宽频段分成若干个频率间隔(称为频道或频隙),由一个伪随机序列控制发射机在某一特定的驻留时间所发送信号的载波频率。
发送端在时钟控制下,伪码发生器产生伪随机序列去控制频率合成器生成跳频载波序列,称做跳频图案。
接收端的预调制滤波器是一种中心频率随信号跳频式样而同步跳变的窄带滤波器(通频带允许所需信号通过),目的在于增加接收机的时间选择性,减少强干扰对接收机可能引起的阻塞现象。
接收端利用与本地相同的跳频序列图案产生跳频载波序列,若跳变规律相同时,经过变频以后,将得到一个固定的中频信号,即把原来的频率跳变解除,这一过程称为解跳或去跳。
若外来跳频图案与本地图案不一样,则得不到一个固定的中频信号,解调后只是一些噪声而得不到有用的输出。
因此,时间同步是跳频通信的关键技术。
调制方式可根据跳频信号的特征进行选择,在跳频系统中不宜采用对相位要求严格的调制方式。
因为在跳频通信系统中,接收机的本地载波要做到与外来信号的载波在相位上保持相干是很困难的。
因此,宜采用非相干检测方式。
3.保密通信的基本原理
在通信过程中,某些信息需要加密。
对明文进行加密需要加密密钥,对密文进行解密需要解密密钥。
加密密钥和解密密钥可以相同也可以不同。
信息发送方用加密密钥,通过加密设备或算法,将信息加密后发送出去;接收方在收到密文后,用解密密钥将密文解密,恢复为明文。
如果传输中有人窃取,由于没有解密密钥,他只能得到无法理解的密文,从而对信息起到保密作用。
常用的密码体制有常规密钥密码体制和公开密钥密码体制。
蓝牙加密技术属于常规密钥密码体制。
所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。
常规密钥密码体制的保密性取决于对密钥的保密,而算法是公开的。
RSA属于公开密钥密码体制。
公开密钥密码体制使用不同的加密密钥与解密密钥,是一种由已知加密密钥推导出解密密钥在计算上是不可行的密码体制。
常规密钥密码体制,是指加密密钥与解密密钥是相同的加密体制。
公开密钥(publickey)密码体制最主要的特点就是加密和解密使用不同的密钥,每个用户保存着一对密钥──公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制。
在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。
加密算法E和解密算法D也都是公开的。
虽然SK与PK是成对出现,但却不能根据PK计算出SK。
公开密钥算法的特点如下:
用加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文。
加密密钥不能用来解密,加密和解密的运算可以对调。
六.实验结果
1.基带包的差错控制技术
1.包头检错
编码:
图1-1包头检错图
②校验,结果正确
图1-2包头校验图
分析:
输入数据为10位的包头信息,低位先入;输出数据为包头信息+HEC,其中包头信息共10位,低位先出,HEC共8位,低位先出。
在接收端,输入数据为18位的附加HEC的包头数据。
若8位寄存器的结果值全为0,则说明包头信息传输正确;反之说明包头信息传输错误,需重传。
2.循环冗余校验(CRC)
编码:
图1-3循环冗余校验编码图
②校验结果:
正确
图1-4循环冗余结果校验图
分析:
输入数据为80位的有效载荷信息(低位先入);输出为有效载荷(80位,低位先出)+CRC码(16位,低位先出)。
在接收端,输入数据为96位的附加CRC的有效载荷数据。
若16位寄存器的结果值全为0,则说明有效载荷信息传输正确;反之说明有效载荷信息传输错误,需重传。
③前向纠错1/3FEC
编码:
图1-5前向纠错1/3FEC编码图
译码:
结果正确
图1-6前向纠错1/3FEC校验图
分析:
1/3FEC仅仅是将每个信息位重复三次。
若原数据为abc,经过编码后为aaabbbccc。
④前向纠错2/3FEC(缩短的(15,10)汉明码)
编码:
图1-7前向纠错2/3FEC编码图
译码:
结果正确
图1-8前向纠错2/3FEC译码图
分析:
LFSR的初始值都为0,每10个信息比特编码成15比特的码字,它可以纠正码字中所有的单个错误和检测所有两个错误。
2.跳频扩频实验
观察当设备处于查询状态、查询扫描状态和连接状态时的跳频图
查询状态时的跳频图案:
图1-9查询状态时的跳频图案图1
查询设备时钟:
123456查询接入码:
0111101跳频个数:
70
图1-10查询状态时的跳频图案图2
查询设备时钟:
1000000查询接入码:
0111101跳频个数:
70
图1-11查询状态时的跳频图案图3
查询设备时钟:
1000000查询接入码:
1000000跳频个数:
70
查询扫描状态时的跳频图案:
图1-12查询扫描状态时的跳频图案1
查询设备时钟:
123456查询接入码:
0111101跳频个数:
70
图1-13查询扫描状态时的跳频图案2
查询设备时钟:
1000000查询接入码:
0111101跳频个数:
70
图1-14查询扫描状态时的跳频图案3
主设备时钟:
1000000主设备地址:
1111111跳频个数:
70
连接状态时的跳频图案:
图1-15连接状态时的跳频图案1
查询设备时钟:
123456查询接入码:
0111101跳频个数:
70
图1-16连接状态时的跳频图案2
查询设备时钟:
1000000查询接入码:
0111101跳频个数:
70
图1-17连接状态时的跳频图案3
查询扫描设备时钟:
1000000查询接入码:
1111111跳频个数:
70
分析:
跳频是用一定扩频码序列进行频移键控调制,使载波频率不断地跳变,具有较强的随机性。
跳频图案由查询设备时钟、查询扫描设备时钟、查询接入码、主设备时钟、主设备地址等参数的综合选择有关,任一参数改变,跳频图案将会发生变化。
跳频图案是跳频通信中载波频率变化的规律。
输入是本地时钟和28比特的地址(即全部LAP和最小4比特UAP);输出是跳频频率。
3.加密解密实验
1.常规密钥密码体制
图1-18常规密钥密码体制下的加密解密图
2.公开密钥密码体制--RSA
图1-19公开密钥密码体制下的加密解密图
对各分组分别进行加密算法-->得到各分组的密文十进制形式(高位-->低位):
21871577633110079226681924283434541097633324434831476835315524977
对各分组进行解密算法-->得到各分组解密明文的十进制形式(高位-->低位):
61664102859712579692213051721397102815521702134980114212001380
解密明文的十六进制形式为:
368080895674860735464565758098435354564363464564
七.思考题
1.接收端的1/3FEC码是如何进行纠错的?
答:
1/3FEC是将每个信息位重复三次,如果接收端发现三个信息位不一样就可以发现错误并且根据该信息纠错。
2.包头的两种差错控制1/3FEC和HEC,它们的先后顺序如何?
为什么?
答:
先进行HEC差错控制再进行1/3FEC差错控制,因为对包进行FEC纠错的目的是减少重传的次数。
但在可以允许一些错误的情况下,使用FEC会导致效率不必要的减小,因此对于不同的包,是否使用FEC是灵活的。
3.在接收端如何对2/3FEC码进行译码?
答:
将码序列输入到译码器中,通过除法电路来产生伴随式得到错误样本图样,从而生成纠错信号来对每个码元进行纠错。
4.三种跳频序列分别有无规律可循?
为什么?
答:
三种跳频序列无规律可循。
下图为跳频序列产生的的原理框图,基本上,输入为当前地址和本地时钟,地址输入由28位构成,时钟输入由27位构成,根据跳频序列的不同分类,地址输入和时钟输入采取不同的选择方案。
由于输入的随机性变化,决定了输入的随机性变化,决定了输出为在79跳之间变化的一个伪随机序列。
5.公开密钥密码体制的一个重要保障是什么?
答:
公开密钥密码体制使用不同的加密密钥与解密密钥,是一种由已知加密密钥推导出解密密钥在计算上是不可行的密码体制。
在公开密钥密码体制中,加密密钥PK是公开信息,而解密密钥SK是需要保密的。
加密算法E和解密算法D也都是公开的。
虽然秘密密钥是由公开密钥决定的,但却不能根据PK计算出来。
实验二通信传输有效性和可靠性分析实验
一.实验目的
1.了解停止-等待协议、连续ARQ协议知识。
2.了解信道利用率和最佳帧长的概念。
3.了解检错重发(ARQ)、前向纠错(FEC)等差错控制原理。
4.通过无线信道速率测试程序,使学生体会:
无线信道两端距离、信道上障碍物、帧长对无线传输速率的影响。
二.实验设备与软件环境
每两台PC机为一组,双方软、硬件配置相同。
硬件:
串口连接电缆(反绞,用于连接两台计算机的串口),带串口及USB接口的蓝牙模块,USB电缆,串口连接电缆(不反绞),电源(串口实验时用)。
软件:
Windows2000或Windows操作系统,TTP通信传输的有效性和可靠性分析实验软件。
三.实验内容
1.性能仿真
1)连续ARQ和停止等待协议的差错率和帧传送平均延时的关系(点击主界面图上的“仿真2”)。
2)陆地和卫星通信信道环境中,各种参数下最佳帧长与信道利用率的关系(点击主界面图上的“仿真1”)。
3)共享信道技术、网络负载和吞吐量等参数之间的关系(点击主界面图上的“仿真3”~“仿真7”,可选)。
2.数据速率
数据传输速率的分析(点对点通信)
通过无线信道速率测试程序,使学生体会:
无线信道两端距离、信道上障碍物、帧长对无线传输速率的影响。
设置数据包长度,测试:
1)两台计算机直接用串口电缆连接,测得实际速率VRS232。
2)两台计算机各自用串口连接蓝牙模块,建立连接后测得实际速率VRS232+BT。
3)两台计算机都各自用USB连接蓝牙模块,建立连接后测得实际速率VUSB+BT
3.文件传输
1)发送方选择传送的文件、数据帧长、对传输的数据帧进行检、纠错的信道编码方式及容许的最大重传次数和信道误码率。
2)接收方对收到的包进行解码,如能纠错,即纠正错误;如能检出错误不能纠正,则要求重发。
接收方如认为一帧传输无误,则提交给上层应用程序。
3)统计通信性能参数:
文件实际传输时间、文件实际传输的字节数和重传次数。
文件传输后可以得到的结果有文件传输的误比特率、实际传输的时间、在信道上实际的流量和重传次数。
改变两个蓝牙模块之间的距离,增加信道上的金属障碍物;改变帧长,观察对文件传输速率和误比特率的影响。
四.实验要求
1.在速率测试中,设置包的个数为10,测试次数为10次,取不同的包长,记录通过串口连接蓝牙设备模块和通过USB口连接蓝牙模块的测试结果(包括包长、数据量、花费时间和平均速率)。
分析各次测试结果,从中可以得出什么结论?
五.实验原理
数据信息在传输过程中出现差错的情况是经常发生的,数据链路层常用的差错控制方法有停止-等待协议(又叫自动请求重发)、连续ARQ(自动请求重发,ARQ,AutomaticRepeatrequest)协议、检错重发ARQ协议。
1.停止等待协议基本原理
停止-等待协议规定发送端每发送一帧数据信息后,必须停下等待接收端返回了应答才能继续操作下去。
在接收端,每当收到一数据帧后,将作如下处理:
若收到的数据帧经检验后未发现差错,且发送帧号与接收状态变量相符,则将该数据帧送往主机,并修改接收状态变量,再向发送端回送确认帧;若收到的数据帧经检验后未发现差错,但发送帧号与接收状态变量不相符,则说明该帧为重复帧,应丢弃该帧,再向发送端返回确认帧;若收到的数据帧经检验后发现差错,则向发送端返回否认帧,由发送端进行重新发送。
2.连续ARQ协议基本原理
连续ARQ协议每发送完一帧数据之后,不是停下来等待对方的应答,而是继续再发送若干帧,这样可以有效地利用等待时间,提高整个通信过程的吞吐量。
3.检错重发ARQ协议基本原理
检错重发ARQ协议是只将出错的帧进行重发,而对后面送来的正确帧可以先收下来放在一个缓冲区内,待重传的帧收到后,再一起按正确的顺序送往主机。
六.实验结果
1.性能仿真
图2-1连续ARQ和停止等待协议的比较图
图2-2信道利用率和帧长的关系
图2-3非坚持CSMA在不同延时下吞吐量和网络负载关系图
图2-4等待CSMA在时延不同时吞吐量和网络负载关系仿真图
图2-5CSMA/CD在时延不同时吞吐量和网络负载关系仿真图
图2-6时延相同时,不同接入技术的吞吐量和网络负载关系仿真图
图2-7归一化传播时延和站点对信道利用率的影响仿真图
2.数据传输速率的分析(点对点通信):
图2-8帧长为1字节时数据传输速率图
图2-9帧长为100字节时数据传输速率图
图2-10帧长为300字节时数据传输速率图
图2-11帧长为600字节时数据传输速率图
分析:
设置数据包长度,测试包的个数为10;测试次数为10次。
上图分别为传输1字节,100字节,300,600字节时的测试结果图,可以看出在传输的字节数增大时,速率先会上升,而后上升的速度减缓。
3.文件传输:
CRC差错控制编码时:
图2-12误码率为0.001时文件传输测试结果图
帧长为300字节;误码率为:
0.001时,结果为:
花费时间为79563ms,数据包重传次数为1。
图2-13误码率为0.01时文件传输测试结果图
结果为:
误码率设置为0.01时,最大重传次数设置为50时,提示最大重传次数设置过小,传输中断。
线性分组码差错控制编码时:
图2-14误码率为0.001时文件传输测试结果图
帧长为300字节;误码率为:
0.001。
结果为:
花费时间为:
215968ms,重传次数为0。
图2-15误码率为0.05时文件传输测试结果图
帧长为300字节;误码率为:
0.05,结果为:
花费时间为113906ms,重传次数为0。
图2-16误码率为0.01时文件传输测试结果图
帧长为300字节;误码率为:
0.01,结果为:
花费时间为111250ms,重传次数为0。
分析:
在相同的条件下,传输一个大小相同的文件,帧长为300字节,最大传输次数为50,观察两种不同的差错控制方式下,重传次数及传输时间如下:
采用CRC差错控制编码:
传输此文件时,误码率小时重传次数为0次,误码率越大,重传次数越多,花费时间越长。
当重传次数选择较低时,出现传输失败的结果。
这种差错控制方式的传输时间较长,但却保证了传输的可靠性。
在可靠性要求较高而实时性要求较低的场合可以使用这种传输方式。
采用线性纠错编码方式纠错:
传输此文件时,每次重传所用时间较为接近,误码率对传输时间的影响很小。
这种传输方式不会进行重传,因此在传输时间上比CRC更有优势,但是它只能在一定程度上纠错,因此不能保证传输的可靠性,在可靠性要求不高而实时性要求较高的场合可以采样这种传输方式。
七.思考题
1.推导汉明码(32.24)的监督位生成式和纠错方法。
答:
码长
,信息位数
,监督码位
,这里m为
2的正整数,给定m后,即可构造出具体的
汉明码。
这可以从建立一致校验矩阵着手。
我们已经知道,
H矩阵的列数就是码长n,行数等于m。
对于纠正1位差错来说,其伴随式的值就等于对应的H的列矢量,即错误位置。
所以这种形式的H矩阵构成的码很便于纠错,但这是非系统的,可调整各列次序来实现
,有了H0,就可得到系统码的生成矩阵为:
,也可得到系统码的校验位。
汉明码的译码方法,可以采用计算伴随式,然后确定错误图样并加以纠正的方法。
实验三无线多点组网实验
一.实验目的
1.了解无线网络组网的基本原理及相关概念。
2.了解点对多点的网络、Adhoc网络多条转接的拓扑结构、组网过程、简单的路由协议。
3.了解广播、组播的基本知识。
二.实验设备与软件环境
本实验每5台PC机为一组,每台软、硬件配置相同。
硬件:
PC机,带USB接口的蓝牙模块,USB连接线。
软件:
Windows2000或Windows操作系统,TTP无线组网实验软件。
三.实验内容
1.组网过程
五人一组,相互配合,共同组成一个无线网络。
从实验中体会微微网、分布式网络的概念和构造,并且掌握如何构造一个基于分布式网络的无中心、自组织的Adhoc网络。
2.单跳与多跳转接
通过单跳或多跳实现网络中任意两个节点间的通信。
请查看发送成功的单播数据的路由信息或接收到单播数据的路由信息。
3.路由协议
观察各个节点之间地址及数据信息的交换过程,理解简单的路由协议的实现过程。
请查看发送成功的单播数据的路由信息或接收到单播数据的路由信息。
4.广播
由任何一个节点设备向网络内所有其他节点发送同一消息,观察其发送的目的地址以及数据交换过程。
在这种情况下的路由过程与两个节点间数据单播的过程有何不同。
5.组播
网络中设置两个多播组。
网络中任何一个节点都可以申请加入一个或多个多播组,而后网络中的任何一个节点设备向某组发送组播信息,观察数据包的发送过程。
可以更改节点加入多播组,观察结果。
四.实验要求
1.组网步骤完成后,记录本组五个网络节点组成的自组织网络的结构,绘出拓扑图并标明每个节点的角色(M、S)。
2.与本组其他四个节点通信,观察并纪录到每个节点的路由选择。
3.加入组播组,与同组其他节点通信,观察并纪录到每个节点的路由选择。
4.对其他节点进行广播,观察并纪录到每个节点的路由选择。
五.实验原理
1.计算机通信网的相关知识
计算机通信网是以实现远程通信为目的,一些互联的、独立自治的计算机的集合。
一般认为,计算机通信网应当具有三个主要的组成部分,即能向用户提供服务的若干主机;由一些专用的通信处理机和连接这些结点的通信链路所组成的一些通信子网;为主机与主机,主机与通信子网,或者通信子网中各个结点之间通信而建立的一系列协议,即通信双方事先约定的、共同遵守的一组规则。
计算机通信网络结构可以分为星形、树形、环形、总线型和网络形等。
常用的交换方式有:
电路交换、报文交换、分组交换和混合交换。
计算机通信网络通过有线(物理媒介)或无线方式进行连接,多个计算机共享通信信道,通过信道共享技术决定信道如何分配,通过地址分配来唯一区分每个数据包的的发送者和接收者。
通信网中的一个结点在接收到一个分组之后,通过路由算法决定通过哪条链路把分组输送出去。
计算机通信网采用层次型的体系结构,OSI的体系结构将其划分为七层,从下往上依次为:
物理层、数据链路层、网络层、运输层、会话层、表示层和应用层;TCP/IP将其划分为:
物理层、网络接入层、互联网层、传输层和应用层。
2.Adhoc网络
AdHod网络一种可以没有有线基础设施支持,可以在任何时刻、任何地点快速组建的一种移动通信网络。
AdHoc网络采用分组交换机制,通过无线方式接入网络。
在AdHoc网络中,当两个移动主机(例图1中的主机A和B)在彼此的通信覆盖范围内时,他们可以直接通信。
但是由于移动主机的通信覆盖范围有限,如果两个相距较远的主机(例图中A和C)要进行通信,则需要通过他们之间的移动主机B的转发才能实现。
因此,在AdHoc网络中,主机同时还是路由器,担负着寻找路由和转发报文的工作。
在AdHoc网络中,每个主机的通信范围有限,因此路由一般都由多跳组成,数据通过多个主机的转发才能到达目的地i,故AdHoc网络也被称为多跳无线网络。
图3-1主机A,C通过B的转发进行通信
3.路由选择
路由选择是指在一个计算机网络内或多个网络互联的网际网以及Internet内,除收信的目的结点外,其余结点都要确定分组沿本结点的哪一条输出链路继续传送。
实现路由选择功能的算法称为路由选择算法。
它直接关系到系统的传输延迟和吞吐量等技术性能指标。
其目的是提高通信子网的传输效率和可靠性。
路由选择算法大致可以分为两大类:
距离向量算法和链路状态算法。
六.实验结果
1.建链过程:
图3-2建链过程示意图
2.组网后的无线组网结构:
2
图3-3无线组网结构图
3.单播,广播,组播过程:
图3-4单播,广播,组播过程图
广播路径:
7A节点对除自节点之外的所有节点进行广播,路由信息为:
7A->7B->56->2D