基于FPGA的宽频谱信号监测系统设计

2014-10-17 17:51李春桥侯立刚张天然
现代电子技术 2014年19期
关键词:软件无线电

李春桥++侯立刚++张天然

摘 要: 以软件无线电数字中频接收理论为依据,利用FPGA实现了宽频域无线信号监测的系统设计。本课题主要完成数字中频接收,并将处理后的频谱、信号及监测信息上传至DSP进行解调,利用Simulink实现系统建模仿真;利用Verilog HDL实现各个数据通路模块,包括NCO模块、FIR滤波器模块和FFT模块等;搭建硬件平台,通过FPGA进行系统设计实现。整个系统监测频率范围从500 kHz~6 GHz,输出信号的信噪比达到50 dB以上,实现了对无线宽频谱信号的监测,达到了设计要求。

关键词: FPGA; 软件无线电; 数字中频接收; 宽频谱信号

中图分类号: TN911.7?34; TP308 文献标识码: A 文章编号: 1004?373X(2014)19?0052?05

Design of wide?spectrum signal monitoring system based on FPGA

LI Chun?qiao, HOU Li?gang, ZHANG Tian?ran

(College of Electronic Information and Control Engineering, Beijing University of Technology, Beijing 100124, China)

Abstract:. The system design for wireless signal monitoring in wide frequency range is realized in this paper based on the SR digital intermediate frequency reception theory. In this subject, the digital intermediate frequency receiver was achieved. The processed spectrum, signal and monitoring information is uploaded to DSP for demodulation. The modeling simulation in system level was realized by means of Simulink. All the data path modules, including NCO module, FIR filter module and FFT module were realized by the aid of Verilog HDL. The hardware platform was created and the prototype verification was performed through FPGA. The system′s monitoring range of frequency is 500 KHz~6GHz and SNR of output signal is more than 50dB. The system realized the monitoring function of wireless spectrum signal and met the design requirements.

Keywords: FPGA; software radio; digital intermediate frequency reception; wide?spectrum signal

0 引 言

随着无线通信的数量和种类不断增加,实时地监测无线信号变得越来越重要。在军事通信领域中,由于工作频段、调制方式、通信协议和编码方式等不同,电台之间的差异限制了不同电台之间的互连互通,各通信系统之间无法实现无缝连接[1],由此提出了软件无线电(Software Radio)的概念,从而使不同频段的无线通信可以使用统一的平台。其主要思想是通过改变软件编程来重构硬件系统,使整个系统完成不同的功能。介绍了一个基于软件无线电技术的宽频域的信号监测系统,采用FPGA实现软件无线电数字中频接收模块,具有高集成度、高可编程度以及高性能等优点,主要用于信号监测分析与探测定位,在军事应用上具有非常重要的作用。

1 系统建模与仿真

1.1 系统原理

整个探测系统由宽带天线组单元、探测主机单元与系统终端三部分组成。宽带天线组单元由宽带全向天线组模块、定向天线模块以及天线电子开关模块组成;探测主机单元由前端射频单元、基带信号处理分析单元、探测器主控模块以及外置数据存储模块四部分组成。前端射频单元的主要功能是将接收到的500 kHz到6 GHz的射频信号转化为70 MHz的中频信号,供后续信号处理单元分析处理;基带信号处理分析单元是系统的核心,主要包括数据采集、信号能量检测和频谱分析;探测器主控模块通过网络接口与基带信号处理单元进行通信。

本系统主要完成基带信号处理单元的功能。射频前端将射频信号转换的中频模拟信号经采样后转换为数字中频信号输入系统,并通过信号监测模块检测可疑信号。系统包含两种工作模式,一种是全频段扫描模式,对空中的无线信号进行长期监测,分析可疑信号的规律和特征参数,并建立背景信号数据库;另一种工作模式是单频点监测模式,对设定的某个频率的信号进行连续跟踪[2]。系统框图如图1所示。

