module counter012(clk,clr,en,q);
input clk,clr,a;
output [1:0] q;
reg q;
always @(negedge clk or negedge clr ) begin
if(!clr) q<=2'b00;
else if (a) begin
if(q==2'b10) q<=2'b00;
else q<=q+2'b01;
end
end
endmodule
[重要]
この記述中に
ゲートやFFは登場しない
どのようなFFを使い、
どのような入力条件(JK等)でカウンタを実現したか?
このようなことは考えない
レジスタ間の信号
(複数のFFを1つとして考える)
イベントが発生
(○○が変化した)