close

D型閂鎖器

En D Q的下一個狀態
0 X 未改變
1 0 Q=0
1 1 Q=1

En為0時,不改變;

En為1時,將D值給Q;

D型閂鎖器--design   bench

image

module D_latch (Q, D, En);
  output 	Q;
  input	D, En;
  reg 	Q;

  always @ (En, D)	
    if (En) Q <= D;	//若En==1時,把D輸給Q 
endmodule

 

D型正反器

 

輸入方程式 :DA=A⊕x⊕y

D型正反器--design   bench

image

imageimage

 

第一種

S__4309006

module D_flip_flop_AR (Q, D, Clk, rst);
  output 	Q;
  input	D, Clk, rst;
  reg 	Q;

  always @ (posedge Clk, negedge rst)	//clk為正緣或rst為負緣觸發
    if (rst == 0) Q <= 1'b0; //看rst:若rst為0,就輸入0給Q;
    else Q <= D;	               // 若rst為1,就輸入D給Q;
endmodule

D型正反器--design   bench

第二種

image



module D_flip_flop (Q, D, Clk);
  output 	Q;
  input	D, Clk;
  reg 	Q;

  always @ (posedge Clk)	當clk為正緣時觸發
    Q <= D;	 //將D輸給Q
endmodule

D型正反器--test  bench

module t_D_flip_flops;
  wire 	Q, Q_AR;
  reg	D, Clk, rst;


  D_flip_flop M0 (Q, D, Clk);
  D_flip_flop_AR M1 (Q_AR, D, Clk, rst);

  initial #300 $finish;
  always #5 Clk = ~Clk;
  initial begin
    D = 1;
    rst = 1;
    Clk = 0;
    #20 D = 0;
    #30 D = 1;
    #12 rst = 0;
    #30 D = 0;
    #30 D = 1;
    #12 rst = 1;
    #30 D = 0;
    #30 D = 1;
  end
endmodule
 

 

 

 

 

 

 

 

arrow
arrow
    文章標籤
    Verilog
    全站熱搜
    創作者介紹
    創作者 趴趴熊日常 的頭像
    趴趴熊日常

    資工趴趴熊的小天地

    趴趴熊日常 發表在 痞客邦 留言(0) 人氣()