摘 要:為了應(yīng)對芯片設(shè)計復(fù)雜度的提升,電子設(shè)計自動化工具和方法也在不斷進(jìn)步。然而,EDA需要協(xié)調(diào)達(dá)到最佳的功率、性能和面積,通常其不能保證最優(yōu)的解決方案。EDA工具在電路設(shè)計階段包括邏輯綜合、布局布線及驗證等均屬于多目標(biāo)、多約束的非線性規(guī)劃求解過程,且為了更好解決求解中的不確定性和易于出現(xiàn)局域極值等難題,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法已被集成到EDA工具的設(shè)計流程中。首先對EDA中的優(yōu)化問題、多目標(biāo)優(yōu)化計算及基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法進(jìn)行了簡要概述,繼而詳細(xì)梳理了基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在邏輯綜合、布局布線及驗證等不同設(shè)計階段中的優(yōu)化求解方法,并闡述了當(dāng)前研究所面臨的挑戰(zhàn)與機遇,希望為集成電路自動化設(shè)計及相關(guān)領(lǐng)域研究提供參考。
關(guān)鍵詞:電子設(shè)計自動化;非線性規(guī)劃;多目標(biāo)優(yōu)化;神經(jīng)網(wǎng)絡(luò);優(yōu)化計算
中圖分類號:TP183"" 文獻(xiàn)標(biāo)志碼:A"" 文章編號:1001-3695(2025)01-001-0001-10
doi: 10.19734/j.issn.1001-3695.2024.05.0171
Advances of optimization algorithm via neural network computing for EDA
Abstract: In response to the increasing complexity of chip design, EDA tools and methods are also evolving. However, EDA needs to be coordinated to achieve optimal power, performance, and area, and it does not always guarantee an optimal solution. The application of EDA tools in the circuit design stage, including logic synthesis, layout and verification, belongs to the nonlinear programming solution process with multiple objectives and constraints. To better address the uncertainties of the solution and the problems such as the easy to appear local extreme values, optimization algorithms based on neural network had been integrated into the design process of EDA tools. This paper first gave a brief overview of the optimization problem, multi-objective optimization calculation and optimization algorithm based on neural network in EDA, and then sorted out the optimization solution methods of optimization algorithm based on neural network in different design stages such as logic synthesis, layout and verification, and expounded on the challenges and opportunities faced by the current research institute. It hoped to provide reference for automated integrated circuit design and related research.
Key words:electronic design automation (EDA); nonlinear programming; multi-objective optimization; neural network; optimization calculation
0 引言
電子設(shè)計自動化(EDA)作為應(yīng)用計算機和電子工程中最重要的領(lǐng)域之一,在融合前沿算法和技術(shù)的基礎(chǔ)上不斷發(fā)展[1~3]。近年來,隨著芯片產(chǎn)業(yè)的發(fā)展,集成電路的規(guī)模呈指數(shù)級增長,對電路設(shè)計各個流程的優(yōu)化計算提出了挑戰(zhàn)[4]。因此,EDA工具需要更高效地處理復(fù)雜設(shè)計、時序分析、仿真驗證、功耗優(yōu)化等問題,以滿足日益增長的電子設(shè)計需求。
鑒于EDA設(shè)計流程的許多階段都與優(yōu)化相關(guān),優(yōu)化的結(jié)果直接關(guān)系到電路設(shè)計的結(jié)果質(zhì)量(quality of result, QoR)評估[5]。傳統(tǒng)的EDA工具存在操作復(fù)雜、成本高、設(shè)計限制多、設(shè)計周期長、靈活性差等缺點,難以滿足不同的功率、性能和面積需求[6]。而現(xiàn)代硬件系統(tǒng)的復(fù)雜性和技術(shù)規(guī)模的爆炸式增長更加劇了這一問題??紤]到對硬件的高效開發(fā)和生產(chǎn)力提升的渴望,人們高度期望在EDA工具中注入更多的智能優(yōu)化方法,以實現(xiàn)快速、準(zhǔn)確、有效的優(yōu)化,從而提高開發(fā)效率。由于EDA設(shè)計流程的各個階段都屬于多目標(biāo)的非線性規(guī)劃問題,在這些問題的求解過程中,要對多個目標(biāo)共同求優(yōu),而各個目標(biāo)之間存在沖突,且不一定存在對所有目標(biāo)來說都是最好的解決辦法[7]。因此,對于多目標(biāo)優(yōu)化問題,通常存在一組可行解,稱為非支配解。傳統(tǒng)的多目標(biāo)優(yōu)化方法,如加權(quán)和方法[8]、模糊邏輯法[9]、ε-約束法[10]等難以求得復(fù)雜EDA優(yōu)化問題的全局最優(yōu)解。此外,有些設(shè)計流程的優(yōu)化問題還面臨著許多不確定因素和容易陷入局域極值等難題,這使得問題的求解變得更加困難。因此,EDA設(shè)計流程中的多目標(biāo)非線性規(guī)劃問題已成為科學(xué)家和研究人員的一個重要研究課題。
神經(jīng)網(wǎng)絡(luò)作為一種可以硬件實現(xiàn)的模型,在處理優(yōu)化問題時具有穩(wěn)定收斂、非線性映射、可并行計算及自學(xué)習(xí)性等優(yōu)點[11]。這使得神經(jīng)網(wǎng)絡(luò)在求解EDA設(shè)計流程中的多目標(biāo)非線性規(guī)劃問題時,求解時間不會隨著優(yōu)化問題的維度增大而明顯增加,其基本原理是把神經(jīng)網(wǎng)絡(luò)的平衡點與待優(yōu)化問題的最優(yōu)解一一對應(yīng),使得神經(jīng)網(wǎng)絡(luò)狀態(tài)沿著給定的初始點收斂到平衡狀態(tài),即原問題的解。其次,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法能顯著提升EDA設(shè)計效率,面對復(fù)雜的芯片設(shè)計問題,憑借其強大的建模能力高效求解,進(jìn)而優(yōu)化設(shè)計參數(shù),實現(xiàn)芯片性能的提升、功耗的降低以及可靠性的增強,還能快速適應(yīng)EDA領(lǐng)域不斷涌現(xiàn)的新技術(shù)和新需求,為其提供創(chuàng)新性解決方案。與其他智能優(yōu)化算法相比[12~15],基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在求解高維度、多目標(biāo)的復(fù)雜非線性規(guī)劃問題時具有明顯優(yōu)勢[16]。因此,基于神經(jīng)網(wǎng)絡(luò)的非線性規(guī)劃求解方法已經(jīng)集成到EDA的各個設(shè)計流程中,特別是邏輯綜合、布局布線及驗證等。
本文針對基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA優(yōu)化問題中的最新研究進(jìn)展進(jìn)行了分析與總結(jié),主要貢獻(xiàn)如下:
a)對EDA中的優(yōu)化問題、多目標(biāo)優(yōu)化計算及基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法進(jìn)行了梳理與討論;
b)對當(dāng)前國內(nèi)外基于神經(jīng)網(wǎng)絡(luò)的EDA設(shè)計流程(邏輯綜合、布局布線、驗證等)中的優(yōu)化計算進(jìn)行了綜述;
c)總結(jié)了基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA工具中的優(yōu)化應(yīng)用所面臨的一系列挑戰(zhàn)及未來研究方向。
1 EDA優(yōu)化問題及優(yōu)化算法概述
1.1 EDA優(yōu)化問題概述
EDA中的優(yōu)化旨在以最小的成本、資源及時間,實現(xiàn)電子設(shè)計在性能、功耗、面積等方面的最優(yōu),它通過運用各種優(yōu)化算法和技術(shù),不斷調(diào)整和改進(jìn)設(shè)計,以滿足特定的設(shè)計要求和約束條件。
EDA工具通過計算機輔助技術(shù)實現(xiàn)芯片自動化和智能化設(shè)計,實現(xiàn)包括芯片的前端設(shè)計、中間設(shè)計和后端設(shè)計等多個階段[17],如圖1所示。前端設(shè)計主要涉及芯片的邏輯設(shè)計和功能驗證,包括定義和設(shè)計芯片的系統(tǒng)架構(gòu)、定義各個模塊的功能和接口、進(jìn)行寄存器傳輸級(register transfer level,RTL)代碼編寫等,并通過功能驗證確保設(shè)計的正確性和完整性;中間設(shè)計階段涉及到邏輯綜合和時序分析,在這個階段,將前端設(shè)計的RTL代碼轉(zhuǎn)換為門級網(wǎng)表,并進(jìn)行時序分析和優(yōu)化,以確保芯片在時序上的正確性和性能要求;后端設(shè)計主要關(guān)注芯片的物理設(shè)計和物理驗證,包括布圖規(guī)劃、布局、布線、時鐘樹綜合、電源網(wǎng)絡(luò)設(shè)計等,通過物理驗證確保設(shè)計的物理正確性和可制造性[18]。
邏輯綜合將高級綜合(high-level synthesis, HDL)中的RTL塊映射到從給定技術(shù)庫中選擇的門的組合,同時針對不同的目標(biāo)優(yōu)化設(shè)計。通常這種優(yōu)化涉及定時關(guān)閉、面積和功耗之間的權(quán)衡[19]。
在物理設(shè)計中,首先將芯片的主要RTL塊和端口分配到布局的區(qū)域;其次,將IP(intellectual property)及綜合得到的邏輯門電路放置到芯片的特定位置;最后,添加用于時鐘信號和連接門的導(dǎo)線[20]。其中布局布線的優(yōu)化問題主要是找到最佳的元件布局和布線方案,以滿足諸如布線長度、時序約束、電磁兼容性等要求,這需要考慮元件的擺放位置、布線路徑的選擇以及避免信號干擾等因素[21]。通過布局布線的優(yōu)化來提高電路性能、減小面積以達(dá)到降低成本的目的。
驗證是在功能、邏輯和物理設(shè)計之后檢查設(shè)計的功能,特別是在制造之前,必須保證設(shè)計的正確性,其優(yōu)化目的在于提高驗證的效率、準(zhǔn)確性和可靠性,包括減少仿真時間、提高覆蓋率、增強錯誤檢測能力、優(yōu)化驗證流程、提高模型精度以及有效利用資源等方面[22]。通過不斷改進(jìn)和優(yōu)化驗證方法,可以降低成本、縮短設(shè)計周期,并確保設(shè)計的質(zhì)量和可靠性。
1.2 多目標(biāo)優(yōu)化計算概述
非線性規(guī)劃為處理EDA中的邏輯綜合、布局布線和驗證等眾多實際問題提供了重要的數(shù)學(xué)模型[23]。當(dāng)一個非線性規(guī)劃問題面對多個需要優(yōu)化的目標(biāo)并期望每個目標(biāo)都盡可能大(或?。┑那闆r時,就產(chǎn)生了一個多目標(biāo)優(yōu)化問題[24]。傳統(tǒng)的多目標(biāo)優(yōu)化求解方法局限性較大,現(xiàn)階段的一些智能多目標(biāo)優(yōu)化計算方法逐漸發(fā)展成為該領(lǐng)域的研究重點。
非線性規(guī)劃研究的是一個目標(biāo)函數(shù)在若干不等式或等式約束條件下的極值問題,并且目標(biāo)函數(shù)及約束條件中至少有一項是非線性函數(shù)[25]??紤]一個非線性最小化問題:
min f(x)
s.t. gi(x)≤0" i=1,2,…,p
hj(x)=0" j=1,2,…,q(1)
其中: f(x)為目標(biāo)函數(shù);gi(x)為不等式約束函數(shù);hj(x)為等式約束函數(shù);x=(x1,x2,…,xd)T為d維決策變量,x∈Rd。當(dāng)x滿足所有約束條件時,則稱x為非線性規(guī)劃問題式(1)的可行解,所有可行解的集合稱為可行集,記為
Φ={x∈Rd|gi(x)≤0;hj(x)=0}(2)
如果存在一個x*的開放鄰域ΩΦ使得式(1)中的一個可行解x*稱為局部最優(yōu)解,以至于f(x)≥f(x*),x∈Ω,如果這個不等式適用于任何x∈Φ,則x*為非線性規(guī)劃問題式(1)的一個全局最優(yōu)解,且滿足KKT條件[26]:
由于實際EDA應(yīng)用中的優(yōu)化問題復(fù)雜度高、規(guī)模大,其求解方法往往歸結(jié)為多目標(biāo)、多約束的全局優(yōu)化算法,即多目標(biāo)優(yōu)化計算[27]。因此,人們也一直在尋求能夠保證全局最優(yōu)且收斂穩(wěn)定的多目標(biāo)優(yōu)化求解方法。
多目標(biāo)非線性規(guī)劃問題是由多個目標(biāo)函數(shù)及若干不等式和等式約束構(gòu)成[28],其數(shù)學(xué)描述如下所示。
min F(x)={f1(x), f2(x),…, fm(x)}
s.t." gi(x)≤0" i=1,2,…,p
hj(x)=0" j=1,2,…,q(4)
其中:F(x)為多目標(biāo)函數(shù)。d維決策變量空間Rd(即可行域)上的一點對應(yīng)m維目標(biāo)函數(shù)空間中的一點,其映射關(guān)系為F:Rd→Rm,一個d=3、m=2的決策變量空間與目標(biāo)函數(shù)空間映射關(guān)系如圖2所示。
由于多目標(biāo)優(yōu)化問題的各個子目標(biāo)是相互沖突的,這種矛盾決定了沒有單一的解決方案來實現(xiàn)所有的目標(biāo)[29]。如果一個解被稱為非支配解或Pareto最優(yōu)解(Pareto optimal solution, POS),則意味著它不被其他任何解所支配[30]。多目標(biāo)非線性規(guī)劃問題的解會得到一個非劣解集,如果這個集合中的解是相互非制約的,則稱為Pareto解集(Pareto set, PS)[31]。Pareto解集中每個解對應(yīng)的目標(biāo)值向量組成的集合稱為Pareto陣面(Pareto front, PF)[32]。求解多目標(biāo)優(yōu)化問題的最優(yōu)解實質(zhì)上就是求解Pareto陣面。
多目標(biāo)的非線性規(guī)劃問題需要同時針對多個目標(biāo)函數(shù)進(jìn)行優(yōu)化求解,且這些目標(biāo)之間往往不是獨立存在的,是相互牽制和關(guān)聯(lián)的,即某個目標(biāo)被優(yōu)化的同時會導(dǎo)致其他目標(biāo)的性能變差[33]。因此,研究多目標(biāo)的非線性規(guī)劃問題的求解方法,特別是應(yīng)用于EDA各個設(shè)計流程的多目標(biāo)非線性規(guī)劃一直以來都是學(xué)術(shù)研究和電子工程設(shè)計領(lǐng)域聚焦的重點。
與此同時,如何在環(huán)境不確定的情況下為優(yōu)化作出明智的決策和針對大規(guī)模的復(fù)雜多目標(biāo)優(yōu)化問題時如何有效避免陷入局域極值也是多目標(biāo)優(yōu)化的計算難點[34]。如果能夠有效解決環(huán)境不確定的因素,便可以提高算法的穩(wěn)定性;如果能夠較好地避免陷入局域極值解,則可以改善算法的優(yōu)化性能。
在EDA設(shè)計流程中,優(yōu)化基本都伴有不確定因素[35]。因此,解決好實際求解中環(huán)境不確定的難題,會更好地實現(xiàn)全局求優(yōu)。而考慮優(yōu)化問題中的不確定性,需提高優(yōu)化算法的穩(wěn)定性。然而,這種增強的穩(wěn)定性通常伴隨著過程中的性能損失(例如代價函數(shù)的損失)。因此,需要在穩(wěn)定性和性能之間權(quán)衡來進(jìn)行多目標(biāo)優(yōu)化。
一個含不確定因素的多目標(biāo)優(yōu)化問題如下所示[36]:
min { f1(x,u1), f2(x,u2),…, fm(x,um)}
s.t. gi(x,γi)≤0" i=1, 2,…, p(5)
其中: f:Rd×Rl→R和gi:Rd×Rk→R(i=1,2,…,p)為連續(xù)函數(shù);不確定參數(shù)ui∈Ui,γi∈Yi,且Ui∈Rl,Yi∈Rk是凸緊集。Zamani等人[37]證明了在可行集緊性或凸性條件下,每一個魯棒有效解都是一個可行解,并給出了類多目標(biāo)優(yōu)化問題的穩(wěn)定性有效解的概念。Fakhar等人[38]針對約束函數(shù)中的數(shù)據(jù)不確定性,給出了一個魯棒對偶理論和Mond-Weir型對偶,證明了廣義凸性概念在魯棒優(yōu)化和組合優(yōu)化中的可行性。
邏輯綜合、布局布線及驗證是EDA物理設(shè)計中的重要環(huán)節(jié),這些環(huán)節(jié)中的多目標(biāo)優(yōu)化計算是提高電路性能和降低成本的關(guān)鍵[39]。在邏輯綜合中的多目標(biāo)優(yōu)化主要體現(xiàn)在:a)面積和速度的權(quán)衡。較小的面積可以降低芯片的成本和功耗,但可能會限制電路的運行速度,而追求高速度可能需要更大的面積來實現(xiàn)復(fù)雜的邏輯結(jié)構(gòu),因此需要在芯片設(shè)計的物理面積和電路運行的速度之間找到一個合適的平衡點。b)功耗和性能的優(yōu)化。在邏輯綜合中,一般需要通過優(yōu)化電路結(jié)構(gòu)和選擇合適的邏輯門來降低功耗,同時保持電路性能。c)可測試性和可靠性的考慮。通過合理的設(shè)計,可以提高電路的可測試性,便于故障檢測和修復(fù)。同時,選擇可靠的邏輯門和電路結(jié)構(gòu)可以提高電路的可靠性。
在布局布線中的多目標(biāo)優(yōu)化體現(xiàn)在:a)線長和擁塞的平衡。較短的線長可以提高信號傳輸速度,但可能會導(dǎo)致?lián)砣?。因此,需要找到一個在線長和擁塞之間的平衡點。b)時序和信號完整性的保證。在布局布線中,需要保證信號的時序和完整性,同時避免信號延遲和失真。c)成本與資源利用率的考慮。在滿足設(shè)計要求的前提下,需盡量降低布線成本,同時提高各種硬件資源的利用效率,避免資源浪費。
在驗證中的多目標(biāo)優(yōu)化主要體現(xiàn)在:a)測試覆蓋率和測試時間的平衡。在驗證中,需要保證足夠的測試覆蓋率,以確保電路的正確性。但同時,也需要考慮測試時間,避免過長的測試時間導(dǎo)致成本增加。b)故障檢測的準(zhǔn)確性和效率的考慮。需要在確保驗證結(jié)果高度準(zhǔn)確、盡可能發(fā)現(xiàn)所有潛在問題的同時,提高驗證的速度和效率,以縮短開發(fā)周期。c)驗證效率和資源利用的優(yōu)化。驗證需要消耗大量的計算資源和時間,通過優(yōu)化驗證流程和算法,可以提高驗證效率,減少資源浪費。
針對EDA中大規(guī)模的復(fù)雜多目標(biāo)優(yōu)化問題,現(xiàn)階段的大部分智能多目標(biāo)優(yōu)化算法(如遺傳算法(genetic algorithm, GA)、粒子群優(yōu)化算法(particle swarm optimization, PSO)及模擬退火算法(simulated annealing algorithm, SAA)等)雖取得了一定成果[40~44],但仍存在一些局限性,例如:a)計算復(fù)雜度高。在處理大規(guī)模數(shù)據(jù)時,這些算法可能需要大量的計算資源和時間,導(dǎo)致優(yōu)化效率低下。b)收斂速度慢。對于復(fù)雜的多目標(biāo)優(yōu)化問題,算法可能需要較長時間才能收斂到滿意的解。c)易陷入局部最優(yōu)。在搜索過程中,算法可能會陷入局部最優(yōu)解,而無法找到全局最優(yōu)解。d)對目標(biāo)函數(shù)和約束條件的要求較高。某些算法可能對目標(biāo)函數(shù)和約束條件的性質(zhì)有特定要求,限制了其在實際問題中的應(yīng)用?;谏窠?jīng)網(wǎng)絡(luò)的優(yōu)化算法雖然也具有較高的復(fù)雜度(因為它們需要訓(xùn)練網(wǎng)絡(luò)模型,訓(xùn)練涉及大量的計算和參數(shù)調(diào)整),但它們可以利用神經(jīng)網(wǎng)絡(luò)的強大表示能力來逼近復(fù)雜的目標(biāo)函數(shù),從而可以實現(xiàn)更快的收斂速度。同時,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法具有較好的適應(yīng)性和自學(xué)習(xí)能力,能夠根據(jù)待優(yōu)化問題的特點自動調(diào)整優(yōu)化策略,增加找到全局最優(yōu)解的可能,并通過學(xué)習(xí)和訓(xùn)練來適應(yīng)含有不確定因素的目標(biāo)函數(shù)或有一定模糊性的約束條件,且經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)具有一定的泛化能力,可擴(kuò)展性較好[45~47]。
1.3 基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法概述
神經(jīng)網(wǎng)絡(luò)作為一種智能優(yōu)化算法從信息處理的角度對人腦神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和運行原理進(jìn)行抽象模擬,按照不同的連接方式組成不同的網(wǎng)絡(luò)結(jié)構(gòu),是一種具有大量連接的并行分布式處理系統(tǒng),其同時處理多目標(biāo)、多約束問題的能力使得求解復(fù)雜的多目標(biāo)非線性規(guī)劃問題成為可能[48]。
Hopfiled在1982年提出了反饋神經(jīng)網(wǎng)絡(luò)[49],并指出其具有優(yōu)化計算功能后[50],于1985年首次應(yīng)用于電路設(shè)計中作為優(yōu)化計算工具[51]。相比于其他智能優(yōu)化算法,神經(jīng)網(wǎng)絡(luò)并行計算可以更有效地進(jìn)行優(yōu)化求解,這使得神經(jīng)網(wǎng)絡(luò)在處理不確定性和變化的環(huán)境時具有較大優(yōu)勢[52];同時,神經(jīng)網(wǎng)絡(luò)的收斂穩(wěn)定性、容錯性及自適應(yīng)學(xué)習(xí)能力還可以避免局域極值的問題,通過調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)來搜索全局最優(yōu)解[53]。
Qin等人[54]提出了一種求解非線性凸規(guī)劃的雙層反饋神經(jīng)網(wǎng)絡(luò),如圖3所示,其動力學(xué)方程如下:
假設(shè)(x*,μ*)是反饋神經(jīng)網(wǎng)絡(luò)式(6)的一個平衡點,則x*是非線性規(guī)劃問題式(1)的最優(yōu)解。反之,如果x*是非線性規(guī)劃問題式(1)的最優(yōu)解,則存在μ*gt;0,使得(x*,μ*)是式(6)的一個平衡點。
由式(7)可知,式(6)的平衡點(x*,μ*)在Lyapunov意義上是穩(wěn)定的,并且由于(x*,μ*)的任意性,式(6)的每個平衡點在Lyapunov意義上都是穩(wěn)定的。所以,對于任意初始點(x0,μ0)T∈Rn×Ro,式(6)的狀態(tài)(x(t),μ(t))T均收斂于一個平衡點。同時,從不同的初始點開始,式(6)的狀態(tài)可能收斂于不同的平衡點,且都是問題式(1)的最優(yōu)解。
現(xiàn)階段,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化求解大都是通過計算使系統(tǒng)的所有軌跡收斂到與期望解相對應(yīng)的平衡點,即最低能態(tài)對應(yīng)于最優(yōu)解[55]。但由于優(yōu)化是一個最小化過程,不可避免會出現(xiàn)局域極值解的問題[56]。所以,一些科學(xué)家將神經(jīng)網(wǎng)絡(luò)與其他智能優(yōu)化算法結(jié)合,共同求解非線性規(guī)劃問題[57~67]。Zhang等人[57]提出了一種變參數(shù)遞歸神經(jīng)網(wǎng)絡(luò)(SE-VPRNN)算法,其架構(gòu)如圖4所示,其設(shè)計關(guān)鍵在于利用變參數(shù)遞歸神經(jīng)網(wǎng)絡(luò)精確地搜索到局部最優(yōu)解。在每個網(wǎng)絡(luò)收斂到局部最優(yōu)解之后,通過粒子群優(yōu)化框架交換信息,更新速度和位置。神經(jīng)網(wǎng)絡(luò)從更新后的位置重新搜索局部最優(yōu)解,直到所有神經(jīng)網(wǎng)絡(luò)都搜索到相同的局部最優(yōu)解。為了提高全局搜索能力,采用小波變換增加了粒子的多樣性。
同時,也有一些科學(xué)家希望通過更能體現(xiàn)生物真實性和并行處理優(yōu)勢的脈沖神經(jīng)網(wǎng)絡(luò)(spiking neural network, SNN)進(jìn)一步推廣基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在非線性優(yōu)化計算中的應(yīng)用[68~75]。脈沖神經(jīng)網(wǎng)絡(luò)動力學(xué)系統(tǒng)在多目標(biāo)優(yōu)化計算中,通過自適應(yīng)學(xué)習(xí)來改變脈沖神經(jīng)網(wǎng)絡(luò)的突觸狀態(tài),獲得不同目標(biāo)優(yōu)化函數(shù),且其對神經(jīng)元的故障或錯誤具有一定的容錯能力,這在處理多目標(biāo)問題時可以提高系統(tǒng)的魯棒性。Ackley等人[68]在1984年提出的“玻爾茲曼機”是一種基于隨機過程的神經(jīng)網(wǎng)絡(luò)模型,也被認(rèn)為是SNN的一種早期形式。隨后,Palm等人[69]在1988年提出了spike train的概念,并指出脈沖依賴于時間的相關(guān)性。Federici[70]提出脈沖神經(jīng)網(wǎng)絡(luò)在部分神經(jīng)元或權(quán)值連接出現(xiàn)錯誤或失效時仍能保持一定計算的能力,這是因為脈沖神經(jīng)網(wǎng)絡(luò)中的信息處理是分布式的,多個神經(jīng)元共同參與決策和計算,而不是依賴于單個神經(jīng)元的準(zhǔn)確性。Zhao等人[71]引入了量子隧穿隨機共振效應(yīng)來分析脈沖神經(jīng)網(wǎng)絡(luò)的模擬量子退火算法及優(yōu)化計算收斂性,說明了在量子隧道場中彈性運動可實現(xiàn)搜索最優(yōu)解的計算機制,利用常微分方程定性理論對動態(tài)系統(tǒng)模型進(jìn)行求解和分析,證明了算法早期的局部收斂性和后期的全局收斂性,并對其運行機理給出了合理的理論解釋。Malaka等人[75]提出了一個完全循環(huán)的SNN模擬生物神經(jīng)元的響應(yīng)行為來解決優(yōu)化問題,該網(wǎng)絡(luò)可以計算給定問題的一系列不同的解,并收斂成這些解的周期序列,同時可以利用其動力學(xué)避免局域最小值。因其同時計算多個不同的解決方案,這些解決方案可以相互影響,并從中選擇最佳解決方案。該項研究有助于從工程學(xué)的角度來理解脈沖神經(jīng)元的工作機理,并進(jìn)一步利用SNN來求解多目標(biāo)的復(fù)雜優(yōu)化問題。
表1列出了基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在非線性規(guī)劃問題求解的文獻(xiàn)。
2 基于神經(jīng)網(wǎng)絡(luò)的EDA優(yōu)化計算方法
EDA工具和設(shè)計方法的進(jìn)步,以及對設(shè)計流程進(jìn)行不同層次的優(yōu)化,提高了硬件設(shè)計的生產(chǎn)效率。近年來,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法用于EDA成為了熱門話題[76]。通過大量的研究和應(yīng)用,科學(xué)家們也提出了各種改進(jìn)EDA的神經(jīng)網(wǎng)絡(luò)優(yōu)化算法,這些方法幾乎涵蓋了芯片設(shè)計流程中的所有階段,包括邏輯綜合、布局布線、驗證等[77~94]。表2總結(jié)了近年來在邏輯綜合、布局布線及驗證方面的基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法研究。與其他智能優(yōu)化算法相比,這些基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法顯示出了更高的效率和準(zhǔn)確性。
2.1 邏輯綜合
在邏輯綜合過程中,描述硬件設(shè)計的RTL塊被映射到來自技術(shù)庫的邏輯單元。這種映射必須滿足時間約束,才能在考慮面積和功率的情況下以所需的時鐘速率工作。
邏輯綜合是一個約束條件復(fù)雜的優(yōu)化問題,需要精確的解。使用非線性規(guī)劃求解方法直接生成邏輯綜合解是困難的,部分研究使用神經(jīng)網(wǎng)絡(luò)算法來調(diào)度現(xiàn)有的傳統(tǒng)優(yōu)化策略來實現(xiàn)求解。Neto等人[77]依靠一個深度神經(jīng)網(wǎng)絡(luò)(deep neural network, DNN)來動態(tài)決定應(yīng)該將哪個優(yōu)化器應(yīng)用于電路的不同部分,該框架利用與反相圖(and-inverter graph, AIG)和多數(shù)反相器圖(majority-inverter graph, MIG)兩種優(yōu)化器,并對電路有向無環(huán)圖(directed acyclic graph, DAG)進(jìn)行k-way劃分。
邏輯綜合涉及到各種邏輯優(yōu)化算法在電路中的迭代應(yīng)用。然而,如何使用這些算法通常是由啟發(fā)式?jīng)Q定的,它并不總是在所有電路上產(chǎn)生很好的優(yōu)化效果。為了獲得良好的優(yōu)化結(jié)果,工程師需要根據(jù)經(jīng)驗來調(diào)整由這些邏輯優(yōu)化算法組成的序列。Yang等人[78]提出用強化學(xué)習(xí)(reinforcement learning, RL)近端策略優(yōu)化(proximal policy optimization, PPO)來訓(xùn)練智能體調(diào)整優(yōu)化序列。具體來說,使用具有邊緣特征聚合能力的圖同構(gòu)網(wǎng)絡(luò)(graph isomorphic network with edge feature aggregation capability, GINE)學(xué)習(xí)電路表示,并使用電路表示作為強化學(xué)習(xí)代理的狀態(tài)表示。此外,為了使智能體能夠從歷史操作中學(xué)習(xí),將長短期記憶(long short-term memory, LSTM)進(jìn)一步嵌入到了強化學(xué)習(xí)中。
文獻(xiàn)[79]將邏輯綜合優(yōu)化轉(zhuǎn)換為確定性馬爾可夫決策過程(Markov decision process, MDP)。然后,利用深度強化學(xué)習(xí)的最新進(jìn)展來構(gòu)建學(xué)習(xí)這一過程的系統(tǒng),并在小樣本上訓(xùn)練后推廣到大函數(shù)。此外,該系統(tǒng)的通用性可用于實現(xiàn)邏輯綜合中的不同優(yōu)化目標(biāo)。Wu等人[80]針對邏輯綜合優(yōu)化,利用混合GNN提供高精度的QoR估計,具有很強的泛化能力,所提GNN框架如圖5所示,其關(guān)鍵思想是同時利用硬件設(shè)計和邏輯綜合的時空信息來預(yù)測不同設(shè)計上各種綜合的性能(即延遲/面積)。
2.2 布局布線
在芯片布局布線中,網(wǎng)表的元件被放置在二維單元格上,然后通過全局布線和詳細(xì)布線以達(dá)到最佳的功率、性能和面積,同時遵守設(shè)計規(guī)則[81]。這個過程可以表示為多目標(biāo)的優(yōu)化過程,隨著設(shè)計目標(biāo)和約束越來越復(fù)雜,研究人員希望依托更大的計算量和更多的計算資源來尋找滿足所有約束的合法解決方案,基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法的引入為上述問題的求解指明了方向[82]。
Google公司在2021年使用深度強化學(xué)習(xí)框架對張量處理器(tensor processing unit, TPU)進(jìn)行布局規(guī)劃,將一個圖神經(jīng)網(wǎng)絡(luò)(graph neural network, GNN)納入強化學(xué)習(xí)框架,對過程的不同狀態(tài)進(jìn)行編碼,預(yù)測擁塞、密度和無線長度的獎勵標(biāo)簽,并推廣到看不見的網(wǎng)絡(luò)列表,所提架構(gòu)被稱為基于邊緣的圖神經(jīng)網(wǎng)絡(luò)(Edge-GNN)[83],計算整個網(wǎng)表的節(jié)點和邊緣嵌入。這種強化學(xué)習(xí)代理可以提供與人類設(shè)計師相當(dāng)或更好的結(jié)果,且優(yōu)化時間只需要幾個小時甚至幾十分鐘,而不是幾個月。
在布局放置工作中,設(shè)計門被映射到芯片布局的確切位置。版圖越大,這個過程就越復(fù)雜。在放置過程中的錯誤決策可能會增加芯片面積,也會使芯片性能惡化,甚至在無線帶寬高于可用路由資源的情況下,使其不適合制造。因此,布局的放置工作被視為一個約束優(yōu)化問題?;谏窠?jīng)網(wǎng)絡(luò)的優(yōu)化算法已被探索用以簡化這些步驟[84~86]。Xie等人[84]使用了一種稱為Net2的圖注意網(wǎng)絡(luò)(graph attention network, GAT)來提供預(yù)放置網(wǎng)和路徑長度估計。為此,他們將網(wǎng)表轉(zhuǎn)換為有向圖,其中網(wǎng)代表節(jié)點,邊連接兩個方向的網(wǎng)。單元格的數(shù)量、扇入、扇出大小和面積用作特征節(jié)點。使用聚類和分區(qū)結(jié)果定義邊緣特征。節(jié)點的真值標(biāo)簽是放置后得到的作為包圍半周線長的凈長度。在推理過程中,Net2預(yù)測每個節(jié)點的網(wǎng)絡(luò)長度,優(yōu)于現(xiàn)有解決方案。
Agnesina等人[85]提出了一種深度強化學(xué)習(xí)框架來優(yōu)化EDA工具的放置參數(shù),如圖6所示。首先,建立了一個自主代理,它可以在沒有人為干預(yù)和領(lǐng)域知識的情況下學(xué)習(xí)優(yōu)化參數(shù),完全由RL從自我搜索中訓(xùn)練。然后,為了推廣到看不見的網(wǎng)絡(luò)列表,使用了來自圖拓?fù)淅碚摰氖止ぬ卣骱褪褂脽o監(jiān)督GNN生成的圖嵌入的混合網(wǎng)絡(luò),克服數(shù)據(jù)的稀疏性和放置運行的延遲。其優(yōu)化問題描述為:給定一個網(wǎng)表的超圖表示G=(V,E),其中,頂點V={v1,v2,…,va}表示單元格,超邊E={e1,e2,…,eb}表示網(wǎng),一個可分析的放置目標(biāo)最小化問題表示為
為了確認(rèn)放置后HPWL轉(zhuǎn)換為最終布線導(dǎo)線長度的改進(jìn),對放置的設(shè)計進(jìn)行了布局和布線,結(jié)果如圖7所示[85]。在實現(xiàn)了路由、沒有出現(xiàn)擁塞問題及DRC違規(guī)的同時,該模型獲得了優(yōu)越的導(dǎo)線長度,且所用計算時長縮短至20 min。
Kirby等人[86]提出了一種基于圖的深度學(xué)習(xí)方法,用于在放置之前從門級網(wǎng)絡(luò)列表中快速預(yù)測邏輯誘導(dǎo)的路由擁塞熱點。該方法可以為設(shè)計人員和EDA工具提供早期反饋,指出可能難以路由的邏輯。重點是預(yù)測由于局部邏輯結(jié)構(gòu)引起的擁塞,實現(xiàn)了預(yù)測較低金屬層擁塞的準(zhǔn)確性,且預(yù)測僅用19 s即可完成,實現(xiàn)結(jié)果如圖8所示[86]。可以看到,在最終的詳細(xì)路由設(shè)計中,網(wǎng)絡(luò)正確地識別了多處擁擠區(qū)域,在分區(qū)B(所有分區(qū)中性能最好的)中,幾乎所有高擁塞的區(qū)域都被正確檢測到。
在布線階段中,放置的組件、門和時鐘信號在遵循DRC的情況下布線。這些設(shè)計規(guī)則決定了路由的復(fù)雜性,即NP困難問題或NP完全問題。因此,路由工具大多基于啟發(fā)式,目標(biāo)是找到最優(yōu)解決方案。布線階段必須考慮布線設(shè)計規(guī)則的基本要求?;谏窠?jīng)網(wǎng)絡(luò)的優(yōu)化方法可以通過提供更早的估計來提高布線過程,從而可以相應(yīng)地調(diào)整放置,避免面積擴(kuò)大和導(dǎo)線長度增加。Chen等人[87]提出了一個由全卷積網(wǎng)絡(luò)(fully convolutional network, FCN)構(gòu)成的預(yù)測器,用于放置結(jié)果的全局路由(global routing, GR)擁塞預(yù)測,還可以根據(jù)預(yù)測結(jié)果合理調(diào)整GR開銷參數(shù),從而生成更好的詳細(xì)路由解決方案,所提預(yù)測模型如圖9所示。
2.3 驗證
在EDA設(shè)計流程的每個階段進(jìn)行驗證,以確保所設(shè)計的芯片具有正確的功能[90]。由于芯片的面積要求和高復(fù)雜性,驗證是一個繁雜且昂貴的過程[91]。隨著EDA應(yīng)用程序的多樣性和設(shè)計的復(fù)雜性,傳統(tǒng)的規(guī)范驗證不再滿足各種需求[92]。
RouteNet是第一個使用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)進(jìn)行設(shè)計規(guī)則檢查(design rule checking, DRC)熱點檢測的工具[93],定義了一個FCN,其輸入特征包括矩形均勻線密度的輸出,用于預(yù)路由擁塞估計。同時,還采用了一個18層的ResNet來預(yù)測設(shè)計規(guī)則違反(design rule violation, DRV)計數(shù)。DRV預(yù)測與早期設(shè)計信息可以幫助減少設(shè)計過程的迭代,并可以加快物理設(shè)計的結(jié)束。眾所周知,利用全局路由階段獲得的信息準(zhǔn)確地預(yù)測詳細(xì)的路由級DRV可以大大加快設(shè)計關(guān)閉的速度。然而,如果沒有足夠的預(yù)測精度,結(jié)果可能導(dǎo)致次優(yōu)設(shè)計甚至更長的設(shè)計時間。因此,Hung等人[94]提出了兩個機器學(xué)習(xí)框架來預(yù)測給定設(shè)計的詳細(xì)路由級DRV映射。第一個框架基于全局路由階段獲得的擁塞報告,第二個框架同時考慮全局路由的位置信息和擁塞報告。所提框架利用CNN作為核心技術(shù)來訓(xùn)練這些預(yù)測模型,如圖10所示[94]。
在數(shù)據(jù)準(zhǔn)備階段,首先使用商用自動布局與布線(auto placement amp; route, APR)工具對收集到的設(shè)計進(jìn)行APR,直到詳細(xì)路由完成,然后存儲全局路由的擁塞報告和詳細(xì)路由的DRV報告。在模型構(gòu)建和驗證階段,將準(zhǔn)備好的數(shù)據(jù)集隨機分為訓(xùn)練集和驗證集,分別用于模型學(xué)習(xí)和績效評估。在使用訓(xùn)練集訓(xùn)練模型之前,首先使用所提欠采樣技術(shù)對訓(xùn)練集進(jìn)行過濾,然后應(yīng)用過濾后的訓(xùn)練樣本來訓(xùn)練所提CNN模型。所提欠采樣技術(shù)可以幫助提高CNN模型的準(zhǔn)確性,同時減少模型訓(xùn)練的運行時間。最后,將驗證集應(yīng)用于模型進(jìn)行性能評估,并迭代調(diào)整優(yōu)化配置,直到模型性能達(dá)到可接受的水平,然后將優(yōu)化后的模型用于預(yù)測DRV的推理階段。圖11[94]從左到右分別展示了全局路由的擁塞圖、詳細(xì)路由的實際DRV圖和預(yù)測的DRV圖。對于每種設(shè)計,預(yù)測DRV圖可以比擁塞圖更接近實際DRV圖。
3 神經(jīng)網(wǎng)絡(luò)優(yōu)化算法在EDA優(yōu)化應(yīng)用中的挑戰(zhàn)與機遇
基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法的EDA應(yīng)用主要目標(biāo)是優(yōu)化EDA工具以更好實現(xiàn)集成電路設(shè)計的自動化[95]。當(dāng)下,基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法的EDA工具優(yōu)化研究仍處于發(fā)展階段,其未來的發(fā)展方向亦存在較大的進(jìn)步空間。因此,針對基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法的EDA工具優(yōu)化所面臨的挑戰(zhàn)及機遇進(jìn)行闡述。
1)計算資源限制與模型復(fù)雜性
神經(jīng)網(wǎng)絡(luò)模型通常具有大量的參數(shù)和復(fù)雜的結(jié)構(gòu),這使得在EDA工具中應(yīng)用基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法時面臨計算資源的限制。EDA設(shè)計往往涉及大規(guī)模的電路和系統(tǒng),需要高效的算法和硬件來支持神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和推理,且模型的復(fù)雜性也增加了優(yōu)化的難度。因此,可以考慮采用一些技術(shù)方法減少神經(jīng)網(wǎng)絡(luò)模型的參數(shù)量和計算量,并考慮利用分布式系統(tǒng)將計算任務(wù)分布到多個節(jié)點上,以提高優(yōu)化計算效率。同時,通過將復(fù)雜的神經(jīng)網(wǎng)絡(luò)模型分解為多個層次或模塊,逐步進(jìn)行優(yōu)化和處理,可以更好地處理大規(guī)模的EDA優(yōu)化問題。
2)模型的可解釋性與可靠性
由于神經(jīng)網(wǎng)絡(luò)的黑盒特性,解釋其決策過程和結(jié)果變得困難,且在EDA設(shè)計流程中,設(shè)計師需要理解和信任模型的輸出。另外,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法可能受到噪聲、數(shù)據(jù)不確定及模型誤差的影響,涉及模型在EDA優(yōu)化計算中的可靠性問題。因此,可以考慮使用可視化技術(shù)來展示模型的決策過程,并采用一些模型解釋方法來解釋模型的輸出。同時,可以對神經(jīng)網(wǎng)絡(luò)模型進(jìn)行監(jiān)控,及時發(fā)現(xiàn)模型的性能下降或異常情況,并進(jìn)行更新和調(diào)整。另外,結(jié)合多個神經(jīng)網(wǎng)絡(luò)模型或其他優(yōu)化算法進(jìn)行模型融合,以提高結(jié)果的可靠性。
3)與現(xiàn)有EDA工具和流程的集成
將基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法集成到現(xiàn)有的EDA工具和設(shè)計流程中可能面臨技術(shù)和兼容性的挑戰(zhàn)。因此,將基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法集成到EDA工具和流程中時,需提供清晰易懂的可視化界面和結(jié)果展示,以便用戶能夠理解和評估優(yōu)化結(jié)果。同時,針對特定的EDA工具和設(shè)計流程,對基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法進(jìn)行定制化修改和調(diào)整,以增強其兼容性。另外,通過創(chuàng)建合適的中間接口或轉(zhuǎn)換層,使得神經(jīng)網(wǎng)絡(luò)模型能夠更好地與現(xiàn)有系統(tǒng)進(jìn)行交互和數(shù)據(jù)傳輸,并不斷進(jìn)行測試,發(fā)現(xiàn)問題及時改進(jìn)算法和集成方式,通過多次迭代逐步優(yōu)化。
雖然基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA領(lǐng)域的應(yīng)用仍面臨諸多挑戰(zhàn),但也帶來了一些機遇,特別是脈沖神經(jīng)網(wǎng)絡(luò)作為一種新興的神經(jīng)網(wǎng)絡(luò):a)其模型具有時間和空間的特性,能夠在硬件上實現(xiàn)高效計算,這對于EDA應(yīng)用中的實時計算和低能耗設(shè)計非常有益;且其良好的適應(yīng)性和泛化能力,能夠處理復(fù)雜的電子設(shè)計問題,這使得SNN在EDA各個設(shè)計流程優(yōu)化中具有較大潛力。b)SNN基于生物神經(jīng)元的工作模式,更貼近自然神經(jīng)系統(tǒng),這為理解其行為和決策提供了直觀基礎(chǔ);另外,由于SNN神經(jīng)元之間相對獨立的信息處理方式,部分神經(jīng)元或連接的故障可能對整體功能影響相對較小,表現(xiàn)出一定的容錯能力,且因其獨特的信息處理機制,能夠更好地適應(yīng)不同的輸入模式和環(huán)境變化,保持相對穩(wěn)定的性能表現(xiàn)。c)SNN基于脈沖的信息傳遞模式,與某些EDA工具中對特定信號或數(shù)據(jù)處理的方式有天然的兼容性,能更好地融入現(xiàn)有的設(shè)計流程;同時,由于SNN具有一定的自我學(xué)習(xí)和適應(yīng)能力,在與EDA工具集成后,能夠根據(jù)實際運行情況和需求進(jìn)行自我調(diào)整,提高與整體設(shè)計流程的兼容性。
4 結(jié)束語
本文研究了基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA設(shè)計流程優(yōu)化中的應(yīng)用。概述了EDA中的優(yōu)化問題、多目標(biāo)優(yōu)化計算及基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法。重點將基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA的邏輯綜合、布局布線及驗證階段的優(yōu)化應(yīng)用做了詳細(xì)介紹,并概述了當(dāng)前基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA設(shè)計流程的優(yōu)化中所面臨的一些問題及可行解決辦法,并指出SNN作為新一代神經(jīng)網(wǎng)絡(luò)優(yōu)化模型在EDA應(yīng)用中具有較大潛力。
基于神經(jīng)網(wǎng)絡(luò)優(yōu)化算法的EDA工具優(yōu)化作為集成電路設(shè)計的一個重要研究方向,為下一代EDA注入了更多智能,也為EDA各個設(shè)計流程中的優(yōu)化應(yīng)用帶來了新的思路和方法。但同時,基于神經(jīng)網(wǎng)絡(luò)的優(yōu)化算法在EDA工具的應(yīng)用中仍存在一些待精進(jìn)問題值得進(jìn)一步探究。因此,需集成電路設(shè)計領(lǐng)域的科學(xué)家和研究人員共同努力,實現(xiàn)EDA工具的優(yōu)化和適配。此外,無論是電路性能的優(yōu)化,需要在功耗、延遲、面積等多個目標(biāo)中找到巧妙的平衡,還是布線優(yōu)化時對布線長度、信號完整性與布線擁擠度等目標(biāo)的協(xié)同考慮;無論是器件參數(shù)選擇中對不同參數(shù)影響下多個性能要求的權(quán)衡,還是系統(tǒng)級設(shè)計里成本、功能、可靠性等目標(biāo)的綜合兼顧;亦或是在時序優(yōu)化方面對時鐘頻率、建立時間、保持時間等目標(biāo)的細(xì)致調(diào)和,這些都充分展示了EDA中多目標(biāo)優(yōu)化計算的復(fù)雜性與重要性。它促使著工程師們不斷探索和尋求最佳的設(shè)計方案,以滿足各種相互制約的目標(biāo)需求,推動電子設(shè)計領(lǐng)域不斷向前發(fā)展。
參考文獻(xiàn):
[1]Sanchez D, Servadei L, Kiprit G N, et al. A comprehensive survey on electronic design automation and graph neural networks: theory and applications[J]. ACM Trans on Design Automation of Electronic Systems, 2023, 28(2): 1-15.
[2]Lopera D S, Servadei L, Kiprit G N, et al. A survey of graph neural networks for electronic design automation [C]// Proc of the 3rd Workshop on Machine Learning for CAD. Piscataway,NJ:IEEE Press,2021: 1-6.
[3]Koblah D, Acharya R, Capecci D, et al. A survey and perspective on artificial intelligence for security-aware electronic design automation[J]. ACM Trans on Design Automation of Electronic Systems, 2023, 28(2): 1-57.
[4]Wang Zeheng, Li Liang, Leon R C C, et al. Improving semiconductor device modeling for electronic design automation by machine lear-ning techniques[J]. IEEE Trans on Electron Devices, 2023, 71(1): 263-271.
[5]黃偉慷, 劉魯源. 新技術(shù)革命對EDA的推動與挑戰(zhàn)[J]. 計算機應(yīng)用研究, 1998, 15(3): 1-3. (Huang Weikang, Liu Luyuan. The promotion and challenge of new technological revolution to EDA[J]. Application Research of Computers, 1998, 15(3): 1-3.
[6]Dewan M I, Kim D H. Design automation algorithms for the np-separate VLSI design methodology[J]. ACM Trans on Design Automation of Electronic Systems, 2022, 27(5): 1-20.
[7]Pirouz B, Gaudioso M. New mixed integer fractional programming problem and some multi-objective models for sparse optimization[J]. Soft Computing, 2023, 27: 15893-15904.
[8]Marler R T, Arora J S. The weighted sum method for multi-objective optimization: new insights[J]. Structural and Multidisciplinary Optimization, 2010, 41(6): 853-862.
[9]Gao Ya, Zhang Guangquan, Lu Jie. A fuzzy multi-objective bilevel decision support system[J]. International Journal of Information Technology amp; Decision Making, 2009, 8(1): 93-108.
[10]Mavrotas G. Effective implementation of the ε-constraint method in multi-objective mathematical programming problems[J]. Applied Mathematics and Computation, 2009, 213(2): 455-465.
[11]Afacan E, Lourenco N, Martins R, et al. Review: machine learning techniques in analog/RF integrated circuit design, synthesis, layout, and test[J]. Integration: The VLSI Journal, 2021, 77: 113-130.
[12]Panagant N, Pholdee N, Bureerat S, et al. A comparative study of recent multi-objective metaheuristics for solving constrained truss optimisation problems[J]. Archives of Computational Methods in Engineering, 2021, 28(2): 4031-4047.
[13]馬永杰, 陳敏, 龔影, 等. 動態(tài)多目標(biāo)優(yōu)化進(jìn)化算法研究進(jìn)展[J]. 自動化學(xué)報, 2020, 46(11): 2302-2318. (Ma Yongjie, Chen Min, Gong Ying, et al. Research progress of dynamic multi-objective optimization evolutionary algorithm[J]. Acta Automatica Sinica, 2020, 46(11): 2302-2318.)
[14]Mohapatra P, Nayak A, Kumar S K, et al. Multi-objective process planning and scheduling using controlled elitist non-dominated sorting genetic algorithm[J]. International Journal of Production Research, 2015, 53(6): 1712-1735.
[15]Zhang Xingyi, Zheng Xiutao, Cheng Ran, et al. A competitive mecha-nism based multi-objective particle swarm optimizer with fast convergence[J]. Information Sciences, 2017, 427: 63-76.
[16]Kundu T, Garg H. INNA: an improved neural network algorithm for solving reliability optimization problems[J]. Neural Computing and Applications, 2022, 34: 20865-20898.
[17]Huang Guyue, Hu Jingbo, He Yifan, et al. Machine learning for electronic design automation: a survey[J]. ACM Trans on Design Automation of Electronic Systems, 2021, 26(5): 1-46.
[18]Curiac C D, Doboli A. Combining informetrics and trend analysis to understand past and current directions in electronic design automation[J]. Scientometrics, 2022, 127: 5661-5689.
[19]Testa E, Amaru L, Soeken M, et al. Extending Boolean methods for scalable logic synthesis[J]. IEEE Access, 2020, 8: 226828-226844.
[20]Hosny A, Reda S. Characterizing and optimizing EDA flows for the cloud[J]. IEEE Trans on Computer-Aided Design of Integrated Circuits and Systems, 2021, 41(9): 3040-3051.
[21]Zennir M N, Benmohammed M, Martinez D. Robust path planning by propagating rhythmic spiking activity in a hippocampal network model[J]. Biologically Inspired Cognitive Architectures, 2017, 20: 47-58.
[22]Baek K, Park H, Kim S, et al. Pin accessibility and routing congestion aware DRC hotspot prediction using graph neural network and U-Net [C] //Proc of the 41st International Conference on Computer Aided-Design. New York: ACM Press, 2023: 1-9.
[23]Du Wei, Li Ang, Li Qinghua, et al. Privacy-preserving and secure cloud computing: a case of large-scale nonlinear programming[J]. IEEE Trans on Cloud Computing, 2023, 11(1): 484-498.
[24]Dey S, Nandi S, Trivedi G. PGOpt: multi-objective design space exploration framework for large-scale on-chip power grid design in VLSI SoC using evolutionary computing technique-ScienceDirect[J]. Microprocessors and Microsystems, 2021, 81: 1-34.
[25]Saber H M, Ravindran A. Nonlinear goal programming theory and practice: a survey[J]. Computers amp; Operations Research, 1993, 20( 3): 275-291.
[26]Zhang Jianke, Liu Sanyang, Li Lifeng, et al. The KKT optimality conditions in a class of generalized convex optimization problems with an interval-valued objective function[J]. Optimization Letters, 2014, 8(2): 607-631.
[27]Wu Nan, Xie Yuan, Hao Cong. AI-assisted synthesis in next generation EDA: promises, challenges, and prospects [C]// Proc of the 40th IEEE International Conference on Computer Design. Piscataway,NJ:IEEE Press, 2022: 207-214.
[28]Zhao Chenhui, Guo Donghui. Particle swarm optimization algorithm with self-organizing mapping for Nash equilibrium strategy in application of multiobjective optimization[J]. IEEE Trans on Neural Networks and Learning Systems, 2021, 32(11): 5179-5193.
[29]丘雪瑤, 辜方清. 基于自變量簡約的大規(guī)模稀疏多目標(biāo)優(yōu)化[J]. 計算機應(yīng)用研究, 2024, 41(6): 1663-1668. (Qiu Xueyao, Gu Fangqing. Evolutionary algorithm using dimensionality reduction for sparse multi-objective optimization[J]. Application Research of Computers, 2024, 41(6): 1663-1668.)
[30]Cui Yunfei, Geng Zhiqiang, Zhu Qunxiong, et al. Review: multi-objective optimization methods and application in energy saving [J]. Energy, 2017, 125: 681-704.
[31]Clempner J B, Poznyak A S. Constructing the Pareto front for multi-objective Markov chains handling a strong Pareto policy approach[J]. Computational amp; Applied Mathematics, 2018, 37: 567-591.
[32]Elsisy M, Sayed M, Abo-Elnaga Y. A novel algorithm for generating Pareto frontier of bi-level multi-objective rough nonlinear programming problem[J]. Ain Shams Engineering Journal, 2021,12: 2125-2133.
[33]Koroec P, Eftimov T. Multi-objective optimization benchmarking using DSCTool[J]. Mathematics, 2020, 8(5): 1-14.
[34]Tian Ye, Si Langchun, Zhang Xingyi, et al. Evolutionary large-scale multi-objective optimization: a survey[J]. ACM Computing Surveys, 2021, 54(8): 1-34.
[35]Nohadani O, Sharma K. Optimization under decision-dependent uncertainty[J]. SIAM Journal on Optimization, 2018, 28(2): 1773-1795.
[36]Vallerio M, Hufkens J, Impe J V, et al. An interactive decision-support system for multi-objective optimization of nonlinear dynamic processes with uncertainty[J]. Expert Systems with Application, 2015, 42: 7710-7731.
[37]Zamani M, Soleimani-damaneh M, Kabgani A. Robustness in non-smooth nonlinear multi-objective programming[J]. European Journal of Operational Research, 2015, 247(2): 370-378.
[38]Fakhar M, Mahyarinia M R, Zafarani J. On nonsmooth robust multiobjective optimization under generalized convexity with applications to portfolio optimization[J]. European Journal of Operational Research, 2015, 265(1): 39-48.
[39]田春生, 陳雷, 王源, 等. 基于圖神經(jīng)網(wǎng)絡(luò)的電子設(shè)計自動化技術(shù)研究進(jìn)展[J]. 電子與信息學(xué)報, 2023, 45(9): 3069-3082. (Tian Chunsheng, Chen Lei, Wang Yuan, et al. A survey for electronic design automation based on graph neural network[J]. Journal of Electronics amp; Information Technology, 2023, 45(9): 3069-3082.)
[40]Guo Weian, Chen Ming, Wang Lei, et al. Hyper multi-objective evolutionary algorithm for multi-objective optimization problems[J]. Soft Computing, 2017, 21(20): 5883-5891.
[41]Zhang Kai, Chen Minshi, Xu Xin, et al. Multi-objective evolution strategy for multimodal multi-objective optimization[J]. Applied Soft Computing, 2021, 101: 1-12.
[42]Niu Xiaobo, Liu Kaipei, Zhang Yadong, et al. Multi-objective optimization of multistage synchronous induction coilgun based on NSGA-Ⅱ[J]. IEEE Trans on Plasma Science, 2017, 45(7): 1622-1628.
[43]Yu Hui, Wang Yujia, Xiao Shanli. Multi-objective particle swarm optimization based on cooperative hybrid strategy[J]. Applied Intelligence, 2020, 50(1): 256-269.
[44]Liu Ruochen, Li Jianxia, Song Xiaolin, et al. Simulated annealing-based immunodominance algorithm for multi-objective optimization problems[J]. Knowledge and Information Systems, 2018, 55(1): 215-251.
[45]Lachhwani K. Application of neural network models for mathematical programming problems: a state of art review[J]. Archives of Computational Methods in Engineering, 2020, 27: 171-182.
[46]Liu Zongli, Zhao Peng, Cao Jie, et al. A constrained multi-objective evolutionary algorithm with Pareto estimation via neural network[J]. Expert Systems with Applications, 2024, 237: 1-18.
[47]Cai Yuecheng, Jelovica J. Neural network-enabled discovery of mapping between variables and constraints for autonomous repair-based constraint handling in multi-objective structural optimization[J]. Knowledge-Based Systems, 2023, 280: 18-30.
[48]Liu Xianming, Wu Shihong, Xiao Wenrun, et al. Performance improvement for the CMOS rail-to-rail amplifier via APSO-based design and SNN’s training[J]. Microelectronics Journal, 2024, 146: 1-10.
[49]Hopfield J J. Neural networks and physical systems with emergent collective computational abilities[J]. Proceedings of the National Academy of Sciences of the United States of America, 1982, 79(8): 2554-2558.
[50]Hopfield J J. Neurons with graded response have collective computational properties like those of two-state neurons[J]. Proceedings of the National Academy of Sciences of the United States of America, 1984, 81: 3088-3092.
[51]Hopfield J J, Tank D W. Neural computation of decisions in optimization problems[J]. Biological Cybernetics, 1985, 52(3): 141-152.
[52]鄧亞彬, 王志偉, 趙晨暉, 等. 類腦神經(jīng)網(wǎng)絡(luò)與神經(jīng)形態(tài)器件及其電路綜述[J]. 計算機應(yīng)用研究, 2021, 38(8): 2241-2250. (Deng Yabin, Wang Zhiwei, Zhao Chenhui, et al. Brain-like computing and neural morphologic devices with circuits[J]. Application Research of Computers, 2021, 38(8): 2241-2250.)
[53]Wu Zhe, Rincon D, Christofides P D. Process structure-based recurrent neural network modeling for model predictive control of nonlinear processes[J]. Journal of Process Control, 2020, 89: 74-84.
[54]Qin Sitian, Xue Xiaoping. A two-layer recurrent neural network for nonsmooth convex optimization problems[J]. IEEE Trans on Neural Networks and Learning Systems, 2015, 26(6): 1149-1160.
[55]Yan Zheng, Fan Jianchao, Wang Jun. A collective neurodynamic app-roach to constrained global optimization[J]. IEEE Trans on Neural Networks and Learning Systems, 2017, 28(5): 1206-1215.
[56]Wang Jiasen, Wang Jun. Two-timescale multilayer recurrent neural networks for nonlinear programming[J]. IEEE Trans on Neural Networks and Learning Systems, 2020, 33(1): 1-11.
[57]Zhang Zhijun, Ren Xiaohui, Xie Jilong, et al. A novel swarm exploring varying parameter recurrent neural network for solving non-convex nonlinear programming[J]. IEEE Trans on Neural Networks and Learning Systems, 2024, 35(9): 12642-12652.
[58]Li Yun, Hua Kai, Cao Yankai. Using stochastic programming to train neural network approximation of nonlinear MPC laws[J]. Automatica, 2022, 146: 1-11.
[59]Gao Xiaohong. A nonlinear prediction model for Chinese speech signal based on RBF neural network[J]. Multimedia Tools and Applications, 2022, 81(4): 5033-5049.
[60]Dai Jianhua, Luo Liu, Xiao Lin, et al. Modified noise-immune fuzzy neural network for solving the quadratic programming with equality constraint problem[J]. IEEE Trans on Neural Networks and Learning Systems, 2024, 35(11):15825-15833.
[61]Li Wenjing, Bian Wei, Xue Xiaoping. Projected neural network for a class of non-Lipschitz optimization problems with linear constraints[J]. IEEE Trans on Neural Networks and Learning Systems, 2020, 31(9): 3361-3373.
[62]Alessandri A, Cervellera C, Sanguineti M. Design of asymptotic estimators: an approach based on neural networks and nonlinear programming[J]. IEEE Trans on Neural Networks, 2007, 18(1): 86-96.
[63]Zhang Li, Wang Fulin, Sun Ting, et al. A constrained optimization method based on BP neural network[J]. Neural Computing amp; App-lications, 2018, 29(2): 413-421.
[64]López-Ruiz S, Hernández-Castellanos C, Rodríguez-Vázquez K. Multi-objective optimization of neural network with stochastic directed search[J]. Expert Systems with Applications, 2024, 237: 1-26.
[65]Vemuri S K, Denzler J. Gradient statistics-based multi-objective optimization in physics-informed neural networks[J]. Sensors, 2023, 23(21): 1-16.
[66]Hou Xing, Ge Fangzhen, Chen Debao, et al. Temporal distribution-based prediction strategy for dynamic multi-objective optimization assisted by GRU neural network[J]. Information Sciences, 2023, 649: 1-21.
[67]Chen Jinzhuo, Xu Yongnan, Sun Weize, et al. Joint sparse neural network compression via multi-application multi-objective optimization[J]. Applied Intelligence, 2021, 51(11): 7837-7854.
[68]Ackley D H, Hinton G E, Sejnowski T J. A learning algorithm for Boltzmann machines[J]. Cognitive Science, 1985, 9(1): 147-169.
[69]Palm G, Aertsen A M H J, Gerstein G L. On the significance of correlations among neuronal spike trains[J]. Biological Cybernetics, 1988, 59: 1-11.
[70]Federici D. A regenerating spiking neural network[J]. Neural Networks, 2005, 18(5-6): 746-754.
[71]Zhao Chenhui, Huang Zenan, Guo Donghui. Spiking neural network dynamic system modeling for computation of quantum annealing and its convergence analysis[J]. Quantum Information Processing, 2021, 20(2): 1-16.
[72]Saleh A Y, Shamsuddin S M, Hamed H N A. Multi-objective diffe-rential evolution of evolving spiking neural networks for classification problems [C]//Proc of the 11th IFIP WG 12.5 International Confe-rence on Artificial Intelligence Applications and Innovations. Cham: Springer, 2015: 351-368.
[73]Fitzgerald J, Wong-Lin K F. Multi-objective optimisation of cortical spiking neural networks with genetic algorithms [C]//Proc of the 32nd Irish Signals and Systems Conference. Piscataway,NJ:IEEE Press, 2021: 1-7.
[74]Parsa M, Kulkarni S R, Coletti M, et al. Multi-objective hyperparameter optimization for spiking neural network neuroevolution [C]//Proc of IEEE Congress on Evolutionary Computation. Piscataway,NJ:IEEE Press, 2021: 1225-1232.
[75]Malaka R, Buck S. Solving nonlinear optimization problems using networks of spiking neurons [C]//Proc of IEEE International Joint Conference on Neural Networks. Piscataway,NJ:IEEE Press, 2000: 486-491.
[76]Cao Linan, Bale S J, Trefzer M A. Multi-objective digital circuit block optimisation based on cell mapping in an industrial electronic design automation flow[J]. IET Computers and Digital Techniques, 2023, 17(3-4): 180-194.
[77]Neto W L, Austin M, Temple S, et al. LSOracle: a logic synthesis framework driven by artificial intelligence [C]//Proc of IEEE/ACM International Conference on Computer-Aided Design. New York:ACM Press, 2019: 1-6.
[78]Yang Chenghao, Xia Yinshui, Chu Zhufei, et al. Logic synthesis optimization sequence tuning using RL-based LSTM and graph isomorphism network[J]. IEEE Trans on Circuits and Systems Ⅱ: Express Briefs, 2022, 69(8): 3600-3604.
[79]Haaswijk W, Collins E, Seguin B, et al. Deep learning for logic optimization algorithms [C]//Proc of IEEE International Symposium on Circuits and Systems. Piscataway,NJ:IEEE Press, 2018: 1-4.
[80]Wu Nan, Lee J, Xie Yuan, et al. LOSTIN: logic optimization via spatio-temporal information with hybrid graph models [C]// Proc of the 33rd International Conference on Application-Specific Systems, Architectures and Processors. Piscataway,NJ:IEEE Press, 2022: 11-18.
[81]Li Haocheng, Chen Gengjie, Jiang Bentian, et al. Dr.CU 2.0: a scalable detailed routing framework with correct-by-construction design rule satisfaction [C]//Proc of IEEE/ACM International Conference on Computer-Aided Design. Piscataway,NJ:IEEE Press, 2019: 1-7.
[82]Li Haocheng, Patnaik S, Ashraf M, et al. Deep learning analysis for split-manufactured layouts with routing perturbation[J]. IEEE Trans on Computer-Aided Design of Integrated Circuits and Systems, 2021, 40(10): 1995-2008.
[83]Mirhoseini A, Goldie A, Yazgan M, et al. A graph placement metho-dology for fast chip design[J]. Nature, 2021, 594(7862): 207-229.
[84]Xie Zhiyao, Liang Rongjian, Xu Xiaoqing, et al. Net2: a graph atten-tion network method customized for pre-placement net length estimation [C]// Proc of the 26th Asia and South Pacific Design Automation Conference. New York: ACM Press, 2021: 671-677.
[85]Agnesina A, Chang K, Lim S K. Parameter optimization of VLSI placement through deep reinforcement learning[J]. IEEE Trans on Computer-Aided Design of Integrated Circuits and Systems, 2023, 42(4): 1295-1308.
[86]Kirby R, Godil S, Roy R, et al. CongestionNet: routing congestion prediction using deep graph neural networks [C]//Proc of the 27th International Conference on Very Large Scale Integration. Piscataway,NJ:IEEE Press, 2019: 217-222.
[87]Chen Jingsong, Kuang Jian, Zhao Guowei, et al. PROS: a plug-in for routability optimization applied in the state-of-the-art commercial EDA tool using deep learning [C]// Proc of IEEE/ACM International Conference on Computer Aided Design. New York: ACM Press, 2020: 1-8.
[88]Alawieh M B, Li Wuxi, Lin Yibo, et al. High-definition routing congestion prediction for large-scale FPGAs [C]// Proc of the 25th Asia and South Pacific Design Automation Conference. Piscataway,NJ:IEEE Press, 2020: 1-6.
[89]Pu Junran, Goh W L, Nambiar V P, et al. A low power and low area router with congestion-aware routing algorithm for spiking neural network hardware implementations[J]. IEEE Trans on Circuits and Systems II: Express Briefs, 2020, 68(1): 471-475.
[90]Abdelkarim M, Eladawi R. TCP-Net plus plus: test case prioritization using end-to-end deep neural networks-deployment analysis and enhancements [C]//Proc of IEEE International Conference on Artificial Intelligence Testing. Piscataway,NJ:IEEE Press, 2023: 99-106.
[91]Tuzov I, De Andres D, Ruiz J C. DAVOS: EDA toolkit for depen-dability assessment, verification, optimisation and selection of hardware models [C]//Proc of IEEE/IFIP International Conference on Dependable Systems amp; Networks. Washington DC: IEEE Computer Society. 2018: 322-329.
[92]Raman M, Abdallah N, Dunoyer J. An artificial intelligence app-roach to EDA software testing: application to net delay algorithms in FPGAs [C]//Proc of the 20th International Symposium on Quality Electronic Design. Piscataway,NJ:IEEE Press,2019: 311-316.
[93]Xie Zhiyao, Huang Yuhung, Fang Guanqi, et al. RouteNet: routability prediction for mixed-size designs using convolutional neural network [C]//Proc of the 37th IEEE/ACM International Confe-rence on Computer-Aided Design. Piscataway,NJ:IEEE Press,2018: 1-8.
[94]Hung W, Chen Yuguang, Lin J, et al. DRC violation prediction after global route through convolutional neural network[J]. IEEE Trans on Very Large Scale Integration (VLSI) Systems, 2023, 31(9): 1425-1438.
[95]Xu Qing, Liu Anbang. EDA based deep neural network parameter optimization [C]//Proc of the 3rd International Conference on Computer Science and Application Engineering. New York: ACM Press, 2019: 1-5.