見た目を統一する - コードレイアウト
「タブを使わずスペース4文字でインデントする」
タブはエディタの設定によって4文字分や8文字分に変わるので、スペースで文字数を確定した方がよいと思う。
◇
「1行の文にはbegin-endはつけない」
一般論として冗長な行は削って短くした方が読みやすいからである。
× always @(posedge clk or posedge rst) begin if(rst) begin a_r <= 1'b0; end else begin a_r <= a_in; end end |
○ always @(posedge clk or posedge rst) begin if(rst) a_r <= 1'b0; else a_r <= a_in; end |
◇
「保持の代入a<=a; は書かない」
一般論として冗長な行は削って短くした方が読みやすいからである。
× always @(posedge clk or posedge rst) begin if(rst) a_r <= 1'b0; else if(en) a_r <= a_in; else a_r <= a_r; //この行は冗長 end |
○ always @(posedge clk or posedge rst) begin if(rst) a_r <= 1'b0; else if(en) a_r <= a_in; end |
◇
「修正時に旧コードをコメント行として残さない」
一般論として、邪魔な行があると読みにくくなるからである。むしろ修正前のファイルごと残しておいた方が差分がとれてよい。
× always @(posedge clk or posedge rst) begin if(rst) a_r <= 1'b0; //else if(en) // del 2016-11-11 // a_r <= a_in; // del 2016-11-11 else if(en & rdy) // mod 2016-11-11 a_r <= ~a_in; // mod 2016-11-11 end |
○ // 履歴 // 2016-11-11 〜のとき〜になるバグを修正 always @(posedge clk or posedge rst) begin if(rst) a_r <= 1'b0; else if(en & rdy) a_r <= ~a_in; end |
◇
「コメントは、ソースの言い換えでなく意図を書く」
ソースを言い換えただけのコメント(aを反転する、aを1だけカウントアップする等)は邪魔なだけである。それよりもソースの読解を助けるように、上位レベルの意図(ライトしたワード数をカウントする等)を書いた方がよい。