AI News HubLIVE
站內改寫1 分鐘閱讀

Xezim:基於Rust的SystemVerilog模擬器

Xezim是一個輕量級的SystemVerilog模擬器,用Rust編寫,旨在探索AI輔助晶片設計工作流程。它支援組合和時序邏輯模擬,並提供多種波形匯出格式。

來源Hacker News AI作者: bondanr

Xezim是一個輕量級的SystemVerilog模擬器,完全使用Rust程式語言編寫。該專案的主要目標是提供一個用於實驗、學習以及探索AI輔助晶片設計工作流程的平臺。Xezim最初以sisSIM的名字開發,隨後更名為xezim,但其核心功能和API保持不變。

專案的動機源於傳統EDA工具開發的高門檻——通常需要龐大的工程團隊和多年的開發週期。Xezim旨在驗證一個關鍵問題:一個小型團隊,甚至是一名工程師在AI工具的輔助下,能否構建出核心的EDA基礎設施,例如SystemVerilog模擬器?

目前,Xezim已經具備多項功能:支援SystemVerilog模組解析、訊號與網路表示、連續賦值、基本表示式求值、組合邏輯模擬以及時序模擬基礎設施。它還包含一個測試執行框架,並支援多種波形轉儲格式,包括標準的VCD(透過$dumpfile/$dumpvars)、XTrace v1.0(支援可選的zstd壓縮和範圍過濾)以及AITRACE-T格式。

專案結構分為三個相互關聯的倉庫: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專案提供的資源。