Chiselで複数のパッケージを組み合わせる方法を調べました
Chiselで複数のパッケージを組み合わせ方を調べてみました。 今回はChiselのSoCプロジェクトであるrocket-chipを調べてみました。
rocket-chip/src/main/scala at master · chipsalliance/rocket-chip · GitHub
モジュール種毎にディレクトリを分けることがわかりました。 というわけで、パッケージにして、importするだけでよく、非常に簡単に使えることがわかりました。 面倒なFilelistを作成するということが不要なのが、地味に嬉しいです。
で、次に統合テストですが、Tortureテストというのがありました。 そもそもTortureって何だろうと調べてみると笑いました。「拷問」らしいです笑 ランダムテストでいじめ抜くからなんでしょうが拷問とは。バグを自白させる感じですね。
GitHub - ucb-bar/riscv-torture at 77195ab12aefc373ca688e0a9c4d710c13191341
ただ、テストの内容が難しく、理解がまったくできませんでした。 残念です。
あとがき
srcパッケージの組み合わせ方は学べましたが、テスト環境については理解できませんでした。
また、Chiselでテストパタンを流用する方法についてはわからないままなので、今後の課題です。 abstclassを使えば良いのかなとは思ったのですが、、?