具有低电平有效复位的 Verilog 中的可合成 FF

synthesizable FF in Verilog with active low reset

我想合成一个具有上升沿时钟和低电平有效复位的 FF。我写了下面的 Verilog 代码:

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 个错误而终止。 *

你知道我可以让它合成吗?非常感谢!!!

测试逻辑应该是 ~clearL 和第一个 line/condition 重置块。

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