2016-07-04 106 views
0

我想綜合FF正邊沿時鐘和低電平有效復位。我寫了下面的Verilog代碼:Verilog中的可合成FF,帶有低電平有效復位

module dff_rstL (q,qn,clk,d, clearL); 
input clk,d, clearL ; 
output q,qn; 
reg q; 
always @(posedge clk or negedge clearL)   //asynchronous reset 
begin 
    if (clearL) begin 
     q <= d;    
    end 
else begin  
    q <= 1'b0;     
    end   
end 
assign qn=~q; 
endmodule 

但我在合成過程中得到以下錯誤:

無法測試變量「clearL」,因爲它在事件表達或極性錯誤不是。 (ELAB-300) * Presto編譯以1個錯誤終止。 *

你知道我可以把它合成嗎?非常感謝!!!

回答

2

測試邏輯應該〜clearL和第一行/復位塊的條件。

module dff_rstL (q,qn,clk,d, clearL); 
input clk,d, clearL ; 
output q,qn; 
reg q; 
always @(posedge clk or negedge clearL)   //asynchronous reset 
begin 
    if (~clearL) begin 
    q <= 1'b0; 
    end 
else begin 
     q <= d; 
    end 
end 
assign qn=~q; 
endmodule