可编程逻辑
1 引言
在基站的模拟测试系统中,终端控制子系统负责生成上行测试数据并将其发送到被测基带板,测试基带板上行接收的功能及性能;同时根据后台控制采集下行发射的基带数据并送后台进行分析,测试其发射功能。而FPGA部分属于终端控制子系统的前台部分,负责IQ数据的发送及采集,基带测试板的功能主要在这里面实现。
整个系统的速率瓶颈在网口上,由于基带数据速率很高,每根逻辑天线的数据数率达122.88Mbps,而FTP传输数据的速率远远不够,故采用FPGA将高速基带数据缓存在板上的SDRAM中,可以很好的解决速率相差很大的接口问题。同时其开发周期较短,系统易于维护和扩展,无需改动硬件设计。
2 方案技术要点
2.1 基带测试板概述
2.1.1 CPU模块
CPU模块是基带测试板的控制中心,实现:
和后台计算机通讯
加载FPGA
总体控制基带测试板的工作
CPU模块的核心是MOTOROLA 的POWER QUICC II系列的 MPC8270处理器。CPU的60X BUS外挂:
16Mx64 SDRAM。
8Mx16 FLASH。存储FPGA数据和应用程序。
512Kx8 FLASH。作为BOOT ROM,存储BOOT程序和VxWorks操作系统。
FPGA的CPU接口。
CPU通过PHY芯片,实现3个以太网口,其中2个用来和后台通讯一个和主控板通信。
2.1.2 FPGA模块
FPGA模块是基带测试板的拓扑中心节点,实现:
将后台生成的上行测试数据写入SDRAM,并按CPU配置的图样发送到指定的发射端口。
根据CPU的配置,采集特定时间段的接收端口的数据,完成之后通过CPU送给后台PC进行处理
和CPU模块通讯
SDRAM的读写控制
FPGA模块的核心是1片FPGA芯片,主要外部接口包括:
CPU接口。用来和MPC8270通讯。
LVDS接口。用来和背板接口模块的LVDS器件通讯。
SDRAM接口。用来和数据缓存模块的内存条通讯。SDRAM时钟由时钟电源模块提供。
测试用接口。
2.1.3 数据缓存模块
数据缓存模块由8条512MB SDRAM内存条构成4GB的大容量存储器,用来缓存天线数据。8片内存条的16根片选信号由FPGA分别提供;其它信号,包括地址、数据、字节使能、时钟等共用。
2.1.4 时钟电源模块
时钟电源模块为基带测试板的其它模块提供电源和各个时钟信号。
FPGA时钟:100MHz
MPC8270时钟:100MHz
以太网时钟:25MHz
3 本方案中FPGA的设计思路
我们将整个FPGA主要分为4个大的模块:发送处理模块,接收处理模块,时钟/寄存器模块,SDRAM控制模块。FPGA的上下行接收模块功能框图如图2:
上面的处理包括4个过程如下:
1. 将CPU写入到DPRAM中的数据写入SDRAM,此过程反复执行,所有数据写完为止;
2. 按照CPU配置的发送图样,连续从SDRAM相应地址中读取数据,经过复用后发送到发送端口;
3. 按照CPU配置将接收端口的数据进行解复用,然后通过DPRAM将数据存入SDRAM.
4. 数据采集完成后,将缓存在SDRAM中的数据通过DPRAM上报给CPU;
3.1 发送处理模块
发送处理模块主要包括上面处理过程1,2。其完整的流程如下图3:
发送模块主要处理将后台生成的上行测试数据发射出去,送到被测基带板,故发送处理模块需要按照被测基带板上行接收的格式进行复用。上行处理过程是:先从SDRAM中读出数据缓存在双口RAM中,然后对其进行升采样(简单重复)及复用操作,最后加flag和parity bit后,由原来的下行发送端口送出。在循环发送上行数据前,与CPU配合,要将后台生成好的数据写入SDRAM中;另,在将数据从SDRAM中读取到DPRAM中时,需要按照CPU配置的发送图样(即数据块的发送顺序)进行。其中发送图样可以灵活配置,具体实现可以采用乒乓DPRAM的方法。
3.2 接收处理模块
接收模块包括处理过程3,4。图4是采集数据上报的流程图:
接收处理模块完成的主要功能是根据CPU配置的数据采集范围(若干帧),在SFN等于配置的开始SFN时,将来自被测基带板的若干帧下行发射数据采集到SDRAM中缓存;采集完成之后,再上报给CPU,最后由CPU将缓存数据上报给后台进行分析。
3.3 时钟/寄存器模块
时钟/寄存器模块根据输入的16chip时钟和从时钟板送来的串行帧号,产生内部其他模块使用各种时钟、帧信号。板内时钟与16chip时钟上升沿对齐。帧信号周期为10ms,是负脉冲,宽度为1/16chip,在1chip上升沿变化。提供寄存器接口,由CPU控制,提供告警中断等。本模块还根据输入的100Mhz时钟产生外接SDRAM用的时钟。
3.4 SDRAM控制
主要根据发送采集等模块的状态来控制SDRAM控制器的输出,产生SDRAM需要的/CS、/RAS、/CAS、/WE等各种控制信号,从而对SDRAM进行操作。
4 器件说明
综合考虑速度和资源,FPGA芯片我们选用了Altera公司Stratix系列的EP1S20F780C7。这个芯片是780Pin FineLine BGA封装,最多可用IO587个,具有逻辑单元18460个,内部有194个块M512 RAM、82个块M4K RAM、2个块M4Kx144 RAM (可灵活配置为不同的数据口宽,但是容量不变)。Stratix系列内核采用1.5V供电,IO支持1.5V/1.8V/2.5V/3.3V多种接口标准,支持高速外部存储器接口,包括ZBT,QDRSDRAM,DDRSDRAM,FCRAM和SDRAM。为了与单板其他部分配合,我们IO选用了3.3V供电。图5显示该芯片能够满足需求。
5 结论
实践结果证明,该方案设计的基带测试系统能够同时采集和发送12个逻辑天线的数据,完全能够满足测试的需要。
本设计充分利用了FPGA并行处理多路信号和处理高速数据的能力,通过对SDRAM的控制来实现速率相差很大的后台与测试环境之间的数据交换。不失一般性,该设计的思路也可以推广到其他测试和应用场合。
责任编辑:gt
全部0条评论
快来发表一下你的评论吧 !