xilinx FPGA 中如何将一个1-4MHZ的频率进行倍频?chipdebug7年前发布7664 请教一下大家,我需要将一个输入频率为1-4MHZ的时钟,倍频4倍呢,即输出频率随输入频率在4~16M的范围内变化。可是PLL的XILINX 的IP核需要填上输出时钟,那输出频率不是被固定死了吗? FPGAxilinx
xilinx 的dcm可以用来干这个事情,
以Spartan-3系列为例其DCM的输入(CLKIN):1-280MHz。
我的做法是用一个标准的系统时钟(用内部PLL倍频到100MHZ)然后将另一个1-4M时钟输入到FPGA的管脚。 FPGA可以计算出它的频率 然后 FPGA内部用100MHZ 分频到那个时钟的4倍
1MHz的输入频率太低了,没有哪一家的pll可以支持这个输入。这个只能高频采样,或者用一大堆lut自己做dll,或者用外部电路倍频,不保证占空比,且需要先2倍频,再修正占空比,然后再倍一次。
外部倍频法其实很简单,利用门电路或rc电路的延时,使得原信号与延时后的信号异或。但是它要求外部信号的占空比是50/50。否则出来的就不是方波,而是毛刺了。
PLL的输入和输出可以抽象为是一个比例关系,例如你就填2M输入,8M输出,实际上你输入1-4M,那么输出就会在4~16M内变动。不过我没试过,不确定1-4M这么低的频率PLL能不能锁定,另外,锁定时间未知。