基于FPGA的扩频芯片STEL-2000A功能实现

基于FPGA的扩频芯片STEL-2000A功能实现,第1张

扩频通信因其很好的保密性、隐蔽性、抗干扰性以及抗多径效应等优势得到了快速发展和广泛应用。因此,许多公司推出了各种型号的扩频集成电路,典型的有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调制,输出的是数字化的已调信号。
基于FPGA的扩频芯片STEL-2000A功能实现,第2张

 

  1.2 接收子系统

  接收系统要完成数字中频信号到基带信号的转换、信号的捕获、同步、解扩、差分解调以及并串转换等功能,如图2所示。进入接收系统的是经正交采样(Quadraturc Samping)后的数字中频信号,经下变频器生成基带信号,再将其输出送入匹配滤波器。在匹配滤波器中,主要实现信号的同步与解扩。解扩后的数据进行差分解调,差分解调过程中的中间结果送入自动频率控制(AutomaTIc Frequency Control,AF-C)模块以生成校正信号来自动调整NCO的输出频率,最后将解调输出数据经并串转换便得到原始数据序列。
基于FPGA的扩频芯片STEL-2000A功能实现,第3张

 

  2 关键模块分析与实现

  2.1 NCO模块

  NCO采用Xilinx公司提供的直接数字式频率合成器(Direct Digital Synthesizer,DDS)IP核,DDS的工作原理如图3所示,在参考时钟的驱动下,N位加法器对频率控制字K和N位累加寄存器中的值进行相加,相加后的结果存入累加寄存器中,以累加寄存器中的值为地址将波形存储器里相应地址的数据读出,即输出正弦或余弦信号的幅度值。
基于FPGA的扩频芯片STEL-2000A功能实现,第4张

 

  累加寄存器长度为N,则波形存储器2N用个样点来表示正弦波的一个周期,地址每次累加K相当于每隔K个点输出一次,输出一个完整的正弦波需要时间基于FPGA的扩频芯片STEL-2000A功能实现,第5张,则DDS的输出频率fout满足关系式基于FPGA的扩频芯片STEL-2000A功能实现,第6张

。当K取1时输出频率为最大频率分辨率基于FPGA的扩频芯片STEL-2000A功能实现,第7张。参数设置主时钟为100 MHz,△f=1.0 Hz,可得N=27,由于要求的输出频率为2 MHz,可得:K=2 684 355。据此对DDS IP核进行元件例化程序如下:
基于FPGA的扩频芯片STEL-2000A功能实现,第8张

 

 

  2.2 下变频模块

  下变频模块主要是将输入的数字中频信号进行数字式下变频,从而产生基带信号,即待解扩的信号。设输入信号是经正交采样后的数字中频信号:
基于FPGA的扩频芯片STEL-2000A功能实现,第9张

 

  式中,I_PN和Q_PN为扩频后的信号,ω为本地NCO产生的正弦和余弦信号的角频率。

  让输入信号与本地NCO产生的正弦与余弦信号进行相乘,即:
基于FPGA的扩频芯片STEL-2000A功能实现,第10张

 

  这里需要4个乘法器和2个加法器,由于对乘法器的速度要求较高,本系统调用了Virtex-II Pro开发板上FPGA芯片XC2VP30的硬核乘法器。将Iout和Qout进行低通滤波就得到基带信号。

  对于低通滤波器的实现,STEL-2000A使用了积分清洗滤波器(Integrate and Dump Filter,I&D)。本系统采用比较成熟且实现方便的级联积分梳状(CIC)滤波器来实现低通滤波的功能。该滤波器由加法器、反相器和延时器构成,不需要乘法器,这比一般的FIR和IIR节省很多FPGA资源。实现框图如图4所示,fs为采样频率。
基于FPGA的扩频芯片STEL-2000A功能实现,第11张

 

  系统中CIC滤波器参数的设置为:M=1,N=4,R=20。为了保证运算不发生溢出,可以根据公式:基于FPGA的扩频芯片STEL-2000A功能实现,第12张,计算出内部需要的最大信号线宽度。在本系统中输入信号线宽度B=3,则取BMAX=20。为减少后端匹配滤波器的运算量,取CIC滤波器输出的高三位近似。

CIC滤波器部分设计程序如下:
基于FPGA的扩频芯片STEL-2000A功能实现,第13张
基于FPGA的扩频芯片STEL-2000A功能实现,第14张
 

 

 

  

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2463889.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-04
下一篇 2022-08-04

发表评论

登录后才能评论

评论列表(0条)

保存