FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

LiteXによるSoC環境構築を試行する (6. VexRiscV Linuxブートにおける波形の取得)

https://raw.githubusercontent.com/enjoy-digital/litex/master/doc/litex.png

LiteXでのシミュレーション環境の詳細をつかみたくて、いろいろ試しているのだが、どうしてもFSTファイルを取得したいと思っている。 ソースコードを読んでいると、どうもオプションを追加するだけでFSTが取得できる。

./sim.py --trace --trace-fst

これで./build/sim/gateware/sim.fstに大きなFSTが生成されるので、これをGTKWaveで取得して波形を読んでみることにした。

まずは全体的な階層構成。VexRiscvの構成はかなり失われているが、とりあえずCPUのインタフェースのみ取得できればよい。

次にインタフェースだが、IBus / DBusというのが命令フェッチとデータバスっぽい。

これを観測していると、とりあえず命令を取得できていることは分かった。Linuxブートにむけてかなり波形が大きくなっている。

つぎは、これと同じ環境を自作CPUで用意して、何が起きているのかを波形でもって観測していきたい。