分享

用FPGA设计软件无线电和调制解调器

 专注模拟 2014-12-18
以方便地定义为:cos(wC*t) = 1, 0, -1, 0和sin(wC*t)= 0, 1, 0, -1 ,1。
   
       调制输出既不需要任何乘法或加法,也不需要每隔50ns计算一次I、Q滤波器响应。50 ns计算一个I响应接着在下一个50 ns计算一个Q响应,然后再计算I响应、Q响应,周而复始。

  分布式计算(DA)技术
   
       DA是专门针对乘积和方程的一种计算技术,方程中的一项乘积因子是常数。DA设计可实现门级高效率、串行位算法及高性能位并行运算,它是经典的串/并综合方案。DA技术可应用于很多重要的线性、时不变数字信号处理算法,如滤波器(FIR和IIR)、变换(快速傅立叶变换[FFT])及矩阵向量乘积,如8 x 8离散余弦变换(DCT)。
    
       二十多年前就有了DA技术,已经证实它不适于可编程DSP的定点指令集结构。然而,DA非常适于FPGA实现,尤其是如Xilinx CLB的LUT逻辑模块。用Xilinx XC3000系列的FPGA设计DA FIR滤波器早在1992年就已提出。
   
       DA电路中没有独立的乘法器。乘法是由LUT完成的。DA预存一个方程式中所有部分乘积项的和,并且根据所有输入变量位查表(此处为DALUT)运算。串行DA电路有一个独立的DALUT,它从最低的有效位开始查表。部分乘积的输出和存储在累加器中,这种方法让我们想起了早期计算机中的移位相加子程序,连续的DALUT输出累加到部分乘积的二进制下移累加和中。这样可得到一个真正的双精度结果。

 

  滤波器的实现
   
       平方根升余弦滤波器的数据通道由已可转换为CLB的标准功能模块定义。每隔200ns将映射器输出的3比特I、Q信号传至并串转换移位寄存器(PSR)。RAM移位寄存器(SR)链中存储了七个先前的码元。前三个滤波器响应Y b , Y c , Y d与移位寄存器中的循环数据一起运算。PSR还需要一个反馈通道,但RAM SR在只读时循环受到模块寻址的影响。这里的模块有六个,前三次移位用于Y b,紧接着的三次用于Y c,最后三次则是用于Y d。在计算Y e时,数据沿SR链下移。这种模块寻址模式随着前级传输(写)的数据不断重复。所有十二次移位和相应的PSR加载、RAMSR寻址及写控制都来源于60MHz系统时钟。
    
       由于相同的系数组要用于两个采样周期,一个用于I通道数据计算,另一个用于Q通道数据计算,用一组DALUT和2/1复用器将串行数据流导向相应的地址端口。这些端口可以表示DALUT的

 

结构。h 3端口的逻辑高电平选择部分乘积和包含h 3的所有内存地址。与此类似,h 7端口的逻辑高电平选择所有包含h 7的所有地址,h 3和h 7端口的逻辑高电平选择所有包含h 3和h 7的地址。剩余的六个系数仍采用这种模式。事实上,八个系数将需要2 8或256个字存储。对于12比特系数的情况,将需要 (每个CLB为256/32 字) x 12 = 96 个CLB。另一个诀窍是使用两个DALUT,每个需要四个系数并增加它们的输出。这样CLB的数目则减少到(2 x 24)/32 x 12 + 13/2 (并行加法器) = 18.5 个CLB.
   
       同样的简化也可用到以h 1开始的第二套滤波器系数中。采用2/1复用器可分时共享并行加法器。该加法器扩展为13个比特后,输入到前述执行移位和加法运算的标量累加器。当输入变量的符号位传输给DALUT时,就进行减运算。此过程可通过在DALUT输出增加EXOR门并向累加器第一级进位的标准方法来完成。对于负响应Y d和Y e,数据采样可不管符号位,而对所有的DALUT输出数据取反来求补。
   
      对于分数二进制补码格式的I、Q数据,滤波器系数要进行调整以防在最后输出中溢出。十个最高有效位可加载到D/A转换驱动寄存器中。
   
       滤波器数据通道的CLB总数为71.5个,FPGA输出端口带有触发器,可作为D/A转换的驱动寄存器。算上编码器(31个CLB)及定时和控制功能(估计要少于50个CLB)在内,总数大约为159个CLB,正好可置于Xilinx XC4000系列中较小(稍大于最小)的芯片中,即XC4005 (196个CLB)。如果采用Xilinx Virtex等更高级的FPGA器件,则可减少CLB的数量并提高性能。

  整个设计可确保60MHz系统时钟条件下的性能。数据流采取统一形式且单向传输。可以插入管道寄存器(不增加CLB)以缩短组合路径。通过标量累加器的十四级的进位链是最长的组合路径。然而,通过内置预进位电路可确保足够的速度余量。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多