AI正在深刻改變晶片設計與驗證領域中各類模型的創建與使用方式。但無論技術如何演進,一個核心原則始終不變:模型只能在其設計用途和既定上下文中使用,不能超出範圍,否則將帶來難以預估的風險。
什麼是模型,為何它如此重要
模型是對現實世界行為的一種抽象描述,但所有模型都是妥協的產物——它們以犧牲部分細節為代價,換取更高的執行性能。在晶片設計領域,最核心的模型是設計模型本身,其次是構成驗證流程的一系列模型。此外,工具模型和流程模型同樣舉足輕重。
代理模型(Surrogate Model)通常被創建用於提升執行速度,其本質是對原始設計的近似。RTL模型是一個典型例子:它是時鐘精度級別的設計描述,依賴門級或算術級模型,而後者又是從電晶體模型簡化而來——電晶體模型本身也是對物理規律的簡化。每一層抽象都有其適用邊界,一旦超出原本的設計上下文,模型的有效性便無法保證。
模型創建成本高昂,原因之一在於驗證本身代價不菲。精度未知或被用於非預期場景的模型,可能導致錯誤決策或遺漏問題。若這些問題在流程後期才被發現,甚至流入產品,修復成本將極為巨大。因此,如果AI開始參與模型創建,信任必須先於採用,而信任只有在使用可重複、可追溯的流程時才能建立。
當前工具與流程模型的實踐案例包括Synopsys的DSO.ai和Cadence的Cerebrus。這兩款產品基於強化學習,為基於模組的物理實現工具創建優化循環——每次試驗後測量PPA(功耗、性能、面積),並將新數據點用於改進AI模型,從而為特定設計提供更優的工具參數設置。
模型創建的六步流程
ChipAgents工程主管Mehir Arora提出了一套經典的六步模型創建流程:
第一步,定義模型的範圍、接口、精度要求與使用上下文;第二步,通過黃金仿真生成參考數據;第三步,生成行為模型;第四步,與黃金模型進行對比驗證;第五步,通過疊代進行優化;第六步,部署到仿真環境中。
Keysight EDA研發研究員Tom Demuer指出,明確模型的使用方式與時機至關重要:"你可以構建一個只有自己工具才能使用的高度定製模型,也可以生成一個SPICE網路形式的模型以獲得更廣泛的部署。提供完整的Verilog模型與選擇能完成任務的最簡模型之間,工作量差異極大。"
在模型創建過程中,有兩個重要維度需要同時考量——精度與完整性。Axiomise首席執行官Ashish Darbari解釋道:"兩者不同,但同樣重要。在數字驗證中,精度是指將模型的建議或預測與已知可信的結果進行比較。完整性則更難衡量,因為它與模型覆蓋了驗證問題的哪些部分密切相關。一個模型在常見場景下表現良好,但仍可能遺漏罕見的協議交互、復位行為、低功耗模式或安全敏感路徑。"
Normal Computing產品經理Hanna Yip補充道:"精度是一個統計問題——模型輸出與真實值在某種分布上的接近程度。完整性是一個覆蓋率問題——模型是否對所有重要場景都定義了行為。一個模型可以高度精確卻嚴重不完整:對其覆蓋的所有內容都能輸出接近真實值的結果,但對重要場景卻毫無定義。這兩種失效模式需要不同的補救措施。"
關於大語言模型在模型生成中的應用,Cadence產品營銷總監Paul Graykowski指出了一個核心挑戰:"我希望把規格說明輸入給大語言模型,讓它生成一個模型。但問題在於,如何引導大語言模型走向正確方向,生成有效代碼——尤其是大多數規格說明本身就不夠完善的情況下?無論輸入什麼——規格文檔、時序圖——它們共同構成一種心智模型,而其中有很多細節,規格說明可能理所當然地忽略了。"
創建黃金模型
黃金模型是模型驗證的基準。Normal Computing的Yip強調:"訓練數據分布的質量與數據量同等重要。對於DRAM驗證而言,真正關鍵的失效模式——如時序違規、協議邊角案例、條件交互——在典型仿真軌跡中嚴重代表不足,因為大多數仿真時間都花在了正常場景上。基於這類數據訓練的模型在常見案例上會表現出自信的準確性,卻在那些導致重新流片的案例上悄悄出錯。數據中的刻意採樣策略與擬合方法同樣重要,且需要領域知識才能做到位。"
Southampton大學AI與EDA研究員Simon Davidmann則進一步指出了評估中的常見錯誤:"AI生成的設計內容的精度衡量,需要區分三個並不等價的屬性——語法正確性、功能正確性與形式完整性。將這三者混為一談,是團隊在評估中可能犯下的最嚴重的錯誤之一。"
他還特別提到:當前的大語言模型在標準Verilog結構上幾乎能實現完美的語法正確性,但這只是必要條件,遠非充分條件。現有基準測試(如VerilogEval)主要由短小的教學型模組組成,無法代表工業級SoC子系統的複雜度。一個在VerilogEval上得分90%的模型,可能從未接受過含有非平凡跨時鐘域處理的緩存控制器的訓練。"我們今天使用的基準測試是為人類編寫RTL的時代而設計的,這個領域需要專門用於發現AI弱點的基準測試,而這類測試目前尚未在工業規模上出現。"
部署前的驗證與信任
在部署環節,Davidmann強調:"在將任何AI模型引入生產流程之前,正確的問題不僅僅是模型有多準確,還要追問:它是用什麼數據訓練的?那個分布沒有覆蓋什麼?實際設計離那個邊界有多近?每個部署這些工具的團隊,都應該針對最複雜、最新穎的設計模式的代表性樣本,開展一次刻意的邊界探測練習,將輸出與領域專家的結果獨立比對。這項練習能識別出分布的終點和模型不確定性的起點。缺少這一步,部署就是在缺乏必要資訊的情況下冒險推進。"
Keysight的Demuer則提到了模型標註的重要性:"通常從為模型打上屬性標籤開始。例如,這是一個保證無源的模型,這是一個保證因果的模型。接下來是其適用範圍——在哪些參數範圍內可以信任其結果。至於如何標註精度、或精度與速度的平衡,目前尚無成熟標準。我見到的情況是,大多數團隊默認模型是可用的,並認為開發團隊會給出良好結果。"
Siemens EDA產品負責人Sathishkumar Balasubramanian指出,當數據存在使用限制時,情況會更加複雜:"為AI生成的內容打上水印非常重要。谷歌最近為AI生成內容提出了一項標準,以便用戶知道內容來自大語言模型。良好的數據標註將變得至關重要。當你把數據輸入微調模型時,必須確保能夠驗證數據的合法性。不能隨便說'隨便去抓數據吧',你必須有一套在微調之前驗證數據的流程,這需要從源頭開始貫徹始終的紀律。"
Davidmann最後總結道:"AI模型在EDA中的一個關鍵屬性是,其可靠性受訓練數據分布的約束。這一約束在機器學習理論中已被充分理解,但在供應商工具的數據手冊中卻鮮有記載,而它對工具的評估與部署方式有直接影響。大多數團隊目前還沒有標準來記錄哪些斷言是人工編寫的、哪些是AI生成的,以及這一區別對驗收置信度意味著什麼。此外,大多數供應商文檔也沒有明確所部署模型的訓練範圍、失效模式或領域邊界。在AI生成內容規模化應用於安全關鍵設計之前,這兩個缺口都必須填補。"
Q&A
Q1:模型精度和完整性有什麼區別,為什麼都很重要?
A:精度是指模型輸出與真實參考值的接近程度,是一個統計問題。完整性是指模型是否覆蓋了所有重要場景,是一個覆蓋率問題。兩者並不等價:一個模型可以在其覆蓋的場景上高度精確,卻對關鍵邊角案例毫無定義。比如在DRAM驗證中,常見場景的精度再高,若遺漏了時序違規或協議邊角案例,仍可能導致重新流片。因此兩者必須同時滿足,缺一不可。
Q2:大語言模型生成的Verilog代碼能直接用於工業級晶片設計嗎?
A:目前還不能直接用於複雜工業場景。大語言模型在標準Verilog語法正確性上表現接近完美,但功能正確性和形式完整性仍存在明顯差距。現有評估基準(如VerilogEval)主要由簡單教學型模組構成,無法反映工業級SoC的複雜度。一個評分很高的模型,可能從未見過含非平凡跨時鐘域處理的緩存控制器。目前工業界還缺乏專門發現AI弱點的基準測試,因此大語言模型生成的代碼仍需人工審核和獨立驗證。
Q3:AI生成的模型在部署前需要經過哪些驗證步驟?
A:部署前需經過多個關鍵步驟:首先要明確模型的訓練數據分布及其覆蓋邊界;其次,針對最複雜的設計模式開展邊界探測練習,將AI輸出與領域專家結果獨立比對;此外,還需為模型打上屬性標籤(如因果性、無源性、適用參數範圍),並對AI生成內容進行水印標註。整個過程要求數據可追溯、結果可復現,且不能完全依賴AI自身的評估結果,必須保留人工審核與獨立驗證的環節。






