新一代芯片電路邏輯綜合,可擴展可解釋的神經電路生成框架

AIxiv專欄是機器之心發佈學術、技術內容的欄目。過去數年,機器之心AIxiv專欄接收報道了2000多篇內容,覆蓋全球各大高校與企業的頂級實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或者聯繫報道。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com

本論文作者王治海是中國科學技術大學 2020 級碩博連讀生,師從王傑教授,主要研究方向爲強化學習與學習優化理論及方法、人工智能驅動的芯片設計等。他曾以第一作者在 TPAMI、ICML、NeurIPS、ICLR、AAAI 等頂級期刊與會議上發表論文七篇,一篇入選 ICML 亮點論文(前3.5%),曾獲華爲優秀實習生(5/400+)、兩次國家獎學金(2017和2024)等榮譽。

近日,中科大王傑教授團隊(MIRA Lab)和華爲諾亞方舟實驗室(Huawei Noah's Ark Lab)聯合提出了可生成具有成千上萬節點規模的神經電路生成與優化框架,具備高擴展性和高可解釋性,這爲新一代芯片電路邏輯綜合工具奠定了重要基礎。論文發表在 CCF-A 類人工智能頂級會議 Neural Information Processing Systems(NeurIPS 2024)。

論文概覽

邏輯綜合(Logic Synthesis, LS)是芯片設計流程中承上啓下的關鍵環節,對芯片設計的效率和質量都具有重要影響。具體來說,邏輯綜合旨在生成精準滿足給定功能要求(如由電路輸入輸出對構成的功能真值表)的最優邏輯電路圖,是 NP 難問題。爲了求解該問題,傳統方法主要依賴於硬編碼啓發式規則,易陷入次優解。

該框架能夠精確生成達1200節點規模的電路,該方案爲新一代芯片電路邏輯綜合工具提供了可行思路與奠定了關鍵基礎。相關技術和能力已整合入華爲自研EDA工具。

引言

芯片電路生成的目標是在給定電路功能描述的條件下,生成精準滿足電路功能要求且節點數少的邏輯電路圖。傳統的電路生成方法將高級電路描述語言直接轉譯爲冗餘度較高的邏輯電路,這給後續的電路優化帶來了較大壓力。近期,一些研究通過引入機器學習方法,將電路生成與優化過程有機結合,展現了新一代邏輯綜合技術的美好前景。

神經網絡架構搜索(Differential Neural Network Architecture Search, DNAS)是一種利用梯度下降法搜索離散結構的技術。已有研究將其應用於生成低冗餘電路,展現出了顯著的潛力。然而,作者發現現有方法在生成電路時,尤其是在處理大規模電路時,難以實現完全準確的生成,且其性能對超參數極爲敏感。

在深入的實驗分析後,作者進一步總結出將 DNAS 應用於電路生成的三個主要難點:

爲系統性地解決這些挑戰,作者提出了一種新穎的正則化三角形電路網絡生成框架(T-Net),實現了完全準確且可擴展的電路生成。此外,他們還提出了一種由強化學習輔助的演化算法,以實現高效且有效的電路優化。在四個電路評測標準數據集中,實驗表明他們的方法能夠精確生成多達 1200 節點規模的電路,且其性能顯著優於國際邏輯綜合競賽 IWLS 2022 和 2023 中冠亞軍方案。

背景與問題介紹

邏輯電路生成介紹

邏輯電路圖(And-Inverter Graph, AIG)是邏輯電路的一種表示方式。AIG 爲有向無環圖,圖中的節點代表與邏輯門,圖中的邊代表邏輯門間的連線,連線上可以添加非門。邏輯電路的大小爲 AIG 中的節點數,在邏輯功能不變的情況下,節點數越少表示電路結構越緊湊,這將有助於後續的芯片設計優化。

邏輯電路生成方法將電路的完整輸入輸出對組合,即功能真值表,建模爲訓練數據集,並利用機器學習模型自動從數據集中學習生成邏輯電路圖 [1,2,3]。在電路設計的實際應用中,要求設計精準滿足功能要求的電路結構,因此生成的邏輯電路圖必須在訓練集上達到 100% 的準確率。

基於 DNAS 的電路生成介紹

神經網絡架構搜索(Differential Neural Network Architecture Search, DNAS)[4] 近期被用於生成邏輯電路圖 [2,3]。這類方法將一個 L 層,每層 K 個神經元的神經網絡建模爲 AIG,其中神經元視爲邏輯門,神經元之間的連接視爲邏輯門之間的電路連接,神經元可以連接到更淺層的任意神經元。對於一個參數化的神經網絡,每個神經元都固定執行與邏輯運算,而神經元之間的連接參數是可學習的。

爲了能夠使用梯度下降法訓練網絡結構,現有方法會執行 2 種連續化操作:1. 神經元的邏輯運算用等價的可微方式計算,例如 a 與 b 用 a⋅b 代替 [5]。2. 將離散的網絡連接方式參數化,並在前向傳播時使用 gumbel-softmax [6] 對連接進行連續化和採樣。

在訓練期間,真值表的每一行輸入 - 輸出對都作爲訓練數據輸入網絡,通過梯度下降法訓練連接參數。在測試期間,每個節點的輸入根據參數只選擇一條連接,從而將網絡離散化,模擬實際的邏輯電路。

動機實驗 ——DNAS 難以準確生成電路

作者使用上述 DNAS 方法生成電路,生成準確率和電路的規模如圖 1(a)所示。結果顯示,現有方法難以準確生成電路,且準確率隨着電路規模增大而減小。同時,他們發現生成準確率對網絡初始化方式及其敏感,方法的魯棒性較差。

圖 1. 觀察實驗。(a) 現有的 DNAS 方法難以準確生成電路,特別是大規模電路。(b) 輸出節點位於網絡淺層,跳過了大量可用節點。(c) 實際只有約四分之一的節點被使用 (深色)。(d) 電路各層節點數統計,與普遍使用的方形網絡存在差異。

爲了進一步分析產生上述挑戰的原因,作者進行了詳細的實驗。

首先,他們發現網絡利用率很低。由於節點間的連接可以跨層,因此存在被跳過的節點。圖 1(b)展示了經過訓練後輸出節點位於網絡中的位置,可以看到大部分網絡層都被跳過,沒有連接進最終電路。圖 1(c)展示了網絡中實際使用到的節點(深色),只有約四分之一的底層節點被使用。過度的跨層連接浪費了大量網絡結構,限制了網絡的表達能力。

接着,他們發現實際電路結構與網絡之間存在結構偏差。他們統計了使用傳統方法生成電路的各層節點數,如圖 1(d)所示。圖中展示了實際電路在底層有着更多節點,而頂層則節點更少,這與普遍使用的方形網絡存在差異。

最後,他們發現不同輸入 - 輸出示例之間存在學習難度差。具體來說,它們在訓練時的 loss 收斂速度存在顯著差異。這與通常認爲的獨立同分布(IID)假設並不相同。更多細節可見原論文第 4 章節。

方法介紹

針對以上三個挑戰,作者設計了新穎的正則化三角形電路生成框架(T-Net),如圖 2 所示。它包含 3 個部分:多標籤數據變換、三角形網絡結構、正則化損失函數。

圖 2. 作者提出的電路生成框架圖,包含多標籤數據變換、三角形網絡結構、正則化損失函數三部分。

多標籤數據變換:提高可擴展性

隨着輸入位數的增多,真值表的長度呈指數型增長。爲了解決擴展性挑戰,作者設計了基於香農定理的多標籤訓練數據變換。香濃定理證明了一個邏輯函數可以通過一個分解變量分解成兩個子函數:

由於真值表是邏輯函數的對偶表示,他們通過以下兩步完成數據變換:首先選定一個輸入變量,通過固定它的值爲 0 或 1,將真值表分解爲 2 個長度減半的子表。接着將 2 個子表並列起來,每個輸入組合的輸出數量翻倍。

通過將真值表合併生成,網絡可以學習到更多可複用的結構,從而減少最終的電路節點數。多標籤數據變換可以不斷減少真值表的輸入位數,從而降低學習難度,加速電路生成。

三角形網絡結構:減小搜索空間

爲了使網絡結構更好地適配電路特性,作者設計了三角形的網絡結構。具體來說,更寬的底層結構增強了網絡的表達能力,而細長的頂層結構減少了利用率低的冗餘節點,減小了搜索空間,加速了收斂。同時,實驗證明了這種窄頂結構也能有效加速具有大量輸出的電路生成。

正則化損失函數:精確生成電路

本論文的方法包含跨層連接正則化和布爾難度識別損失函數兩部分。對於跨層連接,作者對可學習的連接分佈參數施加權重正則化,鼓勵網絡連接更臨近層的節點。對於較難學習的輸入 - 輸出示例,他們在損失函數中爲這些示例施加更大的權重,以在訓練後期加速收斂。

同時,本論文的框架還包含電路優化部分。作者在強化學習優化算子序列調優的基礎上,結合了演化算法和 agent 重啓技術,避免陷入局部最優解,實現快速有效的電路優化。更多細節可見原文第 5 章節。

實驗介紹

本論文實驗的數據集包括 4 類開源電路數據集,節點數規模高達 1200,輸入、輸出數量最高爲 16、63 位。

實驗包含 4 個部分:1. 在多個電路上評估本論文電路生成和優化方法的準確性和電路性能。2. 評估本論文生成方法針對電路大小的可擴展性。3. 通過消融實驗展示本論文方法各部分的效用。4. 驗證本論文方法對超參數的魯棒性。

作者在以下內容中詳細介紹實驗 1,其餘實驗請參見原論文的第 6 章節。

電路生成準確率

部分實驗結果見圖 3,作者在開源電路上對比了他們的方法與其他基於 DNAS 生成方法的準確率。實驗結果顯示,他們的方法準確率大幅提升,並可準確生成 1200 節點規模的電路。

圖 3. 作者提出的 T-Net 相比其他 DNAS 電路生成方法準確率大幅提升。

電路綜合效果

部分實驗結果見圖 4,作者在開源比賽電路上對比了他們的方法與開源邏輯綜合工具 ABC 和 IWLS 比賽冠亞軍的電路大小。實驗結果顯示,他們的方法顯著優於開源邏輯綜合工具 ABC 中的電路生成算子,且超過了 2022 和 2023 年比賽冠亞軍的方案。

圖 4. 作者提出的電路生成及優化框架效果顯著優於開源邏輯綜合工具 ABC 中的電路生成算子。

參考文獻

[1] International workshop on logic & synthesis contest. https://www.iwls.org/contest/, 2024.

[2] Designing better computer chips. Google DeepMind, 2023, https://deepmind.google/impact/optimizing-computer-systems-with-more-generalized-ai-tools.

[3] Peter Belcak, et al. Neural combinatorial logic circuit synthesis from input-output examples. International conference on machine learning NeurIPS Workshop, 2022.

[4] Hanxiao Liu, et al. Darts: Differentiable architecture search. International conference on machine learning ICLR 2019.

[5] Felix Petersen, et al. Deep differentiable logic gate networks. International conference on machine learning NeurIPS, 2022.

[6] Eric Jang, Shixiang Gu, and Ben Poole. Categorical reparameterization with gumbel-softmax. International conference on machine learning ICLR, 2017.