本文翻譯自Synopsys的官方文章:
在數(shù)字設(shè)計(jì)的Implementation過(guò)程中,從RTL到GDSII的每一步都是高度計(jì)算密集型的。在SoC層面,為了最小化互連的延遲,我們需要評(píng)估數(shù)百個(gè)partition的各種布局方案。一旦確定了布局方案,接下來(lái)就是進(jìn)行每個(gè)partition內(nèi)的其余步驟,以實(shí)現(xiàn)全芯片的implementation和signoff。由于每一步的計(jì)算需求已經(jīng)很高,并且還要乘以partition的數(shù)量,這就引發(fā)了一個(gè)問(wèn)題:傳統(tǒng)用于數(shù)字設(shè)計(jì)的CPU是否已經(jīng)達(dá)到了容量極限?GPU是否能夠滿足計(jì)算需求?
如今,GPU以其處理人工智能、機(jī)器學(xué)習(xí)、游戲和高性能計(jì)算等要求最為苛刻的工作負(fù)載而聞名。隨著芯片越來(lái)越大、越來(lái)越復(fù)雜,也許也是時(shí)候考慮用GPU來(lái)完成數(shù)字芯片設(shè)計(jì)的Implementation了。
CPU在EDA工作負(fù)載中的容量挑戰(zhàn)
CPU長(zhǎng)期以來(lái)被認(rèn)為是計(jì)算機(jī)的“大腦”。擁有數(shù)十億個(gè)晶體管和多個(gè)處理核心,如今的CPU非常適合完成廣泛的任務(wù),并且能夠快速完成。另一方面,GPU最初是為特定目的設(shè)計(jì)的,但隨著時(shí)間的推移,它們也轉(zhuǎn)變?yōu)橥ㄓ玫牟⑿?a target="_blank">處理器。
一般來(lái)講,EDA工具都是在基于x86處理器的CPU上運(yùn)行的。然而,隨著多芯片設(shè)計(jì)等復(fù)雜架構(gòu)變得越來(lái)越普遍,我們正在接近CPU計(jì)算容量的限制??紤]到芯片設(shè)計(jì)團(tuán)隊(duì)始終面臨的上市時(shí)間壓力,利用額外的工具和技術(shù)來(lái)加速芯片設(shè)計(jì)過(guò)程的任何方面都是有意義的。在驗(yàn)證和分析方面,新思科技的PrimeSim和VCS仿真流程已經(jīng)從GPU加速中受益。雖然數(shù)字設(shè)計(jì)流程中的每個(gè)任務(wù)并不是都非常適合GPU,但有些任務(wù)確實(shí)可以加速。
最先進(jìn)的高性能數(shù)據(jù)中心x86 CPU核心平均有64到128個(gè)核心,每個(gè)box最多約有200個(gè)核心。需要更多核心的任務(wù)需要分布在許多box上;如果網(wǎng)絡(luò)不夠快,這會(huì)產(chǎn)生一些開(kāi)銷。RTL到GDSII流程和優(yōu)化技術(shù)包含許多相互依賴性。為了使流程中的每個(gè)任務(wù)能夠成功并行執(zhí)行,作業(yè)分布在CPU box之間的數(shù)據(jù)共享必須非??焖伲舆t要小。然而,實(shí)際上,網(wǎng)絡(luò)延遲會(huì)妨礙周轉(zhuǎn)時(shí)間,使得完整的RTL到GDSII流程的分布式并行化變得不那么有吸引力。
另一方面,GPU核心可以輕松擴(kuò)展。每個(gè)核心執(zhí)行的操作更少,而且非常微小,以至于你可以在一個(gè)插座中擁有數(shù)萬(wàn)個(gè)核心,以提供巨大的處理能力,同時(shí)保持可管理的占用空間。能夠從大規(guī)模并行性中受益的任務(wù)非常適合GPU。然而,這樣的任務(wù)也必須是主要單向的,因?yàn)槿魏螞Q策和迭代都會(huì)減慢進(jìn)程和/或需要回到CPU進(jìn)行“如果那么”決策。這排除了許多RTL到GDSII數(shù)字implementation流程中的任務(wù),盡管并非所有任務(wù)都不適合。
使用GPU加速加快布局過(guò)程
在數(shù)字設(shè)計(jì)流程中,自動(dòng)布局是已經(jīng)展示出在GPU上運(yùn)行前景的一項(xiàng)任務(wù)。在商業(yè)環(huán)境中運(yùn)行的原型中,新思科技的Fusion Compiler GPU加速布局技術(shù)相比CPU,已經(jīng)展示出顯著的周轉(zhuǎn)時(shí)間優(yōu)勢(shì):
使用GPU放置一個(gè)3nm GPU流處理器設(shè)計(jì),包含1.4M個(gè)可放置的標(biāo)準(zhǔn)單元和20個(gè)可放置的硬宏,僅需38秒,相比之下,CPU驅(qū)動(dòng)的布局需要13分鐘
使用GPU放置一個(gè)12nm汽車CPU設(shè)計(jì),包含2.9M個(gè)可放置的標(biāo)準(zhǔn)單元和200個(gè)可放置的硬宏,僅需82秒,相比之下,CPU驅(qū)動(dòng)的布局需要19分鐘
結(jié)合新思科技DSO.ai的AI驅(qū)動(dòng)自動(dòng)設(shè)計(jì)空間優(yōu)化,我們預(yù)計(jì)將在相同的完成時(shí)間線上將AI驅(qū)動(dòng)的搜索空間擴(kuò)大15倍到20倍。這樣做可以使設(shè)計(jì)團(tuán)隊(duì)實(shí)現(xiàn)更好的功耗、性能和面積(PPA)結(jié)果。
在許多方面,由于對(duì)最終設(shè)計(jì)PPA的高影響,布局和 floorplanning 是涉及最廣泛探索的implementation步驟。我們可以想象,即使GPU計(jì)算資源通常與強(qiáng)大的CPU計(jì)算集群分開(kāi),單個(gè)designer使用基于GPU的布局技術(shù)也能具有很高的生產(chǎn)力。然而,在RTL到GDSII 的implementation流程的其余部分中,通過(guò)CPU和GPU集群之間移動(dòng)設(shè)計(jì)數(shù)據(jù)引入的延遲可能會(huì)限制吞吐量?jī)?yōu)勢(shì)。
新的數(shù)據(jù)中心SoC正在設(shè)計(jì)中,CPU和GPU資源之間具有統(tǒng)一內(nèi)存,用于TB級(jí)工作負(fù)載。這些新興架構(gòu)消除了利用GPU加速所需的設(shè)計(jì)數(shù)據(jù)移動(dòng),并將允許我們考慮在數(shù)字設(shè)計(jì)流程中應(yīng)用GPU加速的其他位置,特別是當(dāng)設(shè)計(jì)師可以將GPU與AI驅(qū)動(dòng)的implementation工具配對(duì)時(shí),可以進(jìn)行更快、更廣泛的探索和更好的結(jié)果。隨著像新思科技.ai這樣的AI驅(qū)動(dòng)的全棧EDA流程解決方案產(chǎn)生更好的PPA結(jié)果、更快的達(dá)到目標(biāo)時(shí)間和更高的工程生產(chǎn)力,人們只能想象GPU加速的加入將如何進(jìn)一步改變芯片設(shè)計(jì)。
總結(jié)
雖然芯片設(shè)計(jì)過(guò)程中的仿真部分對(duì)于在GPU上運(yùn)行并不陌生,但很快數(shù)字設(shè)計(jì)流程的各個(gè)方面也將有機(jī)會(huì)利用GPU加速。對(duì)于大型芯片或復(fù)雜架構(gòu)(如多芯片設(shè)計(jì)),CPU在運(yùn)行RTL到GDSII流程時(shí)所需的計(jì)算容量正在耗盡,無(wú)法達(dá)到期望的速度。憑借其可擴(kuò)展性和處理能力,GPU有可能提供更快的周轉(zhuǎn)時(shí)間和更好的芯片結(jié)果。使用GPU驅(qū)動(dòng)的放置器進(jìn)行的原型實(shí)驗(yàn)已經(jīng)將布局速度提高了多達(dá)20倍。隨著AI集成到EDA流程中,加入GPU可以形成一個(gè)強(qiáng)大的組合,以提高PPA(功耗、性能和面積)和上市時(shí)間。
審核編輯:劉清
-
芯片設(shè)計(jì)
+關(guān)注
關(guān)注
15文章
1019瀏覽量
54896 -
人工智能
+關(guān)注
關(guān)注
1791文章
47278瀏覽量
238485 -
RTL
+關(guān)注
關(guān)注
1文章
385瀏覽量
59785 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8418瀏覽量
132630 -
GPU芯片
+關(guān)注
關(guān)注
1文章
303瀏覽量
5812
原文標(biāo)題:GPU可以加速芯片設(shè)計(jì)的Implementaion嗎?
文章出處:【微信號(hào):傅里葉的貓,微信公眾號(hào):傅里葉的貓】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論