APP下载

基于DM3730的嵌入式软件无线电平台的研制

2014-07-19麻志滨王相张敏

现代电子技术 2014年10期
关键词:软件无线电

麻志滨 王相 张敏

摘 要: 采用DM3730微控制器替代PC机配合USRP的硬件设计了新型嵌入式软件无线平台。该平台使用Ubantu for ARM+GNURadio配置可以完全实现传统软件无线电的全部功能。在此介绍了新型嵌入式软件无线电平台的硬件设计,阐述了Ubantu for ARM的搭建和GNURadio for ARM的编译过程,并针对性地做了系统测试。该设计开创性地用高性能ARM处理器搭配软件无线电平台,使新的软件无线电系统具有更低的功耗和更强的便携性。

关键词: DM3730; USRP; 软件无线电; GNURadio

中图分类号: TN919?34; G741 文献标识码: A 文章编号: 1004?373X(2014)10?0107?03

Abstract: With the coordination of the USRP, a new embedded software radio platform was designed by means of a micro controller named DM3730 instead of PC. This platform which adopts the configuration of Ubantu for ARM+GNURadio is able to fulfill all the functions of a traditional software defined radio. The hardware design of a new embedded software radio platform is introduced in this paper. The establishment of Ubantu for ARM and the compilation process of GNURadio for ARM are elaborated. Several related tests of the system were made. The design which innovatively puts the software radio platform and a high?performance ARM controller together makes the new software radio system to have better portability and lower power consumption.

Keywords: DM3730; USRP; software defined radio; GNURadio

0 引 言

在1992年5月美国的全国电信会议上,J.Mitole首次提出了“软件无线电(SDR)”这个概念,此后该技术一直广受关注并获得了蓬勃发展[1]。软件无线电指在通用的通信硬件平台上加载不同的通信软件,以实现不同的通信方式间的转换[2]。2001年由Eric Blossom发起了GNU Radio开源项目,并推出了一套通用软件无线电外设(USRP)[3],时至今日该平台已经被广泛运用在教学、科研等多个方面。

在目前国内外普遍使用的通用软件无线电硬件外设(USRP)上,数字上变频与下变频的任务是由USRP上的FPGA来完成的。而基带信号的处理过程需要非常大量的计算,需要依赖于处理性能很强的处理器,在过去只有唯一选择PC机。本文针对传统通用软件无线电外设必须依赖沉重的PC机,便携性差和功耗大的缺点,设计了一种基于高端嵌入式芯片DM3730的新型软件无线电平台。该平台的嵌入式核心部分完美地替代了传统PC的作用,使新的软件无线电平台在继承了原有USRP的优点的情况下,也具备了很强的便携性和很低的功耗。

1 系统硬件设计

1.1 软件无线电系统

软件无线电系统负责进行中频采样以及中频信号到基带信号之间的相互转化[4],如图1所示为软件无线电系统的系统框图。

FPGA控制核心采用的是Altera公司生产的飓风一代Cyclone系列的EP1C12Q240,其主要功能是将ADC采集的中频信号进行下变频(DDC)变换到基带;另一个功能是作为数据枢纽,协调适配各路的ADC,DAC以及USB2.0接口之间进行数据交换。

模拟部分主要使用了两块Analog Device公司生产的AD9862,每块可以本别提供两路12 b,64 MSPS的A/D变换和两路14 b,128 MSPS的D/A变换,此外DAC单元还继承了数字上变频(DUC)的功能。

1.2 嵌入式处理核心

嵌入式处理核心在本系统上的作用是来替代传统意义上的PC机的。软件无线电平台的一个核心思想是:基带信号的处理过程由通用处理器完成而不是DSP来完成[5],将运算和设计放在PC机上。在本系统中使用嵌入式处理核心来承担基带信号处理所需要的大量计算,并运行界面程序完成通信系统的设计。如图2所示为嵌入式处理核心的基本框架。

2 系统软件设计

2.1 ARM架构下的Ubuntu系统的搭建

乌班图(Ubuntu)是一个以桌面应用为主的Linux操作系统,是当前最受人们欢迎的免费Linux操作系统,GNURadio虽然提供了多平台支持,但实际GNURadio对于Linux平台的支持是最好的[6]。所以使用传统意义上的软件无线电系统均普遍采用Ubuntu(X86)配合GNURadio搭配作为开发工具和调试平台。

随着当前ARM处理器的飞速发展,ARM处理器的性能越来越强,原本只能运行在X86系统下的Ubuntu系统也被移植到了ARM端。Linaro是一个致力于为ARM架构开发开源软件的非盈利性组织,其推出的Linaro是一套针对于ARM平台的文件系统[7]。2012年4月Linaro发布了最新的12.04版本,是基于Ubuntu12.04移植的ARM版Ubuntu。

