第2回「可読性の高い記述」(201206)

回路設計はHDLによる設計が一般的であることから、もはや一種のプログラミングと言っても良いのかもしれません。そこで重視したいのが「ソースコードの質」です。
質の高いコードはバグがない(少ない)だけではなく、メンテナンスや機能拡張が容易であったり、検証しやすいなど多くのメリットをもたらします。
如何に質の高いソースコードを記述するか?
皆さんも色々な工夫をなされているかと思いますが、今回は「可読性」の観点でソースコードの質の向上を考えてみたいと思います。

基本的に(?)他人が書いたソースコードは読みにくく、理解しにくいものです。同じ言語であっても、ちょっとした個人の癖(記述スタイル)などにより第三者が読みにくいと感じてしまうことはよくあることです。最悪なのは「以前自分自身で書いたソースコードが解読できない」というような状況です。製品開発ではあってはならないことなのですが、意外に経験したことのある方も多いのでは?

可読性とは「読みやすさ」や「理解しやすさ」の指標ですが、この可読性は「検証のし易さ」や「メンテナンスのし易さ」に大きく影響します。デバッグ時の作業を考えてみて下さい。波形出力などを基に不具合箇所のソースコードを1行ずつ追いかけることがありますが、そこで「読みにくい」ソースコードだと余計に時間がかかってしまいます。特に検証や保守においては設計者以外にも第三者が対応するケースがあるだけに、誰が見ても分かりやすく読みやすいコードが求められるというわけです。

そこで、可読性を高めるための方法をいくつか取り上げてみます。


・開発するメンバーで記述スタイルを統一する

開発メンバーそれぞれの癖をなくし、グループ内で記述スタイルを統一します。ヘッダの形式やインデント(スペース、タブ)の設定、コメントの桁数などを揃えます。 下記の項目も含めて「コーディング規約」として、開発グループ内で使用すると良いでしょう。


・信号名、定数名に意味のある名称を付ける

「A」「B」「X」「TMP」など、その場しのぎでとっさに付けた名称は、後々の理解の妨げとなりやすいです。その信号や定数の特徴を表す意味のある名称を付けることを推奨します。また信号と定数を明確に識別するために、定数名の先頭を「P_」や「C_」で始めると、よりコードが読みやすくなります。  (※PはParameter、CはConstantの頭文字を使用)


・適切なコメントを入れる

コメントは、ソースコードを読む際に理解の助けとなり得るもので非常に重要です。しかし、コメントの内容がコードに書かれているものと同じであれば何の意味もありません。コメントにはコードで行う演算や処理の「理由」などを書くようにします。 設計者がソースコードを記述する際に、分かりにくいと感じる部分や注意が必要と思われる箇所には、積極的にコメントを挿入すべきです。


・回路構造を意識した記述を行う

生成した信号を入力側で参照することを「フィードバック」と言います。このフィードバックはソースコードの可読性を低下させます。無意識の内にフィードバック信号を多用してしまうと、記述した本人ですら理解不能なコードになってしまうことも少なくありません。このような状況に陥らないためには、回路構造を意識しながらコードを記述しなければなりません。フィードバック信号も必要最低限の使用に抑えます。



一人前の回路設計者であればソースコードの質にこだわり、可読性が高く、綺麗で美しいコードを書きたいものです。あなたが書いているコードは、いかがですか?



今回ご紹介した内容については、以下の書籍を参照してください。
●書籍 RTL設計スタイルガイド
XILINX
教育サービス
HDLABトレーニング(SystemC)
HDLABトレーニング(SystemVerilog)
HDLABトレーニング(Verilog HDL)
HDLABトレーニング(フレッシュマン向け)
HDLABトレーニング(専門分野)
HDLABトレーニング(組込み分野)
HDLABトレーニング(XILINX認定)
HDLABトレーニング日程表
HDLABトレーニング開催リクエスト
Eラーニング
STIL講座
STIL講座ログイン
設計スキルアセスメント
設計技能検定試験「ESA」
設計技能検定試験「ESA Basic」
設計・コンサルティング
ARM CPUモデル環境
SystemC
Design Style Guide
設計・検証のワンポイント
購入・見積もり
ダウンロード
お問い合わせ

XAP