一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法技术

技术编号:28033791 阅读:26 留言:0更新日期:2021-04-09 23:15
本发明专利技术公开了一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,是为了解决在用FPGA等可编程逻辑器件实现频率合成器控制时的频率合成器参数计算问题。本发明专利技术方采用了移位、置位和减法运算,在可编程逻辑器件中可以快速完成频率合成器控制参数的计算,并且占用可编程逻辑器件资源很少。本发明专利技术的所有操作通过移位、置位和一个减法进行,计算效率高,占用资源少。便于通过可编程逻辑器件实现。根据频率合成器计算公式,使A=f

【技术实现步骤摘要】
一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法
本专利技术涉及频率合成器控制参数计算方法,更具体地说是一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法。
技术介绍
频率合成器在无线通信中有着不可或缺的地位,大多数无线通信设备中的频率合成器控制都是通过可编程逻辑器件来实现,如何快速精确的使用可编程逻辑器件计算频率合成器的控制参数就成为一个相当重要的问题。所以急需一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,来解决目前的问题。
技术实现思路
为了克服现有技术的上述缺陷,本专利技术提供一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,是为了解决在用FPGA等可编程逻辑器件实现频率合成器控制时的频率合成器参数计算问题。本专利技术方采用了移位、置位和减法运算,在可编程逻辑器件中可以快速完成频率合成器控制参数的计算,并且占用可编程逻辑器件资源很少。为实现上述目的,本专利技术提供如下技术方案:一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,包括以下方法:频率合成器的芯片通过可编程逻辑器件来实现控制时序和参数计算,采用频率合成器芯片数值计算公式如下:输出频率由输入参考时钟频率fXTAL、R分频器值、N分频器值、VCO输出分频器值k决定,公式如下:fOUT=fVCO/k得到:NINT=int((fOUT×k)/fpD);NFRAC=((fOUT×k)/fpD-NINT)×2M。其中,NINT值是(fOUT×k)/fpD的商的整数部分,NFRAC值是商的小数部分乘以2M(2的M次方);优选的,为了一次性得到两个数相除(A/B,其中A≥B)的商的整数部分(NINT)和小数部分乘以2M(NFRAC),计算方法步骤如下:1)定义寄存器1,其长度为2M+2;定义寄存器2,其长度为2M+2;定义寄存器3,其长度为2M+2;定义寄存器4,其长度为M+1;定义寄存器5,其长度为M+1;定义寄存器6,其长度为M+1;定义寄存器7,其长度为M+1;定义寄存器8,其长度为M+1;寄存器均初始化为0;2)把A的长度以高位补0的方式扩展为M+1,称A1,把B的长度以高位补0的方式扩展为M+1,称B1;3)把A1放进寄存器1的M至0位;4)把B1放进寄存器2的2M+1至M+1位;5)定义运算次数变量COUNT,初始化为0;6)如果COUNT小于M+1,转入7),否则转入9);7)如果寄存器1值不小于寄存器2值,寄存器4的(M-COUNT)位置1。将寄存器1值减去寄存器2值,其差放入寄存器3;如果寄存器1值小于寄存器2值,寄存器4的(M-COUNT)位置0。将寄存器1值放入寄存器3;转入8);8)寄存器3值逻辑左移1位,放入寄存器1.运算次数变量COUNT累加1;返回6);9)寄存器4值作为商的整数部分(NINT)输出;转入10);10)把COUNT置0,B1放入寄存器5,寄存器3的2M至M位放入寄存器6;转入11);11)如果COUNT小于M+1,转入12),否则转入14);12)如果寄存器6值不小于寄存器5值,寄存器7的(M-COUNT)位置1。将寄存器6值减去寄存器5值,其差放入寄存器8;如果寄存器6值小于寄存器5值,寄存器7的(M-COUNT)位置0。将寄存器6值放入寄存器8;转入13);13)寄存器8值逻辑左移1位,放入寄存器6,运算次数变量COUNT累加1;返回11);14)寄存器7值作为商的小数部分乘以2M(NFRAC)输出。本专利技术的技术效果和优点:1、本专利技术的所有操作通过移位、置位和一个减法进行,计算效率高,占用资源少。便于通过可编程逻辑器件实现。根据频率合成器计算公式,使A=fOUT×k,B=fpD即可通过本方法完成频率合成器控制参数NINT和NFRAC的高效准确计算。2、本专利技术可以快速计算得到NINT和NFRAC。并且利于通过可编程逻辑器件实现。附图说明图1为本专利技术的方法流程图。图中标记:寄存器1为R1;寄存器2为R2;寄存器3为R3;寄存器4为R4;寄存器5为R5;寄存器6为R6;寄存器7为R7;寄存器8为R8。具体实施方式下面将对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示的一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,包括以下方法:频率合成器芯片通过可编程逻辑器件来实现控制时序和参数计算,采用频率合成器芯片数值计算公式如下:输出频率由输入参考时钟频率fXTAL、R分频器值、N分频器值、VCO输出分频器值k决定;公式如下:fOUT=fVCO/k得到:NINT=int((fOUT×k)/fpD);NFRAC=((fOUT×k)/fpD-NINT)×2M。其中,NINT值是(fOUT×k)/fpD的商的整数部分,NFRAC值是商的小数部分乘以2M(2的M次方);为了一次性得到两个数相除(A/B,其中A≥B)的商的整数部分(NINT)和小数部分乘以2M(NFRAC),计算方法步骤如下:1)定义寄存器1,其长度为2M+2;定义寄存器2,其长度为2M+2;定义寄存器3,其长度为2M+2;定义寄存器4,其长度为M+1;定义寄存器5,其长度为M+1;定义寄存器6,其长度为M+1;定义寄存器7,其长度为M+1;定义寄存器8,其长度为M+1;寄存器均初始化为0;2)把A的长度以高位补0的方式扩展为M+1,称A1,把B的长度以高位补0的方式扩展为M+1,称B1;3)把A1放进寄存器1的M至0位;4)把B1放进寄存器2的2M+1至M+1位;5)定义运算次数变量COUNT,初始化为0;6)如果COUNT小于M+1,转入7),否则转入9);7)如果寄存器1值不小于寄存器2值,寄存器4的(M-COUNT)位置1。将寄存器1值减去寄存器2值,其差放入寄存器3;如果寄存器1值小于寄存器2值,寄存器4的(M-COUNT)位置0。将寄存器1值放入寄存器3;转入8);8)寄存器3值逻辑左移1位,放入寄存器1.运算次数变量COUNT累加1;返回6);9)寄存器4值作为商的整数部分(NINT)输出;转入10);10)把COUNT置0,B1放入寄存器5,寄存器3的2M至M位放入寄存器6;转入11);11)如果COUNT小于M+1,转入12),否则转入14);12)如果寄存器6值不小于寄存器5值,寄存器7的(M-COUNT)位置1。将寄存器6值本文档来自技高网...

