微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 不用PLL,实现时钟占空比为25%

不用PLL,实现时钟占空比为25%

时间:10-02 整理:3721RD 点击:
如何不用PLL,使得输入时钟的占空比改变为25%呢?
现在只能用倍频时钟进行分频,分频后与原来的时钟相与得到,有没有别的办法呢?
输入时钟不能倍频,但是可以有更高的采样时钟。输入时钟为8~12MHz,采样时钟可以为50MHz。
各位有没有什么好的办法啊?

也就是说,你想不经过任何DCM, PLL之类的,后面要想的频率也等于输入频率,就将时钟频率占空比发生变化?
暂时想不出好的法子,用IODELAY将时钟DELAY若干周期的方法估计也达不到这么大的效果。
你先说说为什么有这样的需求?



    有个项目的一款特殊芯片,要求输入时钟占空比为25%才能正常工作,但是我们的DSP输出时钟只有占空比为50%的,其他信号都符合要求,所以要想办法在DSP后面加入一个最简单电路,使得时钟占空比为25%且相位没有延时。
    带PLL的CPLD或者FPGA能够实现,但是成本有点高,希望找个简单低成本的方案噢~
    不知道你还有没有好的建议呢?


采样时钟是做什么用的?相当于FPGA内部的另外个可用的时钟源吧?要不试下以采样时钟为源头产生新时钟的方式?比如把采样时钟弄成输入时钟的四倍,检测输入时钟的上升沿作为计数器开始点,产生新时钟的上升沿,计数器为1时产生下降沿,直到下一个输入时钟上升沿来临再作为新时钟的上升沿……

用输入时钟的上升沿作为同步触发条件,这样产生的新时钟周期性地与输入时钟进行同步,以免产生偏移。
另外,因为输入时钟与采校时钟本来是异步的,并不存在边沿对齐的关系,所以检查输入时钟的上升沿靠的是当采校时钟上升沿采样时,检测到的输入时钟的值和与打了一拍的输入时钟的值分别为1与0,这样来做到。

其实是相当于把输入时钟当成普通控制信号来处理的,如果是时钟信号,是不能直接被另一时钟去采的。

我说得有点乱,看看这法子有帮助没。



    谢谢eaglelsb!
    你的方法很好,也通过FPGA仿真实现,符合要求。
    不过这样还是需要一个FPGA/CPLD加入到电路中,这样的话,就很难做到低成本了。或者你有没有这样的,最简单,什么都没有,体积最小的FPGA/CPLD推荐呢?


这我就不知道了噢,市场这块我不熟,也许你可以考虑低端的SPARTAN6之类的,容量为30就可以了,或者XILINX CPLD低端系列。
CPLD最便宜的还是LATTICE的,只是工具什么的用起来不太舒服,你只做简单的利用的话,应该还是没问题的。

eaglelsb的方法用DSP软件实现也是可以的吧。



    好的。谢谢你噢~市场方面,我还得多找找才行,呵呵~谢谢啦~



    DSP里的锁相环好像只有分频、倍频,没有占空比处理功能哦~

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top