- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!カウンタ
!!パラメータ
, ,定数名,既定値,
,定数,N,16,カウンタのビット幅
,定数名,既定値,
,N,16,カウンタのビット幅
!!入出力ポート
, ,ポート名,ビット数,
,入力,clk,1,グローバルクロック
,入力,reset,1,グローバルリセット
,入力,load,1,1のときclkの立ち上がりでdの値を書き込み
,入力,inc,1,1のとき保持している値を1増加
,入力,d,N,書き込むデータを入力
,出力,q,N,現在保持している値を出力
module counter(clk,reset,load,inc,d,q);
parameter N = 16;
input clk,reset,load,inc;
input [N-1:0] d;
output [N-1:0] q;
reg [N-1:0] q;
always @(posedge clk or negedge reset)
if(!reset) q <= 0;
else if(load) q <= d;
else if(inc) q <= q + 1;
endmodule