基于fpga的多路抽取复用滤波器的方法及装置的制造方法

文档序号:9754029阅读:739来源:国知局
基于fpga的多路抽取复用滤波器的方法及装置的制造方法
【技术领域】
[0001] 本发明涉及无线通信技术领域,具体涉及基于FPGA的多路抽取复用滤波器的方 法及装置。
【背景技术】
[0002] 数字下变频技术(Digital Down Converter-DDC)是无线通信系统的重要组成 部分,也是计算量最大的部分之一,由积分梳状滤波器(Cascade Integrator Comb,简称 CIC)、有限脉冲响应(Finite Impulse Responce,简称FIR)等数字滤波器组成。抽取滤波 器是数字滤波器中广泛使用的一种有效线性滤波器。由于抽取滤波器的输入和输出数据速 率具有线性的倍数关系,这样抽取滤波器就具有了多数率信号处理的特性,是实现数字通 信系统中接收机数字下变频的重要技术。
[0003] 在数字抽取时,为了防止数据混叠,需要在抽取前加入抽取滤波器。抽取滤波器是 基于FIR滤波器实现的,滤波器的输入为X (η),滤波器的输出为Υ (η),滤波器阶数为2M,则 抽取滤波器的计算公式为:
[0004]
[0005] 如图1所示,为当前多路FIR滤波器的框图。其中,滤波器的多路输入输出是交 织的,即输入为X〇 (η),XI (η)……,Χ0 (η+1),XI (η+1)……;输出也是一致的。L为同时计算 的路数,若同时计算8路(需要计算时钟为采样时钟的8倍),输入为X0 (η),XI (n),……, X7 (η),Χ〇 (η+1), XI (η+1),……,Χ7(η+1),……;框图中的L = 8。但多路FIR滤波器并没 有考虑抽取的特点,抽取滤波器不是所有点都要进行滤波器计算,只要进行需要抽取点的 计算即可。这种直接多路FIR滤波器的结构有冗余的计算。
[0006] 多相滤波器为滤波器常用的一种方式,多相滤波过程是,按照相位均匀划分把数 字滤波器的系统函数H(z)分解成若干个具有不同相位的组,形成多个分支,在每个分支上 实现滤波。设抽取滤波器阶数为2M(滤波器系数对称),抽取的倍数为N(N > 2, Μ为N的 整数倍)。对于抽取滤波器,滤波后抽取,只计算需要抽取的数据,即每Ν个数字计算一次, 采用多相滤波器的设计方法,滤波器公式修改为:
[0007]
123
[0008] 将每一相展开为:
[0012] 2 3
[0013] Υ (η) = Υ〇 (η) +Yj (η) +··· +ΥΝ j (η)
[0014] 其中:
[0015] coef〇(i) = {coef (N~l), coef (2Ν-1), ···, coef (2Μ-1)}
[0016] coef^i) = {coef (Ν~2), coef (2Ν-2), ···, coef (2Μ-2)}
[0017] ...
[0018] coefN1(i) = {coef (0), coef (0+Ν), ···, coef (2Μ-Ν)}
[0019] 由于滤波器的系数是对称的,即
[0020] coef (0) = coef (2M-1)
[0021] coef(l) = coef (2M-2)
[0022] …
[0023] coef (2M/2-1) = coef (2M/2)
[0024] 这样可以看出插值滤波器中每一相的计算系数并不是对称的,不能预加后乘法的 计算,这种方法乘法器应用是预加后乘法器应用的2倍。

【发明内容】

[0025] 针对现有技术的缺陷,本发明提供一种基于FPGA的多路抽取复用滤波器的方法 及装置,通过抽取滤波器各相系数的对称性对抽取滤波器的公式进行修改,从而使得修改 后的抽取滤波器采用预加的方法,节省了乘法器资源。
[0026] 第一方面,本发明提供了一种基于FPGA的多路抽取复用滤波器的方法,所述方法 包括:
[0027] 根据数据采样率和抽取滤波器的抽取倍数,获得各相滤波器的时延;
[0028] 根据抽取滤波器系数的对称性,对所述抽取滤波器的公式进行变换;
[0029] 根据变换后的抽取滤波器公式及各相滤波器的时延,得到优化后的抽取滤波器。
[0030] 优选地,所述根据数据采样率和抽取滤波器的抽取倍数,获得各相滤波器的时延, 包括:
[0031] 根据输入数据采样率及抽取倍数,采用如下公式计算得到抽取滤波后的采样速 率:
[0032] 输入数据采样率/抽取倍数=抽取滤波后的采样速率;
[0033] 根据现场可编程门阵列FPGA的时钟频率及所述抽取滤波后的采样速率,采用如 下公式计算得到每相滤波器的路数 :
[0034] 每相滤波器的路数=时钟频率/抽取滤波后的采样速率;
[0035] 根据所述每相滤波器的路数,确定各相滤波器的时延。
[0036] 优选地,所述根据所述每相滤波器的路数,确定各相滤波器的时延,包括:
[0037] 根据所述每相滤波器的路数L,及滤波器的阶数2M,得到:每相滤波器的前M/N-1 个数据的延时为L+1 ;第M/N个数据的延时为L ;其余数据的延时为L-1 ;
[0038] 其中,2,M为N的整数倍,且L为正整数。
[0039] 优选地,所述根据抽取滤波器系数的对称性,对所述抽取滤波器的公式进行变换, 包括:
[0040] 根据滤波器的阶数2M及抽取倍数N,得到抽取滤波器的公式,如下:
[0041]
[0042] 根据滤波器系数的对称性,对所述抽取滤波器的公式进行变换,得到变换后的抽 取滤波器公式:
[0043]
[0044] 其中,Υ (η)表示滤波器的输出,X (n-i*N-k)、X (n- (2M-1-i*N) +k)均表示滤波器的 输入,coef (i*N+k)表示滤波器的系数,2M为正整数,N彡2, Μ为N的整数倍,i,k均为大于 等于0的整数。
[0045] 优选地,所述根据变换后的抽取滤波器公式及各相滤波器的时延,得到优化后的 抽取滤波器的步骤后,所述方法还包括:
[0046] 将各相抽取滤波器的输出相加,得到优化后抽取滤波器的最终计算结果。
[0047] 第二方面,本发明提供了一种基于FPGA的多路抽取复用滤波器的装置,所述装置 包括:
[0048] 时延获取模块,用于根据数据采样率和抽取滤波器的抽取倍数,获得各相滤波器 的时延;
[0049] 变换模块,用于根据抽取滤波器系数的对称性,对所述抽取滤波器的公式进行变 换;
[0050] 优化模块,用于根据变换后的抽取滤波器公式及各相滤波器的时延,得到优化后 的抽取滤波器。
[0051] 优选地,所述时延获取模块,具体用于:
[0052] 根据输入数据采样率及抽取倍数,采用如下公式计算得到抽取滤波后的采样速 率:
[0053] 输入数据采样率/抽取倍数=抽取滤波后的采样速率;
[0054] 根据现场可编程门阵列FPGA的时钟频率及所述抽取滤波后的采样速率,采用如 下公式计算得到每相滤波器的路数 :
[0055] 每相滤波器的路数=时钟频率/抽取滤波后的采样速率;
[0056] 根据所述每相滤波器的路数,确定各相滤波器的时延。
[0057] 优选地,所述时延获取模块,还用于:
[0058] 根据所述每相滤波器的路数L,及滤波器的阶数2M,得到:每相滤波器的前M/N-1 个数据的延时为L+1 ;第M/N个数据的延时为L ;其余数据的延时为L-1。
[0059] 优选地,所述变换模块,具体用于:
[0060] 根据滤波器的阶数2M及抽取倍数N,得到抽取滤波器的公式,如下:
[0061]
[0062] 根据滤波器系数的对称性,对所述抽取滤波器的公式进行变换,得到变换后的抽 取滤波器公式:
[0063]
[0064] 其中,Υ (η)表示滤波器的输出,X (n-i*N-k)、X (n- (2M-1-i*N) +k)均表示滤波器的 输入,coef (i*N+k)表示滤波器的系数,2M为正整数,N为正整数,i,k均为大于等于0的整 数。
[0065] 优选地,所述装置还包括:
[0066] 相加模块,用于将各相抽取滤波器的输出相加,得到优化后抽取滤波器的最终计 算结果。
[0067] 由上述技术方案可知,本发明提供一种基于FPGA的多路抽取复用滤波器的方法
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1