前言
目前的高端ASIC/ASSP/SoC器件開發(fā)商可考慮分為三大類:主流、早期采用者和技術(shù)領(lǐng)導者。在寫這篇文章的時候,主流開發(fā)商正致力于65納米技術(shù)節(jié)點設(shè)計,早期采用者開發(fā)商正專注于45/40納米節(jié)點設(shè)計,而技術(shù)領(lǐng)導者開發(fā)商正力求超越32/28納米及更小尺寸節(jié)點設(shè)計。隨著技術(shù)采用開發(fā)步伐的日益加快,下一代的早期采用者過渡到32/28納米節(jié)點的時間將不會很久,而他們的主流開發(fā)商同行也將緊隨其后。
進行32/28納米節(jié)點設(shè)計時會遇到許許多多的問題,包括:低功耗設(shè)計、串擾效應(yīng)、工藝變異及操作模式和角點數(shù)量的顯著增加。本文首先會為您呈現(xiàn)微捷碼Talus?Vortex1.2物理實現(xiàn)流程的高層次視圖,接著將介紹32/28納米節(jié)點設(shè)計所包含的一些問題并描述TalusVortex1.2是如何解決的這些問題。
除了上述技術(shù)問題以外,32/28納米節(jié)點日益提高的設(shè)計規(guī)模和復雜性還造成了工程資源(在不擴大團隊規(guī)模的前提下取得更大成果,同時還保持甚至縮短現(xiàn)有時間表)、硬件資源(無須增加內(nèi)存或購買全新設(shè)備,利用現(xiàn)有設(shè)備和服務(wù)器處理更大型設(shè)計)、滿足日益緊張的開發(fā)時間表等方面相關(guān)問題的增加。為了解決這些問題,本文還將描述通過TalusVortexFX創(chuàng)新性的DistributedSmartSync?(分布式智能同步)技術(shù),TalusVortex顯著地提高了其容量和性能。TalusVortexFX提供了首款且唯一一款分布式布局布線解決方案。
TalusVortex1.2物理實現(xiàn)流程介紹
圖1所展示的是標準TalusVortex1.2物理流程的高層次視圖。從圖中,您不難觀察到它先假設(shè)了芯片級網(wǎng)表的存在,此網(wǎng)表可能已通過微捷碼或第三方的設(shè)計輸入和綜合工具而生成。
圖1.標準TalusVortex1.2流程高級視圖
第一步,準備好網(wǎng)表;這包括了各種任務(wù),如:如確定輸入/輸出焊盤(I/Opad)及所有宏單元的位置。第二步,進行標準單元布局(這是與全局布線同時進行,因為布線可能影響到單元布局,而單元布局也會對布局造成影響)。
在完成初始單元布局之后,第三步是綜合時鐘樹,將其添加到設(shè)計中。多數(shù)時鐘樹綜合工具并非執(zhí)行真正的多模多角(MMMC)時鐘樹實現(xiàn),而是將時序環(huán)境分為best-case(最佳情況)和worst-case(最差情況)角點。但這種做法過于的悲觀,會導致性能一直處于“毫無起色”的狀態(tài)。在32/28納米節(jié)點,實現(xiàn)真正的MMMC時鐘樹勢在必行(另見后文32/28納米主題中“MMMC問題”部分)。因此Talus1.2的時鐘樹綜合部署了完整的MMMC分析,以平均10%的延遲性改善和10%的面積縮小實現(xiàn)了更為先進的魯棒性時鐘系統(tǒng),如圖2所示
?
圖2.全MMMC時鐘樹綜合實現(xiàn)了更為先進的魯棒性時鐘系統(tǒng)
一旦時鐘樹添加成功,那么第四步是執(zhí)行復雜的優(yōu)化工作。而接下來的第五步則是進行詳細布線。Talus1.2流程的收斂特性確保了詳細布線結(jié)束時的時序可與流程早期所見到的時序密切吻合,甚至在考慮到串擾時也是如此(另見后文32/28納米主題中“串擾問題”部分)。
32/28納米低功耗問題
?
圖3.功耗是目前芯片設(shè)計最為關(guān)心的問題
工程師能夠部署各種各樣的技術(shù)來控制器件的動態(tài)(開關(guān))功耗和漏電功耗。這些技術(shù)包括(但不限于)多開關(guān)閾值(multi-Vt)晶體管的使用、多電源多電壓(MSMV)、動態(tài)電壓與頻率縮放(DVFS)及電源關(guān)斷(PSO)。
在多開關(guān)閾值晶體管情況下,非關(guān)鍵時序路徑上的單元可由漏電量較低、功耗較少、開關(guān)速度較慢的高開關(guān)閾值(high-Vt)晶體管來組成;而關(guān)鍵時序路徑上的單元則可由漏電量較高、功耗較多、開關(guān)速度顯著加快的低開關(guān)閾值(low-Vt)晶體管來組成。
多電源多電壓(MSMV)所包括的芯片可分為不同區(qū)域(有時稱為“電壓島”或“電壓域),不同區(qū)域擁有不同的供電電壓。分配到較高電壓島的功能塊將擁有較高性能和較高功耗;而分配到較低電壓島的功能塊則將擁有較低性能和較低功耗。
動態(tài)電壓與頻率縮放(DVFS)技術(shù)的使用是通過改變一個或多個功能塊的相關(guān)電壓或頻率來優(yōu)化性能與功耗間折衷權(quán)衡。例如:1.0V的額定電壓在功能塊活動率低時可降至0.8V以降低功耗,或在需要時它也可以提至1.2V以提高性能。同樣地,額定時鐘頻率可在功能塊活動率相對低時減至一半,或它也可增強一倍以滿足短時間爆發(fā)的高性能需求。
顧名思義,電源關(guān)斷(PSO)系指切斷選定的目前不在使用中的功能塊的電源。盡管這項技術(shù)在省電方面效果非常好,但它需要考慮到的問題真的很多,如:為避免造成電流浪涌,要按特殊順序給相關(guān)功能塊的供電和關(guān)電。
TalusVortex1.2提供了一款完整的集成化低功耗解決方案,包括一種自動化低功耗綜合方法,可與跨多電壓和頻率區(qū)域的并行分析與優(yōu)化功能結(jié)合使用。Talus1.2不僅不會對所使用的不同晶體管開關(guān)閾值的數(shù)量進行限制,同時還支持無限的電壓、頻率和電源切斷區(qū)域。此外,Talus1.2完全支持通用功率格式(CPF)和統(tǒng)一功率格式(UPF)。這兩種格式讓設(shè)計團隊能夠先從功耗角度出發(fā)把握設(shè)計意圖,然后再推動下游規(guī)劃、實現(xiàn)和驗證策略(見側(cè)邊欄)。
32/28納米串擾問題
時鐘頻率的持續(xù)提高與供電電壓的日益降低意味著對串擾型延時變化、功能失效等信號完整性(SI)效應(yīng)的敏感度在不斷提高。在32/28納米節(jié)點,由于更近的相鄰軌道、橫截面(32/28納米節(jié)點的軌道的高度可能大于其寬度,如圖4所示,它增大了相鄰軌道耦合電容)以及金屬化的軌道和通孔的電阻的提高(相對而言),因此這些效應(yīng)也進一步增強。
?
圖4.32/28納米節(jié)點軌道的高度可能超過其寬度。
Talus1.2以基于軌道的復雜優(yōu)化算法而著稱,它使得用戶在流程更早期的全局布線期間就可解決串擾問題。Talus1.2解決串擾相關(guān)問題的方式有很多,最基本的方式是使用最佳層分配和通過可用資源的擴散布線;它會有效管理這種擴散以避免對線長或通孔數(shù)量造成的顯著負面影響。此外,全局布線器自帶有多線程功能,可獲得超高的性能水平。
為了獲得高性能,所有全局布線器會先做假設(shè)。如:在“桶(bucket)”中放置導線,每個“桶”中的導線都設(shè)置于相互的頂部,因此一開始就可以直觀地看到。在多數(shù)環(huán)境中,流程下游的軌道的真正排序和布局工作是留待詳細布線器來完成。而解決流程下游的串擾問題要花費多上一個數(shù)量級的精力,而且按需修復(如:上調(diào)單元的尺寸會伴隨面積和漏電功耗的相應(yīng)增加)可能不是最佳、乃至可完成的方法。
事實上,只有在知道軌道排序及其空間關(guān)系時才有可能精確評估潛在的串擾效應(yīng)。因此Talus1.2將全局軌道區(qū)段轉(zhuǎn)換為空間上可布局的區(qū)段,然后再使用這一區(qū)段在流程更早期就對潛在的串擾問題進行評估;這樣通過在全局布線階段對線路的重新排序和設(shè)置,所有的串擾問題都可以在流程的更早階段得到解決。在全局布線階段所做的這些修改接下來還可用于為流程下游的詳細布線器提供指導,這樣便可以少得多的計算工作獲得更優(yōu)的解決方案。
32/28納米工藝變異問題
對于以180納米及更高技術(shù)節(jié)點制造的硅芯片來說,所需的只是解決些少量晶圓間變異,即源自不同晶圓的晶粒在時序(性能)、功耗等特征方面的差異。這種差異可能是由于從一家代工廠到另一家代工廠的制程變異和儀器及操作環(huán)境微小差異所造成,如:爐溫、摻雜程度、蝕刻濃度、用以形成晶圓的光刻掩膜等等。
在較高技術(shù)節(jié)點時,所有晶粒間工藝變異(同一晶圓上各晶粒間差異)和晶粒內(nèi)工藝變異(同一晶粒上各區(qū)域間差異)相對來說并沒那么重要。(晶粒間變異也被稱之為“全局”、“芯片到芯片”、“晶粒到晶粒”變異。)例如:如果一個芯片的核心電壓為2.5V,那么在多數(shù)情況下會假設(shè)整個晶粒擁有一致和穩(wěn)定的2.5V電壓;同樣的也會假設(shè)整個晶粒上擁有統(tǒng)一的芯片溫度。
隨著尺寸越來越小的新技術(shù)節(jié)點浮出水面,晶粒間與晶粒內(nèi)工藝變異變得日益重要。這些變異中有些是系統(tǒng)變異,這意味著它會隨著單元級電路功能而改變。例如:晶圓片中心附近所制造的芯片與朝向晶圓片邊緣所制造的芯片相比,其相關(guān)的某些參數(shù)可能會有所不同;在這種情況下,可以預測所有參數(shù)都將受到類似影響;而一些參數(shù)還會在隨機變異的情況下獨立地波動,據(jù)說這可能是基于區(qū)域的變異(相對于基于距離的變異)。
?
圖5.在32/28納米節(jié)點,晶粒間與晶粒內(nèi)變異極為重要。
晶粒間與晶粒內(nèi)工藝變異統(tǒng)稱為片上變異(OCV),在32/28納米節(jié)點變得極為重要。這是由于隨著每個新技術(shù)節(jié)點的推出,控制如晶體管結(jié)構(gòu)的寬度和厚度、軌道和氧化層等關(guān)鍵尺寸變得更為困難,最終導致相對變異百分率(與某些中值相比較)會隨著每個新的技術(shù)節(jié)點而變得更大。
解決OCV的傳統(tǒng)方式是使用一階方案(first-orderapproach),包括在整個芯片上應(yīng)用一攬子容限。不過在32/28納米節(jié)點,這種方法過于悲觀,會導致過度設(shè)計、設(shè)計性能降低和時序收斂周期變長。因此Talus1.2部署了復雜的高級OCV(AOCV)算法,基于單元和軌道的鄰近性(如:兩個相鄰單元與位于晶粒相反兩端的兩個單元相比較,相互間相關(guān)潛在變異會更少)來應(yīng)用上下文特定的降額值。這種更為實際的模式可降低超額的容限,進而減少悲觀的時序違規(guī)并提高器件性能。
32/28納米多模多角(MMMC)問題
除了前文主題中所提及的制造工藝的變異以外,我們還必須解決芯片使用的環(huán)境條件(如:電壓和溫度)存在的潛在變異問題。所有這些變異均可歸入PVT(工藝、電壓和溫度)項目范圍。
對于以更早期技術(shù)節(jié)點所創(chuàng)建的器件來說,晶粒間與晶粒內(nèi)PVT差異可以忽略不計。先做假設(shè),然后基于整個芯片表面具有一致的工藝變異這一事實、基于整個晶粒上具有穩(wěn)定的核心電壓和溫度等環(huán)境條件這一事實來簡化工作是有可能的?;谶@些假設(shè),通過采用一系列bese-case條件(最高允許電壓、最低允許溫度等),確定每條路徑bese-case(最小)延時會相對容易;同樣的,通過采用一系列worst-case條件(最低允許電壓、最高允許溫度等),確定每條路徑worst-case(最大)延時也會相對容易。
?
圖6.在32/28納米節(jié)點需要解決大量模式和角點。
如worst-case和best-casePVT等特定系列條件就是我們俗稱的“角點”。在32/28納米技術(shù)節(jié)點,晶粒間與晶粒內(nèi)PVT差異十分明顯,解決大量模式和角點的工作是必不可少的。而且,前文提過的低功耗設(shè)計技術(shù)還會讓這一問題進一步復雜化。例如:在多電源多電壓(MSMV)技術(shù)情況下,可能一個電壓島的電壓值為其允許電壓范圍內(nèi)最低電壓,另一個電壓島的電壓值為其允許電壓范圍內(nèi)最高電壓,而其余電壓島的電壓值則會在這兩者之間。又如:有的芯片具有不同操作模式、擁有的一個或多個電路模塊位于在電源切斷的晶粒中心都將導致所需分析的角點情況顯著增加。
目前工具的問題在于:實現(xiàn)期間,芯片必須可在MMMC前景下進行優(yōu)化。許多現(xiàn)有系統(tǒng)通過先考量已假設(shè)的worst-case情景、然后對別的條件進行優(yōu)化的方式來著手處理優(yōu)化問題。遺憾的是,這可能導致過度悲觀主義,造成次優(yōu)性能。甚至更糟的是,如果這些關(guān)于哪些是worst-case情景的假設(shè)是錯誤的,那么結(jié)果可能是得到完全不管用的芯片。Talus1.2內(nèi)置有自帶MMMC處理功能,這意味著優(yōu)化過程不會漏掉任何情景。此外,Talus1.2的高速度和大容量還意味著,它能夠考慮到的不只是較小子集的實現(xiàn)情景,而是這款工具需要處理的整個系列的簽核情景。因此,Talus1.2可提供更好的性能和更短的實現(xiàn)周期。
以DistributedSmartSync技術(shù)增強TalusVortex的性能
前文所提及的物理實現(xiàn)流程每個步驟都是屬于計算密集型問題。而且為了解決伴隨技術(shù)節(jié)點而增加的復雜性,每個節(jié)點必須執(zhí)行的計算量也在提高。此外,當器件中所集成的功能越來越多時,設(shè)計的規(guī)模和復雜性會隨著每個節(jié)點而提高,物理實現(xiàn)相關(guān)的計算需求也會相應(yīng)增加。
再有一個因素就是:功能模塊的尺寸(為實現(xiàn)模塊功能所需的單元數(shù)量)也會隨著每項功能中包裝進越來越多特性而不斷增加。一些物理實現(xiàn)團隊偏愛層次化方案,而另外一些團隊則更喜歡使用“扁平化”方案,因為他們感覺在使用層次化方案時放棄了太多東西。
如果工具具有處理更大型電路模塊的能力,那么生產(chǎn)率就可得到即時的提升。例如:定義和微調(diào)層次化模塊間約束是極為耗時的資源密集型工作。如果這些工具具有處理更大型電路模塊的能力,那么就不需要定義子模塊間約束,因為不會有任何子模塊存在。這會大大提高生產(chǎn)率。
問題在于:多數(shù)布局布線解決方案都局限于只能處理幾百萬個單元。這常迫使物理實現(xiàn)工程師由于工具的局限性而不得不人工將電路模塊進行分割。而這也對工程師生產(chǎn)率造成了影響。
除非通過某些方式進行增強,不然的話即便目前最先進的Talus1.2布局布線解決方案的實際容量也只在200萬到500萬個單元之間,所提供的生產(chǎn)率為每天100-150萬單元。結(jié)果會造成一種由容量驅(qū)動的生產(chǎn)率差距。為了處理32/28納米節(jié)點設(shè)計,實現(xiàn)包括1000萬以上個單元的扁平電路模塊是必不可少的,如圖7所示(另見側(cè)邊欄)。
?
圖7.物理實現(xiàn)工具對扁平容量需求永不滿足。
在過去,一直是通過提供多線程功能來增強物理實現(xiàn)工具的容量和性能。在有些情況下,這些功能是被“生搬硬套”到的傳統(tǒng)工具上,效果有限。相較之下,Talus1.2中所有工具均完全內(nèi)置有自帶的多線程功能。
前文已說過,多線程對工具的作用十分有限;基于阿姆達爾定律(Amdahl’slaw)等計算機科學定律,(伴隨在其核心運行的每個線程)線程的數(shù)量越來越多所起到的效果卻越來越小。簡單來說,就是告訴我們,任何程序的加速均會受到并行數(shù)量的限制(也就是說,程序的最長序列片斷關(guān)系到程序的其它部分),如圖8所示。
?
圖8.阿姆達爾定律反映了多線程的局限性。
對于被用來創(chuàng)建ASIC/ASSP/SoC器件的物理實現(xiàn)工具來說,這些工具的并行部分約占到了50%到75%。就如我們從圖8中所看到的“甜蜜點(sweetspot)”,而在best-case情景下,使用8-10個處理核心,只可獲得約3倍的加速。
幸運的是,通過將物理實現(xiàn)任務(wù)分發(fā)到多臺機器上就可以克服阿姆達爾定律所定義的局限性。如圖9所示,采用全新DistributedSmartSync(分布式智能同步)技術(shù)的TalusVortexFX提供了與貫穿物理實現(xiàn)流程所有步驟(時鐘樹綜合除外,這種方法對它起不了什么作用)的智能同步技術(shù)相結(jié)合的獨特分布式管理。微捷碼將這款最新解決方案稱為TalusVortexFX,它以DistributedSmartSync技術(shù)增強了Talus1.2。
?
技術(shù)增強的TalusVortexFX流程的高級視圖
這種技術(shù)背后的概念是:對一個更大型的設(shè)計或模塊進行智能分割、將設(shè)計分區(qū)分散到整個網(wǎng)絡(luò)的服務(wù)器上執(zhí)行設(shè)計實現(xiàn)、最后在主要流程階段自動對這些設(shè)計實施重新同步。本質(zhì)上,這讓設(shè)計師能夠處理更大型設(shè)計,同時仍可獲得與他們之前在規(guī)模更小得多的電路模塊上所實現(xiàn)的相同的吞吐量(即每天單元數(shù))。甚至在使用同等數(shù)量的內(nèi)核/線程的時候,這種分布式方案的處理速度也較最佳多線程扁平流程要快上2-3倍。
?
圖10.僅多線程vs.多線程+分布式處理
物理實現(xiàn)工程師的生產(chǎn)率一般是根據(jù)每天單元數(shù)來進行衡量。使用最好的常規(guī)流程,可能獲得的最大生產(chǎn)率一般約為每天100萬個單元。相較之下,TalusVortexFX的分布式處理技術(shù)可將這一數(shù)字提高到每天200-500萬個單元,這種技術(shù)貫穿整個流程(對于只布局的門極電路而言,生產(chǎn)率可獲得更高的提升,這是一些用戶會關(guān)注的另一指標)。
還值得關(guān)注的是:TalusVortexFX為物理實現(xiàn)團隊提供了在設(shè)計周期早期執(zhí)行快速的假設(shè)分析的能力,實現(xiàn)了最佳的面積、速度和功耗間折衷權(quán)衡。但還有一點也不容忽視:DistributedSmartSync技術(shù)完全增強了現(xiàn)有Talus1.2技術(shù),進而促進了這款產(chǎn)品的快速采用。
至于保留現(xiàn)有硬件資源的投資方面,DistributedSmartSync技術(shù)讓用戶現(xiàn)有的內(nèi)存為32GB和64GB的設(shè)備能夠得到充分利用。若未采用這項技術(shù)而轉(zhuǎn)向32/28納米節(jié)點設(shè)計,那么將要求用戶的設(shè)備要升級為內(nèi)存128GB或256GB的設(shè)備,碰到大型服務(wù)器場的話這可能需耗費幾百萬美元。
除了通過縮短設(shè)計周期、提高工程團隊使用扁平方法的能力(在不必添加額外資源的前提下)、提高工程團隊的生產(chǎn)率以外,TalusVortexFX的使用通過縮短上市時間(贏利時間)還解決了如何滿足日益緊張的開發(fā)時間表這一問題。
總結(jié)
進行32/28納米及更小尺寸技術(shù)節(jié)點設(shè)計時會遇到許許多多的問題,包括低功耗設(shè)計、串擾效應(yīng)、工藝變異以及操作模式和角點數(shù)量的顯著增加。微捷碼的TalusVortex1.2物理實現(xiàn)環(huán)境完全解決了所有這些問題。
此外,32/28納米節(jié)點設(shè)計尺寸及復雜性的不斷提高還造成了工程資源(不擴大團隊規(guī)模而取得更大成果)、硬件資源(無需升級主板、增加內(nèi)存或購買全新設(shè)備,使用現(xiàn)有設(shè)備和服務(wù)器場來處理更大型設(shè)計)和如何滿足日益緊張開發(fā)時間表等方面相關(guān)問題的增加。為了解決這些問題,通過TalusVortexFX創(chuàng)新性的DistributedSmartSync?(分布式智能同步)技術(shù),TalusVortex顯著地提高了其容量和性能。
評論
查看更多