最佳接收机的仿真和实现讲解.docx
- 文档编号:4475323
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:21
- 大小:308.76KB
最佳接收机的仿真和实现讲解.docx
《最佳接收机的仿真和实现讲解.docx》由会员分享,可在线阅读,更多相关《最佳接收机的仿真和实现讲解.docx(21页珍藏版)》请在冰豆网上搜索。
最佳接收机的仿真和实现讲解
最佳接收机的仿真和实现
摘要:
本文根据匹配滤波器的性能设计了由匹配滤波器构成的最佳接收机,并完成了匹配滤波器的matlab仿真和VHDL仿真。
本文主要以匹配滤波器的知识为基础,提高信号的信噪比,以实现二元数字信号的最佳接收。
首先介绍了匹配滤波器的只是为基础理论:
传输特性,冲激响应,输出波形。
在此基础上研究了由匹配滤波器构成的最佳接收机,并且通过matlab仿真和VHDL仿真验证了该模型的正确性。
关键词:
匹配滤波器;最佳接收机;仿真
第一章绪论
1.1背景介绍
随着无线数字化发展,数字通信已经走入我们的生活。
而数字通信中必然会涉及到的有接收机,其中最佳接收机是主流,而基于匹配滤波器的最佳接收机也便是其中之一。
最佳接收机的匹配滤波器广泛用于雷达、声纳和通信。
其作用是:
一、提高信噪比。
毫不夸张的说,任何电子系统都有匹配滤波或近似匹配滤波的环节,目的是提高信噪比。
二、对于大时间带宽积信号,匹配滤波等效于脉冲压缩。
因此可以提高雷达或声纳的距离分辨率和距离测量精度。
在扩频通信中,可以实现解扩。
最佳接收机是通信系统中最复杂的模块之一,只有概念明确、思路清晰,才能完成相应的工程实现。
熟悉最佳接收机理论,掌握最佳接收机的实现,并能够使用该理论来分析和解决工程中的实际问题是通信工程师必须掌握的基本功。
1.2课程设计的目的和任务
通信原理课程设计是系统性的设计和实现。
通过课程设计将学生从理论学习的轨道逐步引向实际应用,把理论上熟悉的定性分析、定量计算逐步和工程估算、实验调整等手段结合起来,掌握工程设计的步骤和方法,了解科学实验的程序和实施方法,为以后毕业设计和从事通信系统的实际工作打下基础。
本课程设计就是要求学生完成最佳接收机的仿真与实现。
学生需在分析匹配滤波器的原理的基础上,给出相应的软件实现和仿真结果,并对结果进行分析,得出相应结论,同时应独立撰写完整的课程设计报告。
第2章基于匹配滤波器的最佳接受原理
2.1匹配滤波器的概述
在白噪声干扰下,如果线性滤波器的输出端在某一时刻上使信号的瞬时功率与白噪声平均功率之比达到最大,就可以使判决电路错误判决的概率最小。
这样的线性滤波器称为疲惫滤波器。
所以,匹配滤波器是最大输出信噪比意义下的最佳线性滤波器。
用匹配滤波器构成的接收机是满足最大输出信噪比准则的最佳接收机,也称为匹配滤波器接收机。
2.2匹配滤波器接收机原理
对于二进制数字信号,根据它们的时域表达式及波形可以直接得到相应的解调方法。
在加性白高斯噪声的干扰下,这些解调方法是否是最佳的,这是我们要讨论的问题。
数字传输系统的传输对象是二进制信息。
分析数字信号的接收过程可知,在接收端对波形的检测并不重要,重要的是在背景噪声下正确的判断所携带的信息是哪一种。
因此,最有利于作出正确判断的接收一定是最佳接收。
从最佳接收的意义上来说,一个数字通信系统的接收设备可以看作一个判决装置,该装置由一个线性滤波器和一个判决电路构成,如图1所示。
线性滤波器对接收信号进行相应的处理,输出某个物理量提供给判决电路,以便判决电路对接收信号中所包含的发送信息作出尽可能正确的判决,或者说作出错误尽可能小的判决。
图2.2-1简化的接收设备
假设有这样一种滤波器,当不为零的信号通过它时,滤波器的输出能在某瞬间形成信号的峰值,而同时噪声受到抑制,也就是能在某瞬间得到最大的峰值信号功率与平均噪声功率之比。
在相应的时刻去判决这种滤波器的输出,一定能得到最小的差错率。
匹配滤波器是一种在最大化信号的同时使噪声的影响最小的线性滤波器设计技术。
注意:
该滤波器并不保持输入信号波形,其目的在于使输入信号波形失真并滤除噪声,使得在采样时刻
输出信号值相对于均方根(输出)噪声值达到最大。
2.2.1.一般情况下的匹配滤波器
s(t):
匹配滤波器输入信号;
n(t):
匹配滤波器输入噪声;
s0(t):
匹配滤波器输出信号;
n0(t):
匹配滤波器输出噪声;
h(t)或H(f):
匹配滤波器。
匹配滤波器的目的就是使下式取最大值:
(2-1)
使上式取最大值的转移函数为:
(2-2)
式中
是已知的时宽为T秒的输入信号
的傅立叶变换,
是输入噪声的功率谱密度PSD。
K是一个任意非0实常数。
是计算
时的采样时间。
详细推导公式见参考教材。
2.2.2.白噪声条件下的结果
在白噪声条件下,匹配滤波器可简化描述如下:
对白噪声,
,上式变为:
(2-3)
特别是对输入的实信号波形
时,有:
(2-4)
上式表明匹配滤波器(白噪声情况下)的冲激响应就是已知输入信号波形反转并平移了
,见图3,因此称滤波器与信号“匹配”。
图3所示的匹配滤波器波形,也称积分-清除(匹配)滤波器。
假定输入信号为矩形脉冲,如图2.2-3(a)所示。
图2.2-3与匹配滤波器有关的波形
(5)
图2.2-3匹配滤波器波形
信号时宽为
。
对白噪声情况,匹配滤波器的冲激响应为:
(2-5)
为方便起见,令
为1,
,如图2.2-3(b)所示。
由该图可见,要使冲激响应可实现,要求:
这里采用
,是因为这是满足可实现条件的最小值。
要使滤波器输出最大信号值前的等待时间(即
)最小化。
图2.2-3(c)示出了
时的
,如图2.2-3(d)示出了输出信号,注意输出信号的峰值出现在
。
为了使峰值出现在
,输入信号经滤波后将会有失真。
在比特波形为矩形的数字信号传输技术中,该匹配滤波器相当于积分-清除滤波器。
假设输入信号为矩形波形,在输出信号值最大时对其进行抽样。
则
处的滤波器的输出为:
(2-6)
将图3(c)所示匹配滤波器冲激响应带入上式,等式变为:
(2-7)
因此,需要将输入信号加噪声在一个符号区间T(对二进制信号传输是比特区间)上积分,然后在符号区间末将积分输出“清空”。
这种方法示于图4(二进制信号)。
注意,为了使最优滤波器工作正常,需要一个外部时钟信号,称为比特同步。
而且,由于输出采样值仍被噪声干扰(尽管匹配滤波器已使噪声达到最小),输出信号不是二进制的。
将输出送入比较器,可将其转换为二进制信号。
2.2.3匹配滤波的最佳接收机
根据匹配滤波器原理可做出匹配滤波器的最佳接收机。
最佳接收机框图如下:
图2.2-4最佳接收机框图
其中判决公式如下:
第三章MATLAB及SIMULINK环境简介及仿真设计
3.1MATLAB及SIMULINK环境简介
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和SIMULINK两大部分。
Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。
同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
SIMULINK是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。
Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。
为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI),这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。
3.2最佳接收机仿真设计
整个仿真可由随机二进制数据产生器、加性高斯白噪声信道、匹配滤波及采样判决器、直接采样判决器、
示波器、比特误码计数器等六类模块构成。
二进制数据产生器根据设置参数,产生一系列二进制随机数据,一路送入加性高斯白噪声信道,另一路送入采样器,作为参考的数据;同时输出两个时钟信号,一个用于采样判决,另一个用于数据同步。
加性高斯白噪声信道对输入的数据混叠依据参数设置的噪声后一路送入匹配滤波及采样判决器,第二路送入直接采样判决器,第3路送入示波器供观察。
匹配滤波及采样判决器,根据匹配滤波器原理,对输入信号进行匹配滤波,滤波后的模拟数据一路送入示波器显示观察,第二路送入判决器进行采样判决,以重新恢复出原始的发送端的二进制数据信号,并将该判决数据输出给比特误码计数器。
直接采样判决器,直接对接受到的有噪声信号进行判决,根据判决结果,恢复出原始端发送的二进制数据。
该数据也送入到另外一个比特误码计数器中。
3.3simulink设计图
本实验是运用MATLAB软件的集成开发工具SIMULIK搭建了一个匹配滤波器软件仿真实验系统,来实现数字信号在经过高斯白噪声污染后最佳的恢复。
实验者可以在系统上进行不同参数的设置或更改,了解高斯白噪声对接收机的影响,了解最佳接收的过程。
系统框图如图3.3-1所示。
图3.3-1匹配滤波器仿真框图
3.4匹配滤波器的matlab仿真
当运行主函数时,在MATLAB命令窗口中参数设置如下:
x=[1010]
A=8
Tb=1600
N=4096
其中x序列表示输入二进制信号,A表示输入信号的幅度,Tb表示输入信号的周期,N表示对具有高斯干扰噪声的信号进行FFT的点数。
他们均是通过命令窗口输入的,并且x序列中的每一个二进制数字分别按顺序对应如图3.4-1所示。
(a)加高斯白噪声的输入为1图形及r0(实线)和r1(虚线)输出
(b)加高斯白噪声的输入为0图形及r0(实线)和r1(虚线)输出
(c)加高斯白噪声的输入为1图形及r0(实线)和r1(虚线)输出
(d)加高斯白噪声的输入为0图形及r0(实线)和r1(虚线)输出
图3.4-1四位二进制经过匹配滤波前以及匹配滤波之后的图形
仿真分析:
图3.4-1的四幅图分别呈现了每一位二进制输入后,接受经过匹配处理之后的输出情况。
我们可以看出,在信号结束时刻对其进行抽样比较,能够很好的做出判决。
这个结论从图2-4中也可以看到的。
由此我们很好的仿真了匹配滤波器在接收机判定之前所起到的作用。
现在来观察匹配前后的信号的对比。
图3.4-1给出的是信号匹配前后的波型。
输入信号为LFM信号,其起始频率为310MHz,终止频率为320MHz。
持续时间为3s,可以从图形中上面的曲线看出是匹配前输出信号的输出结果幅度仅达到0.6,而下面的曲线为匹配滤波后信号的输出结果其最大幅度达到了6,所以经过匹配滤波之后的信号更加容易与噪声区分开来,可见经过匹配滤波之后在高斯白噪声信道中传输的信号的信噪比有明显提高。
第4章VHDL语言实现最佳接收机
4.1VHDL简介
VHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
4.2QPSK匹配滤波器的VHDL设计
4.2.1正交相移键控(QPSK)
四相相移键控(QPSK)是一种性能优良,应用十分广泛的数字调制方式,它的频带利用率高,是二相相移键控(BPSK)的2倍。
且QPSK调制技术抗干扰能力强,采用相干检测时其误码率性能与BPSK相同。
本文用VHDL软件对QPSK通信系统的发射和接收过程的具体实现进行模拟仿真,并对各个模块进行频谱分析。
四相相移键控(QPSK)是利用载波的四种不同相位差来表征输入的数字信息,是4进制相移键控。
QPSK是M=4的调相技术,它规定了四种载波相位,分别是450,1350,2250,2750,调制器输入的序列是二进制数字序列,为了能和四进制的相位配合起来,则需要把二进制数据变换成四进制数据,就是说需要把二进制数字序列中的每两个比特分成一组,共有四种组合,即00,01,10,11,其中每一组成为双比特码元。
每一个双比特码元是由两位二进制信息比特组成,它们分别代表四进制四个符号中的一个符号。
QPSK中每次调制可传输两个信息比特,这些信息比特是通过载波的四种相位传递的。
解调器根据星座图及接收到的载波信号的相位来判断发送端发送的信息比特。
4.2.3QPSK匹配滤波器的仿真
QPSK匹配滤波器VHDL设计能比较直接地阐释匹配滤波器的功能,在整个过程中,基于所学的EDA程序编程知识与通信匹配滤波器的理论知识,充分利用了VHDL程序语言的特点,凭此得以完成
设计,最后得到程序流程图如图4.2-1所示。
图4.2-1VHDL程序设计基本流程
对QPSK匹配滤波进行仿真时,QPSK信号的波形主要有四种,而匹配滤波器储存的是其对称移位的信号。
下表为QPSK匹配滤波器程序仿真涉及的输入信号、载波编码及输出的匹配波形。
表4-1QPSK信号与匹配波形
输入信号(编号)
载波波形(编码)
匹配波形
00(0)
(1100)
01
(1)
(1001)
10
(2)
(0011)
11(3)
(0110)
波形分析:
在Max+plus2软件上运行程序得到如图4.2-2所示的波形。
图4.2-2仿真波形图
从上图可以看出,当接收到“1100”的波形时,接收机输出了对应的波形编号0;当接收到“1001”、“0011”、“0110”的波形时,接收机输出了相应的编号1、2、3,只是仿真时间有一定延迟。
可见,匹配滤波器根据载波编码的不同进行了不同的波形匹配,并在输出端输出了对应的输入波形编码。
这种现象从另一个角度上说明了匹配滤波器的功能。
第5章结论和心得
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。
这次的课程设计,我们对通信系统有了更进一步的认识。
设计过程中,参数的设置也是很重要的,如果一个参数设置出错,就可能导致接收信号的错误。
另一方面,我们领教了MATLAB矩阵实验室强大的功能和实力。
通过在SIMULINK环境下对系统进行模块化设计与仿真,使我们获得两方面具体经验,第一是MATLAB中SIMULINK功能模块的使用方法,第二是图形化和结构化的系统设计方法。
这些经验虽然并不高深,但是对于刚入门的初学者来说,对以后步入专业领域进行设计或研发无疑具有重大的意义。
这次的课程设计从选题到定稿,从理论到实践,在课程设计的日子里可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
同时,我明白了团队力量的伟大。
如果遇到不懂的问题的时候,一定要积极问老师同学,这样问题解决的时间比自己苦思冥想后仍然无疾而终的时间省很多,效率也很高。
在这个试验过程中,耐心很重要。
若果没有耐心很多事情和很多小细节的问题都找不出来。
同时,这次设计让我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正懂得那个知识。
才能提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
总之,通过此次课程设计让我们受益匪浅。
参考文献
[1]潘松,黄继业.EDA技术实验教程.第二版.北京:
科学出版社,2008
[2]阎石,数字电子技术基础.第三版.北京:
高等教育出版社,2007
[3]罗建军,杨琦.精讲多练.Matlab.第二版.西安:
西安交通大学出版社,2003
[4]樊昌信,曹丽娜.通信原理.北京:
国防工业出版社,2008
[5]王晓丹,吴崇明.基于matlab的系统分析与设计图像处理.西安:
电子科技大学出版社,2000
附录1matlab程序
(1)主程序
echoon
N=31;——滤波器的长度
T=1;——码元速率
alpha=1/4;——滚降系数
n=-(N-1)/2:
(N-1)/2;——_T序列长度范围
%计算发送滤波器的脉冲响应g_T
fori=1:
length(n)
g_T(i)=0;
form=-(N-1)/2:
(N-1)/2
g_T(i)=g_T(i)+sqrt(xrcf(4*m/(N*T),alpha,T))*exp(j*2*pi*m*n(i)/N);
end
end
——将g_T延时(N-1)/2个样本得到期望线性相位发送滤波器的脉冲响应
n2=0:
N-1;
[G_T,W]=freqz(g_T,1);——计算发送滤波器的频率响应G_T
magG_T_in_dB=20*log10(abs(G_T)/max(abs(G_T)));——幅度响应的归一化
g_R=g_T;——接收滤波器的脉冲响应与发送滤波器相同
imp_resp_of_cascade=conv(g_R,g_T);——发送、接收滤波器级联后的脉冲响应
echooff
——以下为绘图指令
figure
(1)
stem(n2,g_T);
hold
plot(0:
0.01:
(N-1),0,'b');
title('发送滤波器的脉冲响应')
figure
(2)
plot(magG_T_in_dB);
title('发送滤波器的频率响应');
figure(3)
stem(0:
(2*N-2),imp_resp_of_cascade);
hold
plot(0:
0.01:
(2*N-2),0,'b');
title('发送滤波器和接收滤波器级联后的脉冲响应');
(2)子程序
function[y]=xrcf(f,alpha,T)
——根据参数alpha和T估计Xrc(f)的表达式
if(abs(f)>((1-alpha)/(2*T)))
y=0;
elseif(abs(f)>((1-alpha)/(2*T)))
y=(T/2)*(1+cos((pi*T/alpha)*(abs(f)-(1-alpha)/(2*T))));
else
y=T;
end
end
(3)程序运行结果
附录2vhdl程序
QPSK匹配滤波器VHDL程序:
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entitymatch_recis
port(clk:
instd_logic;
reset:
instd_logic;
x_in:
instd_logic;
y_out:
outstd_logic_vector(1downto0));
endmatch_rec;
architecturetranslatedofmatch_recis
signalcnt:
std_logic_vector(1downto0);
signalcnt1:
std_logic_vector(2downto0);
signalcnt2:
std_logic_vector(2downto0);
signalcnt3:
std_logic_vector(2downto0);
signalcnt4:
std_logic_vector(2downto0);
signaly_out_xhdl1:
std_logic_vector(1downto0);
begin
y_out<=y_out_xhdl1;
process
begin
waituntil(clk'eventandclk='1');
if(notreset='1')then
cnt<="00";
cnt1<="000";
cnt2<="000";
cnt3<="000";
cnt4<="000";
y_out_xhdl1<="00";
else
casecntis
when"00"=>
if(x_in='1')then
cnt1<="001";
cnt2<="001";
cnt3<="000";
cnt4<="000";
else
cnt1<="000";
cnt2<="000";
cnt3<="001";
cnt4<="001";
endif;
if(cnt1>"010")then
y_out_xhdl1<="00";
else
if(cnt2>"010")then
y_out_xhdl1<="01";
else
if(cnt3>"010")then
y_out_xhdl1<="10";
else
y_out_xhdl1<="11";
endif;
endif;
endif;
when"01"=>
if(x_in='1')then
cnt1<=cnt1+"001";
cnt2<=cnt2;
cnt3<=cnt3;
cnt4<=cnt4+"001";
else
cnt1<=cnt1;
cnt2<=cnt2+"001";
cnt3<=cnt3+"001";
cnt4<=cnt4;
endif;
when"10"=>
if(x_in='1')then
cnt1<=cnt1;
cnt2<=cnt2;
cnt3<=cnt3+"001";
cnt4<=cnt4+"001";
else
cnt1<=cnt1+"001";
cnt2<=cnt2+"001";
cnt3<=cnt3;
cnt4<=cnt4;
endif;
when"11"=>
if(x_in='1')then
cnt1<=cnt1;
cnt2<=cnt2+"00
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最佳 接收机 仿真 实现 讲解
![提示](https://static.bdocx.com/images/bang_tan.gif)