Ti公司针对DM3730嵌入式处理器提供了一整套的官方Linux源码包。原版的内核需要针对性的对ARM平台做些更改,根据硬件设计编写Kernel补丁并生成patch文件,打入补丁后配置并编译生成新的UImage文件,复制到SD卡的EXT并下载到NandFlash中即可。完成内核下载后,从Linaro官网(www.linaro.org)下载Linaro 12.04的文件系统,复制到SD卡的EXT3分区中,完成文件系统的构建。此时重新启动DM3730,即可顺利启动Ubuntu12.04,此时可以彩屏上见到乌班图系统的界面。

2.2 在ARM平台下安装GNURadio

GNURadio是一种运行在通用处理器上的免费的开源软件无线电库,与通用软件无线电平台(USRP)结合在一起,就可以构成一个完整的非常灵活的无线电开发平台[8]。GNURaido提供了良好的图形界面(GRC)和所有通用无线电所需要的库,采用C++结合Python语言联合编程的方式[9]。因为GNURadio的开放性和易用性,在全世界包括中国都得到了及其广泛的应用。

由于GNURadio仅支持Linux操作系统,所以安装过程较为复杂。对于GNURadio支持较好的Ubantu系统直接提供了二进制的安装包,但使用的Linaro显然不在支持较好的操作系统之列,所以想在ARM平台下使用GNURadio,重新编译GNURadio必不可少。同时Ubantu系统与Linaro系统的最大区别在其显示设备上,X86平台有通用的显示设备和驱动库OpenGL,但由于ARM平台下处理器性能的高低不同,并没有通用的显卡支持库,故编译前需要对GNURadio做一个针对显卡库的Patch包。

2.3 软件无线电平台镜像的下载

新制作完成的软件无线电平台的内部是没有下载程序的,需要通过一系列步骤将最新的FPGA镜像与USB控制器镜像下载到软件无线电平台的内部。FPGA内部并没有集成程序空间存储器,每次重新上电均需要重新配置FPGA,所以FPGA的镜像是存储在USB控制器CY7C68013A内部8051核的程序存储器中,每次上电自动配置FPGA。

将软件无线电平台通电后,将USB线缆连接到电脑,此时应确保电脑成功安装平台驱动。若成功连接则软件无线电平台的母版上的D5灯会快速闪烁,此时打开GNURadio,将编译好的FPGA比特流文件.rbf文件与firmware固件.ihx文件下载即可。下载成功后软件无线电平台上的D5灯会正常闪烁。

3 系统测试

3.1 FFT频谱实验

在开始时可以运行一个简单的程序来测试嵌入式软件无线电平台是否能够正常工作。进入/usr/local/bin目录执行uhd_fft文件,执行程序设置Center freq为2.400 3 GHz,Sanple Rate为200K。如图3所示,此时程序做出以2.400 3 GHz为中心频率的频谱图。

程序实时显示接收到信号的频谱图,从图中可以看出在2.4 GHz处出现了一个峰值。这是因为四周有很多的WIFI信号,他们工作在2.4 GHz频段,所以频谱图上存在一个尖峰,证明嵌入式软件无线电平台是正常工作的。

3.2 DPSK通信实验

差分移相键控(DPSK)是指利用调制信号前后码元之间载波相对相位的变化来传递信息的[10]。通过两台嵌入式软件无线电平台来实现DPSK的调制与解调,分别对两台嵌入式软件无线电平台载入发射程序和接受程序,中心频率均设置2.45 GHz,采样率设置500 kHz。

如图4所示为发射机发射的发射信号、接收机接收的频谱图,图5为接收机接收到的信号的星座图。结合发射机与接收机的时域波形的对比和接受信号的星座图可以判断出DPSK通信成功。

4 结 语

本文介绍了一种基于DM3730设计的新型嵌入式软件无线电平台。该系统对传统的USRP进行了改进,使用高性能ARM嵌入式微控制器替代传统PC机的作用,使得新的嵌入式软件无线电平台在继承了传统的优点的同时,又兼顾了便携性,为将来的业务拓展和设备升级提供了保证。

基于嵌入式系统的设计使软件无线电平台具有了更大的灵活性,可以应用于更多的依赖于小型化无线电设备的场景,并且随着ARM控制器的性能的不断提高和软件技术的进步,本系统的性能还有进一步提升的可能性。

参考文献

[1] MITOLA J. Software radio: survey, critical evaluation and future directions [C]// Proceedings of National Telesystems Conference.New York: IEEE Press, 1992: 15?23.

