【常用电路】同步采样模块

  在实际应用中,外部输入的异步信号需要经过系统时钟的同步化,且将输入的异步信号整形成宽度位一个时钟周期的脉冲信号。

 1 module clk_syn(
 2     clk,
 3     reset,
 4     s_in,
 5     s_out
 6 );
 7 
 8 input   clk;
 9 input   reset;
10 input   s_in;
11 output  s_out;
12 
13 reg     s_t1,s_t2;
14     
15 always @ ( posedge clk ) begin
16     if ( reset ) begin
17         s_t1 <= 1'b0;
18         s_t2 <= 1'b0;
19         end
20     else begin
21         s_t1 <= s_in;
22         s_t2 <= s_t1;
23         end
24 end
25     
26 assign s_out = s_t1 & ( !s_t2 );
27     
28 endmodule

即使a_in在时钟周期内发生抖动,也不会影响输出结果,还是被整形成一个时钟宽度。

 

posted @ 2021-10-30 00:39  AnchorX  阅读(125)  评论(0编辑  收藏  举报