1.2 系统建模与仿真

1.2.1 系统建模

分别对两种工作模式进行建模,系统模型仿真在Simulink平台上完成,用示波器和频谱仪查看波形和频谱。全频段扫描模式和单频点扫描模式分别如图2和图3所示。

1.2.2 系统仿真

在全频段扫描模式时,输入70 MHz的中频信号,模拟信号设置为4 MHz;单频点扫描模式时,输入70 MHz的中频信号,模拟信号设置为40 kHz。采样由零阶保持器来实现,全频段扫描采样率设置为40 MHz,单频点模式采样率为8 MHz。

利用Simulink搭建整体模型后,为了满足整个系统的频率分辨率不大于20 kHz的指标,从系统占用空间考虑,FFT点数、缓冲区设置为8 192,在FFT后取绝对值,利用向量显示器得到信号幅度?频率图,如图4所示,全频段模拟信号为4 MHz,在一系列变换后得到4 MHz信号的频谱,验证了全频段建模的正确性。全频段模式频率分辨率约为1.2 kHz,单频点模式频率分辨率为24 Hz。

2 FPGA系统实现

主要通过硬件来实现整个系统的设计,利用Verilog HDL实现芯片的各模块,通过Modelsim进行功能仿真。

2.1 系统平台搭建

基于课题项目要求,本系统最终选用Altera公司的Cyclone Ⅲ系列芯片EP3C120F484C。A/D转换芯片选择AD9214,分辨率为10 b,吞吐率为80 MSPS,采样速率可达到200 MHz。在输入信号为70.3 MHz时,信噪比SNR达到54 dB,无杂散动态范围SFDR达到64 dBc。DSP芯片选用TMS320DM6446,其集成了一个高性能的DSP核心与一个ARM9的内核,主频可以达到594 MHz,指令数可以达到4 752 MIPS[3]。外围接口包括网口、USB2.0、SPI、串口等。

软件开发环境为Quartus 11.1,包含内嵌逻辑分析仪Signaltap,仿真环境为ModelSim 6.6b。硬件平台如图5所示。联合调试时需要6 GHz信号源、频谱仪和逻辑分析仪等测试工具,最终实现数据转换和处理后上传给上位机进行可视化显示。

2.2 模块设计与仿真

2.2.1 NCO模块设计与仿真

在全频段模式中,需要产生10 MHz的正交本振信号,采样时钟为40 MHz,输出信号为10 MHz。在单频点模式中,采样时钟为8 MHz,本振信号为2 MHz。由于这两种模式的NCO仿真原理相同,故选用全频段模式NCO仿真图进行举例,如图6所示。

2.2.2 混频模块设计与仿真

在混频器中将输入的数字中频信号与本振相乘,得到两路正交的信号,以实现信号的搬移。现今乘法器的设计已经很成熟,由于Booth算法运算速度快,本文选择Booth算法实现乘法器[4]。

本系统中乘数为数字中频信号,即ADC转换的10 b信号,由于存在噪声的影响,选取高8 b作为乘法器的乘数。本振信号为18 b,输出带符号位为27 b,则仿真结果如图7所示。输入乘数为[M1,]被乘数为[M2,]乘法器输出为PRO。

2.2.3 FIR滤波器的设计与仿真

FIR滤波器的运算主要是卷积运算,即累加和乘法运算。在实现FIR滤波器时,串行算法虽然占用资源少,但是速度慢,而并行则需要很多的乘法器。基于速度和占用资源的考虑,分布式算法(Distribute Arithmetic,DA)是一个折中的办法[5]。FIR滤波器仿真图如图8所示,时钟为40 MHz,复位低有效,ast_sink_valid为输入有效信号,输入数据为8 b带符号数,系数为9 b带符号数,输出数据为18 b带符号数。

2.2.4 CIC滤波器的设计与仿真