[2] 姜宇柏,游思晴.软件无线电原理与工程应用[M].北京:机械工业出版社,2006.

[3] 曹瀚文,王博文.GNURadio:开放的软件无线电平台[J].电信快报,2007(4):31?34.

[4] 向新.软件无线电原理与技术[M].西安:西安电子科技大学出版社,2008.

[5] 闫龙,王智海,祁兵.基于 GNURadio的230 MHz多通道主站电台的设计[J].电力系统保护与控制,2010(9):100?104.

[6] MARCUS M. Linux, software radio and the radio amateur [J]. QST?NEWINGTON, 2002, 86(10): 33?35.

[7] WEHNER P, GOHRINGER D. Evaluation of driver assistance systems with a car simulator using a virtual and a real FPGA platform [C]// Processings of IEEE 2013 Conference on Design and Architectures for Signal and Image. [S.l.]: IEEE Press, 2013: 345?346.

[8] 杨宏,孔耀晖,茹晨光,等.基于 GNU Radio和USRP的无线通信系统建模仿真[J].现代电子技术,2013,36(18):24?26.

[9] SILVIUS M D, GE F, YOUNG A, et al. Smart radio: spectrum access for first responders [J]. SPIE, 2008, 6980: 8?12.

[10] 王攀,陈利学,计勇,等.基于FPGA的DPSK解调电路设计[J].软件导刊,2009,8(4):13?15.

Ti公司针对DM3730嵌入式处理器提供了一整套的官方Linux源码包。原版的内核需要针对性的对ARM平台做些更改,根据硬件设计编写Kernel补丁并生成patch文件,打入补丁后配置并编译生成新的UImage文件,复制到SD卡的EXT并下载到NandFlash中即可。完成内核下载后,从Linaro官网(www.linaro.org)下载Linaro 12.04的文件系统,复制到SD卡的EXT3分区中,完成文件系统的构建。此时重新启动DM3730,即可顺利启动Ubuntu12.04,此时可以彩屏上见到乌班图系统的界面。

2.2 在ARM平台下安装GNURadio

GNURadio是一种运行在通用处理器上的免费的开源软件无线电库,与通用软件无线电平台(USRP)结合在一起,就可以构成一个完整的非常灵活的无线电开发平台[8]。GNURaido提供了良好的图形界面(GRC)和所有通用无线电所需要的库,采用C++结合Python语言联合编程的方式[9]。因为GNURadio的开放性和易用性,在全世界包括中国都得到了及其广泛的应用。

由于GNURadio仅支持Linux操作系统,所以安装过程较为复杂。对于GNURadio支持较好的Ubantu系统直接提供了二进制的安装包,但使用的Linaro显然不在支持较好的操作系统之列,所以想在ARM平台下使用GNURadio,重新编译GNURadio必不可少。同时Ubantu系统与Linaro系统的最大区别在其显示设备上,X86平台有通用的显示设备和驱动库OpenGL,但由于ARM平台下处理器性能的高低不同,并没有通用的显卡支持库,故编译前需要对GNURadio做一个针对显卡库的Patch包。

2.3 软件无线电平台镜像的下载

新制作完成的软件无线电平台的内部是没有下载程序的,需要通过一系列步骤将最新的FPGA镜像与USB控制器镜像下载到软件无线电平台的内部。FPGA内部并没有集成程序空间存储器,每次重新上电均需要重新配置FPGA,所以FPGA的镜像是存储在USB控制器CY7C68013A内部8051核的程序存储器中,每次上电自动配置FPGA。

将软件无线电平台通电后,将USB线缆连接到电脑,此时应确保电脑成功安装平台驱动。若成功连接则软件无线电平台的母版上的D5灯会快速闪烁,此时打开GNURadio,将编译好的FPGA比特流文件.rbf文件与firmware固件.ihx文件下载即可。下载成功后软件无线电平台上的D5灯会正常闪烁。

3 系统测试

3.1 FFT频谱实验

在开始时可以运行一个简单的程序来测试嵌入式软件无线电平台是否能够正常工作。进入/usr/local/bin目录执行uhd_fft文件,执行程序设置Center freq为2.400 3 GHz,Sanple Rate为200K。如图3所示,此时程序做出以2.400 3 GHz为中心频率的频谱图。

程序实时显示接收到信号的频谱图,从图中可以看出在2.4 GHz处出现了一个峰值。这是因为四周有很多的WIFI信号,他们工作在2.4 GHz频段,所以频谱图上存在一个尖峰,证明嵌入式软件无线电平台是正常工作的。

