C コードをオブジェクト コードに変換し、複数のオブジェクト コード ファイルを共有ライブラリ (Windows の場合は .a、Linux の場合は .so) にリンクするため、xsc
という新しいコンパイラ実行ファイルが提供されています。xsc コンパイラは、<Vivado installation>/bin ディレクトリに含まれます。-sv_lib
を使用すると、C コードを含む共有ライブラリを Vivado シミュレータ/エラボレーター実行ファイルに変換できます。xsc コンパイラは、gcc などの C コンパイラと同じように機能します。xsc コンパイラでは、次が呼び出されます。
- LLVM clang コンパイラ: C コードをオブジェクト コードに変換
- GNU リンカー: C ファイルに対応する 1 つまたは複数のオブジェクト ファイルから共有ライブラリ (Windows の場合は .a、Linux の場合は .so) を作成
xsc コンパイラで生成された共有ライブラリは、次に示すように xelab に新しく追加されたオプションを 1 つまたは複数使用すると、Vivado シミュレータ カーネルにリンクされます。xelab で作成されたシミュレーション スナップショットには、コンパイルされた C コードとコンパイルされた SystemVerilog コードを接続して、C と SystemVerilog 間の効率的な通信を可能にする機能があります。