在单频点扫描时,采样率为8 MHz,信号带宽为200 kHz,输入数据宽度为8 b,抽取因子为10,延迟为2的3级CIC,之后再加两级半带滤波器。在设计滤波器输出及内部寄存器宽度时,设输入数据为Din,级数为N,抽取因子为M。CIC滤波器输入数据位宽为8 b,中间寄存器位宽为20 b,防止数据溢出。程序中用状态机实现抽取,本设计采用了3级滤波器,所以需要三个积分器和三个梳状器,由于输入为8 b,输出为16 b,所以需要进行符号扩展,仿真结果如图9所示。ast_sink_data为输入信号,滤波之后的输出为ast_source_data。

在CIC滤波后要经过两级HB滤波器来实现4倍抽取滤波,在Matlab仿真中优化得到第一级的HB为7阶,第二级HB为9阶。输入信号为17 b,输出信号16 b,实现过程与FIR滤波器类似,半带滤波器的系数偶数点[6]为0,此处不再赘述。

2.2.5 FFT模块的设计与仿真

FFT模块输入数据的实部和虚部都为16 b,指数部分为6 b,旋转因子的位数为16 b,FFT点数为8 192,所以需要13级蝶形运算,每级4 096个蝶形运算。为了防止数据溢出,内部寄存器位宽都设置为32 b,从而减少了溢出检测模块。本文中FFT结构选择流水线结构,运算过程是逐级顺序处理的,每一级都有独立的存储单元和蝶形运算单元,各级计算流水进行,可以看做是一个串行的处理结构[7]。

在仿真FFT时,将Matlab产生的数据以十六进制存储在数据文件中,作为Modelsim仿真的输入数据。Modelsim仿真图如图10所示,sink_real,sink_imag,sink_sop,sink_eop分别为输入信号的实部、虚部、起始标志和截止标志;source_valid,source_real和source_imag分别为输出信号的有效信号、实部和虚部。

2.2.6 缓存模块的设计与仿真

由于DSP读取速度快于芯片写入频谱数据的速度,故芯片内部需要数据缓存模块来保证DSP传输数据不丢失。DSP通过EMIFA端口与芯片进行通信,EMIFA是用来连接Flash、SRAM多种存储设备的外设端口。此缓存模块采用乒乓式RAM来实现,两个缓冲区交替进行读写数据,将数据写入RAM_1,写完数据后发出信号表示写满可读,继而写RAM_2,如此循环,周而复始,通过地址来区分两块RAM[8]。

仿真结果如图11和图12所示。O_AB信号当前时刻下降沿表示写RAM_1,下一时刻上升沿说明RAM_1已写满,开始写入数据到RAM_2。由图11可以看到O_AB高低变换,表示芯片在交替写入数据到两个RAM。本文选择的RAM容量为8 192×16 b,与全频段扫描时每个带宽对应的FFT点数相同,保证数据包的完整性。

2.2.7 SPI接口设计与仿真

系统需要与射频前端进行通信,此系统采用SPI总线下传命令至射频端,用来确定扫描射频信号的范围。设计的SPI总线采用上升沿采样、下降沿输出工作模式,主模块为芯片,本系统时钟为14.318 MHz,SPI总线的仿真结果如图13所示,每帧数据为8 B,通过信号ctrl_reg来接收和发送缓冲区等的配置信息,图中MOSI端口为输出给RF端的串行数据。

3 系统板联合调试及结果

利用Quartus Ⅱ软件完成建立工程、综合和编译过程并自动生成SOF文件,选择JTAG模式下载可以方便地利用Signaltap来进行调试。板级验证系统框图如图14所示。

ADC时钟为80 MHz,并行输出10 b送给FPGA;FPGA通过SPI发送命令至RF端;DSP通过EMIF接口来读取FPGA内部RAM缓存的数据。在验证时先进行接口的验证,接口传输正确就可以验证整个系统。板级验证实物图如图15所示。

