基本D觸發器、同步D觸發器和異步D觸發器的Verilog描述


  • //基本D觸發器

module D_EF(Q,D,CLK)

input D,CLK;

output Q;

reg Q;                           //在always語句中被賦值的信號要聲明為reg類型 寄存器定義

always @ (posedge CLK) //上升沿,下降沿用negedge表示,^_^ 需要記憶

       begin Q <= D; end

endmodule

 

  • //帶異步清0、異步置1的D觸發器

module D_EF(q,qn,d,clk,set,reset)

input d,clk,set,reset;

output q,qn;

reg q,qn;//寄存器定義

always @ (posedge clk or negedge set or negedge reset)

       begin

              if(!reset) begin q<=0;qn<=1;end//異步清0,低有效

              else if(!set) begin q<=1;qn<=1;end //異步置1,低有效

              else begin q<=~d;qn<=~d;end

       end  

endmodule

 

  • //帶同步清0、同步置1的D觸發器

module D_EF(q,qn,d,clk,set,reset)

input d,clk,set,reset;

output q,qn;

reg q,qn;

always @ (posedge clk)

       begin

              if(reset) begin q<=0;qn<=1;end//同步清0,高有效

              else if(set) begin q<=1;qn<=1;end //同步置1,高有效

              else begin q<=~d;qn<=~d;end

       end  

endmodule

 

 

轉載自SkySeraph,http://www.cnblogs.com/skyseraph/archive/2010/09/24/1834216.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM