隨著半導(dǎo)體工藝技術(shù)步入納米階段,在單一芯片中集成上億晶體管已經(jīng)成為現(xiàn)實(shí),據(jù)ITRS(International Technology Roadmap for Semiconductors,國際半導(dǎo)體技術(shù)路線圖)預(yù)測(見表1),到2010年,單個(gè)芯片上的晶體管數(shù)目將達(dá)到22億個(gè)。如何有效地利用數(shù)目眾多的晶體管是芯片體系結(jié)構(gòu)必須回答的新問題。倘若因循單核的發(fā)展思路,芯片設(shè)計(jì)將面臨互連延遲、存儲(chǔ)帶寬、功耗極限等性能提升的瓶頸問題。因此,業(yè)內(nèi)普遍認(rèn)識(shí)到,有必要研究新型的芯片體系架構(gòu)以適應(yīng)性能增長和功耗下降同時(shí)發(fā)生這樣看似矛盾的需求。多核技術(shù)是一條可行之路。多核能夠用多個(gè)低頻率核單元產(chǎn)生超過高頻率單核的處理效能,獲得較佳的性價(jià)比。圍繞著多核的一系列技術(shù)問題業(yè)已成為近期芯片業(yè)研究的重點(diǎn)和未來的主要發(fā)展方向。 表1 ITRS預(yù)測表 按照不同的片上互連方式,多核SoC可分為兩大類:傳統(tǒng)的基于總線的互連和基于網(wǎng)絡(luò)的互連。前者是現(xiàn)有SoC的擴(kuò)展,通過多總線及層次化總線等技術(shù)使得片上集成更多的處理器核,從而實(shí)現(xiàn)高復(fù)雜度和高性能;而后者是近些年提出的嶄新的概念,即多處理器核之間采用分組路由的方式進(jìn)行片內(nèi)通信,從而克服了由總線互連所帶來的各種瓶頸問題,這種片內(nèi)通信方式稱為片上網(wǎng)絡(luò)(Network on a Chip,NoC)。 NoC概述 基本概念 NoC是指在單芯片上集成大量的計(jì)算資源以及連接這些資源的片上通信網(wǎng)絡(luò),如圖1所示。NoC包括計(jì)算和通信兩個(gè)子系統(tǒng),計(jì)算子系統(tǒng)(圖中由PE,Processing Element構(gòu)成的子系統(tǒng))完成廣義的“計(jì)算”任務(wù),PE既可以是現(xiàn)有意義上的CPU、SoC,也可以是各種專用功能的IP核或存儲(chǔ)器陣列、可重構(gòu)硬件等;通信子系統(tǒng)(圖中由Switch組成的子系統(tǒng))負(fù)責(zé)連接PE,實(shí)現(xiàn)計(jì)算資源之間的高速通信。通信節(jié)點(diǎn)及其間的互連線所構(gòu)成的網(wǎng)絡(luò)被稱為片上通信網(wǎng)絡(luò)(On-Chip Network, OCN)[1-3],它借鑒了分布式計(jì)算系統(tǒng)的通信方式,用路由和分組交換技術(shù)替代傳統(tǒng)的片上總線來完成通信任務(wù)。 圖1 典型的NoC結(jié)構(gòu)示意圖 NoC技術(shù)優(yōu)勢分析 基于分組路由方式進(jìn)行片上通信的NoC在片上通信方式、功耗、基于重用的設(shè)計(jì)方法學(xué)、解決單一時(shí)鐘全局同步等方面都具有優(yōu)越性。 ·有利于提高通訊帶寬 總線結(jié)構(gòu)是現(xiàn)有芯片架構(gòu)的通信脈絡(luò),隨著電路規(guī)模越來越大,總線結(jié)構(gòu)將成為芯片設(shè)計(jì)的瓶頸:雖然總線可以有效地連接多個(gè)通信方,但總線地址資源并不能隨著計(jì)算單元的增加而無限擴(kuò)展;雖然總線可由多用戶共享,但一條總線無法支持一對(duì)以上的用戶同時(shí)通信,即串行訪問機(jī)制導(dǎo)致了通信的瓶頸。此外,片上通信是功耗的主要來源,龐大的時(shí)鐘網(wǎng)絡(luò)與總線的功耗將占據(jù)芯片總功耗的絕大部分。 NoC的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)提供了良好的可擴(kuò)展性;NoC連線網(wǎng)絡(luò)提供了良好的并行通信能力,從而使得通信帶寬增加幾個(gè)數(shù)量級(jí);此外,NoC將長的互連線變成交換開關(guān)之間互相連接的短連線,這對(duì)功耗控制變得極為有利;另一方面,NoC借鑒了通訊協(xié)議中的分層思想,這就為從物理級(jí)到應(yīng)用級(jí)的全面功耗控制提供了可能。 ·有利于提升重用設(shè)計(jì) 總線架構(gòu)可擴(kuò)展性和可重用性差,為此在芯片計(jì)算能力演變時(shí),必須跟隨著處理能力的需求而變更設(shè)計(jì)(如更高的內(nèi)存寬度、更高的頻率、更靈活的同步或異步設(shè)計(jì)等等),每一代芯片的推出都伴隨著程度不等的設(shè)計(jì)變更,這對(duì)于開發(fā)人員而言是相當(dāng)大的負(fù)擔(dān)。若是將通信架構(gòu)獨(dú)立設(shè)計(jì),并且運(yùn)用更具彈性的技術(shù),對(duì)于縮短設(shè)計(jì)周期、減少開發(fā)成本都有不小的幫助。 由于NoC所使用的通信協(xié)議層本身屬于獨(dú)立的資源,因此提供了支持高效率可重用設(shè)計(jì)方法學(xué)的體系結(jié)構(gòu):現(xiàn)有規(guī)模的SoC可以基于片上通信協(xié)議作為計(jì)算節(jié)點(diǎn)“即插即用”于NoC的網(wǎng)絡(luò)節(jié)點(diǎn);給定的互連拓?fù)浣Y(jié)構(gòu)使得芯片集成可以采用基于片上通信的設(shè)計(jì)方法(Communication-based Design,CBD)來完成。通信和計(jì)算完全分離的技術(shù)(也就是通信與計(jì)算的正交設(shè)計(jì))將重用范圍從計(jì)算單元可重用擴(kuò)展到計(jì)算與通信單元皆可重用的層次,從而大大提升了重用設(shè)計(jì)的水平。 ·有利于解決全局同步的難題 納米工藝所帶來的各種物理效應(yīng)使得片上全局同步越來越困難。當(dāng)采用50nm工藝,時(shí)鐘頻率為10GHz時(shí),全局線延遲將達(dá)6~10個(gè)時(shí)鐘周期,時(shí)鐘偏斜(Skew)變得難以控制,而時(shí)鐘樹又是影響芯片功耗和成本的一個(gè)主要因素。這些問題,隨著集成器件尺寸越來越小,時(shí)鐘頻率越來越高,將變得越來越突出。 NoC的片內(nèi)網(wǎng)絡(luò)通信方式,資源之間的短線互連和天然的全局異步局部同步(GALS)時(shí)鐘策略等特性是解決這些問題有效途徑。 總而言之,研究NoC設(shè)計(jì)方法和設(shè)計(jì)技術(shù)是滿足納米工藝條件下高集成度芯片發(fā)展的必然需求。 NoC設(shè)計(jì)空間 完整的NoC設(shè)計(jì)方法學(xué)包括很多方面的問題,它們對(duì)NoC的發(fā)展都是至關(guān)重要的,且已經(jīng)引起了學(xué)術(shù)界的廣泛研究。Carnegie Mellon大學(xué)的U.Y. Ogras等人在文獻(xiàn)中提出了NoC設(shè)計(jì)空間的概念并將NoC研究歸納為三大類關(guān)鍵問題:基礎(chǔ)架構(gòu)、通訊機(jī)制和映射優(yōu)化,如圖2所示。 圖2 NoC設(shè)計(jì)空間示意圖 圖中,“Hard NoC”(網(wǎng)格部分)指基本架構(gòu)確定,各PE節(jié)點(diǎn)的內(nèi)容也固定的一類NoC結(jié)構(gòu),其設(shè)計(jì)空間只是圖中一矩形部分,設(shè)計(jì)余度最小;“Firm NoC”(灰色陰影空間)指其基本架構(gòu)已確定,網(wǎng)絡(luò)通道寬度與通訊節(jié)點(diǎn)緩存大小不確定,其他維度對(duì)設(shè)計(jì)者完全自由的一類NoC結(jié)構(gòu),設(shè)計(jì)者可以根據(jù)確定的應(yīng)用實(shí)現(xiàn)最優(yōu)的布圖規(guī)劃、通訊調(diào)度與任務(wù)分配算法、IP映射算法和路由交換解決方案,設(shè)計(jì)空間比較靈活;“Soft NoC”(白色立方體部分)指設(shè)計(jì)者需要根據(jù)應(yīng)用來優(yōu)化NoC設(shè)計(jì)空間的所有問題,設(shè)計(jì)靈活性最高,但設(shè)計(jì)難度和工作量也相應(yīng)最大。 設(shè)計(jì)者根據(jù)給定的具體應(yīng)用,依據(jù)應(yīng)用特征圖(Application Characterization Graph,APCG),在時(shí)間、成本、技術(shù)儲(chǔ)備等約束條件下,首先按應(yīng)用選擇基于哪類NoC開展設(shè)計(jì);其次在該類NoC的設(shè)計(jì)空間范圍內(nèi)解決相應(yīng)關(guān)鍵問題,以探索最優(yōu)的NoC實(shí)現(xiàn)方案。 NoC關(guān)鍵技術(shù)難點(diǎn) NoC關(guān)鍵技術(shù)主要包括系統(tǒng)建模、拓?fù)浣Y(jié)構(gòu)、路由方法、交換方法、緩存策略、服務(wù)質(zhì)量和映射優(yōu)化等,近年來都不同程度地取得研究進(jìn)展,而阻礙NoC走向大規(guī)模應(yīng)用的瓶頸在于以下幾方面: 存儲(chǔ)結(jié)構(gòu)問題 Memory是NoC中十分重要的組件,在現(xiàn)有的片上多處理器系統(tǒng)中,存儲(chǔ)器占到70%的芯片面積,并且在不久的將來會(huì)上升到90%;而從能耗的角度來看,存儲(chǔ)器所引入的功耗也可達(dá)系統(tǒng)功耗的90%,這對(duì)芯片的散熱、封裝和可靠性等都帶來了嚴(yán)重的問題;NoC系統(tǒng)需要大量的存儲(chǔ)元件,并被組織成復(fù)雜的存儲(chǔ)子系統(tǒng)(memory subsystem),這個(gè)存儲(chǔ)子系統(tǒng)將支持NoC的并行數(shù)據(jù)存儲(chǔ)、傳輸及交換。NoC中大量的存儲(chǔ)資源必將占用多個(gè)路由節(jié)點(diǎn),且由于處理單元與存儲(chǔ)資源之間的數(shù)據(jù)交換非常頻繁,若在數(shù)據(jù)包傳輸路徑上路由節(jié)點(diǎn)數(shù)目過多,會(huì)帶來很大的通信延時(shí)。如何有效縮短源節(jié)點(diǎn)到目的節(jié)點(diǎn)間的距離對(duì)提高整個(gè)NoC系統(tǒng)性能十分關(guān)鍵。 再者,從通信帶寬的角度,隨著工藝的進(jìn)步,計(jì)算訪存比進(jìn)一步增大,意味著基于該結(jié)構(gòu)獲得接近峰值性能的應(yīng)用算法越少。這就引入了一系列問題,如何讓眾多處理器核有足夠的數(shù)據(jù)可算?如何更充分地利用片上有限存儲(chǔ)空間實(shí)現(xiàn)核間共享,以避免片外訪存?如何充分利用有限訪存帶寬,盡量讓訪存通道優(yōu)先滿足處于關(guān)鍵路徑處理器核的訪問請(qǐng)求?最近美國Sandia國家實(shí)驗(yàn)室提出在多核處理器芯片上堆疊存儲(chǔ)芯片,來解決帶寬增長不足的問題,這或許是一種可行的方案。 總而言之,片上存儲(chǔ)結(jié)構(gòu)已經(jīng)成為影響NoC性能的關(guān)鍵因素之一。 軟件并行化問題 未來的基于多核的高性能處理芯片可能會(huì)遇到很多傳統(tǒng)的串行程序自動(dòng)并行化方法較難實(shí)施的應(yīng)用。如果不能有效地利用NoC片上并行處理資源,則并行計(jì)算的實(shí)際性能將會(huì)很低,因此如何通過有效的方法和模型,充分地利用NoC的眾多處理單元,并極大地降低應(yīng)用的開發(fā)難度,便成為迫切需要解決的問題。 與并行計(jì)算機(jī)發(fā)展過程中遇到的問題相類似,NoC并行處理體系結(jié)構(gòu)所面臨的主要問題是如何將應(yīng)用中蘊(yùn)含的不同層次、不同粒度的并行性有效地提取出來并映射到多核的并行硬件結(jié)構(gòu)上去。這一問題的解決涉及包括程序設(shè)計(jì)模型、程序設(shè)計(jì)語言、編譯系統(tǒng)及硬件支撐等在內(nèi)的多個(gè)方面。 總體來說,開發(fā)并行程序可以有三種途徑,一是串行程序自動(dòng)并行化。這條路目前尚未走通,更為實(shí)際的目標(biāo)應(yīng)為人機(jī)交互的自動(dòng)并行化;二是設(shè)計(jì)全新的并行程序設(shè)計(jì)語言。這種方法的缺點(diǎn)是需要全部改寫原有程序,對(duì)用戶來說成本和風(fēng)險(xiǎn)也很高,且效率不能保證。但是,隨著多核的出現(xiàn),若面向大眾推廣并行計(jì)算環(huán)境,就必須有一種新的容易被接受的程序設(shè)計(jì)語言。目前國際上正在研究的新興并行程序設(shè)計(jì)語言如IBM的X10、UPC(統(tǒng)一并行 C語言,C語言的擴(kuò)展)和Titanmin(Java的擴(kuò)展)等;第三條途徑就是串行語言加并行庫或偽注釋制導(dǎo)語句的擴(kuò)展,也即增加一個(gè)庫或一些新的制導(dǎo)語句來幫助進(jìn)行消息傳遞和并行。這正是MPI和OpenMP所采取的途徑,也是目前比較容易被接受且性能較高的途徑。但其程序開發(fā)效率很低,難度也比較大。 功耗管理問題 雖然NoC有助于提高芯片的能效(Energy-Efficiency),但不能忽視,由于多核系統(tǒng)片上集成規(guī)模的大幅度增加,功耗問題依然突出。如何在NoC設(shè)計(jì)中提高能效,對(duì)眾多計(jì)算資源進(jìn)行調(diào)度管理以最大限度降低功耗依然是NoC設(shè)計(jì)所面臨的重要問題之一。 從體系結(jié)構(gòu)角度看,NoC主要包括處理器核、核間互連以及片上存儲(chǔ)三個(gè)主要部分。NoC的低功耗研究可以圍繞功耗評(píng)估,處理器核功耗優(yōu)化,片上網(wǎng)絡(luò)功耗優(yōu)化以及片上存儲(chǔ)功耗優(yōu)化這四個(gè)方面對(duì)各部分展開,其中功耗評(píng)估是NoC低功耗設(shè)計(jì)的基礎(chǔ)。 功耗是導(dǎo)致包括NoC在內(nèi)的多核技術(shù)出現(xiàn)的重要誘因,也是片上多處理器設(shè)計(jì)的重要制約因素。對(duì)于NoC的不同設(shè)計(jì)模塊和設(shè)計(jì)層次,都存在行之有效的降低功耗的方法,而這些方法又可能是互相牽制,互相影響的。因此需要貫穿NoC體系結(jié)構(gòu)到電路工藝的各方面的豐富知識(shí),才能在設(shè)計(jì)早期做出正確的多核架構(gòu)的選擇。一般而言,從越高的設(shè)計(jì)抽象層次入手考慮低功耗設(shè)計(jì)問題,則可獲得的降低功耗的效率就越大。 NoC發(fā)展趨勢 技術(shù)發(fā)展趨勢 ·向?qū)哟位姾朔较虬l(fā)展 微軟公司2007年6月在美國西雅圖召開了第一個(gè)以ManyCore(眾核)為主題的研討會(huì)(Workshop),標(biāo)志著眾核設(shè)計(jì)已經(jīng)成為技術(shù)發(fā)展的趨勢和學(xué)術(shù)研究的熱點(diǎn)。 集成電路設(shè)計(jì)總是想方設(shè)法把現(xiàn)有的各種電子電路乃至計(jì)算系統(tǒng)集成到單一芯片上,因此計(jì)算機(jī)體系結(jié)構(gòu)歷來是集成電路片上系統(tǒng)架構(gòu)的參考體系。超級(jí)計(jì)算機(jī)是最強(qiáng)大的計(jì)算機(jī),充分參考超級(jí)計(jì)算機(jī)的體系結(jié)構(gòu)是設(shè)計(jì)多核處理器的基本思路。超級(jí)計(jì)算機(jī)體系架構(gòu)的基本特征就是小核大陣列和層次化管理。無論是世界排名第一的Roadrunner(122400個(gè)核),還是排名第二的BlueGene/L(212992個(gè)核),如圖3所示,都是采用高性能、層次化、可擴(kuò)展的巨大陣列,連接數(shù)目眾多的普通微處理器(小核)來保障最優(yōu)的性能。超級(jí)計(jì)算機(jī)告訴我們,小核大陣列和層次化管理必將成為眾核處理器的主流技術(shù)發(fā)展方向。 圖3 BlueGene/L的層次化陣列結(jié)構(gòu) ·向三維NoC方向發(fā)展 ITRS 2007年版闡述了More Moore(延伸摩爾定律)和More than Moore(超越摩爾定律)兩個(gè)概念,如圖4所示,其中延伸摩爾定律是按照等比例縮小繼續(xù)走微細(xì)化的道路,而超越摩爾定律追求的是功能多樣化,并指出下一代SoC(NoC)與SiP技術(shù)融合的發(fā)展趨勢。 圖4 ITRS 2007年版摩爾定律詮釋圖 正如ITRS所預(yù)測,在工藝技術(shù)發(fā)展和設(shè)計(jì)技術(shù)需求的雙重驅(qū)動(dòng)下,三維集成(又稱為系統(tǒng)級(jí)封裝,SiP)技術(shù)愈來愈受到學(xué)術(shù)界和工業(yè)界的關(guān)注和重視。NoC雖然克服了全局延遲過長帶來的信號(hào)完整性及全局同步等一系列問題,但并沒有在根本上解決縮短物理連線,減小信號(hào)時(shí)延的問題。由于二維 NoC布局條件的限制,難以保證關(guān)鍵部件相鄰以縮短關(guān)鍵路徑長度,而三維集成技術(shù)可把不同的器件層堆疊起來,不僅在真正意義上縮短了連線的長度,并克服這種布局的限制。因此把NoC和三維集成這兩種設(shè)計(jì)技術(shù)融合起來的三維 NoC就顯得自然且引人。 三維NoC是在單個(gè)芯片上將資源節(jié)點(diǎn)(Resource)分布在不同的物理層上,并用三維立體架構(gòu)實(shí)現(xiàn)資源間的互連,以構(gòu)建高帶寬、低延時(shí)、低功耗的NoC系統(tǒng)。典型的三維Mesh結(jié)構(gòu)NoC如圖5所示。三維 NoC是一個(gè)嶄新的研究話題,近兩年才在國際上被提出(最早一篇相關(guān)研究論文于2005年公開發(fā)表)。目前從事該領(lǐng)域研究的學(xué)術(shù)機(jī)構(gòu)包括美國斯坦福大學(xué)、加州理工大學(xué)、賓州州立大學(xué)、華盛頓州立大學(xué),瑞典皇家工學(xué)院、日本的Keio University,加拿大的不列顛哥倫比亞大學(xué),以及Intel、Toshiba等大公司的研究中心。可見,三維NoC已經(jīng)引起了國際上學(xué)術(shù)界和產(chǎn)業(yè)界的注意,很可能在未來幾年內(nèi)發(fā)展成為一個(gè)重要的研究領(lǐng)域,并得到廣泛的關(guān)注。 圖5 三維NoC示意圖 產(chǎn)業(yè)發(fā)展趨勢 多核技術(shù)在產(chǎn)業(yè)界已有廣泛應(yīng)用。從Intel、AMD、SUN、CISCO等國際老牌企業(yè),到PicoChip(2000年成立)、Ambric(2003年成立)、Tilera(2004年成立)等新興公司,多核產(chǎn)品層出不窮;從超級(jí)計(jì)算機(jī)到PC機(jī),從路由器等寬帶應(yīng)用到多媒體等嵌入式市場,多核產(chǎn)品逐漸廣為人知。 圖6 多核技術(shù)市場容量圖(來自VDC Research) VDC Research于2007年發(fā)表了《多核計(jì)算的嵌入式應(yīng)用:全球市場機(jī)會(huì)與需求分析》。報(bào)告分析了多核技術(shù)從2006年到2011年的市場需求走勢,如圖6所示。圖中的縱軸是以2006年總值為單位1,其他年份與2006年相比多核產(chǎn)品市場總額的倍數(shù)關(guān)系。研究表明,多核技術(shù)到2011年,嵌入式應(yīng)用領(lǐng)域的市場總額將超過2007年的6倍,超過2006的44倍。如此快速的增長速度決定了我國不應(yīng)該介入太晚,否則就只能再次走“產(chǎn)品跟蹤”的老路。 結(jié)語 包括NoC在內(nèi)的多核技術(shù)是通用處理器技術(shù)升級(jí)的大方向已成為業(yè)內(nèi)共識(shí)。多核技術(shù)是當(dāng)代集成電路設(shè)計(jì)的戰(zhàn)略性技術(shù),它以很低的功率消耗、較強(qiáng)的并行處理以及優(yōu)異的計(jì)算性能,征服了人們對(duì)集成電路性能的追求,“成為業(yè)界的重要里程碑”(Intel總裁語)。 先進(jìn)的NoC結(jié)構(gòu)可以通過集成現(xiàn)有的百兆頻率核形成高性能多核處理器,大大降低了技術(shù)門檻,為中等設(shè)計(jì)公司帶來了機(jī)會(huì),目前已有一批中等公司和新興公司在多核領(lǐng)域嶄露頭角,“國際寡頭”壟斷高性能處理器的格局正在發(fā)生變化。對(duì)我國現(xiàn)有設(shè)計(jì)能力而言,即使不能“一步登天”,但完全可以做到“所想即所得”,這亦為我國發(fā)展自主產(chǎn)權(quán)的高性能處理器產(chǎn)業(yè)提供了寶貴的契機(jī)。 |