




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于fpga的dpsk调制解调系统设计本设计主要实现基于fpga的dpsk载波传输的数字通信系统。与模拟通信系统相比,数字调制和解调同样是通过某种方式,将基带信号的频谱由一个频率位置搬移到另一个频率位置上去。不同的是,数字调制的基带信号不是模拟信号而是数字信号。在大多数情况下,数字调制是利用数字信号的离散值实现键控载波,对载波的幅度,频率或相位分别进行键控,便可获得ask、fsk、psk等。这三种数字调制方式在误码率,要求信噪比和抗噪声性能等方面,以psk性能最佳,因而,psk在中、高速传输数据时得到广泛应用。1. psk调制原理1.1数字调制介绍数字调制的概念:用二进制(多进制)数字信号作为调制信号,去控制载波某些参量的变化,这种把基带数字信号变换成频带数字信号的过程称为数字调制,反之,称为数字解调。数字调制的分类:(1)线性调制方式:线性调制方式主要有各种进制的psk和qam等。线性调制方式又可分为频谱高效和功率高效两种。在线性数字调制技术中,传输信号的幅度s(t)随调制数字信号m(t)的变化而呈线性变化。 线性数字调制技术带宽效率较高,所以非常适用于在有窄频带要求下,需要容纳越来越多用户的无线通信系统。在线性数字调制方案中,传输信号s(t)可表示为:线性数字调制方案有很好的频谱效率,但传输中必须使用功率效率低的rf放大器。(2)恒定包络调制方式:恒定包络调制方式主要有msk、tfm(平滑调频)、gmsk等。其主要特点是这种已调信号具有包络幅度不变的特性,其发射功率放大器可以在非线性状态而不引起严重的频谱扩散。(3)数字调制系统的基本结构 图1-1 数字调制系统的基本结构(4)数字调制的性能指标数字调制的性能指标通常通过功率有效性hp(power efficiency)和带宽有效性hb(spectral efficiency)来反映。功率有效性hp是反映调制技术在低功率电平情况下保证系统误码性能的能力,可表述成每比特的信号能量与噪声功率谱密度之比:1.2二进制相移键控(psk)的调制(1)psk信号的产生图1-2 psk信号的产生方式以及波形示例一个二进制的psk信号可视为一个双极性脉冲序列s(t)与一个载波 的乘积,即:也可以写成:数字调相波可以用矢量图表示其相位变化的规则,根据ccitt规定,存在a、b两种表示相位变化的矢量图,如下图所示。图中的虚线表示参考矢量,它代表未调制载波的相位。图1-3 二相移相信号矢量图(2)psk信号的功率谱特性:2psk信号的功率谱密度采用与求2ask信号功率谱密度相同的方法。psk信号的功率谱密度为:式中, 为基带信号s(t)的功率谱密度。当0、1等概出现时,双极性基带信号功率谱密度为:则2psk信号的功率谱密度为:图1-4 psk信号功率谱密度图1-5 双极性基带功率谱密度psk信号谱,形状为 ,以 为中心的dsb谱psk信号传输带宽 (取主瓣宽度)2. 差分相移键控(dpsk)调制原理2.1差分相移键控原理差分相移键控(differential phase shift keying,dpsk)是一种最常用的相对调相方式,采用非相干的相移键控形式。它不需要在接收机端有相干参考信号,而且非相干接收机容易实现,价格便宜,因此在无线通信系统中广泛使用。差分相移键控(dpsk)是利用相邻二个码元的载波信号初始相位的相对变化来表示所传输的码元。所谓相位变化,又有向量差和相位差两种定义方法。向量差是指前一码元的终相位与本码元初相位比较,是否发生了相位的变化,而相位差是值前后两码元的初相位是否发生了变化。按向量差和相位差画出的dpsk波形是不同的。但是绝对移相波形规律比较简单,而相对移相波形规律比较复杂。当有加性高斯白噪声时,平均错误概率如下所示为:2dpsk同样存在a、b方式矢量图,图中虚线表示的参考矢量代表前一个码元已调载波的相位。b方式下,每个码元的载波相位相对于参考相位可取 ,所以其相邻码元之间必然发生载波相位的跳变,接收端可以据此确定每个码元的起止时刻(即提供码元定时信息),而a方式却可能存在前后码元载波相位连续。图2-1 2dpsk同样存在a、b方式矢量图2.2绝对码相对码(差分编码)绝对码和相对码之间的关系为:若定义为2dpsk方式下本码元初相与前一码元初相之差,并设相“1”、 0相“0”,为了比较,设2psk方式下相“0”、 0相“1”,则数字信息序列与2psk、2dpsk信号的码元相位关系如表所示。表2-1 2psk、2dpsk信号的码元相位关系图2-2 绝对码相对码相位比较3. 差分相移键控(dpsk)解调原理3.1极性比较法(相干解调)(1)输入dpsk信号经过带通滤波器后,加到乘法器,乘法器将输入信号与载波极性进行比较。极性比较电路符合绝对移相定义(因绝对移相信号的相位是相对于载波而言的),经低通和判决电路后,还原的是相对码。要得到原基带信号,还必须经过相对码-绝对码变换器。不难看出,极性比较原理是将dpsk信号与参考载波进行相位比较,恢复出相对码,然后进行查分译码,由相对码还原成绝对码,得到原绝对码基带信号。(2)dpsk解调器由三部分组成,乘法器和载波提取电路实际上就是相干检测器。后面的相对码(差分码)-绝对码变化电路,即相对码(差分码)译码器,其余部分完成低通判决任务。当输入为“1”码时,ucpsk(t)=uask(t)=acos(2fct),因此cpsk解调的情况完全与ask解调相同,此时低通输出:x(t)=a+nc(t)当输入为“0”码时,ucpsk(t) =acos(2fct+)=- acos(2fct),此时与ask情况不同。由于acos(2fct)= - acos(2fct),则x(t)=-a+nc(t)。图3-1 相干解调3.2相位比较法dpsk相位比较法解调器原理如下图。其基本原理是将接收到的前后码元所对应以前以码元的载波相位作为后一码元的参考相位。所以称为相位比较法或者是称为差分相位检测法。该电路与极性比较法不同之处在于乘法器中与信号相乘的不是载波,而是前一码元的信号,该信号相位随机且有噪声,它的性能低于极性比较法的性能。输入的udpsk信号一路直接加到乘法器,另一路经过延迟线延迟一个码元的时间tb后,加到乘法器作为相干载波。若不考虑噪声的影响,设前一码元载波的相位为1,后以码元载波的相位为2,则乘法器的输出为:cos(ct+1)cos(ct+2)=1/2cos(1+2)+cos(2ct+1+2)经过低通滤波器滤出高频项,输出为:u0(t)=1/2cos(1-2)=1/2cos式中,=1-2,是前后码元对应的载波相位差。由调相关系可知,=0时,发送“0”;=时,发送“1”,则取样判决器的判决规则是:u0(t)0,判决为“0”;u0(t)0,判决为“1”。可直接解调出原绝对码基带信号。然而,相位比较法电路是将本码元信号与前一码元信号相位比较,它适合与按相位差定义的dpsk信号的解调,对码元宽度为非整数倍的载频周期的按向量差定义的dpsk信号,该电路不起作用。图3-2 相位比较法4.dpsk调制解调系统的设计4.1 dpsk的总体设计数字化、信息化的时代,数字集成电路应用得非常广泛。随着微电子技术和工艺的发展,数字集成电路从电子管、晶体管、中小规模集成电路、超大规模集成电路(vlsic)逐步发展到今天的专用集成电路(asic)。但是asic因其设计周期长,改版投资大,灵活性差等缺陷制约着它的应用范围。可编程逻辑器件的出现弥补了asic的缺陷,使得设计的系统变得更加灵活,设计的电路体积更加小型化,重量更加轻型化,设计的成本更低,系统的功耗也更小了。fpga是英文field programmable gate array的缩写,即现场可编程门阵列,它是在pal、gal、epld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。整个信号处理过程全部采用vhdl硬件描述语言来设计,并用quartus ii仿真系统功能对程序进行调试,分析仿真结果,以满足系统设计的要求。fpga芯片结合了专用集成电路和dsp的优势,既具有很高的处理速度,又具有一定的灵活性。fpga中既减少了大量硬件连线,又降低了干扰,系统实现方便,性能稳定。因此,基于fpga的数字传输系统的研究具有重要的实际意义。dpsk 信号应用较多,但由于它的调制规律比较复杂,难以直接产生,目前dpsk 信号的产生较多地采用码变换加cpsk(coherent phase-shift keying)调制而获得,这里的cpsk就是前面提到的psk方式,在以后的论文叙述中就以cpsk来代替psk,主要是为了与dpsk形成对比。这种dpsk方法是把原基带信号经过绝对码相对码变换后,用相对码进行cpsk 调制,其输出便是dpsk 信号。用源码序列 对载波进行相对(差分)相移键控,等效于将源码序列 转换为差分码形式 ,之后对载波进行绝对相移键控。图4-1 fpga实现的总体框架4.2cpsk调制电路的vhdl建模与程序设计4.2.1 cpsk调制的vhdl建模cpsk调制方框图如图4-2所示。cpsk调制器模型主要由计数器和二选一开关等组成。计数器对外部时钟信号进行分频与计数,并输出两路相位相反的数字载波信号;二选一开关的功能是:在基带信号的控制下,对两路载波信号进行选通,输出的信号即为cpsk信号。图中没有包含模拟电路部分,输出信号为数字信号。图4-2 cpsk调制方框图首先将频率为fc的时钟信号clk分频产生两路相位相反频率为fc/2的载波信号,在以q =4循环计数时,从图4-3所示的流程图可以知道f1与f2的相位一直是相反的,频率必然相同 。首先将频率为fc的时钟信号clk分频产生两路相位相反频率为fc/2的载波信号,在以q =4循环计数时,从图4-3所示的流程图可以知道f1与f2的相位一直是相反的,频率必然相同 。图4-3 cpsk调制分频部分程序设计流程图如下图4-4 所示为二选一电路的vhdl程序设计流程图,用一个简单的二重判断语句便可完成这一功能。图4-4 二选一电路的vhdl程序设计流程图在程序中涉及到一些频率计算,时钟clk的频率为fc,则其周期为tc=1/fc,经分频之后f1和f2的频率为fc/2,周期为t=2*tc。在输入的基带信号x应为2*tc的整数倍,这样利于与波形的分析观察。4.2.2 程序及仿真结果分析cpsk调制程序如附录a 所示。cpsk调制vhdl程序仿真图如图4-5、4-6 所示。图4-5 cpsk调制vhdl程序仿真全图图4-6 cpsk调制vhdl程序仿真局部放大图载波信号f1、f2是通过时钟clk分频得到的,所以滞后clk一个周期,调制的输出信号是有载波得来的,所以滞后载波f1、f2一个周期,从图中调制输出信号y可看出对输入基带信号调制的成功。4.3 cpsk解调电路的vhdl建模与程序设计cpsk解调器的建模方框图如图 4-7所示。图中的计数器q输出与发端同步的0相数字载波。判决器的工作原理是:把计数器输出的0相载波与数字cpsk信号中的载波进行逻辑“与”运算,当两比较信号在判决时刻都为“1”时,输出为“1”,否则输出为“0”,以实现解调的目的。图中没有包含模拟电路部分,调制信号为数字信号。图4-7 cpsk解调器的建模方框图图4-8 cpsk解调电路的vhdl程序设计流程图 程序对输入的信号进行抽样判决,以计数器q来规定抽样间隔时间,q以4位循环计数,这里就形成4个周期的clk间隔来抽样判决一次,根据输入已调信号的相位判断出调制前的信号。4.3.2 cpsk解调的vhdl程序及仿真结果分析cpsk解调的vhdl程序如附录b所示,程序成功仿真后的波形图如图4-9 所示。当start为高电平时,进行cpsk解调,计数器开始计数,并在q=0时根据x的电平来进行抽样,并判决输出为y,输出的y滞后输入的x一个clk。图4-9 cpsk解调的vhdl程序仿真波形图4.4 dpsk调制电路的vhdl建模与程序设计4.4.1 dpsk调制电路方框图模型dpsk调制方框图如图4-10 所示。图中计数与图4-7中的计数器相同。异或门与寄存器共同完成绝/相变换功能;cpsk调制器与图12 cpsk调制器相同。图4-10 dpsk调制电路方框图下面程序设计部分就只包含绝对码到相对码的转换,码型转换后再通过cpsk调制就实现了dpsk调制。如图4-11所示为绝对码转换为相对码的vhdl程序设计流程图。这里确定计数器q的循环周期为4,所以绝对码码元长度确定为4倍的clk。要完成, 利用vhdl程序中信号的延时性,用xx=xxx,y=xxx两个公式就能完成绝对码到相对码的转换。图4-11 绝对码转换为相对码的vhdl程序设计流程图4.4.2 绝对码转换为相对码的vhdl程序及仿真结果分析绝对码转换为相对码的vhdl程序如附录c所示。绝对码转换为相对码的vhdl程序仿真成功后的波形图如图4-12 所示,clk为系统时钟,当start为高电平时,进行绝对码到相对码的转换,这时输入的绝对码是按4个clk的周期为码元长度,输入的数字信号一定要注意这点。q为计数器,循环4位,在q=0时,对输入的绝对码x进行运算,得到y。输出y是输入信号x与中间寄存信号xx的异或。同时输出的y滞后于信号x一个clk。图4-12 绝对码转换为相对码的vhdl程序仿真波形4.5 dpsk解调电路的vhdl建模与程序设计4.5.1 dpsk解调电路的设计dpsk解调电路的方框图如图4-13 所示,dpsk解调电路采用cpsk解调电路加一个相对码到绝对码的转换即可实现。cpsk解调电路和4.3节一样,相对码/绝对码变换过程都是以计数器输出信号为时钟的控制下完成的,下面就只设计相对码到绝对码的转换程序即可。图4-13 dpsk解调电路的方框图如下图4-14 所示为相对码到绝对码转换的vhdl程序设计流程图。这里确定计数器q的循环周期为4,所以相绝对码码元长度确定为4倍的clk。利用vhdl程序中信号的延时性,用y=xxx,xx=x两个公式就能完成相对码到绝对码的转换。图4-14 相对码到绝对码转换的vhdl程序设计流程图4.5.2 相对码到绝对码的转换程序及仿真波形分析相对码转换为绝对码的vhdl程序如附录d所示。相对码转换为绝对码的vhdl程序仿真成功后的波形图如图4-15 所示,clk为系统时钟,当start为高电平时,进行相对码到绝对码的转换,这时输入的相对码是按4个clk的周期为码元长度,输入的数字信号一定要注意这点。q为计数器,循环4位,在q=3时,对输入的相对码x进行运算,得到y。输出y是输入信号x与xx(输入信号x延时一个基带码长)的异或。同时输出的y滞后于输入信号x一个基带码长(4个clk)。图4-15 相对码转换为绝对码的vhdl程序仿真波形图注:工程的所有源码都列在附录中,完整的工程文档在电子稿“pl_cpsk”文件夹中5.总结这次的毕业设计让我收获良多,将以前所学的通信原理知识和fpga综合起来运用,并且应用的如此实际。这次我的设计主要是倾向于软件方面的,学会编写和设计vhdl程序,然后在quartus ii软件上进行仿真。这次设计的一些总结如下:(1) 完成了psk通信系统的vhdl程序设计,并在此基础上作了一系列的分析对比; (2) 学习了fpga的基本知识,从编程的角度出发完成了利用fpga器件进行理论设计,并进行了仿真。(3) 进一步加深了对通信模式的学习。设计中存在的问题: (1)程序编译时,存在管脚不出信号,与延时有关。 (2)系统仿真时,设计的clk周期应与器件的时延相适应,否则也不能正确输出。6.参考文献1黄智伟等编著.fpga系统设计与实践.电子工业出版社.2005.(01)2潘松、黄继业.eda技术实用教程.科学出版社.2006(09)3田耕.徐文波.张延伟.无线通信fpga设计.电子工业出版社.2008(02)附录:vhdl代码清单附录a. cpsk调制vhdl程序library ieee;use ieee.std_logic_arith.all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity pl_cpsk isport(clk :in std_logic; -系统时钟 start :in std_logic; -开始调制信号 x :in std_logic; -基带信号 y :out std_logic); -已调制输出信号end pl_cpsk;architecture behav of pl_cpsk issignal q:std_logic_vector(1 downto 0); -2位计数器signal f1,f2:std_logic; -载波信号beginprocess(clk) -此进程主要是产生两重载波信号f1,f2beginif clkevent and clk=1 then if start=0 then q=00; elsif q=01 then f1=1;f2=0;q=q+1; elsif q=11 then f1=0;f2=1;q=00; else f1=0;f2=1;q=q+1; end if;end if;end process;process(clk,x) -此进程完成对基带信号x的调制 beginif clkevent and clk=1 then if q(0)=1 then if x=1 then y=f1; -基带信号x为1时,输出信号y为f1 else y=f2; -基带信号x为0时,输出信号y为f2 end if; end if;end if;end process;end behav;附录b. cpsk解调vhdl程序library ieee;use ieee.std_logic_arith.all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity pl_cpsk2 isport(clk :in std_logic; -系统时钟 start :in std_logic; -同步信号 x :in std_logic; -调制信号 y :out std_logic); -基带信号end pl_cpsk2;architecture behav of pl_cpsk2 issignal q:integer range 0 to 3; beginprocess(clk) -此进程完成对cpsk调制信号的解调beginif clkevent and clk=1 then if start=0 then q=0; elsif q=0 then q=q+1; -在q=0时,根据输入信号x的电平来进行判决 if x=1 then y=1; else y=0; end if; elsif q=3 then q=0; else q=q+1; end if;end if;end process;end behav;附录c. 绝对码相对码转换vhdl程序library ieee;use ieee.std_logic_arith.all;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity pl_dpsk isport(clk :in std_logic; -系统时钟 start :in std_logic; -开始转换信号 x :in std_logic; -绝对码输入信号 y :out std_logic); -
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论