1970年代,由于微處理器的問世,利用分立式處理器、存儲控制器和I/O接口器件,在單塊電路板上就可以搭建出簡單的計算系統(tǒng)。由板級總線來連接這些器件,而當需要更高性能時,把多塊電路板
組裝在一起,利用系統(tǒng)級總線通過背板提供卡間通信。這些電路板和系統(tǒng)互連協(xié)議都是專利性的。但隨后,專用的協(xié)議逐漸讓位于標準化協(xié)議,比如以太網(wǎng)、PCIExpress 或RapidIO協(xié)議。
與此同時,集成電路技術遵循摩爾定律,其包含晶體管的數(shù)目和速度以一定的代價不斷增加。這些趨勢共同大幅度推動了處理器性能的提高。
迄今已有數(shù)代硅器件充分利用了這一良性周期。不幸的是,單核處理器的性能提高速度已開始趨于下滑。造成這種下滑的最重要因素一直是功耗。晶體管越小,開關速度越快。晶體管尺寸的縮小使
泄漏增加,導致靜態(tài)功耗的增大。同時,隨著晶體管開關速度的加快,動態(tài)功耗也在增加。
這種不斷上升的功耗凸顯了目前硅工藝技術存在的幾個現(xiàn)實問題。首先,單個處理器的性能受功率和系統(tǒng)功耗的限制。其次,晶體管預算在繼續(xù)增加,而可獲得的時鐘速率卻不然。
隨著晶體管預算的持續(xù)增加,業(yè)界已迅速轉向帶有多個處理器內(nèi)核的器件。這些器件還集成有內(nèi)存控制器、應用加速器和I/O接口的器件,形成一個多核SoC。多核器件有望大大提高系統(tǒng)性能。
SoC器件的面世模糊了單個元件及其所實現(xiàn)的系統(tǒng)架構之間的界線。曾經(jīng)一個完整的計算系統(tǒng)需要一塊電路板來實現(xiàn),而現(xiàn)在只需單個器件就能夠把多個這類系統(tǒng)囊括在內(nèi)。
向SoC器件的轉換改變了SoC和其它器件及網(wǎng)絡之間的互連要求。電路板和系統(tǒng)級互連最初基于總線共享,而且和以往的處理器一樣,采用一種類似的方式來滿足對更高互連性能的要求:增加時鐘速
率,加寬總線帶寬。然而,蹈處理器之覆轍,最后同樣因物理效應的影響,總線上的器件數(shù)目不得不減少,從而催生出了總線分割、分層化拓撲和最終的點到點開關網(wǎng)絡。
嵌入式系統(tǒng)常常被劃分為三個子系統(tǒng)功能:控制面板、數(shù)據(jù)面板和系統(tǒng)管理。當系統(tǒng)只包含一個計算系統(tǒng)時,系統(tǒng)級的通信流數(shù)目很有限。這是幸運的,因為按照定義,基于總線的互連只能容納一
個通信流。
QoS問題
過去,為了提高系統(tǒng)性能,每一個功能采用一個專用處理器。隨著多個并行通信流的出現(xiàn),服務質(zhì)量(QoS)問題急劇增加。為了更好地優(yōu)化帶寬并防止各個通信流之間產(chǎn)生干擾,在許多情況下都使用
了三種單獨的互連。在這些系統(tǒng)中,每一個處理器執(zhí)行一個功能,并分別負責單個或最多很少幾個通信流。然而,多核SoC的問世使這種局面大為改觀。由于每個內(nèi)核分別處理各自的通信流,故有可能實
現(xiàn)每芯片多個通信流。
并行執(zhí)行現(xiàn)有代碼,在單個多核SoC上實現(xiàn)控制、數(shù)據(jù)和管理面板功能的融合,這一近期目標預計將作為多核架構的權宜之計。其將在一個四核器件上產(chǎn)生至少三個以上的通信流。從長遠來看,軟件
將支持多核,并回復到眾多內(nèi)核執(zhí)行離散數(shù)據(jù)或控制面板功能。在任一種情況下,不論何處采用多核SoC都將出現(xiàn)多個通信流。隨著使用8、16甚至更多內(nèi)核的下一代SoC的問世,未來2~4年間,單個器件
能夠支持的通信流數(shù)目將大幅度增加。
目前的互連支持多個通信流嗎?答案是肯定的。通過在單個互連傳輸之前進行多路復用,可支持任何數(shù)目的通信流。但仍存在兩大挑戰(zhàn):在目的節(jié)點如何對通信流進行多路分離,如何賦予每一個通
信流獨特的服務參數(shù),比如保證帶寬以及平均或最差情況下的延時?