跳轉到

8.3 自動調優:機器學習走進 EDA#

當 DSE 把設計空間攤開在地圖上,下一個問題自然浮現:能不能讓機器自己找出好參數?這正是 OpenROAD AutoTuner 的使命。AutoTuner 以 Ray Tune 為基礎框架,支援 Optuna、Bayesian optimization 等多種搜尋演算法,把 ORFS 的整個 RTL-to-GDS 流程當作目標函數,自動尋找在給定指標(例如最小化 area、最大化 frequency,或兩者的加權組合)下最優的流程參數組合。工程師不再手動調參,而是宣告「我要什麼」,讓演算法決定「怎麼試」。

Bayesian optimization 的核心思想值得展開:它先隨機採樣幾個點建立初步觀察,再用一個 surrogate model(通常是 Gaussian Process)近似「參數 → 結果」這個昂貴函數,然後用 acquisition function 決定下一個最值得評估的點——在「探索未知區域」與「利用已知好區域」之間取得平衡。對於一次評估要數小時的晶片流程,這種樣本效率極高的方法是理所當然的選擇。Optuna 則以輕量、易用見長,其 TPE(Tree-structured Parzen Estimator)演算法在同類問題上表現出色,且 API 友善,於是成為 AutoTuner 的熱門選項。

ML 走進 EDA 的歷史,比 AutoTuner 早得多。1990 年代就有類神經網路預測 wire delay 的嘗試,但受制於算力與數據量,始終是配角。真正的轉折發生在 2010 年代後期:一是 CAD 界長期的競賽傳統——CADathlon、ISPD contest——累積了大量公開 benchmark 與數據文化,為 ML 提供了訓練土壤;二是深度學習本身在圖像、語音領域的爆發,讓 congestion 預測、DRC hotspot 檢測這類「網格狀預測」問題可以直接套用卷積神經網路。學術界隨即湧現大量工作:用 CNN 預測 routing congestion,讓 placement 階段就「看見」未來的繞線壓力,提前佈局調整;用類似方法預測 DRC violation 熱點,把「先做完再修」的迭代迴圈壓縮成「一開始就避開」。

2021 年,Google 團隊在 Nature 發表以 reinforcement learning 做 macro placement 的論文,宣稱在數小時內達到或超越人類專家數週的成果,一石激起千層浪。這篇論文的意義超越了技術本身:它向全世界宣告,晶片設計中最依賴大師直覺的環節,可能被 ML 攻克。媒體大量報導,甚至牽動了對半導體人才結構的討論。然而科學的驗證機制隨後啟動:2023 年,多位學者(包括 ISPD 競賽社群的研究者)對該方法進行嚴謹的複現與對比,指出在公平的實驗條件下,其效果與既有方法(如模擬退火)相當,且原始比較基準存疑。這場爭議最終以更清醒的共識收尾——ML 確實有潛力,但宣稱「取代人類工程師」為時尚早,而嚴格的 baseline 與可複現性,在這個領域依然稀缺。這段公案成為 ML4EDA 的成人禮:熱情與懷疑並存,最後沉澱為務實的推進。

AutoTuner 所代表的,正是這種務實路線:不宣稱取代人,而是把人最不擅長、最耗時的「高維參數搜尋」交給機器,把「架構決策」留給人。其實作哲學也承襲了開源社群的傳統——所有演算法來自開源生態(Ray、Optuna),所有流程介面來自 ORFS,使用者可以自由組合、複現、改進。

從更寬的視野看,ML 進入 EDA 是一場技術與經濟的合流。摩爾定律放緩後,製程微縮的性價比下降,產業被迫從「等著更好的製程」轉向「把設計做得更好」;設計複雜度(chiplet、3D-IC、超大 SoC)卻持續上升,工程師的認知負荷逼近極限。ML 恰好填補這個缺口:它把三十年累積的設計數據變成資產,把「經驗」轉成「模型」。而開源 EDA 在此扮演關鍵的制度角色——只有開放的流程,才能產生可公開、可比較、可複現的數據,ML 模型才訓練得起、驗證得了。封閉工具的世界裡,每家公司的數據都是孤島;開放的世界裡,數據是公共財。

對台灣的 IC 設計教育而言,這也是一個歷史機遇。當 AutoTuner、ORFS、開源 PDK 都唾手可得,學生可以在課堂上完整經歷「掃 DSE → 收集數據 → 訓練模型 → 自動調優」的閉環,這正是十年前只有頂尖大公司研究部門才有的研究條件。EDA 的下一世代人才,將在開放的環境中被養成。