基于SCA架构的软件无线电数字系统主板设计
2011-06-06赵秋明胡晓鹏
赵秋明,胡晓鹏
(桂林电子科技大学 信息与通信学院,广西 桂林 541004)
0 引言
在现代的信息社会,无线通信无处不在,人们对无线电通信的需要也呈指数倍增。各种类型的无线通信不断出现,如数据通信、语音通信、图像通信、广播通信、应急通信等。传统的无线电通信系统主要使用专用的ASIC硬件芯片来搭建,这种系统不仅不可重构,系统升级价格昂贵,而且系统功能单一,无法胜任现今高速发展的无线通信的要求。随着嵌入式处理器以及可编程逻辑推广,一种新的无线电体系——软件无线电技术应运而生,这种系统可以在一个硬件平台下整合多种通信系统,通过软件的方式来配置和切换。本文主要提出一种基于SCA中间件架构的软件无线电系统设计方案,并详细介绍其中软件无线电系统控制主板硬件系统框架和结构。
1 SCA软件无线电典型框架
图1为SCA软件无线电典型框架,系统主要由数字子系统、A/D和D/A子系统、模拟子系统组成[1]。
数字子系统是一种由多个处理器或者可编程逻辑芯片组成的分布异构系统,包括了一些实际的核心硬件芯片以及运行在其上的软件集合。这些核心硬件芯片主要包括通用处理器(GPP)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)和特殊应用集成电路(ASIC)。由于背离软件无线电的初衷,并且缺乏软件可配置性和灵活性,ASIC芯片并不推荐使用。操作系统以及核心框架主要是运行在GPP或者DSP上的,而波形文件是一种负责在异构系统中模块与模块之间通信的文件,主要由通用性、兼容性良好的接口定义语言(IDL)所描述。
A/D,D/A子系统主要实现软件无线电中频信号的处理以及模数/数模转换。模拟子系统主要由混频器、射频放大器和天线组成,主要实现中频模拟信号与射频模拟信号之间的转换、射频模拟信号的放大以及无线电信号的接收和发射。
2 系统硬件设计与实现
该软件无线电系统主要采用独立于计算机的方案进行设计,系统并不依赖计算机主机,但预留有与计算机之间的通信接口。软件无线电硬件系统主要是由数字系统主板、中频A/D和D/A子板、射频收发子板这3部分组成。本文只介绍软件无线电平台的数字系统主板的电路设计方案。
数字系统主板是整个软件无线电框架中最核心的部分,它主要完成4个部分功能:1)系统的软件管理和配置;2)操作系统和软件无线电核心框架以及波形文件的生成;3)数字基带信号的生成和处理;4)实现数字基带信号的上变频与数字中频信号的下变频。
按照以上功能来划分本系统主要由2个部分组成:1)嵌入式子系统,主要完成上述的前两项功能;2)FP⁃GA数字子系统,主要实现上述后两项功能。
3 嵌入式系统
嵌入式系统的主要功能是实现对整个软件无线电系统的管理以及生成软件无线电的波形文件,系统框图如图2所示。
为了减少系统硬件的复杂度,同时避免多个异构芯片通信所增加的不必要系统开销,本文主要采用DaVinci平台的视频处理器TMS320DM6446作为核心处理器[2]。该芯片是TI公司推出的一款高集成度的SoC视频嵌入式处理芯片,芯片内部包含一个ARM子系统,一个DSP子系统,一个视频处理子系统(VPSS)以及丰富的外设接口。其中ARM子系统采用ARM926EJ-S核,主频可达297 MHz,DSP子系统采用C64+核,主频可达594 MHz,单位周期指令数更是高达4 752 MI/s。这款芯片由于集成了带MMU功能的ARM9内核,常用的嵌入式操作系统(如Linux,WinCE,VxWorks)都可以移植到该平台上,并且ARM和DSP可通过TI提供的Codec Engine实现无缝通信,在具有强大系统管理功能的同时提供高速的数据传输以及强大的数字信号处理能力,可以满足各种苛刻的实时性环境要求[3]。
按照嵌入式子系统的功能细分,又可将该系统分为存储器模块、外设接口模块以及嵌入式系统与FPGA数字系统通信模块这3部分。
3.1 存储器模块
存储器模块是软件管理中的系统信息以及软件无线电波形文件存储的硬件载体,包括系统内存部分以及大容量Nand Flash存储器部分。系统内存部分采用两片Micron公司的MT47H64M16HR芯片构成32 bit位宽,容量为256Mbyte的DDR2外部随机存储器,MT47H64M16HR芯片支持多种CL(CAS Latency)设置,最高可支持到DDR2-1066标准时钟速率。DM6446只提供8 kbyte的数据ROM,用于存储少量启动代码,所以必须外扩大容量的持久性存储芯片,Nand Flash具有写和擦写速度快的特点,而且容量比较大,十分适合作为大容量块设备来使用。本文采用三星公司的K9K4G08Q0M芯片,该芯片的容量为512 Mbyte,位宽为8 bit。
3.2 外设接口模块
DM6446提供了丰富的外围设备接口,可以根据用户的需要扩展不同的应用。在本设计中,主要使用了以太网介质访问和数据管理输入/输出接口(EMAC/MDIO)、异步串口(UART)、音频串行接口(ASP)、视频处理后端接口(VPBE)、通用串行总线接口(USB)以及SD/MMC控制接口[4]。
以太网物理层芯片采用Intel公司的LXT971芯片,支持MII和MDIO接口,提供10/100M自适应快速以太网标准支持。由于DM6446自身集成了硬件的以太网MAC层协议,所以可以很方便地移植TCP/IP协议栈,进行各种网络应用程序开发。
异步串口搭配MAX232芯片进行电平转换,不仅可以应用于各种软件的调试,而且可以作为与PC通信的接口来使用。音频串行接口搭配TI公司的立体声音频转换芯片PCM3008T,提供16 bit高质量的模拟音频编解码。在实际设计的电路中搭配了150 mW的音频功率放大器TPA6111,可实现高保真的立体声音频输出。
由于DM6446带有完整的图像处理子系统(VPSS),所以可以用其中的VPBE部分搭建VGA视频标准协议来传输数字图像信息。传输数字图像的基本原理是将视频数据流通过VPFE转换成模拟信号,通过VPBE模块将模拟信号分离出红、绿、蓝3种基色信号,分别输送给VGA接口,再由FPGA提供高频的场同步和行同步信号,从而实现视频数据流在显示设备上显示。
USB接口和SD/MMC接口可用来扩展移动式存储介质,比如U盘和SD卡,另外也可以作为无线网卡的接口来使用,从而实现无线局域网(WLAN)应用。
3.3 嵌入式系统与FPGA数字系统通信模块
软件无线电的一个重要难点是要如何解决高效的,在各种分布式异构平台和器件之间传输波形文件,所以嵌入式系统与FPGA数字系统通信模块的任务主要是解决DSP和FPGA这两个异构器件之间通信的问题。
TI公司的EMIF接口协议可以很好地解决这个问题。EMIF可以支持最大128 Mbyte的寻址空间,工作时钟速率高达100 MHz,提供8/16 bit的并行数据接口。本文在FPGA端利用逻辑资源建立ASRAM寄存器组,并利用DM6446的EMIF接口把FPGA作为一个外部存储器来使用。这样就可以在FPGA和DSP之间建立高速通信通道,传送一些数据量较大的通信数据。
TI公司提供了另一种高效的串行通信接口VLYNQ,它占用管脚数少,支持8/10 bit编码,工作在全双工模式下,总线时钟最高可达到125 MHz。利用Xilinx公司提供的VLYNQ的IP核,可以很方便地与DM6446建立通信链路,传送一些数据量较小的控制信令。
4 FPGA数字系统
FPGA数字系统主要完成3个部分工作:1)负责接收从嵌入式子系统中传输过来的数据以及控制信令,并把传送过来的数据封装成帧,生成数字基带信号波形。2)根据接收到的控制信令,对数字基带信号进行编码以及调制,实现对数字基带信号的数字上变频,并通过接口将上变频后的数字信号传送给中频A/D,D/A子板进行数模转换。3)接收从中频A/D,D/A子板经过模数转换的中频数字信号,对中频数字信号的载波和符号进行提取,从而实现对中频数字信号的数字下变频、解调以及解码,还原原始基带信号波形。
FPGA数字系统采用了Xilinx公司最新的Spartan-6系列FPGA。该系列产品具有许多过去系列不可比拟的优点。Spartan-6系列FPGA采用低功耗的45 nm工艺技术。每个可编程逻辑块(CLB)中的逻辑片(Slice)都由先进、高效、双寄存器的6-输入查找表(LUT)的逻辑结构组成,使得整体系统性能得到全面提高。芯片内置低功耗的250 MHz的DSP48A1 Slice和18×18 bit的乘法器,可以实现高速DSP应用。芯片拥有多条时钟管理管道,均包含2个DCM和1个PLL,并支持1 000 MHz的时钟技术[5]。
FPGA数字系统框图如图3所示,整个系统主要由编程配置和外围接口这两部分构成。对FPGA的编程配置主要通过编程选通电路来完成。
编程选通电路通过CS3与EMIF_A12这2个管脚取值来判决是否利用EMIF接口对FPGA进行重新配置。在对FPGA进行配置的同时也会自动配置SPI接口的Flash芯片W25Q64VSFIG,使得该系统具有掉电非易失的特性。外围接口部分除了包括外扩通用I/O接口、按键以及LED指示灯和JTAG编程接口以外,还预留了一个高速的FMC夹层卡接口[6]。该接口具有良好的抗电磁干扰特性,数据管脚可自由组合成最多68个独立的单端LVCMOS或者34对差分LVDS,差分LVDS的最高传输速率可达到10 Gbit/s。这个接口既可直接用于与下级子板通信,也可用于外扩其他功能子板,十分灵活。另外为了系统调试的方便,从FM接口的68个数据管脚中又引出20个管脚作为与中频A/D,D/A子板通信的通用插针DIP20接口。
5 小结
本文主要介绍了一种新型的SCA软件无线电数字系统主板的硬件结构与框架。该设计独立于PC自成一个系统,充分利用DaVinci嵌入式技术以及新型的FPGA技术来构建一个可移植主流操作系统,功能强大,具有较强灵活性的数字平台。目前该平台已制作成印制电路板,经过电路的调试以及软件的编程测试,证实上述方案是可行的。
[1]BARD J,KOVARIK V J.Software defined radio—the software com⁃munications architecture[M].[S.l.]:John Wiley&Sons Ltd,2007.
[2] 张起贵,张胜,张刚.最新DSP技术——“达芬奇”系统、框架和组件[M].北京:国防工业出版社,2009.
[3] 王艳艳,郅晨,张俊业.基于嵌入式Linux的DM6446编码器的设计[J].电视技术,2010,34(3):17-20.
[4] 叶志龙.基于TMS320DM6446的嵌入式视频系统设计[D].太原:太原理工大学,2007.
[5] 何宾.Xilinx可编程逻辑器件设计——技术详解[M].北京:清华大学出版社,2010.
[6] 孙航.Xilinx可编程逻辑器件应用与系统设计[M].北京:电子工业出版社,2008.