3.2 DPSK通信实验

差分移相键控(DPSK)是指利用调制信号前后码元之间载波相对相位的变化来传递信息的[10]。通过两台嵌入式软件无线电平台来实现DPSK的调制与解调,分别对两台嵌入式软件无线电平台载入发射程序和接受程序,中心频率均设置2.45 GHz,采样率设置500 kHz。

如图4所示为发射机发射的发射信号、接收机接收的频谱图,图5为接收机接收到的信号的星座图。结合发射机与接收机的时域波形的对比和接受信号的星座图可以判断出DPSK通信成功。

4 结 语

本文介绍了一种基于DM3730设计的新型嵌入式软件无线电平台。该系统对传统的USRP进行了改进,使用高性能ARM嵌入式微控制器替代传统PC机的作用,使得新的嵌入式软件无线电平台在继承了传统的优点的同时,又兼顾了便携性,为将来的业务拓展和设备升级提供了保证。

基于嵌入式系统的设计使软件无线电平台具有了更大的灵活性,可以应用于更多的依赖于小型化无线电设备的场景,并且随着ARM控制器的性能的不断提高和软件技术的进步,本系统的性能还有进一步提升的可能性。

参考文献

[1] MITOLA J. Software radio: survey, critical evaluation and future directions [C]// Proceedings of National Telesystems Conference.New York: IEEE Press, 1992: 15?23.

[2] 姜宇柏,游思晴.软件无线电原理与工程应用[M].北京:机械工业出版社,2006.

[3] 曹瀚文,王博文.GNURadio:开放的软件无线电平台[J].电信快报,2007(4):31?34.

[4] 向新.软件无线电原理与技术[M].西安:西安电子科技大学出版社,2008.

[5] 闫龙,王智海,祁兵.基于 GNURadio的230 MHz多通道主站电台的设计[J].电力系统保护与控制,2010(9):100?104.

[6] MARCUS M. Linux, software radio and the radio amateur [J]. QST?NEWINGTON, 2002, 86(10): 33?35.

[7] WEHNER P, GOHRINGER D. Evaluation of driver assistance systems with a car simulator using a virtual and a real FPGA platform [C]// Processings of IEEE 2013 Conference on Design and Architectures for Signal and Image. [S.l.]: IEEE Press, 2013: 345?346.

[8] 杨宏,孔耀晖,茹晨光,等.基于 GNU Radio和USRP的无线通信系统建模仿真[J].现代电子技术,2013,36(18):24?26.

[9] SILVIUS M D, GE F, YOUNG A, et al. Smart radio: spectrum access for first responders [J]. SPIE, 2008, 6980: 8?12.

[10] 王攀,陈利学,计勇,等.基于FPGA的DPSK解调电路设计[J].软件导刊,2009,8(4):13?15.

Ti公司针对DM3730嵌入式处理器提供了一整套的官方Linux源码包。原版的内核需要针对性的对ARM平台做些更改,根据硬件设计编写Kernel补丁并生成patch文件,打入补丁后配置并编译生成新的UImage文件,复制到SD卡的EXT并下载到NandFlash中即可。完成内核下载后,从Linaro官网(www.linaro.org)下载Linaro 12.04的文件系统,复制到SD卡的EXT3分区中,完成文件系统的构建。此时重新启动DM3730,即可顺利启动Ubuntu12.04,此时可以彩屏上见到乌班图系统的界面。

2.2 在ARM平台下安装GNURadio

GNURadio是一种运行在通用处理器上的免费的开源软件无线电库,与通用软件无线电平台(USRP)结合在一起,就可以构成一个完整的非常灵活的无线电开发平台[8]。GNURaido提供了良好的图形界面(GRC)和所有通用无线电所需要的库,采用C++结合Python语言联合编程的方式[9]。因为GNURadio的开放性和易用性,在全世界包括中国都得到了及其广泛的应用。

由于GNURadio仅支持Linux操作系统,所以安装过程较为复杂。对于GNURadio支持较好的Ubantu系统直接提供了二进制的安装包,但使用的Linaro显然不在支持较好的操作系统之列,所以想在ARM平台下使用GNURadio,重新编译GNURadio必不可少。同时Ubantu系统与Linaro系统的最大区别在其显示设备上,X86平台有通用的显示设备和驱动库OpenGL,但由于ARM平台下处理器性能的高低不同,并没有通用的显卡支持库,故编译前需要对GNURadio做一个针对显卡库的Patch包。

2.3 软件无线电平台镜像的下载