利用逻辑分析仪采集FPGA发送给DSP的数据如图16所示。CS,REN为低时,DSP读取数据,BA用来区分传输高低字节。

FPGA通过SPI口发送命令至RF端,通过逻辑分析仪采集发送的数据如图17所示。SPI三根线SCLK,MOSI和CS。每帧数据为8 B,包括包头、频段号和包尾。count信号为对传输字节的计数。

最终将整个系统连接起来,启动测试模式,射频前端发送中心频率为70 MHz,带宽为10 MHz的模拟信号,经过一系列变换,得到的频谱如图18所示。Valid信号为高电平时,频谱数据有效。

选择全频段扫描模式,信号发生器产生1 GHz的信号输入给系统,软件参考电平设置为20 dB,经过转换和处理,原信号的频谱如图19所示。检测到信号频率与设置的无线信号保持一致,输出信号信噪比达到50 dB以上。在单频点模式,利用信号源产生2 GHz信号,带宽为200 kHz,采样率为100 kHz,扫描时间为100 ms,恢复出来的信号如图20所示。

4 结 论

本文介绍了基于FPGA的宽频谱信号监测系统的工作原理。具体包括验证了系统设计的正确性和可行性,并利用Simulink进行系统仿真验证,构建探测系统平台;利用Verilog HDL实现各个数据通路模块,最终联合调试成功,实现对宽频谱信号的监测功能,整个系统输出信号的信噪比达到50 dB以上,达到了设计要求。这种采用FPGA并基于软件无线电设计的系统在通信、军事等领域具有广泛的应用前景。

参考文献

[1] 罗万团,韦小华,王亚伟,等.宽频带接收系统的建模与仿真[J].电子设计工程,2009(5):90?92.

[2] 杨小牛,楼才义.软件无线电技术与应用[M].北京:北京理工大学出版社,2010.

[3] TI Corporation. TMS320DM644x DMSoC ARM subsystem refe?rence guide [EB/OL]. [2009?11?17]. www.docin.com...639.html.

[4] 陈立万.信号与线性系统[M].北京:机械工业出版社,2006.

[5] MAHESH R, VINOD A P. Reconfigurable low complexity FIR filters for software radio receivers [C]// Proceedings of IEEE International Symposium on Personal Indoor and Mobile Radio Communications. Helsinki, Finland: IEEE, 2006: 1?5.

[6] VINOD A P, LAI E M?K. Low power and high?speed implementation of FIR filters for software defined radio receivers [J]. IEEE Transactions on Wireless Communications, 2006, 5(7): 1669?1675.

[7] 蔚接锁.基于FPGA与流水线CORDIC算法的FFT处理器的实现[D].天津:天津大学,2008.

[8] 吴继华,蔡海宁,王诚.Altera FPGA/CPLD设计[M].北京:人民邮电出版社,2011.

仿真结果如图11和图12所示。O_AB信号当前时刻下降沿表示写RAM_1,下一时刻上升沿说明RAM_1已写满,开始写入数据到RAM_2。由图11可以看到O_AB高低变换,表示芯片在交替写入数据到两个RAM。本文选择的RAM容量为8 192×16 b,与全频段扫描时每个带宽对应的FFT点数相同,保证数据包的完整性。

2.2.7 SPI接口设计与仿真

系统需要与射频前端进行通信,此系统采用SPI总线下传命令至射频端,用来确定扫描射频信号的范围。设计的SPI总线采用上升沿采样、下降沿输出工作模式,主模块为芯片,本系统时钟为14.318 MHz,SPI总线的仿真结果如图13所示,每帧数据为8 B,通过信号ctrl_reg来接收和发送缓冲区等的配置信息,图中MOSI端口为输出给RF端的串行数据。

3 系统板联合调试及结果

利用Quartus Ⅱ软件完成建立工程、综合和编译过程并自动生成SOF文件,选择JTAG模式下载可以方便地利用Signaltap来进行调试。板级验证系统框图如图14所示。

