软件无线电以其极强的灵活性和开放性代表着无线通信系统的发展趋势。其思想是以一个通用、标准、模块化的硬件平台为依托,通过软件编程实现无线通信系统的各种功能。
软件无线电提倡功能软件化,要求减少模拟环节。对接收机而言,则要求模/数转换器尽可能靠近天线。在现阶段,由于各种关键器件发展水平的限制,高频信号的直接数字化及其数据处理在成本上还不合算,因此数字中频软件无线电加上少量的高频模拟前端正成为理想软件无线电的一种经济、适用的选择。本数字中频接收子系统是基于数字下变频器DDCAD6620和数字信号处理器DSPTMS320C6701构建的。
1 总体设计
1.1 系统组成与信号处理流程
系统基本结构如图1所示。单片机实现数字下变频器的引导和初始化;高速ADC根据频率源Encode输入的时钟信号对输入信号进行过采样,并通过并行数据线向数字下变频器输出采样结果;数字下变频器根据单片机输入的数据设定数控振荡器NCO频率值、抽样率以及数字滤波器系数,据此对采样数据进行下变频、降低数据率和低通滤波处理,并通过串口将数据提供给DSP进行处理。
下面以一个实例说明信号处理流程。假设输入的中频信号的中心频率为456kHz,带宽为20kHz,fL、fH分别表示频率下限和上限,fL为446kHz,fH为466kHz。
如果如用Nyquist 带通采样定理采样并设采样频率为fs,则要求:
其中,n的取值应满足fs≥2(fH-fL)时的n的最大值。
取n为20,则带通取样频率为40.53kHz。如图2所示,(a)表示原始信号频谱,(b)表示以40.53kHz的采样频率采样后的信号频谱。对于处理信号而言,由于实际的20kHz带外还存在递减的干扰信号,倘若以40.53kHz采样率进行采样,就会出现较强的频谱混叠。
若用ADC对信号进行20MHz过采样,则如图2(c)所示,相邻信号频谱之间的间隔大大加宽,可充分避免频谱混叠。
本系统采用高速A/D转换芯片进行20MHz高速采样,输出的数据率为20MBPS。在目前的技术条件下,倘若过高的数据率直接输出给DSP,会占用DSP很多不必要的开销,所以需加入数字下变频器,在DSP前端将数据率降低。数字下变频器的主要功能有3个:(1)变频,将感兴趣的信号的中心频率变至零中频;(2)滤波,滤除带外干扰信号;(3)数率转换,通过降低数率,提供利于后续电路处理的低速数据。
1.2 硬件电路设计
系统的硬件电路设计如图3所示。
数/模转换器采用的是AD公司生产的AD6600[1],它具有同时处理两路信号的能力。系统中Main Input向数/模转换器AD6600输入中频模拟信号,Encode给AD6600提供20MSPS的采样时钟。AD6600采样后的结果通过并行数据线输出给数字下变频器,并行数据线包括11位数据线和3位RSSI信号线(指数位)。
数字下变频器选用AD公司生产的AD6620[2]。如图3所示,AD6620的时钟信号是通过CLK由AD6600提供的。AD6600和AD6620都有两个数据通路A和B,具有同时处理两路信号的能力,它们通过A/B选择线协调相互间的工作模式。当AD6600只有一路信号需处理时,A/B选择线还可以用作输出数据的同步信号线。本例中仅有一路信号需要处理,所以只占用AD6600和AD6620的一个信号处理通路。由于AD6620的时钟信号CLK由AD6600直接提供,CLK同时起到了同步的作用,因此无需A/B用作同步信号线。在本系统中,本可将A/B拉高(当AD6600选择A通路时)或接地(当AD6600的选择B通路时)。但考虑到系统的通用性,还是将AD6600 A/B和AD6620的A/B相连。AD6620的输入时序如图4所示。
在本例中,由单片机8031通过P1、P2口对AD6620的并行设置端口microport 进行设置。AD6620通过串口SDO向DSP输出处理后的数据。由图3可见,AD6620的SDM接地,此时同步信号SCLK是由DSP传给AD6620的。在这种情况下,用DVout来提示当前信号有效。SDFS表示数据帧的开始,在从模式下,该信号从DSP输入,AD6620在每个时钟周期的下降沿检测它。AD6620的输出时序如图5所示。首先,AD6620的DVout引脚给DSP一个2~4个时钟周期的高电平信号通知DSP当前数据有效,然后DSP发回一个确认信号SDFS,表示一帧信号的开始。AD6620检测到SDFS为高电平后,在下一个时钟周期的上升沿开始输出信号。
DSP采用TI公司的TMS320C6701[3]。TMS320C6701包含8个并行的处理单元,采用甚长指令字(VLIW)结构,芯片最高时钟频率可达300MHz,最大处理能力可达2400MIPS。在本系统中,TMS320C6701的中断源INT4检测到中断信号以后,就会做好接收数据的准备,由FSR发出数据帧的帧同步信号,并由SCLK给出同步时钟,从DR输入信号。TMS320C6701对输入数据进行处理的程序的前几条指令放在中断源INT4在中断服务表中的中断服务取指包中。如果中断服务太长而不能放到一个取指包内,则加上一条跳转指令跳转到别的位置。
2 关键技术
AD6620内含四个信号处理单元:一个频率转换器、两个固定系数抽样滤波器CIC2、CIC5(抽样率可选)和一个可编系数抽样滤波器。通过对AD6620这四个信号处理单元参数的不同设置,能使系统以同一套硬件实现不同输入情况下的接收功能。
在上面所给的实例中,AD6620在系统中的作用是把数据率降至20kBPS,把456kHz中频信号变成零频信号,并对信号进行低通滤波处理。下面对实例中AD6620的重要参数设置进行讨论。
2.1 振荡器频率值的设定
AD6620中的频率转换器接收初始化时写入的信号频率值,并据此对输入信号进行下变频。实例中输入信号的中心频率fCH为456kHz,采样频率fSAMP为20MHz。写入AD6620的频率值是一个32位的无符号整型数,由下式确定:
代入fCH和fSAMP,可得NCO_FREQ的二进制表示为101110101100011100010000110。
2.2 抽样率的选择
在本例中,AD6620需将20MBPS数据率降至20kBPS,总的抽取因子为1000。由于第一个抽样滤波器的抽样因子MCIC2可以设为2、3...16中的任何一个,第二个抽样滤波器的抽样因子MCIC5可以设为1、2...32中的任何一个,可编系数抽样滤波器RCF的抽样因子MRCF可以设为1、2...32中的任何一个,所以由:
MCIC2×MCIC5×MRCF=1000
可取得MCIC2为10,MCIC5为25,MRCF为4。
2.3 滤波器系数的设计
经过前面梳状滤波器的处理,在一定程度上抑制了干扰信号,但对于有更高通道要求的应用还不够理想。AD6620内部的系数可编程滤波器FIR可用来解决这一问题。
FIR滤波器设计的目标是:尽可能让10kHz的低通目标信号通过,并抑制带外干扰信号。从滤波器幅频特性曲线的角度来说,要求通带波动尽可能小;通带宽度尽可能与信号带宽10kHz相等,过渡带尽可能锐利;阻带衰减尽可能大。通常FIR滤波器的阶数越高,幅频特性越好。AD6620提供的FIR最高可达255阶,具体选择多少要根据具体情况讨论决定。
实例中使用窗函数设计法[4](或称傅立叶级数法)确定数字滤波器系数,即由理想的滤波器频率响应Hd(ω)经傅立叶反变换导出hd(n),然后用一个有限长度窗函数序列w(n)截取。
由于输入给可编系数滤波器的数据经过了CIC2和CIC5两次抽样,且抽样因子MCIC2为10,MCIC5为25,因此此时输入数据的采样频率fS为:
因为截止频率为10kHz,所以数字域截止频率ωC为:
这表明在通带|ω|≤ωc范围内,Hd(ejω)的幅度是均匀的且其值为1,相位是-ωα。
由此可得
取w(n)=RN(n),按照线性相位滤波器的约束,h(n)必须为偶对称,对称中心长度应为长度的一半(N-1)/2,且α=(N-1)/2。取N=255,则α=127。则滤波器的系数为:
本文介绍的基于AD6620和TMS320C6701的数字中频软件无线电接收子系统,作为中频软件无线电平台,适合于大部分通信和雷达的窄带处理。