“幾分歡喜幾分愁”EDA供應(yīng)商面對(duì)多核設(shè)計(jì)
對(duì)現(xiàn)有EDA供應(yīng)商來說,多核處理器的出現(xiàn)為他們平添了“幾分歡喜幾分愁”。
本文引用地址:http://www.ex-cimer.com/article/201609/304727.htm歡喜之處在于,隨著晶體管數(shù)量在65nm及更小工藝下飆增,多核平臺(tái)能提供更多必需的計(jì)算能力。但是,傳統(tǒng)的應(yīng)用軟件很難、甚至根本無法實(shí)現(xiàn)并行處理,所以這些公司必須投入大手筆對(duì)軟件進(jìn)行重寫,而這樣做直接導(dǎo)致了65和45nm節(jié)點(diǎn)工具的推遲上市。也正因?yàn)槿绱?,?dāng)前的市場(chǎng)天平開始向新一代EDA初創(chuàng)公司傾斜。
在近日于美國(guó)圣地亞哥舉行的設(shè)計(jì)自動(dòng)化會(huì)議(DAC)上,對(duì)多處理和多核平臺(tái)的支持是一個(gè)被反復(fù)討論的話題。特別地,DAC上的多線程和多核支持重點(diǎn)針對(duì)靜態(tài)時(shí)序分析、模擬/混合信號(hào)仿真和設(shè)計(jì)規(guī)則檢查(DRC)。而事實(shí)上,本次會(huì)議上也出現(xiàn)了數(shù)家EDA新創(chuàng)公司的面孔。
新創(chuàng)公司CLK設(shè)計(jì)自動(dòng)化公司推出的Amber,是一款多線程增量時(shí)序和信號(hào)完整性分析工具,據(jù)稱在多核平臺(tái)上幾乎能獲得呈線性的加速。統(tǒng)計(jì)時(shí)序分析方面的新興公司Extreme DA,推出的則是多線程靜態(tài)和統(tǒng)計(jì)時(shí)序分析器GoldTime。而Averant公司最新的Solidify 5.0,則為該公司的形式分析工具增添了多CPU處理能力。
Nascentric公司在DAC上預(yù)展了AuSim MT,即一款針對(duì)多核平臺(tái)的多線程快速Spice仿真器;新創(chuàng)企業(yè)Xoomsys公司展出的是一款即將推出的、可運(yùn)行在聯(lián)網(wǎng)計(jì)算機(jī)或多核CPU上的快速 Spice仿真器——XoomCKT;而Tanner EDA公司則演示了其T-Spice電路仿真器的多線程功能。
大型EDA供應(yīng)商自然也不能忽視。Magma設(shè)計(jì)自動(dòng)化公司已經(jīng)為其Quartz DRC工具套件推出一種“基于流式數(shù)據(jù)流的架構(gòu)”,據(jù)稱可優(yōu)化Quartz DRC在多核CPU和多處理方面的性能。
對(duì)65nm和45nm設(shè)計(jì)工具來說,多核/多處理器運(yùn)行是必需的,Gary Smith EDA公司首席分析師Gary Smith指出。“如果EDA工具本身就具有并行機(jī)制,”他說,“那么通常情況下增加多核功能只要直接升級(jí)就可以了;否則,就要進(jìn)行大量的改寫,這通常要花三年左右的時(shí)間?,F(xiàn)在有許多工具都處在改寫進(jìn)程進(jìn)行了一半的狀態(tài),這也就解釋了為何我們?cè)?5/45nm工具方面落后了兩年。事實(shí)上,這是EDA產(chǎn)業(yè)界的大問題。”
F1:AuSim MT在兩個(gè)SRAM供應(yīng)商的設(shè)計(jì)中進(jìn)行測(cè)量比較,證明多線程速度取決于電路結(jié)構(gòu)。
“對(duì)下一代物理實(shí)現(xiàn)工具來說,如果要跟上摩爾定律,多線程絕對(duì)是個(gè)關(guān)鍵。”CLK總裁兼首席執(zhí)行官Isadore Katz表示,“與用戶設(shè)計(jì)步伐保持一致的唯一途徑,就是利用所有可用的內(nèi)核。下一代實(shí)現(xiàn)工具必須‘從頭開始’建立在真正的多線程架構(gòu)上。”
Cadence、新思、Mentor Graphics和Magma等大型EDA供應(yīng)商都承認(rèn),未來對(duì)多核的支持是基本要求。這四家公司都聲稱目前可提供多線程和多核功能。
一些近日發(fā)布的工具已經(jīng)可以直接支持多線程處理。Sierra設(shè)計(jì)自動(dòng)化公司去年所推出的網(wǎng)表到GDSII套件Opympus-SoC,就完全采用多線程架構(gòu),并且支持目前基于Linux的多核CPU。
聯(lián)網(wǎng)CPU還是多內(nèi)核?
在EDA領(lǐng)域,采用多個(gè)CPU并不是什么新鮮事。一些應(yīng)用軟件,特別是在進(jìn)行功能驗(yàn)證和物理驗(yàn)證時(shí),就會(huì)在聯(lián)網(wǎng)的工作站集群上使用分布式處理,充分發(fā)揮數(shù)十甚至數(shù)百個(gè)CPU的威力。其中,有些工具還采用了多線程處理,從而充分利用擁有多個(gè)CPU工作站的優(yōu)勢(shì)。
一些多線程工具,例如得到廣泛使用的Mentor Graphics公司的Calibre DRC物理驗(yàn)證工具,聲稱同樣能在分布式網(wǎng)絡(luò)、多CPU工作站和多核CPU上很好地工作。Calibre DRC產(chǎn)品經(jīng)理Michael White指出,用戶正在“計(jì)算集群”中部署雙核和四核CPU工作站,并結(jié)合分布式網(wǎng)絡(luò)和多核CPU。
如果負(fù)載很容易劃分,那么分布式網(wǎng)絡(luò)就可勝任,Cadence公司首席技術(shù)官Ted Vucurevich說道,但如果時(shí)間響應(yīng)很重要,那就需要一個(gè)耦合更緊密的、多核的環(huán)境。
“分布式處理的難點(diǎn)在于:處理器之間的延遲很大。”Nascentric公司首席技術(shù)官John Croix說,“可以利用包含多個(gè)單CPU芯片的工作站來減小延遲,但這里總線是一項(xiàng)限制因素。雖然從軟件實(shí)現(xiàn)角度來看,多CPU架構(gòu)和多核架構(gòu)之間只有很小的差異,但是相比較,位于同一顆裸片上的多核處理器具有最大的速度。”
由于其公司的產(chǎn)品既支持分布式網(wǎng)絡(luò)CPU,也支持多核CPU,所以Xoomsys公司首席執(zhí)行官Raul Camposano的觀點(diǎn)比較中立。他認(rèn)為,多核CPU通信速度很快,但用于存儲(chǔ)器訪問的帶寬非常有限;而聯(lián)網(wǎng)CPU通信速度雖然較慢,延遲也比較大,但它們有自己的存儲(chǔ)器和緩存,因此有更大的帶寬進(jìn)行存儲(chǔ)器訪問。目前,多核CPU受限于只能包括少量處理器,而聯(lián)網(wǎng)CPU可以拓展到數(shù)百甚至上千個(gè)。
Tanner EDA公司首席科學(xué)家Massimo Sivilotti指出,隨著AMD的Opteron和英特爾的Core Duo工作站的推出,業(yè)界已經(jīng)有“負(fù)擔(dān)得起”的多核平臺(tái)可用。對(duì)于模擬電路仿真等緊密耦合的數(shù)值問題,多核處理器比分布式聯(lián)網(wǎng)CPU更合適,他補(bǔ)充道。
目前只有特定的工具支持分布式處理,而對(duì)多核的支持最終會(huì)得到普及。“計(jì)算范例正在從單核向多核轉(zhuǎn)變。你會(huì)看到EDA軟件產(chǎn)業(yè)也在向這個(gè)方向發(fā)展。”Cadence公司副總裁Eric Filseth指出。
問題是為多核架構(gòu)編程非常困難,而且試圖借助原有應(yīng)用軟件的做法可能被證明是徒勞無功的。多核編程通常包含了利用線程來分配任務(wù)和協(xié)調(diào)響應(yīng)。“從軟件角度來看,特別是在EDA中,許多算法本身是有順序的,因此即便使用了多線程,所獲的的性能改善也微乎其微。所以,它們需要被重新編寫。”Xoomsys公司的Camposano指出。
“可能是個(gè)災(zāi)難”
“任何想清楚明白地創(chuàng)建用到線程概念復(fù)雜軟件的企圖,都有可能釀成一場(chǎng)災(zāi)難,而大多數(shù)EDA軟件程序正深陷其中。”Calypto設(shè)計(jì)系統(tǒng)公司首席架構(gòu)師 Ammol Mathur說,“從調(diào)試器到工具,它們對(duì)線程的支持度都很差,而這種很明確的多線程處理會(huì)引起極度難以調(diào)試的競(jìng)態(tài)狀態(tài)和非確定行為。”
評(píng)論