AI正在改變芯片設(shè)計(jì)
機(jī)器學(xué)習(xí)/深度學(xué)習(xí)/人工智能(ML/DL/AI)的關(guān)鍵是了解設(shè)備如何對(duì)真實(shí)事件和刺激作出反應(yīng),以及如何優(yōu)化未來設(shè)備。這需要篩選越來越多的數(shù)據(jù),通過自動(dòng)化來識(shí)別復(fù)雜模式、異常情況以及找到適當(dāng)?shù)奈恢谩?/p>
eSilicon營銷副總裁MikeGianfagna說,“我們收集的數(shù)據(jù)用來開發(fā)我們自己的方法。目前的存儲(chǔ)器,我們看的是設(shè)計(jì)、內(nèi)存以及對(duì)不同的內(nèi)存配置建模。你可以在它上面運(yùn)行模型與真實(shí)應(yīng)用作比較。所以我們采用參數(shù)化的通用內(nèi)存模型并將其映射至實(shí)際內(nèi)存。我們也可以從之前的設(shè)計(jì)中看人力和時(shí)間表,還可以對(duì)計(jì)算資源和EDA許可做同樣的工作。如果你只有12000個(gè)CPU但需要24000個(gè),那么你需要使用基于云的解決方案來實(shí)現(xiàn)。但那不會(huì)很快發(fā)生,你需要對(duì)此進(jìn)行規(guī)劃,很大一部分是圍繞存儲(chǔ)器的。”
這只是縮短設(shè)計(jì)周期并基于經(jīng)驗(yàn)減少潛在問題的一系列活動(dòng)的開始。
Synopsys驗(yàn)證組營銷副總裁MichaelSanie說,“整個(gè)行業(yè)正在學(xué)習(xí)如何使用人工智能和機(jī)器學(xué)習(xí)來構(gòu)建和調(diào)試系統(tǒng)。有許多關(guān)于何種堆棧可以用于AI算法的建模和模擬,這里的目標(biāo)是將人工智能用于工具以及其它地方。”
在很大程度上,這是對(duì)系統(tǒng)級(jí)設(shè)計(jì)和復(fù)雜程度的認(rèn)識(shí),即使這些工具需要其它工具的幫助。
Cadence的營銷總監(jiān)StevenLewis說,“現(xiàn)在,隨著EDA生態(tài)系統(tǒng)在機(jī)器學(xué)習(xí)方面的工作,我們正試圖弄清楚它如何能夠幫我們解決更大的驗(yàn)證問題,整個(gè)問題就回歸到,‘這不是早期的10個(gè)晶體管’。我很贊同這點(diǎn)。構(gòu)成一個(gè)存儲(chǔ)器要10億個(gè)晶體管,那就需要知道如何布局,如何在物理層面布線。如何對(duì)這些電路執(zhí)行最最好的布局,如何放置這些組件?這一直是機(jī)器學(xué)習(xí)任務(wù)的一部分。然而我們不把它稱為機(jī)器學(xué)習(xí),但它確實(shí)是我們試圖找出最佳方法的算法的一部分。
如果你可以處理特定的拓?fù)浣Y(jié)構(gòu),開始了解7nm晶體管的行為方式,那你就知道了大部分流程了,因此你可以更好地判斷什么時(shí)候開始放置它們,什么時(shí)候開始布局,什么時(shí)候開始分析。”
前段時(shí)間,芯片制造商開始推動(dòng)六西格瑪設(shè)計(jì)(six-sigmadesigns),但是一旦復(fù)雜到一定程度,達(dá)到要求的六西格瑪質(zhì)量所需的模擬開始花費(fèi)大量時(shí)間時(shí),他們就不再討論這種方案了。但隨著汽車制造商對(duì)無缺陷電子產(chǎn)品的需求,又掀起了關(guān)于六西格瑪?shù)挠懻摚诤侠淼臅r(shí)間內(nèi)實(shí)現(xiàn)這一目標(biāo)的唯一方法就是利用機(jī)器學(xué)習(xí)。
Lewis說,“通過機(jī)器學(xué)習(xí),我們可以對(duì)晶體管的行為進(jìn)行編程,因此從統(tǒng)計(jì)角度講,我不必進(jìn)行1000萬次的模擬。我可以使用算法和機(jī)器學(xué)習(xí)技術(shù)來保持一定精度的條件下確定需要運(yùn)行的最少模擬次數(shù)。如果我可以編程更多的算法,如果我可以對(duì)更多我進(jìn)行的工作編程,那我就可以只收集這些數(shù)據(jù)的同時(shí)還保證工作的質(zhì)量。這就是機(jī)器學(xué)習(xí)可以幫助我們的地方。”
這一定程度上已經(jīng)在設(shè)計(jì)領(lǐng)域發(fā)生了,但它在未來會(huì)有更加顯著的使用。
ArterisIP的首席技術(shù)官TyGaribay說,“這項(xiàng)技術(shù)可以使你實(shí)現(xiàn)過去不能實(shí)現(xiàn)的事情。你可以通過這種技術(shù)來確定通孔位置。如果你無法證明某件事,你可以使用排除法。使用傳統(tǒng)的功能安全的形式,你可以放下兩件相同的事情,就像在汽車制動(dòng)系統(tǒng),發(fā)動(dòng)機(jī)控制,安全氣囊控制系統(tǒng)那樣。但當(dāng)我們通過電線驅(qū)動(dòng)時(shí),通常是在你的汽車中創(chuàng)建一個(gè)服務(wù)器,將功能整合到系統(tǒng)中并通過電線進(jìn)行通信。目前777型噴氣式飛機(jī)可以做到這一點(diǎn),但是成本/功能差別很大。為了將它應(yīng)用于汽車,我們需要開發(fā)新技術(shù)并找到應(yīng)用它們的方法,取代過去已驗(yàn)證但太貴且速度很慢的技術(shù),”
大量的數(shù)據(jù)
這將需要篩選大量的數(shù)據(jù)。
NetSpeedSystems營銷和業(yè)務(wù)開發(fā)副總裁AnushMohandass說,“在硅谷,幾乎每個(gè)人都擅長獲取某種形式的數(shù)據(jù)。但真正厲害的人是那些經(jīng)歷完整鏈條的人,他們理解了從了解到行動(dòng)的數(shù)據(jù)鏈。我們已將此放回到我們的設(shè)計(jì)環(huán)境和IP中。機(jī)器學(xué)習(xí)是其中的一個(gè)方面。”
Mohandass說,利用機(jī)器學(xué)習(xí)關(guān)鍵的一點(diǎn)就是挖掘第一手?jǐn)?shù)據(jù)。“你使用的訓(xùn)練數(shù)據(jù)是什么?它有多大?它們之間有偏差嗎?你是否偏向于某種形式的設(shè)計(jì)或其它設(shè)計(jì)?我們花了大量時(shí)間讓我們的訓(xùn)練加快速度,沒有任何偏差。第二個(gè)方面是一量你獲得了數(shù)據(jù),你如何將它深刻理解?第三是我們的機(jī)器學(xué)習(xí)環(huán)境,驅(qū)動(dòng)力是什么?如何驅(qū)動(dòng)客戶?
在生成數(shù)據(jù)時(shí),尤其如果你輸入到了機(jī)器學(xué)習(xí)引擎時(shí),數(shù)據(jù)量對(duì)于你來說會(huì)爆炸。你看的不是數(shù)百和數(shù)千行,而是數(shù)百萬行,因此,突然看到一百萬事物的圖表是沒有任何意義的,所以你試圖使它們聚集并觀察其趨勢。”
在數(shù)據(jù)挖掘的情況下,機(jī)器學(xué)習(xí)的一個(gè)非常實(shí)際的用途是搜索異常。
UltraSoC首席執(zhí)行官RupertBaines表示,“我們已經(jīng)完成了很多本地工作,所以呈現(xiàn)的結(jié)果價(jià)值很高,內(nèi)容很好。現(xiàn)在大多數(shù)情況下,這意味著一位工程師正在看它、閱讀并繪制它。在某個(gè)時(shí)候,她會(huì)說,'看起來很奇怪',并且會(huì)運(yùn)行一些腳本來試圖找出它看起來很古怪的原因。”
通過幫助他們找到問題,引起他們對(duì)突然改變的行為模式的注意,可以幫助加速工程師的工作。
Baines說,“這可能是像相機(jī)應(yīng)用中那些不變的像素。你說,'看起來很奇怪',你期望像素發(fā)生變化。這可能意味著攝像頭出現(xiàn)故障,卡住了。也可能是一個(gè)安全應(yīng)用程序,其中永遠(yuǎn)不訪問安全內(nèi)存的一個(gè)特定進(jìn)程,并且它會(huì)嘗試這樣做,異常檢測器會(huì)說'這是不對(duì)的,開燈并發(fā)出警報(bào)。至少好的一方面,是會(huì)發(fā)出警報(bào)。這就像一個(gè)防盜報(bào)警器。如果夜間有人在你家外面踱步,你有一個(gè)可以檢測到他們移動(dòng)的光線感應(yīng)器,此時(shí)它打開燈并發(fā)出警報(bào)——即使他們沒有真正嘗試進(jìn)入,即使你的鎖仍然完好無損,他們無法進(jìn)入房子,但你會(huì)知道有人在試圖做一些事情。它是TrustZone、OmniSecure或諸如此類的之上的一個(gè)額外的安全層。”
機(jī)器學(xué)習(xí)和仿真
正在使用機(jī)器學(xué)習(xí)的另一個(gè)領(lǐng)域是確定如果在下個(gè)月運(yùn)行仿真或者如果將仿真與其他仿真器進(jìn)行比較,仿真的可重復(fù)性如何。這也適用于制造測試,結(jié)果的周期之間要相關(guān),信號(hào)之間也要相關(guān)。
西門子公司Mentor的產(chǎn)品營銷經(jīng)理MarkOlen說,“機(jī)器學(xué)習(xí)帶來的挑戰(zhàn)是你放棄了人類控制事物的能力,這是關(guān)鍵所在。如果我使用帶有便攜式激勵(lì)的機(jī)器學(xué)習(xí)技術(shù)在我的1000個(gè)CPU上進(jìn)行模擬,它將根據(jù)設(shè)計(jì)響應(yīng)的方式產(chǎn)生一組結(jié)果,因?yàn)樗鼜脑O(shè)計(jì)的響應(yīng)中學(xué)習(xí)。
“但假設(shè)在運(yùn)行幾個(gè)小時(shí)后,我們發(fā)現(xiàn)設(shè)計(jì)中存在兩個(gè)bug,我們將設(shè)計(jì)發(fā)送給設(shè)計(jì)人員,他們修復(fù)以太網(wǎng)模塊或修復(fù)結(jié)構(gòu)仲裁方案或其他之后,再次運(yùn)行仿真。如果使用機(jī)器學(xué)習(xí)再次仿真,則會(huì)得到不同的結(jié)果。你不會(huì)得到完全相同的周期間相關(guān)性,因?yàn)樵O(shè)計(jì)運(yùn)行不同,可能是因?yàn)閷?duì)它的修復(fù)。然而,這對(duì)工程師造成了很大的不確定性,因?yàn)樗麄儽硎舅麄兿胍谕耆嗤臈l件下運(yùn)行完全相同的激勵(lì),但實(shí)際上設(shè)計(jì)發(fā)生了改變。
“正因?yàn)槿绱耍覀冊谖覀兊哪承┘夹g(shù)中進(jìn)行了切換,這些技術(shù)可以關(guān)閉部分機(jī)器學(xué)習(xí)功能,以便能夠以前所做的某種模擬模式運(yùn)行。與此同時(shí),有一些先進(jìn)的客戶對(duì)這一理念感到滿意,并且正在使用全部功能。”
隨著設(shè)計(jì)團(tuán)隊(duì)反復(fù)運(yùn)行仿真,將進(jìn)入片外指標(biāo)的數(shù)據(jù)挖掘。這里,Mentor內(nèi)部和其客戶有用的是一個(gè)名為Jenkins的開源軟件生態(tài)系統(tǒng)。Olen說,“這是一個(gè)非常熱門的話題,所有人都喜歡它,因?yàn)樗敲赓M(fèi)的。但也不是完全免費(fèi)的,因?yàn)榧词顾且粋€(gè)開源的生態(tài)系統(tǒng),你必須作為用戶進(jìn)行投資來進(jìn)行實(shí)際整合。我們投入了大量資金將我們的系統(tǒng)整合到Jenkins環(huán)境中。”
Jenkins的主要優(yōu)勢之一就是它能夠像觸發(fā)器一樣。他說,“你可以有一個(gè)定時(shí)觸發(fā)器表明每個(gè)人在星期五晚上回家時(shí),有10000臺(tái)臺(tái)式電腦閑置,讓我們使用它們。因此,在周五下午9點(diǎn),無論是否需要都會(huì)免費(fèi)地開始回歸運(yùn)行。然后,一旦這些回歸運(yùn)行的結(jié)果完成,我們可以將所有結(jié)果合并后發(fā)回給Jenkins,以便它可以在周一早上出現(xiàn)在工程師辦公桌的某個(gè)副總裁的電子郵件中,‘好消息是,我們進(jìn)行了800小時(shí)的模擬,沒有失敗。’另一個(gè)觸發(fā)事件不是基于時(shí)間,而是基于條件。例如,如果設(shè)計(jì)中存在一定程度的代碼更改,或每次修改文件時(shí),可啟動(dòng)回歸運(yùn)行。你可以在晚上8點(diǎn)結(jié)束時(shí)自動(dòng)發(fā)言。如果白天有超過三個(gè)文件被修改,那么晚上開始回歸運(yùn)行。”
這會(huì)在運(yùn)行后運(yùn)行并伴隨數(shù)據(jù)的高峰之后產(chǎn)生回歸運(yùn)行。這不是交易數(shù)據(jù)。這不是關(guān)于總線確認(rèn)、取指或芯片上實(shí)際發(fā)生的事情。相反,這是模擬的所有結(jié)果,例如檢測到的錯(cuò)誤,覆蓋率以及周期運(yùn)行。但其中一個(gè)問題是,從那里有必要弄清楚如何組合多種類型的數(shù)據(jù)并將其放入可開采的大型數(shù)據(jù)庫中。
Olen說,“所以,如果我運(yùn)行了10000個(gè)CPU,并且考慮到這一點(diǎn),并在遍布全球的模擬農(nóng)場中找出多少工作是多余的和無用的,是否有機(jī)會(huì)實(shí)際完成相同的工作量下一次使用5000個(gè)CPU而不是10000?當(dāng)然,從來沒有人這樣做。他們實(shí)際上是仍然使用10000個(gè)CPU使工作量翻倍,這樣就能擴(kuò)大范圍”
解決重大難題
Cadence研發(fā)部高級(jí)主管DavidWhite自20世紀(jì)90年代初期一直致力于機(jī)器學(xué)習(xí),他們合作編輯并共同編寫了機(jī)器學(xué)習(xí)的第一本教科書。他說這是一套有趣的工具,可以解決特定問題。“在2009年左右,當(dāng)我與越來越多的客戶合作時(shí),我開始看到相同類型的問題越來越嚴(yán)重。問題主要在三個(gè)方面。第一個(gè)是規(guī)模。我們正在處理越來越大的設(shè)計(jì),更多的設(shè)計(jì)規(guī)則和更多的限制,結(jié)果就是越來越多的數(shù)據(jù)。無論是模擬數(shù)據(jù),提取數(shù)據(jù),處理越來越多的形狀和幾何圖形,更大的技術(shù)文件,數(shù)據(jù)對(duì)我們造成的壓力越來越大。
現(xiàn)在你已經(jīng)有了更復(fù)雜的設(shè)計(jì)和電子規(guī)則,芯片,封裝和電路板之間有更多的相互作用,散熱成了一個(gè)問題,所以現(xiàn)在復(fù)雜度和總體規(guī)模都在增長。第三,這兩者都開始影響半導(dǎo)體設(shè)計(jì)團(tuán)隊(duì)的生產(chǎn)力,因?yàn)橐?guī)模和復(fù)雜性會(huì)造成越來越多的不確定性,導(dǎo)致更多的重新設(shè)計(jì),進(jìn)度錯(cuò)亂等問題。“
White說,這些問題的核心是,該行業(yè)正在處理更多的數(shù)據(jù)驅(qū)動(dòng)問題,這需要數(shù)據(jù)驅(qū)動(dòng)的解決方案。而且,關(guān)鍵是要將數(shù)據(jù)轉(zhuǎn)換為可用于數(shù)據(jù)挖掘的格式。White說,“任何使用機(jī)器學(xué)習(xí)的操作或解決方案都會(huì)在前端使用某種形式的分析和數(shù)據(jù)挖掘,機(jī)器學(xué)習(xí)優(yōu)化和某種形式的并行化,通常情況下,人們會(huì)稱之為機(jī)器學(xué)習(xí),即使它們之間并沒有明確的界限。”