基于ZEDBOARD的嵌入式软件无线电软件平台设计研究

2020-11-23 12:02暴臻涛西安邮电大学
数码世界 2020年11期
关键词:嵌入式软件板卡内核

暴臻涛 西安邮电大学

近年来,我国物联网技术的飞速发展,使无线电设备在功耗、成本等方面不断降低,而人们对软件无线电平台所提出的通用性、高速性及可扩展性等方面的要求也将促使软件无线电平台变得越来越小型化和便捷化。文章综合运用了936l射频板卡与ZEDBOARD板卡,以此搭建嵌入式软件无线电软件平台的ARM+FPGA混合架构,从而实现了对基于ZEDBOARD的嵌入式软件无线电软件平台的开发。经软件平台各项性能的测试结果表明,该嵌入式软件无线电平台具有体积小、扩展性高、功耗低等应用优势,具有非常广阔的市场应用前景。

1 系统架构

1.1 硬件结构

以Xilinx Zynq-7000扩展式处理平台为基础,采用ZEDBOARD嵌入式开发板,该开发板采用ARM+FPGA混合式架构,在集成性上有着非常良好的表现。对于用户来说,可结合自身需要来连接各个模块,以此对平台逻辑功能进行自定义。在ZYNQ中,其各种外设及内存控制器均被集成于架构内的ARM子系统中,以确保处理子系统能够独立运行。很多可扩展模块都集成在FPGA部分,对于该平台来说,其有着大量的扩展资源与处理器,这也是软件无线电平台的开发优势所在。ADI公司则研发出一种AD9361高性能射频捷变收发器,在板卡中还配置了相应的FPGA驱动,人们可将AD9361射频版直接连接在ZEDBOARD的FMC接口中,从而实现对板卡驱动的移植,进而使硬件链路部分在软件无线电平台中得以快速搭接。

1.2 平台架构

在嵌入式软件无线电平台中,主要分为硬件与软件两个平台组成部分。其中,嵌入式Linux系统位于软件平台部分,该系统的稳定性好、可移植性好且成本很低,而且可兼容不同处理器。以现有硬件资源为基础,需要对ZEDBOARD中的IP核资源进行自定义来实现对嵌入式Linux系统的移植,以便于对平台数据的传输程序进行设计。在测试ZEDBOARD的软件无线电平台链路时,可通过对波形数据进行发送来完成。

2 基于ZEDBOARD的嵌入式软件无线电软件平台设计

在对嵌入式软件进行开发时,是离不开的嵌入式系统移植的,文章通过ZEDBOARD开发板来对嵌入式Linux系统进行移植来实现对软件无线电系统软件平台的搭建。

2.1 编译环境

在移植系统或开发应用程序过程中,离不开对嵌入式开发环境的搭建。文中主要通过Xilin ARM交叉编译工具来搭建对应的开发环境。第一步是对Xilinx交叉编译工具进行下载与安装,然后对系统平台的环境变量进行设置,以此完成对配置信息的编写。具体配置信息如下:

2.2 U-Boot与Linux内核的移植

Bootloader是对于嵌入式操作系统来说,其在内核引导过程中,往往需要启动U-Boot来完成引导,而U-Boot其实是Bootloader的一个演化版本。在移植过程中,需要先对U-Boot源码进行获取,然后以ZEDBOARD板卡需求为基础来配置U-Boot,在配置完毕后,这些信息会在Zynq_zed_config文件内存储,例如内核镜像、网络地址、设备树,加载方式、文件系统等,都是典型的U-Boot配置信息,而这些信息均要结合硬件的具体信息来完成设置。在嵌入式系统中,其核心在于Linux内核,因嵌入式系统是较为精简的,所以往往要裁剪Linux内核,这样有助于缩短开发周期,并将嵌入式应用程序作为开发重点。在该平台中,Linux内核的配置文件为Digilent_zed_defconfig,该配置文件包含了嵌入式Linux系统中的全部功能模块信息。通过编译内核源码,便可使人们在目录中找到生成的zlmage文件。

2.3 设备树及文件系统

为了对硬件信息进行描述,需要利用设备树来实现,其本质上是一种数据结构,设备树能够采用硬编码方式在系统中写入设备信息,因ARM不具备BIOS,所以需要利用设备树来对所需设备的配置信息进行启动。设备树文件可利用Xilinx SDK来生成.内核命令行参数是整个设备树中的重要定义参数,其能够在内核启动过程中实现内核传递。利用SDK来对与板卡相适配设备树文件进行生成。不过,AD9361驱动本质上属于SPI总线驱动,现阶段仅能利用设备树来加载。所以,在对设备树文件进行生成以后,还要对AD9361设备驱动配置进行编写,时钟频率、模式启动、SPI配置等都是AD936l设备树中的配置参数,在参数设置过程中可结合工作需要来修改。在Linux中,根文件系统有着比较复杂的构成,在此过程中需要创建多级文件目录,以便于对Uramdisk.image.gz文件进行生成。启动时该文件会利用U-Boot会进行内存加载,同时内存地址也会向着内核传递,当内核启动后,文件系统也会随之运行。

3 测试验证

在对该平台进行测试时,需要对两个方面的内容进行验证:其一是验证参数配置信道功能;其二是验证发送链路。

MATLAB会生成发端波形数据,该数据分为单音波数据与QPSK信号数据。在验证配置信道时,需要对单音信号进行发送,并对采样频率、本振频率等参数进行配置,并利用频谱仪来对波形变化进行查看,该频谱仪的运行频率调整为2.5GHz,其带宽为2MHZ的单音信号频谱。由频谱仪观察结果可了解到,平台的配置信道功能正常。随后由MATLAB对QPSK信号进行生成,然后验证I/O流信道功能。QPSK数据中心频率2.5GHZ,带宽10MHz。通过观察QPSK波形频谱仪的结果并进行对比,可以了解到发送波形的变化和原始数据大致相符,由此表明发送波形是成功的。

4 结语

综上,文章对基于ZEDBOARD的嵌入式软件无线电软件平台的设计进行了详细阐述,该系统采用了AD936l射频卡与ZEDBOARD嵌入式开发板来实现对嵌入式软件无线电平台的灵活组建,该平台相比于PC架构的软件无线电平台来说有着更低的功耗,并且在扩展性也有着非常出色的表现,对该嵌入式软件无线电软件平台的研发可在很大程度上降低成本,缩短开发周期,这使得整个平台的应用前景非常广阔。

猜你喜欢
嵌入式软件板卡内核
强化『高新』内核 打造农业『硅谷』
活化非遗文化 承启设计内核
RTX系统下并行I/O卡驱动程序的开发
嵌入式软件测试数据传输稳定性检测方式分析
航空电子设备机上线路故障研究
微软发布新Edge浏览器预览版下载换装Chrome内核
浅析嵌入式软件技术的现状与发展动向
嵌入式软件在计算机软件开发过程中的运用
具备DV解码功能的DVD编码器——数字视频刻录应用的理想选择