FC2カウンター FPGAの部屋 Doxygenを使ってVHDLソースコードをドキュメント化してみました
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Doxygenを使ってVHDLソースコードをドキュメント化してみました

”コーヒーでも飲みながら検証の話でも”さんの火曜日, 2月 12, 2008、”DoxygenがVHDLをサポート”の記事でDoxygenがVHDLをサポートしたのを知った。
Doxygenがどんなものか、まったく知らなかったので、Windows版をダウンロードして、どんなものか触ってみたのだが、あまり良くわからずに放置していた。しかし、院生がC++で使っていたのを見たので、ぜひ使いたいと思い、今度は本気で使い方を探ってみた。
いろいろやってみた結果、だいぶ使い方がわかって来た。
”7セグメントLEDを何個ダイナミック点灯できるか?2”で使用した回路をDoxygenでドキュメント化してみた結果をここにおきます

Doxygenの使い方メモ

・Doxygen設定
OPTIMIZE_OUTPUT_VHDL = YES
SOURCE_BROWSER = YES
OUTPUT_LANGUAGE = Japanese
STRIP_CODE_COMMENTS  = NO
後は良くわからない。

・コメントの入れ方
doxygenのexamplesのmux.vhdlの書き方に加えて
1.日本語はUTF-8に変換する必要がある。
2.最初のコメントには、--! が使えないので、-- を使用する。
3.<は使えないようだ。portは --! を使用して、横に書けばOK。
4.component, signalの説明文は1行を使用し、上の行に --! を使ってコメントを書く。<を使って、同じ行の横に書くことはできない。
5.下位モジュールのインスタンシエーションの時のコメントは --! @details 説明。
6.process文にはラベルをつけたほうが良い。5.同様にコメントは --! @details 説明。
7.component文に横に --! で書いてもだめ。--! @param を使用して上に書く。
8.STRIP_CODE_COMMENTS = YES にしておくとdoxygenのコマンドが抜けてしまうので、STRIP_CODE_COMMENTS = NO にしておいたほうがスカスカにならなくて良い。



2008/03/06:追加
INLINE_SOURCES = YES にするとPROCESS文のソースがドキュメントに記載されます

どなたか、下のようなPROCESS文でない組み合わせ回路をドキュメントにする方法を知っていたら教えてください。
nLEDDB <= not decout;

2008/03/11:追加
GENERATE_TREEVIEW = YES; にするとFRAMEができて、選びやすくなる。
ここに表示サンプルを置いておく。

2008/03/14:追加
VHDLのときにはEXTRACT_PRIVATE = YESにする必要があるそうだ。
最初のファイルのコメントの部分(@authorなどが書いてある部分)は空行をあけないほうがよさそうだ。
修正したサンプルを置いておく。
  1. 2008年03月04日 12:57 |
  2. Doxygen
  3. | トラックバック:0
  4. | コメント:2

コメント

サンプルありがとうございます。
日本語もOKなんですね。

うまく使えば便利そうです。

Verilog HDLも対応してほしいなぁ(他力本願)。
  1. 2008/03/04(火) 13:39:36 |
  2. URL |
  3. アイン #xRS1q4qQ
  4. [ 編集 ]

アインさん、こんにちは。

教えていただいてありがとうございます。
仕事のドキュメントとして使おうと思っています。

まだ、SsegDisp.vhdにできているコラボレーション図が、なぜトップのdynadisp.vhdにできないかがなぞなんですが。。。
もしかして、同じフォルダにいないからかな?
その辺を解析してくれる設定があるかもしれないですね。
  1. 2008/03/04(火) 14:16:13 |
  2. URL |
  3. marsee #-
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/747-af0031dc
この記事にトラックバックする(FC2ブログユーザー)