高效FPGA乘法器在无线基站中的使用
基于WiMax及其派生标准的新兴宽带无线协议需要越来越高的吞吐量和数据速率。这些协议提出的快速芯片速率和数字射频处理可以在使用FPGA方案的硬件上得到最佳的实现。FPGA非常适合作为高性能、高性价比的解决方案来实现这些物理层协议中的数字功能,因为它们包括以下丰富的资源:
1.DSP模块,可以用来实现各种FIR滤波和FFT/IFFT操作所要求的乘法器和加法器/累加器功能;
2.SERDES收发器,可以支持无线前端与基带数字板之间的CPRI和OBSAI接口;
3.重要的FPGA嵌入式RAM块存储器(EBR),可以用来存储滤波器系数,执行块交错以及实现FEC解码(Turbo、维特比、Reed-Solomon等);
4.高速LVDSI/O,分别支持到DAC和来自ADC的宽并行接口。这些转换器定义了射频/模拟功能和廉价数字基带逻辑之间的界限。接口的速率越高,低成本FPGA解决方案便能集成更多的数字上变频/数字下变频功能。
本文重点讨论第一种资源,即DSP乘法模块。通过减少和优化DSP乘法模块在FFT和FIR中的实现,设计师可以在尽量减少资源使用的条件下满足吞吐量要求,从而允许用户使用最具性价比的现成FPGA器件。下面对这四种乘法器节省技术进行介绍。
用于WiMaxOFDM功能的高效复数乘法
WiMax系统设计的一个重要特征是支持正交频分复用(OFDM)。FPGA使得分别使用IFFT和FFT在离散时间内实现OFDM发送器和接收器变得特别容易。诸如802.16a等协议需要256样点的FFT。而802.16e这些协议要求多种FFT样点,或者可以灵活调整的FFT样点以适应动态信道和带宽要求(可扩展OFDMA)。
复数乘法
在执行256和1024样点FFT时,可通过Radix-4结构获得乘法器的最高效使用。FFT算法通过复用4样点离散傅里叶变换(DFT)蝶形结构进行分解。例如,一个16点的FFT可以通过按时间抽取、按频率抽取或其他相关分解方式用2级Radix-4DFT结构实现。第1级由4个4样点DFT组成,第2级同样由4个4点DFT组成。由于每个DFT的输出要求在馈送给下一级之前为结果提供3个相位因子,因此第1级和第2级之间的9个相位因子需要9次复数乘法。
初看起来,执行一次复数乘法需要4个乘法器和2个加法/减法器。然而,该表达式可以重新写成另外一种只需3个乘法器、3个加法器和2个减法器的表达式。值得注意的是,加法器是在FPGA的内核逻辑中实现的,使用了丰富的逐位进位模式(ripplemode)的通用可编程逻辑单元(PLC)片。
如果D=Dr+jDi是复数数据,C=Cr+jCi是复数系数,那么复数乘法的标准表达式如下:
E1:R=D*C=(Dr+jDi)*(Cr+jCi)=Rr+jRi(1)
其中Rr=Dr*Cr-Di*Ci,Ri=Dr*Ci+Di*Cr
上述标准表达式要求使用4个乘法器。该表达式可以通过代数方法重新整理为:
E2:Rr=Dr*Cr-Di*Ci(2)
E3:Rr=Dr*Cr-Di*Ci+0(3)
E4:Rr=Dr*Cr-Di*Ci+(Dr*Ci-Di*Cr)-(Dr*Ci-Di*Cr)(4)
E5:Rr=(Dr*Cr-Dr*Ci+Di*Cr-Di*Ci)+(Dr*Ci-Di*Cr)(5)
复数结果的新表达式是:
高效FPGA乘法器在无线基站中的使用 高效FPGA乘法器在无线基站中的使用 高效FPGA乘法器在无线基站中的使用
页:
[1]