基于DSP的软件锁相环.doc_第1页
基于DSP的软件锁相环.doc_第2页
基于DSP的软件锁相环.doc_第3页
基于DSP的软件锁相环.doc_第4页
基于DSP的软件锁相环.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种基于DSP的软件锁相环模型与实现随着大规模集成电路及高速数字信号处理器的发展,通信领域的信号处理越来越多地在数字域付诸实现。软件锁相技术是随着软件无线电的发展和高速DSP的出现而开展起来的一个研究课题。在软件无线电接收机中采用的锁相技术是基于数字信号处理技术在DSP等通用可编程器件上的实现形式,由于这一类型锁相环的功能主要通过软件编程实现,因此可将其称为软件锁相环(software PLL)1。尽管软件锁相环采用的基本算法思想与模拟锁相环和数字锁相环相比并没有太大变化,然而其实现方式却完全不同。本文将建立软件锁相环的Z 域模型,分析软件锁相环中的延时估计、捕获速度及多速率条件下的软件锁相环模型问题1。 1软件锁相环的基本模型 在模拟锁相环的基础上,利用数字、模拟系统彼此之间的联系,以二阶二型锁相环为例建立软件锁相环的Z 域模型。文献2详细给出了锁相环的基本模型和原理。 如果将锁相环的基本部件采用软件编程的形式实现,就可以得到软件锁相环的基本组成,如图1所示。首先从模拟锁相环的S域模型出发得到软件锁相环的Z 域模型(二阶二型模拟锁相环的S域模型请参阅文献2)。由于双线性变换是联系模拟系统与数字系统的一个重要方法,具有转换简单且表达式清晰明了的特点3,因此本文选择双线性变换法作为模拟锁相环与软件锁相环之间的转换基础。 式(1)是双线性变换法的复频域表达式: 其中:T是联系数字系统与模拟系统的采样时间间隔,1/T表示采样频率。根据该转换关系,对S域模型各部分对应的数字复频域表达式进行转换,可以得到如图2所示的复频域模型。 在实际应用中,二阶线性系统常采用阻尼因子、无阻尼振荡频率n描述。在二阶二型锁相环中,1,2 ,K 与,n之间的对应关系如下: 在式(1)和式(2)的基础上对图2进行等效变换,可以得到软件锁相环的另一个线性相位Z域模型,如图3所示。 在模型中,参数1,2和K与实现电路功能的电阻、电容、压控振荡器密切相关。而实现软件锁相功能的却是乘法器、加法器与寄存器,因此采用模型表征软件锁相环线性相位Z域模型显得更有实际意义。2软件锁相环的数学模型 数字鉴相器的Z域模型如下: 实现数字鉴相器的方法之一就是借助信号的正交分解,图4是该方法的原理框图。其中:LPF表示低通滤波,A是低通滤波器带来的常数增益。因此鉴相器的输出: 经过反Z变换得到数字环路滤波器的时域表达式为: 通过反Z变换得到数控振荡器的时域表达式: 变量uc(nT)数值较小且变化不会太快,因此式(14)成立: 综合式(11)、式 (12)和式(13),得到NCO输出信号的表达式: 如果以数字频率描述数控振荡器,则称其数字中心频率为0T,数字偏置频率为n2uc(nT)T。因此,该数控振荡器的灵敏度与数字灵敏度分别为T。3多速率条件下的软件锁相环在数字化接收机中,经常碰到多速率条件下的抽样率转换问题。所谓多速率系统是指在一个数字系统中存在2个或2个以上的抽样率4。构成软件锁相环鉴相器的混频器通常工作在系统采样频率上。在满足奈奎斯特采样定律的前提下,数字化接收机的系统采样率一般高达数10 M。而数字鉴相器组成部分的反正切表,由于混频之后的数据经过多倍抽取,工作频率已经下降到与信号波特率相近的水平。数据抽取同时也降低DSP的运算量,由DSP完成的环路滤波的处理速度近似等于信号波特率。此外由于软件锁相环中的数控振荡器需要给混频器提供同样速率的正交载波,其工作速率与混频器相等,需要进行内插来调整速率。为了合理利用DSP有限的计算资源,总是在满足同步需要的前提下尽可能地降低环路滤波的工作速率,也就是通常所说的环路频率。环路频率是软件锁相环的一个重要参数,他同时决定着锁相环算法的计算量与捕获速度。环路频率过高将带来额外的计算负担,环路频率太低又不能满足捕获速度的需要,在应用中通常取系统波特率作为环路频率的大小。该扩展模型对应的线性相位Z域模型如图5所示。 其中:D表示数据抽取,I表示数据内插。数据在抽取之前先要进行抗混叠滤波,可用于抗混叠滤波的FIR滤波器有CIC滤波器、半带滤波器等。 实际情形中,由于零阶保持内插几乎不需要额外的运算量,因此经常被采用。实际上环路频率fL总是能够跟上环路滤波器输出信号的变化速率。换言之,对环路滤波器输出信号按照fL的速率进行采样保留了他的全部信息,因此零阶保持内插对系统性能不会有太大影响4。结合上述软件锁相环的基本原理,下面借助Matlab仿真观察软件锁相环的系统响应。本文以频率阶跃信号作为输入,观察软件锁相环的系统响应从而进一步验证本文建立的一系列软件锁相环模型。 设定系统采样频率为1 MHz,仿真时间0.1 s,信号中心频率125 kHz,起始相位-4,输入频率阶跃100 Hz,起始点为0.02 s,抽取因子为8。一般情况下,都希望环路工作在欠阻尼状态,取阻尼因子=0.707,n由2F(快捕带宽)决定2,分别取2*40,2*50,2*100。仿真出相位误差响应曲线、NCO偏置频率曲线和频率阶跃信号的相位曲线,如图6所示。 从图6可以看出,软件锁相环在0,0.02区间内相位误差为0,处于锁定状态。在t=0.02 s时刻,输入信号频率产生了大小为100 Hz的阶跃,导致软件锁相环进入捕获过程。由于软件锁相环的校正作用,当n=2*50时,系统在t=0.05 s时刻重又进入同步状态,相位误差依旧为0。由相位误差响应曲线可以看到,锁相环可以无相差的跟踪频率阶跃信号,同时表明虽然锁相环鉴相误差为0,但是由于环路滤波器的理想积分作用其输出的控制信号并不为0,由该控制信号产生的100 Hz偏置频率保证了NCO输出与输入信号的同步。当快捕带宽发生变化导致改变时,锁相环的捕获速度也发生了变化,快捕带宽越宽,捕获速度越快。4软件锁相环的DSP实现在宽带数字化接收机的实现中,数字下变频采用通用可编程下变频器HSP50214B。在实现载波同步、码元同步软件锁相环的整个反馈环路中,数控振荡器、鉴相器由HSP50214B完成,环路滤波在TMS320C6X中完成。DSP实现框图如图7所示。环路延时是一个应该重视的因素。带来软件锁相环环路延时主要有以下2种原因: (1)环路内FIR滤波器带来的延时; (2)数据等待处理带来的额外延时。 在数字化接收机中,采用粗同步与细同步两级。粗同步环路时延大,反应速度慢;细同步环路时延小,反应速度快,粗同步保证有效信号落在滤波器的通带之内,细同步可以在粗同步基础上获得较大捕获带和同步带。此外还采用抛弃若干采样点,消除不必要的环路延时。 可以看出,软件锁相环具有处理灵活的优点,他摆脱了复杂的硬件电路设计,解决了许多模拟环遇到的难题。目前,由于DSP功能越来越强大,工作速度越来越高,也为软件锁相技术的发展创造了必要的条件。基于定点DSP的软件锁相环的设计和实现 论文报告 摘要:软件锁相环是软件接收机中执行载波恢复功能的关键部分。提出了一种48位定点扩展精度的算法,可以有效地实现软件锁相环。与浮点算法比较,能极大地降低DSP的运算量,降低功耗,同时保证动态范围运算精度。低轨道卫星 软件接收机 软件锁相环 定点扩展精度算法关键词:低轨小卫星通信是近年来卫星通信应用中一个方兴未艾的重要领域,创新一号小卫星是我国研制的具有完全自主知识产权的存储与转发通信小卫星,cascom手持终端是专门为这颗小卫星研制的低功耗地面手持通信终端,支持调制数据速率达768kbps的BPSK窄带信道。基于TI公司的低功耗16位定点数字信号处理器TMS320VC5510(最高运算能力为200MIPS),完全用软件实现低中频数字接收机,其中包括执行载波恢复功能的软件锁相环SPLL(Soft-ware Phase-Locked Loops)。在用浮点算法实现软件锁相环时,由于TMS320VC5510是一个定点DSP处理器;没有浮点处理单元,只能用编译器产生模拟浮点运算的指令,运算量需要672MIPS,效率很低,因此需要一种能在TMS320VC5510上执行的定点算法,有效地降低运算量。本文提出了一种48位定点扩展精度算法实现SPLL,提高了效率,减少了运算量,同时保证了环路计算的精度和动态范围。1 软件锁相环11 软件锁相环的结构图1表示软件数字接收机中的解调器。它包括由改进的costas环路构成的载波跟踪环路。采样后的中频信号经过数字混频,滤掉高频分量,通过改进的costas环路产生控制信号,控制数控振荡器(NCO)得到新的本振参考信号。其中的相位检测器和环路滤波器结构如图2所示。12 软件锁相环的设计由图2可见,SPLL的计算由计算相位误差和更新环路中间变量、输出控制信号两部分组成。算法描述可用伪码白表示:/中断发生/读取基带数据I_baseband=I(n)Q_baseband=Q(n)/计算相相位误差d(n)d(n)=sign(I_baseband)K_norm*Q_baseband/更新环路中间变量s_pll(n)s_pll(n)=C2d(n)+s_pll(n-1)/输出控制信号f(n)f(n)=C1d(n)+s_pll(n)/设置NCO载波频率f(n)f(n)=f(n)+f0*/end注:*K_norm是归一化因子,由I_baseband和Q_baseband和初始值决定:*f0是固定的NCO中心频率算法描述中的中断周期就是环路采样时间间隔。中断发生后,第一步读取基带同相项数据和正交项数据I_baseband=I(n)=Acose(1)Q_baseband=Q(n_=Asine(2)A是基带信号幅度,e是相位误差。第二步计算硬判决的同相数据乘以相位误差。d(n)=sign(I_baseband)e (3)其中硬判决函数如式(4),以及esine.(5)由式(1)和(2)得:由式(3)、(5)和(6)得:即把同相数据硬判决后结果乘以正交项数据后再乘以归一化因子K_norm。K_norm初始值由I_baseband和Q_baseband的初始值决定,由于定时恢复环路和AGC(自动增益控制)环路的作用,K_norm在解调过程中近似保持恒定。第三步更新环路中间变量s_pll(n),s_pll(n)=C2d(n)+s_pll(n) (9)第五步设置NCO载波频率f(n),f(n)=f(n)+f0 (10)fo是固定的NCO中心频率。至此,一次完整的SPLL计算完成。在第三步和第四步计算中,环路滤波器系数Cl,C2可以通过环路采样时间间隔T(或者环路更新时间间隔)、环路自由频率n及环路阻尼系数确定,如下两式:C1=(1/K0Kd)(8nT)(4+4nT+(nT) 2(11)C2=1/K0Kd(4(nT)2/(4+4nT+(nT )2(12)Kd为相位检测器的增益,由于在实现软件锁相环时,基带信号的同相和正交分量都经过归一化处理,故Kd=1;K0为数控振荡器的增益,K0=2T。T为调制数据速率的倒数(176800),一般取0707。在启动载波恢复之前有一个频率捕获过程,通过1024点的FFT,可保证接收的中频信号与本振信号之间的频率差f0最大.2 48位定点扩展精度算法图3描述的算法在TMS320VC5510上用C语言直接利用浮点运算实现时,只能通过C编译器产生模拟浮点运算的定点指令。这种方法效率很低,每次环路计算需花费875个指令周期。在调制数据速率为768kbps的数字接收机中,需要672MIPS的运算量。为了降低环路计算的运算量,同时保持浮点运算具有动态范围大、精度高的优点,笔者提出了一种48位定点扩展精度计算的方法。参加运算的每个操作数由三个16位定点数W2、W1、W0级联表示,其中高16位为二进制补码的整数部分,低32位为二进制补码的小数部分,符号位在最高位,又可称为Q1532格式,如图3所示。一个Q1532 数的表示范围是(-32768,32768),小数分辨率是1/232(23283e-10),远远超过16位定点表示的精度,即3e-5(1/215-1)。以下用加(ADD_ 48)、减(SUB_48)、乘(MULT_48)三种基本运算来说明定点扩展精度算法。操作数X由X2、X1、X0构成,操作数Y由Y2、Y1、Y0构成,结果W由W2、W1、W0构成。执行48位加法运算时,W2W1W0=X2X1X0十Y2Y1Y0,首先把小数部分X1X0和Y1Y0相加,结果保存到W1W0中,产生的进位位CARRY与X2、Y2相加,结果保存到W2。执行48位减法运算时,W2W1W0=X2X1X0Y2Y1Y0,首先X1X0减去Y1Y0,结果保存到W1W0,产生借位位BORROW,再由X2减去Y2和借位位BORROW,结果保存到W2。两个Q1532数相乘时,乘积是一个Q3064数,出于前面实现SPLL时对动态范围和计算精度的要求,该Q3064数可以双向截位为Q1532的48位定点数。具体做法是保留符号位和整数部分的低15位以及小数部分的高32位。48位定点数的乘法由图4所示。除了以上加、减、乘三种基本运算外,48位窄点扩展精度算法还包括取负(NEC-48)、数据拷贝(MOVE_48)两种操作。取负操作即将X1X0取负,结果保存到W1W0,产生借位位BORROW,再用0减去X2和借位位BORROW,结果保存到w2;数据拷贝,即把X1X0拷贝到W1W0,X2拷贝到W2。在TMS320VC5510可编程DSP的基础上,利用48位定点扩展精度算法实现SPLL。在实现过程中,采取了模块化的思路。首先,把SPLL整个环路计算封装成一个可调用的C语言函数。函数参数包括C1、C2、K_norm、基带信号的I及Q分量、环路中间变量、调整频率。DSP的中断例程(ISR)可以直接调用环路计算函数,而且通过输入不同的Cl、C2,适用于不同的载波恢复环路中。另外,在函数内部用汇编语言进行编程,以充分利用DSP的计算能力,把48位定点扩展精度算法的五个基本操作封装成用汇编指令写的宏(macro),对照计算流程,调用这些宏,完成SPLL的核心计算部分。经统计,每次环路计算需132个指令周期,总的运算量101MIPS,是浮点算法运算量(672MIPS)的14。用48位扩展精度算法实现软件接收机中的SPLL,解决了浮点算法运算量大的问题,同时还具备浮点算法动态范围大、精度高的优点,已经成功应用于创新一号小卫星地面手持低功耗通信终端中。另外,本文提出的SPLL实现算法,通过修改环路滤波器系数,也可以应用在其他软件接收机中,具有很好的扩展性数字下变频器HSP50214B在中频数字接收机中的应用软件无线电技术在侦察接收机中的应用越来越广泛,新型雷达和通信侦察装备的数字接收机大多由软件无线电技术实现。软件无线电的目标是将数字化技术应用于接近天线的器件上,从而在其输出端直接数字化射频信号,提高系统的灵活性。超高速AD采样器件为实现完全数字化的无线电技术提供了可能,但同时对DSP(数字信号处理器)的处理速度提出过高的要求。因此,将射频信号变频到中频再进行采样,数字信号经专用数字下变频器DDC(Digital Down Converter)完成信号下变频和抽样处理后再送给DSP处理,则可大大减轻DSP的信号处理负担。这里介绍专用数字下变频器HSP50214B在中频数字接收机中的应用。2 数字下变频器HSP50214B的内部结构HSP50214B是Intersil公司生产的可编程数字下变频器件。该器件可将数字信号的载波频率进一步降低,甚至降到基带(即载波频率为0 Hz);还可抽取输入的数字信号,在允许限度内可降低数据量,使信号能够被DSP实时有效的处理,功能强大。其输出信号直接送至DSP进行后续处理,包括解调、解码和协议控制等。图1为HSP50214B数字下变频器的结构框图。HSP50214B数字下变频器的主要功能单元:(1)输入单元其电平检测单元选取一定长度的数据,比较并累积该段数据的绝对值与预设门限电平的误差,该误差累积量可由外部接口读出,进行外部自动增益控制。(2)载波NCO单元该单元输出具有一定频率和初始相位的正、余弦两路信号,实现对输入信号的正交混频。产生IO通道数据。(3)滤波抽取单元级联积分梳状(CIC)滤波抽取组、半带(HB)滤波抽取组、255阶FIR滤波器组成抽取低通滤波器,实现低通滤波和数据抽取;重采样多相滤波器进行分数倍采样的转换,使整个抽取系统的输出速率能满足特殊场合的要求。(4)增益控制单元AGC为内部增益控制,检测DDC幅度输出和预设门限之间的误差,从而调整FIR滤波器的输出增益,以提高小信号的增益并减少多级抽取造成的幅度衰减。(5)坐标变换单元直坐标到极坐标转换器和数字鉴频器共同完成对各类幅度、频率和相位调制信号的解调。(6)输出单元有直接串行输出、直接并行输出和先入先出(FIFO)3种输出方式,可提供同相分量、正交分量、瞬时幅度、瞬时相位和瞬时频率等5种输出数据类型,可根据调制方式和DSP的接口方式选择合适的输出方式。(7)控制接口单元通过接口数据总线C7:0、地址总线A2:0和读,写信号WRRD实现控制字及相应参数的写入和内部寄存器内容及状态信息的读出。3 HSP50214B电路设计及接口配置在侦察接收机中实现数字中频滤波,数字下变频器是关键部分,嵌入式处理器可配置中频数字接收机中的数字下变频器并接收数据。接收机系统首先预处理中频信号,然后经A/D采样器进行中频带通采样,采样信号通过HSP50214B实现数字下变频,将中频信号搬移到基带,最后送给DSP处理器进行解调、解扩。图2为数字下变频器HSP50214B的主要接口电路。经前端预处理后的模拟中频信号(IF信号)送至AD采样器进行转换采样,采用ANALOG公司的AD9245AD采样器,其输出是14位,最高采样速率可达80 MHz,输入范围大,功耗低,性价比高。由于HSP50214B的输入为14位,所以将AD9245的14位输出接到HSP50214B的14位输入即可。HSP50214B的CLKIN引脚与AD9245的时钟相连,每个CLKIN时钟到达就对其输入数据采样1次。CLKIN的时钟信号可达65 MHz,PROCLK时钟是混频后的处理时钟最高不能超过CLKIN时钟。采用CPLD电路控制数据的读出、写入、寄存器选择等信号。8位控制接口数据总线C7:0接TMS320VC5402型DSP的D端口,3位寄存器地址线A2:0接CPLD的P12P10。 CPLD是Ahera公司MAX7000系列中的EPM7128器件,可将IO设置在33 V或5 V电源下工作,从而实现电平转换,同时满足5 V器件HSP50214B和33 V器件TMS320VC5402的电压要求。设置HSP50214B为并行直接输出模式,输出I、Q两路正交分量,16位并口AOUT15:0输出同相分量,BOUT15:0输出正交分量。 DATARDY丙引脚通过CPLD与TMS320VC5402的中断引脚INTO相连,当AOUT端口产生新的数据时,DATARDY产生的负脉冲触发 DSP产生中断信号,由其中断服务程序接收并处理数据。DSP响应数字下变频器产生的中断时,分时并行接收数据,依次在下变频器的AOUT和BOUT两个输出端接收同相与正交分量。这两个端口分别被映射为IO空间的两个地址,当DSP对这两个地址读操作,通过CPLD进行译码,分别使能AOUT和 BOUT,数据即可顺利被DSP读取,从而进行各种后续的基带处理。4 HSP50214B控制字的设置HSP50214B共有256个32位的控制字寄存器,其偏移地址是000H0FFH,控制字决定各功能模块的参数设置,如载波中心频率、滤波器阶数、 255阶FIR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论