嗨Gabor,
我正在尝试使用FPGA来模拟一个简单的微处理器的功能,这就是为什么4相时钟非常重要,以保持应用程序正常工作。
我想在这种情况下,我正在使用FPGA内部的时钟。
我一直在尝试几种不同的方法制作时钟,但它们都没有令人满意的工作方式。
有一种方法我认为应该完美地工作,如下所述:
我使用一个DCM1以所需频率生成clk_out信号,然后与另一个DCM2级联(使用DCM1中的clk_out作为CLKIN),其中我生成每个占空比为50%的4相时钟信号。
如果我将这4个阶段称为p1_clk,p2_clk,p3_clk,p4_clk,那么我执行以下操作来对时钟信号进行门控:
分配q1_clk = p4_clk&
p1_clk;赋值q2_clk = p1_clk&
p2_clk;赋值q3_clk = p2_clk&
p3_clk;赋值q4_clk = p3_clk&
p4_clk;
在这种情况下,我相信我可以获得25%的占空比,但是当我检查来自逻辑分析仪的信号输出时,一切都失真了,我不知道为什么信号表现得那样......
嗨Gabor,
我正在尝试使用FPGA来模拟一个简单的微处理器的功能,这就是为什么4相时钟非常重要,以保持应用程序正常工作。
我想在这种情况下,我正在使用FPGA内部的时钟。
我一直在尝试几种不同的方法制作时钟,但它们都没有令人满意的工作方式。
有一种方法我认为应该完美地工作,如下所述:
我使用一个DCM1以所需频率生成clk_out信号,然后与另一个DCM2级联(使用DCM1中的clk_out作为CLKIN),其中我生成每个占空比为50%的4相时钟信号。
如果我将这4个阶段称为p1_clk,p2_clk,p3_clk,p4_clk,那么我执行以下操作来对时钟信号进行门控:
分配q1_clk = p4_clk&
p1_clk;赋值q2_clk = p1_clk&
p2_clk;赋值q3_clk = p2_clk&
p3_clk;赋值q4_clk = p3_clk&
p4_clk;
在这种情况下,我相信我可以获得25%的占空比,但是当我检查来自逻辑分析仪的信号输出时,一切都失真了,我不知道为什么信号表现得那样......
举报