扩频通信因其很好的保密性、隐蔽性、抗干扰性以及抗多径效应等优势得到了快速发展和广泛应用。因此,许多公司推出了各种型号的扩频集成电路,典型的有STEL-2000A,该芯片因外围电路简单而得到了广泛应用。
然而,由于该芯片是基于专用集成电路(ASIC)技术,其内部电路和大部分功能已经固化,对不同的场合缺乏灵活性,对以后系统升级也造成很大困难。而现场可编程门阵列(FPGA)内部资源丰富,功能强大,并且可重复编程,现场可修改设计,加之其相应的EDA软件功能完善,仿真能力好,有丰富的IP核资源,在成本和灵活性等方面都有很大优势,使得利用FPGA进行复杂数字系统的设计已成为主流。
近几年来国内外有许多学者利用FPGA对扩频通信系统中的某一个模块进行设计,如:数控振荡器、PN码发生器、匹配滤波器。也有学者尝试对整个系统进行设计,但这些努力大多仅限于软件上的功能仿真,并且对一些关键模块缺乏清晰的描述。
本文对扩频芯片关键模块的实现方法进行了阐述,并推导出详细参数,基于ISE 10.1实现了整个系统,最后下载到FPGA芯片中调试成功。
1 STEL-2000A系统的整体框架
1.1 发射子系统
在发射子系统中,如图1所示,输入的串行二进制数据序列首先进行串并转换,分成两路(I路和Q路)速率减半的序列,由于采用QPSK调制方式,为了避免相位模糊问题,在串并转换后进行差分编码,然后将差分编码器的输出序列与PN码生成器输出的伪随机序列进行异或运算,完成信号的频谱扩展,再将扩频输出的两路数据分别与数控振荡器(NumericallyContmlkd Oscillator,NCO)的两路正交载波输出各自相乘,最后将相乘后的结果相加,这样就实现了DQPSK调制,输出的是数字化的已调信号。
1.2 接收子系统
接收系统要完成数字中频信号到基带信号的转换、信号的捕获、同步、解扩、差分解调以及并串转换等功能,如图2所示。进入接收系统的是经正交采样(Quadraturc Samping)后的数字中频信号,经下变频器生成基带信号,再将其输出送入匹配滤波器。在匹配滤波器中,主要实现信号的同步与解扩。解扩后的数据进行差分解调,差分解调过程中的中间结果送入自动频率控制(AutomaTIc Frequency Control,AF-C)模块以生成校正信号来自动调整NCO的输出频率,最后将解调输出数据经并串转换便得到原始数据序列。
2 关键模块分析与实现
2.1 NCO模块
NCO采用Xilinx公司提供的直接数字式频率合成器(Direct Digital Synthesizer,DDS)IP核,DDS的工作原理如图3所示,在参考时钟的驱动下,N位加法器对频率控制字K和N位累加寄存器中的值进行相加,相加后的结果存入累加寄存器中,以累加寄存器中的值为地址将波形存储器里相应地址的数据读出,即输出正弦或余弦信号的幅度值。
累加寄存器长度为N,则波形存储器2N用个样点来表示正弦波的一个周期,地址每次累加K相当于每隔K个点输出一次,输出一个完整的正弦波需要时间,则DDS的输出频率fout满足关系式
。当K取1时输出频率为最大频率分辨率。参数设置主时钟为100 MHz,△f=1.0 Hz,可得N=27,由于要求的输出频率为2 MHz,可得:K=2 684 355。据此对DDS IP核进行元件例化程序如下:
2.2 下变频模块
下变频模块主要是将输入的数字中频信号进行数字式下变频,从而产生基带信号,即待解扩的信号。设输入信号是经正交采样后的数字中频信号:
式中,I_PN和Q_PN为扩频后的信号,ω为本地NCO产生的正弦和余弦信号的角频率。
让输入信号与本地NCO产生的正弦与余弦信号进行相乘,即:
这里需要4个乘法器和2个加法器,由于对乘法器的速度要求较高,本系统调用了Virtex-II Pro开发板上FPGA芯片XC2VP30的硬核乘法器。将Iout和Qout进行低通滤波就得到基带信号。
对于低通滤波器的实现,STEL-2000A使用了积分清洗滤波器(Integrate and Dump Filter,I&D)。本系统采用比较成熟且实现方便的级联积分梳状(CIC)滤波器来实现低通滤波的功能。该滤波器由加法器、反相器和延时器构成,不需要乘法器,这比一般的FIR和IIR节省很多FPGA资源。实现框图如图4所示,fs为采样频率。
系统中CIC滤波器参数的设置为:M=1,N=4,R=20。为了保证运算不发生溢出,可以根据公式:,计算出内部需要的最大信号线宽度。在本系统中输入信号线宽度B=3,则取BMAX=20。为减少后端匹配滤波器的运算量,取CIC滤波器输出的高三位近似。
CIC滤波器部分设计程序如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)