用AI構建開源Verilog仿真器:43天58萬行代碼
Normal Computing的工程師利用AI智能體在CIRCT之上構建了實用的驗證堆棧,包括仿真、形式驗證、變異測試等。
在2026年1月至2月的43天裏,Normal Computing的工程師Thomas Ahle使用AI智能體在CIRCT(基於LLVM的硬件設計基礎設施)上構建了一個完整的開源驗證堆棧。項目共提交了2,968次提交,添加了580,430行代碼,覆蓋了事件驅動仿真、VPI/cocotb集成、UVM運行時支持、有界模型檢查、邏輯等價性檢查以及變異測試。
CIRCT此前缺乏實用的仿真運行時。AI智能體填補了這一空白,利用了IEEE 1800-2017標準規範。工作流程主要是異步的:設定高層次目標(如新測試套件、JIT優化目標),然後審查輸出。AI智能體共享工程日誌以跟蹤進度和解決障礙。項目記錄了1,554次迭代循環,許多功能需要3-5次迭代才能通過測試,而UVM序列器集成和VPI回調處理則超過了20次。
仿真器經過真實世界測試:成功運行了Mirafra的AVIP(UVM測試平台,用於APB、AHB、AXI4等協議)、NVIDIA的CVDP基準測試(783個硬件設計任務,使用cocotb),以及來自OpenTitan和Ibex的形式驗證模塊。在性能方面,即使加入了JIT編譯,仿真器仍比競爭產品慢100-1000倍。項目探索了協程、狀態機轉換和塊級JIT等方法,當前塊級JIT在I2S上實現了2.1倍加速。
該項目表明,AI輔助下單個工程師可以在數週內構建功能性驗證堆棧,挑戰了EDA行業關於驗證工具複雜性的傳統假設。