数字上变频/下变频(DUC/DDC)是数字中频设计的重要组成部分,其功能是将基带信号经过内插滤波后变到中频的频率,或者将中频的信号经过抽取滤波后降到基带的频率上。本文的主要目的就是介绍多天线多载波数字上下变频的FPGA实现方法,以及Altera提供的一种数字信号处理的工具,DSP BUILDER。
DUC/DDC的实现架构
以TD-SCDMA的DUC/DDC为例,基带频率1.28MHz, 4天线9载波,60倍上变频,30倍下变频的情况下,DUC的架构如图1所示
图1,DUC的架构图。
首先4天线9载波,每个载波分IQ两路,一共4×9×2=72个通道,这72个通道的数据先由duc_input_mux模块复合到一路上,输入到 duc_rrc_filter上,做2倍内插以及根升余弦滤波,这是一个121阶的滤波器;输出结果分成4路,分别送到4个int5_filter(61 阶)模块中,做5倍内插及补偿滤波;这4个滤波器的输出再被分成24路,送进int6_filter(41阶)模块中,做6倍内插及滤波;其结果进入混频 模块mixer,与NCO产生的中频信号混频后作为最终结果输出。
图2 ,DDC的架构如图
DDC的架构如图2所示,对DDC而言,入口是4个天线下来的数据,经过混频器区分到不同频点上,再由抽取滤波器dec5_filter(41阶)做5 倍抽取以及滤波;结果复合到3路上,由3个dec3_filter(61阶)做3倍抽取滤波;最后由ddc_rrc_filter(121阶)做两倍抽取 以及滤波。
我们可以看出,对DUC/DDC而言,主要模块是FIR滤波器、混频器、以及数控振荡器NCO,复用解复用逻辑占用的资源非常小。滤波器占用了大 部分资源,包括查找表、寄存器、RAM、乘法器。因此优化滤波器设计,以节省资源,用尽量小规模的FPGA实现更多通道的数字上下变频,成为主要的实现难 度。
DSP-BUILDER简介
DSP-BUILDER是Altera Corporation的一种设计工具,可以把它看作MATLAB SIMULINK和FPGA实现软件QUARTUS II之间的一个桥梁。简单来说,在SIMULINK环境下,调用DSP-BUILDER提供的库元件,搭建的这么一个数学模型系统,不仅可以在 MATLAB中仿真,还能直接生成一个ALTERA FPGA的工程,综合布局布线后上硬件验证。这里有一点是要强调的,只能调用DSP-BUILDER中的库元件才能生成一个可以综合实现的工程。
1、 DSP-BUILDER8.0以后的版本,提供了一个新的ADVANCED BLOCK的特性,用这个新特性产生的FIR滤波器,较之以往的版本,在资源优化方面有了巨大的改进。
2、 自动插入流水。只需要设置好相应参数,如时钟频率,目标器件,复用倍数等,它会在使用尽量少的资源并且满足时序的情况下,自动判断是否加入PIPELINE。
3、 系统层面的设计。它生成的所有模块,包括FIR滤波器,都有一组系统接口,可以通过不同地址对内部寄存器,如系数等,进行访问。
4、 自动实现资源复用。在时钟复用关系确定后,它能自动实现资源复用,使设计者从繁琐的优化工作中解放出来,专注于系统层面的设计。
整个设计的FPGA实现的资源以及功耗
这个4天线9载波的设计在Altera Corporation 的3SE80F1152I3上实现,工作频率为180倍基带速率时钟,即230MHz。内核静态功耗为734.58mW,内核动态功耗为 2705.63mW,IO功耗为236.82mW,全部功耗加起来为3677.04mW。
3SE80是ALTERA CORPORATION的65nm产品STRATIX III中的一款。这一系列产品在设计过程中考虑了很多功耗优化的因素,因此功耗特性比较好。比如内核电压,它是0.9V/1.1V可选,上述设计用的是 1.1V电压,如果用0.9V的话,功耗还可以再降低30%。但有一点需要客户注意,使用0.9V电压的话,整个设计的时序会降低15%左右。
|