找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 基于现代DSP技术的QPSK调制器的设计

[复制链接]
admin 发表于 2013-3-20 03:08:09 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
摘要:为了提高DSP系统的开发效率,引入了现代DSP技术,并由此设计了QPSK调制器。依据QPSK调制的基本原理,利用MATLAB/Simulink DSP Builder和Quartusll搭建模型,在模块的形成方式上,采用DSP Builder中的模块代替VHDL编程,在同一平台上实现了系统建模和硬件实现的有机结合,然后利用ALTERA公司提供的Signal Compile进行编译,产生VHDL源程序,同时,采用ALTERA公司的Cyclone系列芯片EP2C35F6 72C6N实现QPSK调制。结果表明,该方法提高了设计的灵活性,通过软件仿真和硬件测试验证了方案的正确性和可行性。
关键词:四相相移键控调制;FPGA;现代DSP技术;QuartusⅡ

     四相相移键控调制(Quaternary Phase Shift Keying,QPSK)是一种线性窄带数字调制技术,它已经在数字调制技术中占有重要的地位,被广泛地应用于卫星通信、移动通信、视频会议系统、蜂窝电话和其它数字通信领域。具有频带利用率高、频谱特性好、抗衰落性能强、较低的比特错误率等优点。
     DSP技术主要是指将DSP的基本理论和算法付诸实现的途径和方法。传统的DSP技术是当前广泛使用的DSP处理器的解决方案,而这种解决方案日益面临着不断增加的巨大挑战,自身的技术瓶颈导致这种解决方案在DSP许多新的应用领域中的道路越走越窄。而现代DSP技术是相对于传统DSP技术而言的,是基于可编程片上系统SOPC(System on a Programmable Chip)技术、EDA技术与FPGA实现方式的DSP技术,是现代电子技术发展的产物,它有效地克服了传统DSP技术中的许多瓶颈,在许多方面显示了突出的优势,如高速与实时性,高可靠性,自主知识产权化,系统的重配置与硬件可重构性,单片DSP系统的可实现性以及开发技术的标准化和高效率。QPSK设计采用MATLAB/Simulink DSP Builder开发出用于QPSK调制的正交信号产生单元,在电路模块的形成方式上用DSP Builder的模块调用代替繁琐的VHDL程序,从而方便的得到了所需的结果。系统的实现以FPGA为物理载体,与传统的基于硬件描述语言的设计相比,这种流程更快捷方便灵活。

1 QPSK调制原理
     所谓的QPSK调制就是利用载波的四种不同相位来表征数字信息,每一种载波相位代表两个二进制代码元信息。由于每一个载波相位代表两个二进制码元信息,所以每四个二进制码元又被称为双比特码元。
     QPSK信号的表示式为
    2012110705391786132924.jpg
      将式(1)写成
      2012110705391790820925.jpg
     I(t),Q(t)为+1或-1。则式(3)即为QPSK的数学表达式。
     QPSK信号的调制可分为相位选择法和调相法,本文采用调相法进行设计,其调制框图如下图1所示。
    2012110705391795507926.jpg
   
     图1中,串/并变换器将输入的二进制序列依次分为两个并行的双极性码序列。设二进制数分别为a和b。双极性的a和b脉冲通过两个平衡调制器分别对同相载波和正交载波进行二相调制,两路输出叠加后就可以得到QPSK信号。

2 基于DSP Buildter的QPSK设计
     DSP Builder可完成图形化的系统建模、设计、仿真、把设计软件下载到FPGA开发板上。它是一个系统级的开发工具,架构在多个软件之上,并把系统级和RTL级两个设计领域的设计工具连接起来,最大程度的发挥了两种工具的优势。DSP Builder依赖MathWorks公司的数学分析工具Matlab/Simulink,以Simulink的Blockset出现,可以在Simulink中进行图形化设计和仿真,同时通过SignalCompiler可以把Matlab /Simulink的设计文件(.mdl)转成相应的硬件描述语言VHDL设计文件(.vhd),以及用于控制综合与编译的TCL脚本。而对后者的处理可以由FPGA/CPLD开发工具QuartusⅡ来完成。
     研究采用QuartusII6.1、DSP Builder6.1和Madab Rb2006作为FPGA的设计及测试平台。因此,在设计的过程中可以很方便的调用DSP-Bbuilder和Simulink库中的图形模块来建立硬件模型,输入信号也可方便的调用Simulink模块。依据QPSK的基本原理,可以快速的建立QPSK模型。要完成QPSK的建模,首先打开MATLAB,在命令窗口输入“Simulink”进入图形化仿真建模环境,新建一个仿真模型。依照图1的原理图设计,建立模型如图2所示。
    2012110705391797069927.jpg
   
     图2中,由频率字、延时器、加法器和两个LUT组成正交信号发生器,产生两个正交的载波信号。随机信号发生模块产生随机信号,经过反相器形成数字基带信号,经过串并转换模块变为并行信号,再经过多路选择器模块输出+1和-1,然后和正交信号发生器产生的正交载波信号相乘,最后在加法器中进行相加实现QPSK调制。

3 系统仿真与硬件测试
3.1 系统仿真
     完成整个设计后,设置仿真时间,开始仿真。设置Simulik的仿真停止时间为2 000,仿真步进设为自动。仿真结果如图3,图中前两栏为正交波信号,最后一栏为QPSK已调信号。
    2012110705391800194928.jpg
   
3.2 硬件测试
     在Simulink中完成仿真验证后,需要把设计转到硬件上去实现。这是整个DSP Builder设计流程中最为关键的一步,可获得对特定FIGA芯片的VHDL代码。双击QPSK模型中的SignalCompiler,点击分析按钮,检查模型无错误后,打开SignalCompiler窗口,在图中设置好相应项后,依次点击1、2、3 3个按钮,逐项执行VHDL文件转换、综合、适配,即可将.mdl文件转换为.vhd文件。同时,在工作目录生成的文件中有tb_qpsk.tcl和tb_qpsk.v文件。tb_qpsk.v文件是在QuartusII中要用到的工程文件,tb_qpsk.tcl文件是要在Modesim进行RTL级仿真用到的测试代码。仿真完成后,在QuartusII中指定器件管脚、进行编译、下载。最后进行硬件的下载,连接好FPGA开发板即可。本文采用的硬件是Cyclone系列芯片EP2C35F672C6N。图4是在QuartusII中QPSK的已调波形,与仿真波形基本一致。由图可以看出,有4个相位跳变点,正
确地反映了QPSK调制的特点。
    2012110705391803319929.jpg
   

4 结论
     本文利用了现代DSP技术的功能,在Simulink的环境下实现了QPSK的建模,给出了具体模型,从而避免了VHDL程序的编制,缩短了周期,提高了效率。采用该法,极大地提高了电子系统设计的灵活性和通用性。仿真结果和硬件实现都验证了该方案的正确性。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-22 11:53 , Processed in 0.058442 second(s), 11 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表