私は一般的にプログラミングに不慣れであり、条件文に依存しすぎていることに気づきます。コーディング時の私の思考の流れに似ているので、実装が簡単です。
以下に、デジタル時計の表示を制御するVerilogの小さなコードスニペットを示します。コード全体は、ほとんどこのようにレイアウトされています。コードは機能し、かなり読みやすいです。しかし、私はそれがエレガントではないと思います。コードを単純化すると同時に読みやすさを向上させることは可能ですか?
if (cnt >= clkspeed) begin
cnt = 0;
out0 <= out0 + 4'h1;
// LED0 > 9 -> LED1 += 1
if (out0 == 4'h9) begin
out0 <= 4'h0;
out1 <= out1 + 4'h1;
// LED1 > 5 -> LED2 += 1
if (out1 == 4'h5) begin
out1 <= 4'h0;
out2 <= out2 + 4'h1;
// LED2 > 9 -> LED3 += 1
if (out2 == 4'h9) begin
out2 <= 4'h0;
out3 <= out3 + 4'h1;
// LED3 > 5 -> LED3 = 0
if (out3 == 4'h5) begin
out3 <= 4'h0;
end
end
end
end
end