Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

(System)VerilogからChiselへの変換ツール

@Vengineerの戯言 : Twitter
SystemVerilogの世界へようこそすべては、SystemC v0.9公開から始まった 

 github の これですね。

github.com

ドキュメントは、これ ですね。ドキュメントの Fig.1 に処理フローが載っていました。

(System)Verilog コードを 解析して、FIRRTL (+ Extensions) に置き換えてから、いろいろ Transforms で最適化して、Chisel コードとして出力しているっぽいです。

f:id:Vengineer:20201115110301p:plain

+ Extensions とあるので、FIRRTL だけでは表現しきれなかったんでしょうね。

+ Entensions の部分、FIRRTL に取り込まれるっていうのはないんですかね。

そうすれば、図にあるような、Transforms も再利用できるし、いろいろな Transform を追加することもできそうですが、いかがでしょうか?

 

ドキュメントの「Feture Work」には、

Last but not least, we are currently investigating the feasibility of extending language support to VHDL that shares
many concepts with (System)Verilog while being very strongly
typed, like Chisel. Other HCLs translation targets, such as
MyHDL [17], migen [18] or SpinalHDL [19], could also be
considered to enable hardware designer to pick the language
that fit the best their needs for a given project, as it can been
observed for software languages.

とあるので、いろいろなものを取り込んで、全部、Chisel でいいじゃんも可能になるかも?しれませんね、