AI比人類更懂芯片設(shè)計?
造出“超級巨芯”,六小時完成人類數(shù)月工作,AI重新定義芯片設(shè)計
編譯 | 姚勇喆
優(yōu)化功耗、性能和面積(PPA)一直是芯片設(shè)計中的三個重要目標。但即使是最好的設(shè)備和經(jīng)驗最豐富的工程團隊也無法保證優(yōu)化結(jié)果的穩(wěn)定性。
優(yōu)化PPA的過程正受到越來越多因素的制約:應(yīng)用、IP和其他組件的可用性不同,工程師對不同工具和方法的熟悉程度也不盡相同。例如,同樣的設(shè)計目標既可以用更大的處理器實現(xiàn)更高性能,也可以用更小、更專業(yè)的處理元件更緊密的結(jié)合軟件來實現(xiàn)。因此,即使在相同領(lǐng)域和相同的功率設(shè)計目標下,也會有許多不同的方法可以實現(xiàn)相同的目標。并且方案優(yōu)劣的評價標準也是因領(lǐng)域和供應(yīng)商的具體需求而異的。
另外,由于對芯片安全性的需求不斷增加,優(yōu)化過程變得愈加復(fù)雜。根據(jù)設(shè)備使用場景的重要性,其安全需求也各不相同。安全級別的高低會影響芯片功率和性能的設(shè)計,進一步影響IC制造成本、上市時間、交貨時間和供應(yīng)商的競爭力。
為了縷清這些因素,EDA供應(yīng)商開始尋求人工智能和機器學習技術(shù)的幫助。芯片供應(yīng)商們正致力于將各種AI功能集成到工具流中。根據(jù)麻省理工學院和德克薩斯大學奧斯汀分校的研究人員的論文,迄今為止該領(lǐng)域研究成果喜人。研究人員表示,使用了深度強化學習算法的設(shè)備在某些任務(wù)上的表現(xiàn)已經(jīng)超過了人類。
在六個小時的實驗中,研究人員通過對比使用強化學習的圖卷積神經(jīng)網(wǎng)絡(luò)方法、傳統(tǒng)的黑盒優(yōu)化方法(貝葉斯優(yōu)化、進化算法)、隨機搜索方法、具有五年經(jīng)驗的設(shè)計師這四者的成果得到結(jié)論:帶有遷移學習的強化學習方法可以取得更好的效果。換言之,基于人工智能的工具可以使晶體管設(shè)計更加高效。
如今,包括谷歌、英偉達、新思科技、Cadence、三星和西門子在內(nèi)的許多公司都已經(jīng)有在芯片設(shè)計中使用人工智能的計劃,其中部分公司甚至已經(jīng)在生產(chǎn)中進行這種嘗試。
人工智能如何改變芯片設(shè)計格局?
—
直到今天,人們在設(shè)計芯片的過程中仍然在使用各種設(shè)計工具進行電路、邏輯門、布線、布局的仿真和驗證。這么做是為了最大限度的減少可能的錯誤并且節(jié)約時間和成本,但這個過程相當乏味且耗時。
設(shè)計芯片的流程有很多步驟:一般從確定芯片的規(guī)格和架構(gòu)開始,然后遵循上面流程圖中的各個步驟。在設(shè)計完成后,設(shè)計文件(GDS II)將會被發(fā)送給工廠。
當摩爾定律有效時,這個流程只需要根據(jù)實際情況進行微調(diào)即可。但隨著制程紅利正在消失,F(xiàn)inFET時代到來。由于先進制程研發(fā)成本的增高,芯片制造商們不得不開始尋找新的方法來實現(xiàn)PPA的優(yōu)化。這種新變化顯著增加了芯片設(shè)計流程的復(fù)雜程度,并使得按期交付芯片愈加困難。
“設(shè)計一個28nm芯片的平均成本僅為4000萬美元,”IBS首席執(zhí)行官Handel Jones說,“但現(xiàn)在設(shè)計一個7nm芯片的成本是2.17億美元,設(shè)計一個5nm芯片的成本則是4.16億美元,設(shè)計一個3nm芯片的成本甚至達到了5.9億美元。”
隨著芯片的迭代,晶體管數(shù)量已經(jīng)從幾千個增加到了數(shù)十億個。這使得芯片上晶體管排布設(shè)計的異構(gòu)性越來越高,并且它們通常都會采用某種先進封裝工藝。與之前只需要考慮如何將更多的晶體管排列在同一空間不同,現(xiàn)在芯片設(shè)計中還需要考慮到功率密度、熱預(yù)算需求、各種類型的機械和電氣應(yīng)力、鄰近效應(yīng)以及工作環(huán)境等復(fù)雜因素。這使得設(shè)計過程耗時大大增加,同時也堆高了設(shè)計成本。更糟糕的是,芯片制造商間的持續(xù)競爭迫使他們必須在更短時間內(nèi)實現(xiàn)芯片的迭代,否則就會在競爭中處于劣勢。這導(dǎo)致了芯片制造商沒有試錯機會:一次設(shè)計失誤就代表著巨額損失。
人工智能如何提高芯片開發(fā)效率?
—
將人工智能引入到芯片設(shè)計的流程中有利于減少流程復(fù)雜性、減少錯誤并縮短開發(fā)周期。
例如,在芯片設(shè)計中布線過程的90%已經(jīng)實現(xiàn)了自動化,僅需要一位經(jīng)驗豐富的設(shè)計師完成最后10%的工作即可。人工智能的參與可以將這最后10%的時間進一步縮短。
“這一切都是為了效率,”Rambus的研究員Steven Woo說,“本質(zhì)上不論是人類設(shè)計師還是人工智能,其目的都是為了實現(xiàn)芯片優(yōu)化,但人工智能顯然在這一過程中更有效率。我們會對算法模型進行預(yù)訓(xùn)練以讓其更好的工作。由于引入了強化學習算法,隨著時間推移基于人工智能的設(shè)計工具會變得越來越強大。假以時日它將能夠向設(shè)計人員提供幾乎無錯誤的解決方案,這種方案優(yōu)化PPA的效率會比傳統(tǒng)方案要高得多。此外,同樣由于效率的原因,芯片之間數(shù)據(jù)交換的速度也非常重要,因為AI需要快速訪問大量數(shù)據(jù)?!?/span>
許多人都支持Steven Woo的這一觀點。西門子IC設(shè)計部門工程總監(jiān)約翰.史納比表示:“人工智能將使得芯片設(shè)計流程進一步自動化,尤其是在芯片布局的設(shè)計過程中。實踐已經(jīng)證明,在模擬電路中采用機器學習方案可以提高生產(chǎn)力。在布局設(shè)計上,AI可以用于生成FinFET節(jié)點中的最佳器件布局建議,以最大程度的減少互連寄生效應(yīng)。當芯片設(shè)計涉及加速度計和陀螺儀等微機電系統(tǒng)時,AI能夠參與參數(shù)化的設(shè)計流程,以與人類合作設(shè)計IC和MEMS器件。這將使得設(shè)計人員能夠更快完成MEMS、IC的軟硬件集成,使設(shè)計工作變得更加輕松?!?/span>
人工智能如何學習?
AI“智能”的基礎(chǔ)是它可以在短時間內(nèi)進行大量的識別和匹配工作,但遺憾的是AI并不能像人類一樣“學習”知識。事實上,人工智能獲取知識的方式和人類有著本質(zhì)的不同。一般來講,在算法應(yīng)用之前需要將包含了大量數(shù)據(jù)的訓(xùn)練集或輸入到算法初始模型中進行訓(xùn)練。在經(jīng)過長時間訓(xùn)練之后,算法才能算得上擁有了“智能”。
(雷峰網(wǎng)(公眾號:雷峰網(wǎng))編者注:AI的“智能”來自于其在數(shù)據(jù)集中進行大量嘗試和策略調(diào)整而得到的不同情況下的最優(yōu)解。在實際生產(chǎn)遇到的新場景中AI將這些最優(yōu)解策略與實際情況進行匹配,從而得出相對實際場景最優(yōu)的答案。這里舉個例子來解釋人工智能學習和人類學習過程的不同:人類可以在課堂上記住“1+1=2”的結(jié)論,并將其應(yīng)用到“一個蘋果旁邊擺上另一個蘋果”的場景中,從而得到“這里有兩個蘋果”的結(jié)論。而人工智能的學習過程則更像猩猩:通過兩次將單個蘋果擺在面前數(shù)出兩個蘋果,并將這一過程重復(fù)成千上萬次。猩猩就可以在下一次面對“一個香蕉旁邊擺著另一個香蕉”的場景時,得到“面前有兩個香蕉”的結(jié)論。)
此外,人工智能還可利用強化學習方法(RL)來指導(dǎo)訓(xùn)練結(jié)果。RL是一種機器學習技術(shù),可以為AI的學習過程加入獎懲機制。
在一個引入了獎懲機制模型的人工智能算法中,AI的學習總是從初始狀態(tài)開始,并會輸出一些隨機結(jié)果。然后設(shè)計師會對該結(jié)果做出判斷,當該結(jié)果被接受時,將視為對模型進行了“獎勵”,模型會繼續(xù)向著這個趨勢進行優(yōu)化。相反的,當該結(jié)果被設(shè)計師拒絕時,將視為對該模型的“懲罰”。模型會調(diào)整策略方向。無論是設(shè)計師拒絕還是接受該結(jié)果,算法模型都會進入在調(diào)整后進行下一次迭代,并輸出新的結(jié)果以讓設(shè)計師接受或拒絕。因此隨著RL學習過程的持續(xù)進行,人工智能算法將會變得越來越完善。
西門子工業(yè)軟件高級副總裁兼總經(jīng)理Ravi Subramanian為機器學習進一步做了解釋:“機器學習是人工智能的一個子集,指的是機器無需外部編程實現(xiàn)自我進化的過程。傳統(tǒng)設(shè)備的運行規(guī)則遵循計算機語言中if-then-else語句的‘二極管’邏輯和線性順序。但機器學習方法能夠使設(shè)備不斷從自身采集到的數(shù)據(jù)中獲得反饋,從而指導(dǎo)設(shè)備下一步的行動?!?/span>
Subramanian表示,要讓AI進行學習,需要三個前提條件:
其一是需要一個數(shù)據(jù)集,即一個包含了大量數(shù)據(jù)的庫。數(shù)據(jù)可以是RTLIP、GDSII、C語言或SPICE表格等多種形式。(雷峰網(wǎng)編者注:數(shù)據(jù)集就是人工智能算法的初始輸入,將數(shù)據(jù)集輸入算法相當于給AI“例題”進行學習)
其二是需要一個算法模型。這個模型使得AI系統(tǒng)能夠完成觀測、學習、反饋等任務(wù)。基于這個前提使用了人工智能算法的設(shè)備才能根據(jù)每一次結(jié)果的輸出動態(tài)調(diào)節(jié)自身策略,而不是和傳統(tǒng)設(shè)備一樣僅根據(jù)輸入的程序運行。
其三是需要一個目標函數(shù)。并且設(shè)計一個圍繞著這個目標函數(shù)的獎懲機制,以完成強化學習過程。(雷峰網(wǎng)編者注:目標函數(shù)是指一個規(guī)定“最優(yōu)解”定義的函數(shù)。每次訓(xùn)練完成后,將會通過該函數(shù)輸出一個返回值,一般稱作τ,可以看做是算法每次“考試”后的分數(shù)。設(shè)計人員將會根據(jù)τ值與目標函數(shù)期望值的差距來決定對算法模型的獎懲)
“人工智能本身并不會做決定”,他解釋說,“谷歌人工智能研究負責人Francois Chollet的說法很準確,他將人工智能定義為系統(tǒng)對數(shù)據(jù)進行分析后應(yīng)用在陌生場景中的能力?!?/span>
汽車可以通過衡量每加侖油能行駛的里程或者每次充電后的最大行駛里程來衡量其續(xù)航優(yōu)劣。但人工智能系統(tǒng)不同,每個人工智能系統(tǒng)的設(shè)計都是獨一無二的,設(shè)計系統(tǒng)的工具也是各不相同的。但整個芯片行業(yè)都報告基于人工智能的芯片設(shè)計工具提高了生產(chǎn)力。
例如,谷歌將人工智能應(yīng)用于芯片布圖規(guī)劃,并發(fā)現(xiàn)他們可以在不到六個小時的時間里完成從前工程師動輒需要數(shù)月的工作。無論是人類還是人工智能,兩者都可以通過PPA優(yōu)化得到滿足制造標準的芯片設(shè)計結(jié)果,但在生產(chǎn)流程中引入了人工智能的企業(yè)生產(chǎn)效率顯然更高。
“將人工智能應(yīng)用于芯片設(shè)計過程肯定會提高芯片性能,”Cadence 數(shù)字與簽核集團產(chǎn)品管理組總監(jiān) Rod Metcalfe 說?!袄?,在設(shè)計過程中使用了人工智能的5nm移動CPU可以提高14%的性能,7%的耗散功率和5%的晶體管密度,這對于芯片設(shè)計很重要?!?/span>
這些改進在其他應(yīng)用中也得到了體現(xiàn)。Synopsys 人工智能解決方案高級總監(jiān) Stelios Diamantidis 表示:“使用基于 AI 的設(shè)計技術(shù),我們的客戶表示他們能夠與傳統(tǒng)設(shè)計方法相比降低25%的功耗,這種提升是驚人的?!?/span>
AI在芯片設(shè)計領(lǐng)域的未來
—
對大多數(shù)人而言,難以想象將10億個晶體管集成到一顆芯片中。但根據(jù)2021年6月新思科技的報告,他們已經(jīng)制造出了一種含有1.2萬億個晶體管、400000個AI內(nèi)核,面積為46225mm2的芯片。這是使用傳統(tǒng)工具的人類設(shè)計師無論如何也達不到的技術(shù)高度。
Cambrian AI Research 創(chuàng)始人兼首席分析師 Karl Freund 表示:“在芯片設(shè)計流程中引入人工智能來提高效率現(xiàn)在已是大勢所趨,至少對主要芯片供應(yīng)商而言是這樣的。像Synopsys DSO.AI這樣的系統(tǒng)正在為公司節(jié)省時間和金錢,并生產(chǎn)出功耗更低、性能更高、面積更小的芯片。現(xiàn)在,業(yè)界正將注意力轉(zhuǎn)向優(yōu)化物理設(shè)計之外的下一步,例如系統(tǒng)、軟件算法的優(yōu)化和設(shè)計驗證。整個行業(yè)都在從這些創(chuàng)新中受益,消費者也將能用到性能更強勁,功耗更低,更便宜的芯片?!?/span>
所有主要的EDA公司都在致力于將AI功能加入到他們的芯片設(shè)計流程中。并且,人工智能不僅可以幫助他們將更多東西塞進更小的空間里,還可以幫助他們將更多東西塞進更大的空間里
Cerebras Systems 的第二代芯片采用7nm工藝開發(fā),包含2.6萬億個晶體管和 850,000 個 AI內(nèi)核。這是目前世界上由人工智能設(shè)計的最大的芯片,它和一個盤子的大小相當。相比之下,世界上最大的GPU也僅有540億個晶體管。Cerebras 的芯片有40 GB片上內(nèi)存來支持 AI 計算。要設(shè)計這種體量的芯片,必須使用基于人工智能技術(shù)的芯片設(shè)計工具。
未來,在PPA問題之外,人工智能還可以在集成芯片安全性等領(lǐng)域提供幫助。
西門子的Subramanian指出,人工智能已經(jīng)在至少四個領(lǐng)域得到了應(yīng)用:1、創(chuàng)建一種設(shè)計和驗證IC的新方法;2、減少設(shè)計過程中的錯誤并既減少設(shè)計時間;3、構(gòu)建一個基于機器學習原理的新計算架構(gòu);4、構(gòu)建基于人工智能算法的芯片。
結(jié)論
當問題能夠被人工智能理解的方式明確定義時,人工智能在設(shè)計中的效果最好。(編者注:即需要將實際生產(chǎn)中的種種情況準確的轉(zhuǎn)化為目標函數(shù)的一部分。)因此,IC設(shè)計者必須先考慮是否存在與人工智能適應(yīng)、學習、概括能力相關(guān)的問題,設(shè)計好目標函數(shù)。這樣人工智能才能夠準確的將這些知識/規(guī)則運用到不熟悉的場景中。
“了解是否存在非常適合人工智能的問題是第一步,也是最重要的一步,” Subramanian說,“這也可能是有人工智能參與的芯片設(shè)計流程中最關(guān)鍵的一環(huán)。”
到目前為止,已經(jīng)有很多領(lǐng)域顯示出人工智能的優(yōu)勢,并且無疑未來人工智能會在更多領(lǐng)域中顯現(xiàn)出這種優(yōu)勢。
曾經(jīng)人們對于AI可能會曇花一現(xiàn)的顧慮已經(jīng)消失。如今站在面向未來的交叉路口上,人們正憧憬的眺望。一個新問題此時在人們的腦中回蕩:“人工智能還能夠做什么?”這個問題的答案或許就是交叉路口上應(yīng)該豎起的路標。
原文鏈接:https://semiengineering.com/improving-ppa-in-complex-designs-using-ai/
來源:芯基建
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。