2011年12月29日 星期四

[Verilog] Latch 和 正反器(D-FF)的差異

定義:
latch是閂鎖器,D-FF是正反器
閂鎖器是會保留之前的狀態,而D-FF則是每個輸入有其對應的狀態

Verilog 寫法
latch的產生往往來自於組合邏輯沒寫好
ex1:
always@ (*)
   if(enable)
         q=D;
一般而言,不會刻意想產生latch,因為latch會有產生在輸出q,是不確定的值,即使想要閂鎖某些值,也會用下列方式
ex2:
always@(posedge clk)
    if(enable)
         q=D;
這會使用D-FF但是有CE(chip enable),當enable=1, q=D, else q=D;

D-FF的產生,是要使用暫存器,暫存某些值
always@(posedge clk)
       q<=D;
這樣的寫法,產生的D-FF沒有CE

沒有留言:

張貼留言