[发明专利]基于相同FPGA乘法器资源实现的任意抽取数字下变频方法有效
申请号: | 201210590839.6 | 申请日: | 2012-12-28 |
公开(公告)号: | CN103078592A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 袁子乔;刘翔;王辉辉 | 申请(专利权)人: | 西安电子工程研究所 |
主分类号: | H03D7/00 | 分类号: | H03D7/00 |
代理公司: | 西北工业大学专利中心 61204 | 代理人: | 王鲜凯 |
地址: | 710100 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于相同FPGA乘法器资源实现的任意抽取数字下变频方法,充分利用FPGA的内部资源,使用移位寄存器进行数据顺序的改变,将两路一倍数据率的数据变换成一路两倍数据率的数据,按照系数对称的原则进行预加处理。使用相同的乘法器资源,在不同抽取率条件下复用这些乘法器,以实现不同抽取率的数字下变频运算,抽取率可为任意整数。本发明的优越性在于:使用相同的乘法器资源实现不同抽取的数字下变频处理;抽取率可以为任意整数。 | ||
搜索关键词: | 基于 相同 fpga 乘法器 资源 实现 任意 抽取 数字 变频 方法 | ||
【主权项】:
一种基于相同FPGA乘法器资源实现的任意抽取数字下变频方法,其特征在于步骤如下:步骤1:将XMHz数据率的数据与数字本振产生的正弦相乘得到混频后的数据Imix(0),与数字本振产生的余弦数据相乘得到混频后的Qmix(0);步骤2:采用移位寄存器对数据Imix(0)进行N个XMHz时钟周期的延时,得到Imix(1N);所述N为抽取率;采用移位寄存器对数据Imix(1N)进行N个XMHz时钟周期的延时,得到Imix(2N),采用同样的方法分别得到Imix(3N)、Imix(4N)、Imix(5N)、Imix(6N)、Imix(7N)、Imix(8N)、Imix(9N)、Imix(10N);所述N为抽取率;步骤3:使用可变延时的移位寄存器,以输入的Imix(9N)数据中的N个数据为一组,奇数组与相邻的偶数组相互交换,得到输出数据Imix(11N);步骤4:采用移位寄存器对数据Imix(11N)进行N个XMHz时钟周期的延时,得到Imix(12N),采用同样的方法分别得到Imix(13N)、Imix(14N)、Imix(15N)、Imix(16N)、Imix(17N)、Imix(18N)、Imix(19N)、Imix(20N);步骤5:产生系数对称的20N阶抽取滤波器权系数,将其中系数的第1~2N存在只读存储器ROM1中、系数的第2N+1~4N存在只读存储器ROM2中、系数的第4N+1~6N存在只读存储器ROM3中、系数的第6N+1~8N存在只读存储器ROM4中、系数的第8N+1~10N存在只读存储器ROM5中;步骤6:以两倍速率时钟2XMHz为时钟,以复位信号sclr上升沿为起始,同步计数产生数据选择信号sel信号、flag信号以及滤波器系数读地址raddr;当sel信号为0时,I2x(1N)等于Imix(1N)、I2x(1N)等于Imix(3N)、I2x(3N)等于Imix(5N)、I2x(4N)等于Imix(7N)、I2x(5N)等于Imix(9N)、I2x(6N)等于Imix(11N)、I2x(7N)等于 Imix(13N)、I2x(8N)等于Imix(15N)、I2x(9N)等于Imix(17N)、I2x(10N)等于Imix(19N);当sel信号为1时,I2x(1N)等于Imix(2N)、I2x(1N)等于Imix(4N)、I2x(3N)等于Imix(6N)、I2x(4N)等于Imix(8N)、I2x(5N)等于Imix(10N)、I2x(6N)等于Imix(12N)、I2x(7N)等于Imix(14N)、I2x(8N)等于Imix(16N)、I2x(9N)等于Imix(18N)、I2x(10N)等于Imix(20N);步骤7:将I2x(1N)、I2x(10N)送给乘法器模块1的A和D端,I2x(1N)对应的滤波器系数送给乘法器模块1的B端;所述的乘法器模块1为实现(A+D)×B以及(A+D)×B+P运算的乘法器模块;所述滤波器系数根据滤波器系数读地址raddr从只读存储器ROM1中读出,flag为1时进行(A+D)×B运算,flag为0时进行(A+D)×B+P;将I2x(2N)、I2x(9N)送给乘法器模块2的A和D端,I2x(2N)对应的滤波器系数送给乘法器模块2的B端;所述的乘法器模块2为实现(A+D)×B以及(A+D)×B+P运算的乘法器模块;所述滤波器系数根据滤波器系数读地址raddr从只读存储器ROM2中读出,flag为1时进行(A+D)×B运算,flag为0时进行(A+D)×B+P;将I2x(3N)、I2x(8N)送给乘法器模块3的A和D端,I2x(3N)对应的滤波器系数送给乘法器模块3的B端;所述的乘法器模块3为实现(A+D)×B以及(A+D)×B+P运算的乘法器模块;所述滤波器系数根据滤波器系数读地址raddr从只读存储器ROM3中读出,flag为1时进行(A+D)×B运算,flag为0时进行(A+D)×B+P;将I2x(4N)、I2x(7N)送给乘法器模块4的A和D端,I2x(4N)对应的滤波器系数送给乘法器模块4的B端;所述的乘法器模块4为实现(A+D)×B以及(A+D)×B+P运算的乘法器模块;所述滤波器系数根据滤波器系数读地址raddr从只读存储器ROM4中读出,flag为1时进行(A+D)×B运算,flag为0时进行(A+D)×B+P;将I2x(5N)、I2x(6N)送给乘法器模块5的A和D端,I2x(5N)对应的滤波器系数送给乘法器模块5的B端;所述的乘法器模块5为实现(A+D)×B以及(A+D)×B+P 运算的乘法器模块;所述滤波器系数根据滤波器系数读地址raddr从只读存储器ROM5中读出,flag为1时进行(A+D)×B运算,flag为0时进行(A+D)×B+P;步骤8:将flag信号产生时延时N个周期得到有效信号fir_v,当fir_v为1时,将五个乘法器的输出数据P1、P2、P3、P4和P5进行求和得到任意抽取的DDC的I路输出;以Qmix(0)数据替换Imix(0),按照步骤2~步骤8的处理方法,得到任意抽取的DDC的Q路输出。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子工程研究所,未经西安电子工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210590839.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种宫颈止血钳
- 下一篇:一种普外科手术用荷包钳