新制作完成的软件无线电平台的内部是没有下载程序的,需要通过一系列步骤将最新的FPGA镜像与USB控制器镜像下载到软件无线电平台的内部。FPGA内部并没有集成程序空间存储器,每次重新上电均需要重新配置FPGA,所以FPGA的镜像是存储在USB控制器CY7C68013A内部8051核的程序存储器中,每次上电自动配置FPGA。

将软件无线电平台通电后,将USB线缆连接到电脑,此时应确保电脑成功安装平台驱动。若成功连接则软件无线电平台的母版上的D5灯会快速闪烁,此时打开GNURadio,将编译好的FPGA比特流文件.rbf文件与firmware固件.ihx文件下载即可。下载成功后软件无线电平台上的D5灯会正常闪烁。

3 系统测试

3.1 FFT频谱实验

在开始时可以运行一个简单的程序来测试嵌入式软件无线电平台是否能够正常工作。进入/usr/local/bin目录执行uhd_fft文件,执行程序设置Center freq为2.400 3 GHz,Sanple Rate为200K。如图3所示,此时程序做出以2.400 3 GHz为中心频率的频谱图。

程序实时显示接收到信号的频谱图,从图中可以看出在2.4 GHz处出现了一个峰值。这是因为四周有很多的WIFI信号,他们工作在2.4 GHz频段,所以频谱图上存在一个尖峰,证明嵌入式软件无线电平台是正常工作的。

3.2 DPSK通信实验

差分移相键控(DPSK)是指利用调制信号前后码元之间载波相对相位的变化来传递信息的[10]。通过两台嵌入式软件无线电平台来实现DPSK的调制与解调,分别对两台嵌入式软件无线电平台载入发射程序和接受程序,中心频率均设置2.45 GHz,采样率设置500 kHz。

如图4所示为发射机发射的发射信号、接收机接收的频谱图,图5为接收机接收到的信号的星座图。结合发射机与接收机的时域波形的对比和接受信号的星座图可以判断出DPSK通信成功。

4 结 语

本文介绍了一种基于DM3730设计的新型嵌入式软件无线电平台。该系统对传统的USRP进行了改进,使用高性能ARM嵌入式微控制器替代传统PC机的作用,使得新的嵌入式软件无线电平台在继承了传统的优点的同时,又兼顾了便携性,为将来的业务拓展和设备升级提供了保证。

基于嵌入式系统的设计使软件无线电平台具有了更大的灵活性,可以应用于更多的依赖于小型化无线电设备的场景,并且随着ARM控制器的性能的不断提高和软件技术的进步,本系统的性能还有进一步提升的可能性。

参考文献

[1] MITOLA J. Software radio: survey, critical evaluation and future directions [C]// Proceedings of National Telesystems Conference.New York: IEEE Press, 1992: 15?23.

[2] 姜宇柏,游思晴.软件无线电原理与工程应用[M].北京:机械工业出版社,2006.

[3] 曹瀚文,王博文.GNURadio:开放的软件无线电平台[J].电信快报,2007(4):31?34.

[4] 向新.软件无线电原理与技术[M].西安:西安电子科技大学出版社,2008.

[5] 闫龙,王智海,祁兵.基于 GNURadio的230 MHz多通道主站电台的设计[J].电力系统保护与控制,2010(9):100?104.

[6] MARCUS M. Linux, software radio and the radio amateur [J]. QST?NEWINGTON, 2002, 86(10): 33?35.

[7] WEHNER P, GOHRINGER D. Evaluation of driver assistance systems with a car simulator using a virtual and a real FPGA platform [C]// Processings of IEEE 2013 Conference on Design and Architectures for Signal and Image. [S.l.]: IEEE Press, 2013: 345?346.

[8] 杨宏,孔耀晖,茹晨光,等.基于 GNU Radio和USRP的无线通信系统建模仿真[J].现代电子技术,2013,36(18):24?26.

[9] SILVIUS M D, GE F, YOUNG A, et al. Smart radio: spectrum access for first responders [J]. SPIE, 2008, 6980: 8?12.

[10] 王攀,陈利学,计勇,等.基于FPGA的DPSK解调电路设计[J].软件导刊,2009,8(4):13?15.

猜你喜欢

软件无线电
军用软件无线电通信技术发展分析
“软件无线电技术”技术教学方法的探索与实践
WR—G33DDC型无线电监测接收机原理及故障处理
基于Gnuradio与Hackrf的无线通信收发系统实现
基于FPGA的软件无线电上下变频技术的设计研究
DSP技术在软件无线电中的应用探讨
基于软件无线电的GPP通信波形软件设计方法
基于软件无线电收发机前端设计方法的分析与研究
浅析无线智能认知技术
面向对象思想在无线电系统设计中的应用