ADC时钟为80 MHz,并行输出10 b送给FPGA;FPGA通过SPI发送命令至RF端;DSP通过EMIF接口来读取FPGA内部RAM缓存的数据。在验证时先进行接口的验证,接口传输正确就可以验证整个系统。板级验证实物图如图15所示。

利用逻辑分析仪采集FPGA发送给DSP的数据如图16所示。CS,REN为低时,DSP读取数据,BA用来区分传输高低字节。

FPGA通过SPI口发送命令至RF端,通过逻辑分析仪采集发送的数据如图17所示。SPI三根线SCLK,MOSI和CS。每帧数据为8 B,包括包头、频段号和包尾。count信号为对传输字节的计数。

最终将整个系统连接起来,启动测试模式,射频前端发送中心频率为70 MHz,带宽为10 MHz的模拟信号,经过一系列变换,得到的频谱如图18所示。Valid信号为高电平时,频谱数据有效。

选择全频段扫描模式,信号发生器产生1 GHz的信号输入给系统,软件参考电平设置为20 dB,经过转换和处理,原信号的频谱如图19所示。检测到信号频率与设置的无线信号保持一致,输出信号信噪比达到50 dB以上。在单频点模式,利用信号源产生2 GHz信号,带宽为200 kHz,采样率为100 kHz,扫描时间为100 ms,恢复出来的信号如图20所示。

4 结 论

本文介绍了基于FPGA的宽频谱信号监测系统的工作原理。具体包括验证了系统设计的正确性和可行性,并利用Simulink进行系统仿真验证,构建探测系统平台;利用Verilog HDL实现各个数据通路模块,最终联合调试成功,实现对宽频谱信号的监测功能,整个系统输出信号的信噪比达到50 dB以上,达到了设计要求。这种采用FPGA并基于软件无线电设计的系统在通信、军事等领域具有广泛的应用前景。

参考文献

[1] 罗万团,韦小华,王亚伟,等.宽频带接收系统的建模与仿真[J].电子设计工程,2009(5):90?92.

[2] 杨小牛,楼才义.软件无线电技术与应用[M].北京:北京理工大学出版社,2010.

[3] TI Corporation. TMS320DM644x DMSoC ARM subsystem refe?rence guide [EB/OL]. [2009?11?17]. www.docin.com...639.html.

[4] 陈立万.信号与线性系统[M].北京:机械工业出版社,2006.

[5] MAHESH R, VINOD A P. Reconfigurable low complexity FIR filters for software radio receivers [C]// Proceedings of IEEE International Symposium on Personal Indoor and Mobile Radio Communications. Helsinki, Finland: IEEE, 2006: 1?5.

[6] VINOD A P, LAI E M?K. Low power and high?speed implementation of FIR filters for software defined radio receivers [J]. IEEE Transactions on Wireless Communications, 2006, 5(7): 1669?1675.

[7] 蔚接锁.基于FPGA与流水线CORDIC算法的FFT处理器的实现[D].天津:天津大学,2008.

[8] 吴继华,蔡海宁,王诚.Altera FPGA/CPLD设计[M].北京:人民邮电出版社,2011.

仿真结果如图11和图12所示。O_AB信号当前时刻下降沿表示写RAM_1,下一时刻上升沿说明RAM_1已写满,开始写入数据到RAM_2。由图11可以看到O_AB高低变换,表示芯片在交替写入数据到两个RAM。本文选择的RAM容量为8 192×16 b,与全频段扫描时每个带宽对应的FFT点数相同,保证数据包的完整性。

2.2.7 SPI接口设计与仿真

系统需要与射频前端进行通信,此系统采用SPI总线下传命令至射频端,用来确定扫描射频信号的范围。设计的SPI总线采用上升沿采样、下降沿输出工作模式,主模块为芯片,本系统时钟为14.318 MHz,SPI总线的仿真结果如图13所示,每帧数据为8 B,通过信号ctrl_reg来接收和发送缓冲区等的配置信息,图中MOSI端口为输出给RF端的串行数据。

