CIRCTに含まれるDialectとその変換パスを調査。 Dialectの変換はソースコードの以下に存在。

Dialect一覧

CIRCTには以下のDialectが含まれている。

  • FIRRTL Dialect
  • RTL Dialect
  • Handshake Dialect
  • StaticLogic Dialect
  • LLHD Dialect

その他、MLIRでデフォルトで定義されているDialectとして以下がある。

  • Standard Dialect
  • LLVM Dialect

Dialect変換パス

FIRRTLからVerilogを生成する流れは、

  • FIR parserでFIRRTL Dialectへ変換し、
  • FIRRTL DialectからRTL Dialectへ変換、
  • 最後にRTL DialectからVerilogコードを生成する

となっている。