微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 两个全局时钟的处理方法

两个全局时钟的处理方法

时间:10-02 整理:3721RD 点击:
我用altera的cpld,有两个时钟62.5M,相位向反,我要用这两个时钟的上升沿,always@(posedge rbc0 or posedge rbc1),可综合会找不到全局时钟,有没有什么方法?是需要修改程序还是在quartus中设置?多谢指教

没看懂你的问题。
首先, rbc0 是不是时钟?
其次,如果你要找全局时钟,是需要你在时钟产生以后,在用之前加bufg的,比如说你产生(或者输入)了一个时钟叫做clka,你内部希望用这个时钟作为全局时钟,那边需要加一个bufg,.BUFG(.I(clka),.O(clkb));clkb就是你要内部用到的时钟。

没有双时钟触发的FF。

rbc0和rbc1都是时钟信号,62.5M,相位相反,我要用这两个时钟的上升沿实现125M,
always @(posedge rbc0 or posedge rbc1)
   begin
     cnt2 <= cnt2 + 1;
end
可是这样不行,有没有其他方法?

DLL. Try it.

建议你采用PLL。用PLL生成一个120M的时钟,或者生成两个60M,相位差为180度的时钟,然后分别进行操作,输出信号后进行同步,这样就相当于120M了。

可是cpld没有PLL啊

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

网站地图

Top