module MyDFFA(DCPRdSdOON); input DCPRdSd; output OON; reg OON; assign ON=!O; always @(posedge CP or negedge Rd or negedge Sd) begin if(!Rd) O <= 0; else if(!Sd) O <= 1; else O <= D; end always @(O) begin ON <= !O; end endmodule
这段代码实现一个D触发器,代码中两段加下划线的代码我认为功能都是一样的,只有第一段的情况下代码会报错,只有第二段的情况下代码正确,这是为什么呢,那么正确语法为什么不允许用第一种呢?