【技术保护点】
1.一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,其特征在于,包括以下方法:/n频率合成器的芯片通过可编程逻辑器件来实现控制时序和参数计算,采用频率合成器芯片数值计算公式如下:/n输出频率由输入参考时钟频率f

【技术特征摘要】
1.一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,其特征在于,包括以下方法:
频率合成器的芯片通过可编程逻辑器件来实现控制时序和参数计算,采用频率合成器芯片数值计算公式如下:
输出频率由输入参考时钟频率fXTAL、R分频器值、N分频器值、VCO输出分频器值k决定;公式如下:






fOUT=fVCO/k
得到:
NINT=int((fOUT×k)/fpD);
NFRAC=((fOUT×k)/fpD-NINT)×2M;
其中,NINT值是(fOUT×k)/fpD的商的整数部分,NFRAC值是商的小数部分乘以2M(2的M次方)。


2.根据权力要求1所述的一种使用可编程逻辑器件实现频率合成器控制参数计算的高效方法,其特征在于,为了一次性得到两个数相除(A/B,其中A≥B)的商的整数部分(NINT)和小数部分乘以2M(NFRAC),计算方法步骤如下:
1)定义寄存器1,其长度为2M+2;定义寄存器2,其长度为2M+2;定义寄存器3,其长度为2M+2;定义寄存器4,其长度为M+1;定义寄存器5,其长度为M+1;定义寄存器6,其长度为M+1;定义寄存器7,其长度为M+1;定义寄存器8,其长度为M+1;寄存器均初始化为0;
2)把A的长度以高位补0的方式扩展为M+1,称A1,把...

【专利技术属性】
技术研发人员:赵鸿浩鱼勇张建红郭琳娜
申请(专利权)人:陕西烽火电子股份有限公司
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1