usb 发表于 2010-6-28 00:31:38

分频时钟采样的问题

本帖最后由 fpgaw 于 2010-7-6 06:24 编辑

源代码如下:
module nonblock(reset,din,clk,dout);
   input    reset,clk;
   input    din;
   output    dout;
   reg      clk1;
   reg    din_reg1,din_reg2,dout;

always @(posedge reset orposedge clk)
   begin
         if(reset)
             clk1 <= 1'b0;
         else
             clk1    <=    ~clk1;
   end
   
always @(posedge reset or posedge clk1)
   begin
         if(reset)
             begin
               din_reg1    <=    8'd0;
               din_reg2    <=    8'd0;
               dout      <=    8'd0;
             end
         else
             begin
               din_reg1    <=    din;
               din_reg2    <=    din_reg1;
               dout      <=    din_reg2;
             end
   end
endmodule
问题是在时序仿真的时候好像不是按照clk1进行采样的,不知道是什么原因?请高手解答。附仿真波形图;谢谢回答^_^

usd 发表于 2010-6-28 02:26:03

CLK = ~CLK 这个那里是分频啊? 用 DFF 来做分频

CTT 发表于 2010-6-28 03:34:26

似乎CLK1是reg型数据,不能作为敏感信号

CCIE 发表于 2010-6-28 05:23:06

没问题,是延迟三个周期的cpl采样电路
        http://bbs.vibesic.com/images/smilies/default/smile.gif

CCIE 发表于 2010-6-28 05:35:37

我看不懂啊日

interig 发表于 2010-6-28 06:12:13

我是菜鸟啊
页: [1]
查看完整版本: 分频时钟采样的问题