AI News HubLIVE
サイト内リライト2 分で読了

Xezim – RustベースのSystemVerilogシミュレータ

XezimはRustで書かれた軽量なSystemVerilogシミュレータで、実験、学習、AI支援チップ設計ワークフローの探求を目的としています。組み合わせ論理と順序論理のシミュレーション、および複数の波形ダンプ形式をサポートしています。

ソースHacker News AI著者: bondanr

Xezimは、Rustプログラミング言語で完全に記述された軽量なSystemVerilogシミュレータです。このプロジェクトは、AI支援によるチップ設計ワークフローの実験、学習、および探求のためのプラットフォームを提供することを主な目的としています。Xezimは当初sisSIMという名前で開発されましたが、その後xezimに改名されましたが、中核となる機能とAPIは変更されていません。

プロジェクトの動機は、従来のEDAツール開発の高いハードルにあります。通常、大規模なエンジニアチームと長い開発期間が必要です。Xezimは、小規模なチームやAIツールの支援を受けた単独のエンジニアでも、SystemVerilogシミュレータのような中核的なEDAインフラストラクチャを構築できるかどうかという重要な問いを検証することを目指しています。

現在、Xezimは多くの機能を備えています。SystemVerilogモジュールの解析、信号とネットの表現、連続代入、基本的な式の評価、組み合わせ論理シミュレーション、順序論理シミュレーションの基盤をサポートしています。また、テスト実行フレームワークと、標準のVCD($dumpfile/$dumpvars)、XTrace v1.0(オプションのzstd圧縮とスコープフィルタリング対応)、AITRACE-T形式など、複数の波形ダンプ形式をサポートしています。

プロジェクト構造は3つの相互に関連するリポジトリに分かれています。xezim-coreは共有ライブラリ(パーサー、エラボレーション、値、SDF処理を含む)、xezimは本リポジトリでバイトコードインタプリタとイベント駆動型シミュレータを含み、xezim-bはネイティブコンパイラで、エラボレートされたデザインをRustコードにコンパイルしてスタンドアロンバイナリにリンクします。本リポジトリのソースコードディレクトリ構造は明確で、src/compilerにはシミュレータとバイトコードコンパイラが含まれ、lib.rsは中核機能をラップし、main.rsはコマンドラインエントリポイントです。

テスト面では、Xezimには多数の統合テストケースが含まれており、その多くはIcarus Verilogテストスイートから取得され、実際のVerilog/SystemVerilogのエッジケースを検証します。ビルドプロセスは簡単で、Rustツールチェーンをインストールし、関連するリポジトリをクローンするだけです。

Xezimの長期的なビジョンには、AI支援EDA開発、ラピッドプロトタイピング、クラウドスケールシミュレーション、分散マルチCPUシミュレーションが含まれます。このプロジェクトはApache License 2.0の下でオープンソース化されており、Icarus Verilogプロジェクト、Rustコミュニティ、およびオープンソースEDAプロジェクトからのリソースに感謝しています。