聯手華為諾亞,南大LAMDA組獲EDA頂會DATE 2025最佳論文
机器之心發表於2025-02-24
國內晶片設計研究團隊,剛剛在國際學術頂會上獲獎了。近日,南京大學人工智慧學院 LAMDA 組錢超教授團隊在 DATE 2025 上發表論文《Timing-Driven Global Placement by Efficient Critical Path Extraction》獲得了最佳論文獎。- 論文:《Timing-Driven Global Placement by Efficient Critical Path Extraction》
- 論文連結:https://www.lamda.nju.edu.cn/qianc/DATE_25_TDP_final.pdf
- 開源:https://github.com/lamda-bbo/Efficient-TDP
本論文第一作者侍昀琦、四作林熙、五作薛軻分別是南京大學人工智慧學院的碩士生、本科生和博士生,錢超教授為通訊作者,論文由南京大學與華為諾亞方舟實驗室合作完成。DATE 全稱 Design Automation Test in Europe(歐洲設計自動化與測試會議),是 EDA 領域的頂級國際學術會議,由權威機構 IEEE 和 ACM 共同舉辦,吸引了全球電子設計自動化與測試領域的著名學者、企業界專家參與。DATE 自 1994 年創辦以來已舉辦 31 屆,今年的大會將於 3 月 31 日至 4 月 2 日在法國里昂召開。今年的大會收到了超過 1200 篇投稿,錄用率約 25%,共選出了四篇最佳論文獎。南京大學等完成的針對大規模晶片標準單元的全域性佈局問題,透過高效的關鍵路徑提取技術,覆蓋所有時序(即傳播時延約束,是實現晶片功能的關鍵)違例端點,從而精確建模時序目標,並且在最佳化時兼顧佈線長度、佈局密度、時序等多個目標。相較此前業界最先進演算法,新方法在關鍵時序指標 TNS 和 WNS 上分別提升 40.5% 和 8.3%。審稿人高度評價了該研究,稱「結果令人印象非常深刻,超過了所有先進工作」(The results are very impressive, outperforming all state-of-the-art works),並取得了顯著提升。EDA 即電子設計自動化(Electronic Design Automation),是指利用計算機輔助設計(CAD)軟體,來完成超大規模積體電路(VLSI)晶片的功能設計、綜合、驗證、物理設計(包括佈局、佈線、版圖、設計規則檢查等)等流程的設計方式。EDA 被譽為「晶片之母」,是電子設計的基石產業。在超大規模整合設計領域,佈局過程至關重要,它是邏輯設計和物理佈局之間的橋樑。傳統的佈局方法雖然側重於最小化線長和減少佈線擁塞,但僅隱式地解決了時序指標,這可能無法滿足現代大規模晶片設計的嚴格時序要求。直接最佳化時序是必不可少的,但通常需要大量的計算資源和週轉時間,人們急需更有效的時序驅動佈局方法來縮短設計週期並確保時序收斂。現代佈局演算法通常由三個主要階段組成:全域性佈局、合法化和詳細布局。全域性佈局將單元分佈在目標佈局中,平衡線長和密度。然後透過合法化對粗略結果進行細化,並透過詳細布局進行微調。在這三個階段中,全域性佈局在確定單元的整體分佈方面起著至關重要的作用,顯著影響最終佈局的質量,包括時序。因此,針對全域性佈局的時序驅動佈局 (TDP) 得到了廣泛研究,重點最佳化關鍵時序指標,例如總負裕度 (TNS) 和最差負裕度 (WNS)。這類時序驅動佈局(TDP)技術基本上包含三個組成部分:基礎佈局演算法、時序分析以及它們之間的介面。第一個組成部分利用傳統的全域性佈局引擎,主要專注於最佳化線長和密度之間的權衡。第二個組成部分涉及內部或外部時序引擎,這些引擎評估當前佈局以提供關鍵的時序資料,例如關鍵路徑延遲或引腳裕量。第三個組成部分將時序指標轉換為某些權重或約束,以驅動基礎佈局引擎。根據處理時序資訊的方式,TDP 技術大致可以分為兩類:基於網路的方法和基於路徑的方法。基於網路的方法使用時序分析動態或靜態地調整網路權重或網路約束,間接引導佈局關注關鍵網路。由於傳統佈局演算法主要專注於最小化線長,這本身涉及網路的考慮,因此只需對這些演算法進行最小修改即可適應時序驅動的方法。最近,有研究將先進的非線性佈局工具 DREAMPlace 升級為其時序驅動版本 4.0。這個新版本動態調整網路權重,利用動量引導機制與時序分析引擎互動,增強了其對時序最佳化的關注。基於路徑的方法直接處理從時序圖中提取的路徑,通常將其表述為數學規劃問題。這些方法在最佳化過程中保持對時序的準確檢視,因此通常能夠確保高質量的結果。然而,隨著設計規模的增加,路徑數量呈指數增長,這些方法常常面臨可擴充套件性問題。最近又出現了一種全新可微分時序驅動佈局框架,可將 GPU 加速的可微分時序引擎整合到 DREAMPlace 中,實現高效的基於路徑的分析。這種方法不僅達到了最先進的效能,而且以具有競爭力的速度執行,有效解決了傳統的可擴充套件性挑戰。綜上所述,儘管取得了顯著進展,時序驅動的佈局問題在很大程度上仍未得到解決。基於網路的方法通常面臨最佳化目標間接和時序資訊利用不足的問題。對於基於路徑的方法,儘管此前的研究在一定程度上解決了可擴充套件性問題,但他們的方法透過平滑時序指標可能會影響準確性。南大研究引入了一個時序驅動的全域性佈局框架,該框架結合了細粒度的引腳到引腳(pin-to-pin)吸引力二次距離損失,直接針對時序指標進行最佳化。這一框架還配備了一個路徑級時序分析模組,能夠高效提取關鍵路徑。其主要貢獻包括:- 開發了一個基於領先佈局工具 DREAMPlace 4.0 的 GPU 加速時序驅動佈局流程,最佳化了關鍵路徑上的引腳到引腳吸引力;
- 引入了一種高效的關鍵路徑提取方法,能夠捕捉全面的時序資訊,實現高速的時序最佳化 —— 相比預設的時序分析工具,速度提升了 6 倍;
- 設計了一種用於引腳到引腳吸引力的二次歐幾里得距離損失,該損失與時序指標緊密對齊,顯著提升了效能,與其他距離度量相比,TNS(總負時序裕量)和 WNS(最差負時序裕量)分別提升了 50% 和 30%;
- 在 ICCAD2015 競賽基準測試套件上的實驗結果表明,與 DREAMPlace 4.0 相比,新方法在 TNS(WNS)上實現了約 60%(30%)的提升;與 Guo 和 Lin 的工作相比,TNS(WNS)提升了約 50%(10%)。
作者提出的「GPU 加速的時序驅動全域性佈局框架」在技術上有哪些創新之處呢?我們可以從下圖 1 的架構流程洞見一二,一方面引入了細粒度引腳到引腳吸引力目標,並直接瞄準了時序指標;另一方面透過高效的路徑提取方案和二次歐幾里得距離損失來實現。首先,為了得到細粒度的權重方案,作者認識到了傳統網路加權方法的不足。這些方法透過為關鍵網路分配額外權重來提高時序效能,然而現代設計的複雜性往往要求具有大型扇出網路和共享資料路徑,因而可能會對非關鍵引腳對施加不必要的權重,並忽略路徑共享的影響,進而無法有效地最佳化時序效能。為了解決這些問題,作者提出在整合時將引腳到引腳吸引力作為一個細粒度目標來看待,以取代傳統的為時序最佳化應用額外網路權重的方法。從效果上來看,引腳到引腳吸引力可以使關鍵路徑上的引腳靠得更近,從而減少線路延遲並提高時序效能。下圖 2 比較了傳統網路加權方案與三引腳網路的引腳到引腳吸引力模型。作者使用了一個包含三個時序路徑(分別用綠色、黃色和藍色箭頭表示)的示例展開了說明,其中引腳到引腳吸引力方法根據關鍵引腳(引腳 A、B 和 C)對各自的鬆弛量有選擇地分配權重,從而提供更精細的控制,並有利於整體時序和線長。在實現細粒度權重方案之後,接下來要考慮的是關鍵路徑的提取。為了能夠高效地提取路徑級時序資訊,作者整合了 OpenTimer。這是一個高效能的時序分析工具,改編自 DREAMPlace 4.0,並被很多開源專案採用。OpenTimer 提供了一個高階功能 report_timing (n),它在 n 值較小(比如 1)時可以有效地識別關鍵路徑,從而快速地對特定路徑進行詳細分析。不過,由於分析路徑呈二次增長,該功能的效率會隨 n 的增加而降低。意識到這一問題之後,作者提出了 report_timing_endpoint (n,k) 方法,實現了更好的關鍵路徑提取效果。這裡 n 表示最關鍵端點的數量,k 表示為每個端點提取的關鍵路徑的數量。具體來講,該方法返回了 n ×k 條路徑,並確保每個提及的端點都得到適當地覆蓋,從而全面反映整個晶片的時序問題並直接瞄準 TNS 指標。下表 I 詳細說明了使用不同方法時 superblue1 案例的時序分析結果。最初,作者共確定了 26300 個故障端點。從結果來看,本文 report_timing_endpoint (26300,1) 方法高效地覆蓋了所有端點,並涵蓋了更廣泛的引腳對。此外,將每個端點的路徑數增加到 10,時長會增加 3 倍,而引腳對的數量僅僅增加了 1.5 倍,這表明前一種設定足以進行有效的最佳化。最後還需要解決二次歐幾里得的距離損失問題。為了實現有效的最佳化,設計一個與最終時序指標保持一致的損失函式非常有必要且很重要。作者選擇引腳到引腳的歐幾里得距離的平方即二次損失作為目標函式:下圖 3 展示了二次損失設計的有效性,並使用 superblue16 案例對其與 HPWL 損失、歐幾里得距離損失進行了比較。他們首先使用 report_timing (1) 從時序最佳化前的稀疏佈局中識別出了最關鍵路徑,如圖 3 (a) 所示。圖 3 (b) 和 (c) 分別展示了使用 HPWL 損失和線性歐幾里得距離損失的情況下,最佳化至收斂的對應路徑。相比之下,圖 3 (d) 採用了本文二次歐幾里得距離損失,儘管匯流排長增加了一些,但路徑鬆弛有所改善。這一結果要歸功於二次損失促成了單元的更均勻分佈,並保持了更一致的線段長度。得益於以上三方面的創新,作者實現了 PP 損失的 CUDA 核心,並達成了 GPU 加速的目的。研究人員基於開源佈局器 DREAMPlace 4.0 釋出版本開發了時序驅動的全域性佈局器,並與此前業內最優方法進行了對比。下表 II 全面比較了新時序驅動佈局器與四種基線方法之間的 TNS、WNS 和 HPWL 指標。所有 DEF 結果均使用 ICCAD 2015 競賽的官方評估套件進行評估,以確保公平比較。結果顯示,新方法明顯優於最先進的時序驅動佈局器,尤其是可微分 TDP 和分佈 TDP。具體來說,它在 8 個測試案例中的 7 箇中實現了最佳 TNS 結果,平均比可微分 TDP 提高了 50.0%,比分佈 TDP 提高了 40.5%。與這兩個領先的佈局器相比,該研究提出的佈局器在 WNS 方面也顯示出 8.3% 的持續改進。此外,與 DREAM Place (包括其 4.0 版)相比,新方法在 TNS 和 WNS 的所有 8 個案例中均表現更優。作者表示,這種改進可以歸因於有針對性的引腳到引腳吸引策略,該策略最大限度地減少了對非關鍵引腳的影響並有效地保持了線長質量,而不像 DREAMPlace 4.0 那樣將權重應用於眾多網路。此外,與早期收斂的 DREAMPlace 相比,額外的時間驅動最佳化迭代可以進一步最佳化 HPWL 的密度。下表 III 總結了消融研究。前兩列分別用 HPWL 和線性歐幾里得損失代替了二次距離損失。儘管如此,它們在 TNS 方面比 DREAMPlace 4.0 提高了 15%,證明了新方法的引腳對引腳吸引力建模和關鍵路徑提取的有效性。此外,與 HPWL / 歐幾里得損失相比,二次損失的卓越效能表明它比 Electrostatics-TDP 更具優勢,後者依賴 HPWL / 歐幾里得損失進行虛擬路徑建模。執行時分析和其他結果。下表 IV 比較了 DREAMPlace、DREAMPlace 4.0 和新方法在 8 種設計中的執行時間。因為專注於線長,沒有耗時的計時引擎,DREAMPlace 在所有情況下都實現了最佳執行時間。由於高效的時間分析和加權方案,新方法在大多數情況下都超越了 DREAMPlace 4.0,如下圖 4 所示。下圖 5 展示了在佈局執行過程中,新方法與 DREAMPlace 4.0 在半周長線長(HPWL)、溢位率(Overflow)、總負時序裕量(TNS)和最差負時序裕量(WNS)方面的對比。兩條曲線在前 500 次迭代中保持一致,隨後時序最佳化開始。在 HPWL 和溢位率的子圖中,DREAMPlace 4.0 由於應用了較大的網路權重,導致 HPWL 效能較差且收斂速度較慢。此外,新方法還迅速提升了 TNS 和 WNS 效能,並在最佳化完全收斂前保持穩定,從而證明了時序目標設計的有效性。晶片設計是一個流程極其複雜的過程,包含大量最佳化問題。近年來,南京大學 LAMDA 組一直在持續攻關,希望建立 AI 賦能 EDA 技術的理論基礎,並對演算法設計提供指導。此前,在 2019 年 LAMDA 組在 Springer 出版《Evolutionary Learning: Advances in Theories and Algorithms》,總結了他們在該方向上過去二十年的主要工作,並於 2021 年出版中文版《演化學習:理論與演算法進展》。該團隊基於在演化學習方向的長期理論研究,近期還針對晶片設計中的複雜最佳化問題設計出了多個原創領先演算法,如針對晶片宏元件佈局問題,較谷歌在 Nature 2021 年提出方法的佈線長度縮短 80% 以上,較當前最先進的開源 EDA 工具 OpenROAD 的晶片最終時序指標提升超 65%,並在 ACM SIGEVO Human-Competitive Results 獲獎。據介紹,南大 LAMDA 組正在與華為合作攻關,希望透過先進晶片設計緩解當前先進製造工藝侷限。https://www.date-conference.com/https://ai.nju.edu.cn/5d/02/c17806a744706/pagem.htm