时钟同步
时间:10-02
整理:3721RD
点击:
用代码来同步。clk1是100M,clk2是500K。代码如下:
reg clk_sys;
always @ (posedge clk1)
begin
clk_sys <= clk2;
end
这样子,用clk_sys来当500K的时钟使,挺好的。
看到一位网友这样做的,不知道行不行,有人解释一下吗!
reg clk_sys;
always @ (posedge clk1)
begin
clk_sys <= clk2;
end
这样子,用clk_sys来当500K的时钟使,挺好的。
看到一位网友这样做的,不知道行不行,有人解释一下吗!
可以,这个频率低,直接用寄存器输出当时钟用没问题。
或者有更通用方法,
always @(posedge clk1)
if(clk2 == 1'b1 && clk2_d == 1'b0)
q <= d;
clk_sys和clk2同频,但相位不同。
clk1 和 clk2是同源的吗,不然可能会存在亚稳态问题?
这个你要看两个时钟的由来了
比较山寨的做法,不建议使用。
直接使用clk2不更好?为啥这么做?
