こんな風にソースコードに書いて、
// TimingChart // // ACLK /|/ / / / / / / / / / / / / // ARADDR x|A A B B x x x x x x x x x : A B // ARVALID 0|1 1v1 1 0 0 0 0 0 0 0 0 0 // ARREADY x|0 1 0 1 x x x x x x x x x // RDATA x|x x x A x x B x C D x E x : \ // D(A0) D(A1) D(A2) D(B0) D(B1) // RLAST 0|0 0 0 0 0 0 0 0 1 0 0 1 0 // RVALID 0|0 0 0 1 0 0 1 0 1v1 0 1 0 // RREADY 0|0 0 1 1 0 1 1v1 1v1v1 1 0 // RREADY 0|0 0 1 1 0 1 1v1 1v1v1 1 0 // // TimingChartEnd
こんな風に起動すると
tcv.jar axi_readburst.v
こんな出力が得られるソフトウェアを作りました。
32bitWindows用実行ファイルの、
操作デモもあります。
リリース一覧から、TimingChartViewer_r???をダウンロードして、適当なディレクトリに展開してください。 中に入っているtcv.jarが実行ファイルとして動作します。
起動は、以下のように打ち込んでください。
<tcv.jarを置いたパス>\tcv.jar <ファイル名> または java -jar <tcv.jarを置いたパス>\tcv.jar <ファイル名>
TimingChartViewerは、波形の記述が埋め込まれたVerilog HDLやVHDLのソースコードが与えられることを想定して開発されていますが、入力はテキストファイルであれば何でもかまいません。
ボタンとその動作
| ボタン | 動作 |
| | |
| Copy | 波形画像をクリップボードにコピーします。 |
| PNG | PNG形式の画像を、与えられたファイルと同一のディレクトリに出力します。 |
なお、ボタンにフォーカスがあたっている状態でスペースキーを押すと、マウスでボタンを押した場合と同じ効果があります。
複雑な波形を描かなければならない場合は、 タイミングチャート清書ツール などをご検討ください。
サンプルが tcvsample.vhd にあります。
各行の形式は、バスでない1本の信号ならば
信号名 信号レベル|信号レベル 信号レベル ...バスならば
信号名 信号レベル|信号レベル 信号レベル ... : コメント コメント ...のように記述します。
1本の信号の場合は、キャラクタとして / 0 1 z x が使用できます。
バスの場合は、キャラクタとして x A B C ... Z が使用できます。
最初の信号レベルは、タイミングチャートに載る以前の信号レベルを意味します。 最初の信号レベルと次の信号レベルの間に|があるのは可読性を上げるためであり、空白と同様に扱われます。
vは、Highが連続するけれど瞬間的にLowになる波形、 ^ (ハット)は、Lowが連続するけれど瞬間的にHighになる波形、俗に言うヒゲを表現するために使用します。
バスの場合は、: (コロン) のあとにコメントを書きます。タイミングチャートの中で、Aがコロンのあとの最初の文字列、Bが二番目の文字列、Cが三番目の文字列、というように置換されます。
| 記述 | 意味 | 例 | 表示 |
| TimingChart | 解釈の開始行 | -- TimingChart | |
| TimingChartEnd | 解釈の終了行 | -- TimingChartEnd | |
| / | クロック信号 | -- CLK_I /|/ / / / | |
| \ | 次の行に続く | -- HOGE_I x|A x B : \ | |
| | | 空白と同じ扱い | -- FUGA_O 0|0 1 1 0 | |
| 0, 1, z, x | Low High HiZ 不定 | -- A_I 0|0 1 z x | |
| v | 瞬間的にLow | -- B_O 0|0 1v1 0 | |
| ^ | 瞬間的にHigh | -- C_O 1|0^0 0 1 | |
| A B ... : comment | バスのコメント | -- INST_I x|A B x A : LD MOV | |
| r245 | 自動リロードとパーサのバグ修正。ユーザには影響ないが、開発環境をEclipseに移行した。 |
| r226 | Javaで再実装。クリップボードへのコピー、正しい大きさのPNG画像出力、T0,T1,T2,...の表示を可能にした。 |
| r219 | Tclで実装した、最初のリリース。PNG画像出力機能がいまいち。 |