一种数字OQPSK调制器的设计和实现

时间:2011-07-13

 

  调制识别技术在军事、民用领域都有十分广泛的应用价值,近年来一直受到人们的关注。随着更多调制方式的使用,调制识别技术也在不断向前发展,并应用于各个领域。

  数字调制信号又称为键控信号,调制过程可用键控的方法由基带信号对载频信号的振幅、频率及相位进行调制。这种调制的基本方法有3种:振幅键控(ASK)、频移键控(FSK)、相移键控(PSK)。根据所处理的基带信号的进制不同,它们可分为二进制和多进制调制(M进制)。多进制数字调制与二进制相比,其频谱利用率更高。其中QPSK(即4PSK)是MPSK(多进制相移键控)中应用较广泛的一种调制方式。交错正交相移键控(OQPSK)是继QPSK之后发展起来的一种恒包络数字调制技术,是QPSK的一种改进形式,也称为偏移四相相移键控(offset-QPSK)技术。本文提出了一种基于DSP处理器的数字OQPSK调制器实现方案,让OQPSK调制器的大部分功能由DSP处理器执行相应的算法实现,此方案省去了大量的硬件电路,具有体积小、功耗低、稳定可靠等优点。

  1 OQPSK调制原理简介

  OQPSK也称为偏移四相相移键控(offset-QPSK),是QPSK的改进型。它与QPSK有同样的相位关系,也是把输入码流分成两路,然后进行正交调制。不同点在于它将同相和正交两支路的码流在时间上错开了半个码元周期。由于两支路码元半周期的偏移,每次只有一路可能发生极性翻转,不会发生两支路码元极性同时翻转的现象。因此,OQPSK信号相位只能跳变0°、±90°,不会出现180°的相位跳变。

  QPSK调制由于同相支路I和正交支路Q的两个比特ab可能同时发生变化,因而存在180°的相位突变,这在频带受限的系统中会引起信号包络的很大起伏,造成邻道干扰。OQPSK调制对此作了改进,它将Q支路的符号在时间上错开Tb,这样上下两个支路的相邻码元不可能同时变化,使得相邻码元相位差缩小至90°,从而减小了信号包络的起伏。OQPSK调制的原理如图1所示。

  

 OQPSK调制原理 www.elecfans.com

 

  设输入的数据为{Uk},则OQPSK已调波可以表示成:

  

 

  式中g(t)为基带脉冲波形,为消除码间串扰且误码率,g(t)的波形应要求是平方根升余弦函数。为了简单起见,本文中设g(t)为矩形脉冲波形。

  2 OQPSK调制器的硬件选择

  OQPSK调制器的硬件开发平台采用的是合众达的SEED-DEC5416嵌入式DSP开发板,其系统结构原理如图2所示。处理器是16bit定点DSP芯片TMS320VC5416,OQPSK信号的16位各样点数据送往转换只有14位的D/A转换控制器TLC32044,该控制器只对16位中的高14位数据进行D/A转换,转换后的波形送示波器显示。

  

 

  3 OQPSK调制的软件设计

  主程序中首先对TLC32044芯片初始化(过程请查阅相应的PDF资料),然后调用执行OQPSK调制子程序。下面介绍本文设计的在DSP处理器上实现OQPSK调制的方法。

  3.1 基于DSP的OQPSK调制算法

  DSP(digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是值得称道的两大特色。

  设信息流为…bkakbk-1ak-1,并假定已经保存在DSP的数据存储空间中(实际应用中可以使用单片机通过HPI接口向DSP写入要发送的信息流),其中bkakbk-1ak-1可以看成是一个字(16位)的4位。将输入的信息流串并转换成双比特码元,可以对信息码字每次右移动2位实现。Q支路延迟和I支路的对应关系可以采用测试ak、bk-1和bk这三位码元来完成,若测试位为O,则对正弦或余弦值取负以完成单/双极性变换的功能。因此,可以画出基于DSP的OQPSK调制算法流程,如图3所示。图3中已经假设I支路一个码元包含2个周期的余弦波,一个周期的余弦波采样32个点,变量Count用于控制信息流的长度,OQPSK_Buf缓冲区用于保存调制完成的采样点数据。

  

 

  3.2 正弦和余弦数据的获取

  上述算法中需要正弦或余弦各点的采样值,幅度为1的正弦各点采样值大多都是小数,而16位定点DSP芯片的操作数是整数,为此要设定小数点在16位二进制数中的位置,考虑到调制后波形的值是

  

 

  因此对正弦或余弦的数值采用Q14表示法才能满足调制后数据的范围。显然,在汇编程序中按“.word x”形式直接输入正弦和余弦的各点采样值(Q14)比较繁琐,可以用下面的一段C语言程序生成正弦采样点数据文件(程序中已将正弦载波的频率归一化),然后在TC2.0软件的当前路径下将生成的包含文件sindata.inc移动到由软件cos2.O建立的工程文件夹内,用汇编伪指令.include将该文件包含进来即可省去繁琐的数据输入。用类似的程序也可生成需要的余弦数据文件。

  

 

  4 实验结果

  首先,在软件开发环境ccs2.0(c5000)下进行OQPSK调制波形的仿真验证。将汇编语言源程序和命令连接文件一起编译、链接并装载运行,接着执行菜单命令View|Graph|Time Frenquency,打开Graph Property Dialog对话框,在该对话框中输入标题名“OQPSK调制信号波形”、变量0QPSK_Buf的起始地址0x0124(命令连接文件中将.bss段定位到DARAM的org=0060h上),并选择数据的长度为512、数据类型为16-bit signed integer及Qvalue的值为14,然后点击该ok按钮即可将OQPSK_Buf缓冲区的已调信号的采样值生成已调信号波形,如图4所示。为了验证OQPSK调制算法及产生的波形的正确性,图5又给出了相同的16位的数据流,在matlab环境下仿真出的OQPSK已调信号波形。两图的波形完全一致,且波形的幅度都为

  

  

 

  其次,在SEED-DEC5416硬件平台上对输出的调制波形进行验证。在附录中源程序的开始部分增加对TLC32044芯片初始化代码,然后再改用一个死循环重复将OQPSK_Buf缓冲区保存的已调信号数值依次送往该芯片,在示波器上就可观察到与图4近似完全相同的调制波形。另外,调制速率的大小可以通过从OQPSK_Buf缓冲区取数送D/A转换器后执行一段延时程序来控制。

  5 结束语

  在高速数字突发通信中,往往需要快速、高效地对接收信号进行位定,并对载波初始相位信息进行估计。本文所分析的基于DSP的数字OQPSK调制器实现方案,在军事、民用领域都具有十分广泛的应用价值,同时也能应用于各种数字通信领域。

 


  
上一篇:基于红外技术的AGV控制设计与实现
下一篇:一种车牌字符识别方法的设计实现

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料