芯片設(shè)計(jì)進(jìn)入機(jī)器學(xué)習(xí)時(shí)代,從RTL到GDS實(shí)現(xiàn)更完美的PPA表現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在近日Cadence召開(kāi)的 Cerebrus?智能芯片設(shè)計(jì)工具發(fā)布會(huì)上,Cadence公司數(shù)字與簽核事業(yè)部產(chǎn)品工程資深群總監(jiān)劉淼先生對(duì)于EDA工具的人工智能化發(fā)展以及第一款完全基于機(jī)器學(xué)習(xí)引擎的EDA工具Cerebrus?的細(xì)節(jié)進(jìn)行了精彩的分享。
芯片設(shè)計(jì)自動(dòng)化發(fā)展歷程——走向機(jī)器學(xué)習(xí)
EDA的全稱叫Electronic design automation,從名稱上就可以知道高度的自動(dòng)化是其對(duì)于芯片設(shè)計(jì)的追求。據(jù)劉淼分享,60年代早期的芯片全部都需要人來(lái)手工畫,都是完全定制的,采用完全自定義布局,這時(shí)只能做幾十個(gè)幾百個(gè)小的器件。后面等到芯片規(guī)模逐漸變大,一些常用的東西就被做成了標(biāo)準(zhǔn)單元庫(kù),通過(guò)原理如網(wǎng)表來(lái)實(shí)現(xiàn),到這時(shí)已經(jīng)可以做到幾百個(gè)幾千個(gè)器件。后面隨著芯片復(fù)雜度的進(jìn)一步提升,芯片上的功能要求 更多,性能要求更高,這時(shí)候 就出現(xiàn)了RTL綜合語(yǔ)言。一個(gè)8位加法器手動(dòng)去寫,原理圖要做到800~1000個(gè)小的器件,但是如果用RTL綜合語(yǔ)言可能十幾行就寫完了,因此RTL綜合語(yǔ)言的出現(xiàn)是芯片設(shè)計(jì)上非常大的進(jìn)步。RTL綜合之后EDA工具的下一個(gè)進(jìn)步就是自動(dòng)化布局與布線的出現(xiàn)。
從劉總的分享中我們不難發(fā)現(xiàn),雖然芯片設(shè)計(jì)方法、EDA工具都在不斷地推陳出新,但由于芯片的復(fù)雜度作為驅(qū)動(dòng)其發(fā)展先決因素,所以工具的發(fā)展并不可能領(lǐng)先于芯片設(shè)計(jì),盡管過(guò)去的幾十年間芯片設(shè)計(jì)在自動(dòng)化上取得了巨大進(jìn)步,但芯片設(shè)計(jì)的過(guò)程仍然是高度手動(dòng)化的,design-in之后的設(shè)計(jì)工作仍是趨于勞動(dòng)密集型的。芯片的復(fù)雜化使得設(shè)計(jì)輸入之后的可調(diào)整項(xiàng)高度復(fù)雜,每一個(gè)輸入的調(diào)整又會(huì)進(jìn)行產(chǎn)生更多可能。設(shè)計(jì)者需要不段地地來(lái)調(diào)整各種輸入,直到達(dá)到他們想要的PPA目標(biāo),但其實(shí)這個(gè)PPA目標(biāo)中也能也已經(jīng)在一些指標(biāo)上做出了妥協(xié)。從RTL到GDS的這一過(guò)程,其實(shí)可以看作是一個(gè)簡(jiǎn)單的類似于下國(guó)際象棋的宏放置問(wèn)題,而這一過(guò)程,機(jī)器學(xué)習(xí)就可以發(fā)揮其巨大價(jià)值。
概率論式的增強(qiáng)型自學(xué)習(xí)實(shí)現(xiàn)完美芯片PPA
Cerebrus是Cadence的Intelligent System Design(智能系統(tǒng)設(shè)計(jì))戰(zhàn)略下的一款全新工具,主要面向數(shù)字芯片設(shè)計(jì),通過(guò)機(jī)器學(xué)習(xí)的方式來(lái)實(shí)現(xiàn)RTL-to-GDS全流程自動(dòng)優(yōu)化,實(shí)現(xiàn)最完美的PPA輸出。據(jù)劉淼介紹,Cerebrus的目標(biāo)是實(shí)現(xiàn)生產(chǎn)效率曲線的一個(gè)優(yōu)化,目前可以帶來(lái)大概有10倍生產(chǎn)力提升和20%性能提升。Cerebrus包含了從RTL綜合、到設(shè)計(jì)實(shí)現(xiàn)、到簽核三個(gè)主要過(guò)程中的三個(gè)不同的工具,分別是Genus、Innovus和Tempus,每一個(gè)環(huán)節(jié)都有多個(gè)設(shè)計(jì)步驟 ,加起來(lái)一共有十多步。從一個(gè)采用5nm工藝、性能為3.5GHz的芯片設(shè)計(jì)的實(shí)例來(lái)看,采用Cerebrus可以將數(shù)名設(shè)計(jì)工程師數(shù)月的手動(dòng)開(kāi)發(fā)流程縮減到一名工程師10天的工作量。而且參考下圖的數(shù)據(jù),在性能、漏電功耗、總功耗和密度上均有顯著改善。
另一個(gè)例子是在自動(dòng)布線環(huán)節(jié)上,一個(gè)12nm工藝2GHz主頻的CPU,在采用了Innovus的自動(dòng)布局優(yōu)化之后, 性能提升了200MHz,總失效時(shí)序改進(jìn)了83%,漏電功耗降低了17%。
據(jù)劉淼分享,人工智能分為推理和訓(xùn)練兩個(gè)流派,而Cerebrus采用的是概率論的方式,屬于增強(qiáng)型的自學(xué)習(xí)。因此在實(shí)際芯片設(shè)計(jì)的運(yùn)行過(guò)程中,并不需要把所有的可能都跑一遍,而是每一步都可以通過(guò)概率論找到一個(gè)最優(yōu)解,讓幾千上萬(wàn)種可能實(shí)現(xiàn)快速地收斂,這樣才計(jì)算的過(guò)程中,可以節(jié)省計(jì)算資源,提高整體的流程效率。在EDA領(lǐng)域不少軟件都已經(jīng)具備機(jī)器學(xué)習(xí)賦能,但Cadence在這一點(diǎn)上要領(lǐng)先于其他廠商。另外,對(duì)于PPA的最優(yōu)解的追求,Cerebrus也支持設(shè)計(jì)者的定制化的輸入。例如如果對(duì)于芯片性能有極致的要求,Cerebrus可以按照這個(gè)方向去做,然后得到更高性能表現(xiàn)的PPA結(jié)果。
###
目前Cerebrus已經(jīng)獲得了合作伙伴實(shí)踐認(rèn)可:瑞薩表示借助Cerebrus工具將設(shè)計(jì)性能提高了10%以上;三星代工廠使用Cerebrus進(jìn)行自動(dòng)布局規(guī)劃電源分配網(wǎng)絡(luò)選型,將最終設(shè)計(jì)時(shí)序提高50%以上。并且在一些最關(guān)鍵的模塊上,之前需要人工數(shù)月實(shí)現(xiàn)的操作,在Cerebrus加持下僅僅幾天 就可以將芯片功耗降低8%以上。劉淼表示,Cerebrus命名取自拉丁語(yǔ)的‘大腦’的意思,它是Cadence在EDA軟件人工智能化方向一個(gè)重要成果。通過(guò)對(duì)于工作人員繁瑣工作負(fù)擔(dān)的釋放,設(shè)計(jì)者可以專注于更有價(jià)值的更高層次的設(shè)計(jì)工作:“Cerebrus帶來(lái)芯片設(shè)計(jì)生產(chǎn)力的性能革命創(chuàng)新,用我們的工具解放人,讓人做更加有意義的事情。”