3 系统板联合调试及结果

利用Quartus Ⅱ软件完成建立工程、综合和编译过程并自动生成SOF文件,选择JTAG模式下载可以方便地利用Signaltap来进行调试。板级验证系统框图如图14所示。

ADC时钟为80 MHz,并行输出10 b送给FPGA;FPGA通过SPI发送命令至RF端;DSP通过EMIF接口来读取FPGA内部RAM缓存的数据。在验证时先进行接口的验证,接口传输正确就可以验证整个系统。板级验证实物图如图15所示。

利用逻辑分析仪采集FPGA发送给DSP的数据如图16所示。CS,REN为低时,DSP读取数据,BA用来区分传输高低字节。

FPGA通过SPI口发送命令至RF端,通过逻辑分析仪采集发送的数据如图17所示。SPI三根线SCLK,MOSI和CS。每帧数据为8 B,包括包头、频段号和包尾。count信号为对传输字节的计数。

最终将整个系统连接起来,启动测试模式,射频前端发送中心频率为70 MHz,带宽为10 MHz的模拟信号,经过一系列变换,得到的频谱如图18所示。Valid信号为高电平时,频谱数据有效。

选择全频段扫描模式,信号发生器产生1 GHz的信号输入给系统,软件参考电平设置为20 dB,经过转换和处理,原信号的频谱如图19所示。检测到信号频率与设置的无线信号保持一致,输出信号信噪比达到50 dB以上。在单频点模式,利用信号源产生2 GHz信号,带宽为200 kHz,采样率为100 kHz,扫描时间为100 ms,恢复出来的信号如图20所示。

4 结 论

本文介绍了基于FPGA的宽频谱信号监测系统的工作原理。具体包括验证了系统设计的正确性和可行性,并利用Simulink进行系统仿真验证,构建探测系统平台;利用Verilog HDL实现各个数据通路模块,最终联合调试成功,实现对宽频谱信号的监测功能,整个系统输出信号的信噪比达到50 dB以上,达到了设计要求。这种采用FPGA并基于软件无线电设计的系统在通信、军事等领域具有广泛的应用前景。

参考文献

[1] 罗万团,韦小华,王亚伟,等.宽频带接收系统的建模与仿真[J].电子设计工程,2009(5):90?92.

[2] 杨小牛,楼才义.软件无线电技术与应用[M].北京:北京理工大学出版社,2010.

[3] TI Corporation. TMS320DM644x DMSoC ARM subsystem refe?rence guide [EB/OL]. [2009?11?17]. www.docin.com...639.html.

[4] 陈立万.信号与线性系统[M].北京:机械工业出版社,2006.

[5] MAHESH R, VINOD A P. Reconfigurable low complexity FIR filters for software radio receivers [C]// Proceedings of IEEE International Symposium on Personal Indoor and Mobile Radio Communications. Helsinki, Finland: IEEE, 2006: 1?5.

[6] VINOD A P, LAI E M?K. Low power and high?speed implementation of FIR filters for software defined radio receivers [J]. IEEE Transactions on Wireless Communications, 2006, 5(7): 1669?1675.

[7] 蔚接锁.基于FPGA与流水线CORDIC算法的FFT处理器的实现[D].天津:天津大学,2008.

[8] 吴继华,蔡海宁,王诚.Altera FPGA/CPLD设计[M].北京:人民邮电出版社,2011.

猜你喜欢
软件无线电
“软件无线电技术”技术教学方法的探索与实践
WR—G33DDC型无线电监测接收机原理及故障处理
基于Gnuradio与Hackrf的无线通信收发系统实现
基于FPGA的软件无线电上下变频技术的设计研究
基于软件无线电的GPP通信波形软件设计方法