最近,多核心系統(tǒng)單晶片(SoC)元件的出現(xiàn)重新劃分了硅元件、電路板和子系統(tǒng)之間的界線(xiàn)。這種趨勢(shì)導(dǎo)致晶片-晶片和電路板-電路板的互連要求發(fā)生了重大變化。那么,現(xiàn)有標(biāo)淮已淮備好應(yīng)對(duì)這一變革了嗎?
1970年代,由于微處理器的問(wèn)世,利用分離式處理器、記憶體控制器和I/O介面元件,在單一電路板上就可以建構(gòu)簡(jiǎn)單的運(yùn)算系統(tǒng)。由板級(jí)匯流排來(lái)連接這些元件,而當(dāng)需要更高性能時(shí),便將多塊
電路板組裝在一起,利用系統(tǒng)級(jí)匯流排透過(guò)背板提供卡間通訊。
這些電路板和系統(tǒng)互連協(xié)議都是專(zhuān)用的。但隨后,專(zhuān)用協(xié)議逐漸讓位于標(biāo)淮化協(xié)議,如以太網(wǎng)絡(luò)、PCI Express或RapidIO協(xié)議。
與此同時(shí),積體電路技術(shù)遵循摩爾定律,其包含電晶體的數(shù)目和速度不斷增加。這些趨勢(shì)大幅推動(dòng)了處理器性能的提升。
迄今已有數(shù)代硅元件充分利用了這一良性周期。不幸的是,單核心處理器的性能提高速度已開(kāi)始趨于下滑。造成這種下滑的最重要因素一直是功耗。電晶體越小,開(kāi)關(guān)速度越快。電晶體尺寸的縮小使泄漏增加,導(dǎo)致靜態(tài)功耗的增大。同時(shí),隨著電晶體開(kāi)關(guān)速度的加速,動(dòng)態(tài)功耗也在增加。
這種不斷上升的功耗凸顯了目前硅制程技術(shù)存在的幾個(gè)現(xiàn)實(shí)問(wèn)題。首先,單處理器的性能受功率和系統(tǒng)功耗限制。其次,電晶體預(yù)算持續(xù)增加,而可獲得的時(shí)脈速率卻不然。
隨著電晶體預(yù)算的持續(xù)增加,業(yè)界已迅速轉(zhuǎn)向具有多個(gè)處理器核心的元件。這些元件還整合記憶體控制器、應(yīng)用加速器和I/O介面的元件,形成多核心SoC。多核心元件可望大幅提高系統(tǒng)性能。
SoC元件的問(wèn)市模糊了單一元件及完整系統(tǒng)架構(gòu)之間的界線(xiàn)。曾經(jīng)在一個(gè)完整的運(yùn)算系統(tǒng)中,需要用到一塊電路板,而現(xiàn)在只需要單顆元件,就能將多個(gè)系統(tǒng)囊括在內(nèi)。
向SoC元件的轉(zhuǎn)換改變了SoC和其他元件及網(wǎng)路之間的互連要求。電路板和系統(tǒng)級(jí)互連最初基于匯流排共用,而且和以往的處理器一樣,采用一種類(lèi)似的方式來(lái)滿(mǎn)足對(duì)更高互連性能的要求:增加時(shí)脈速率,加寬匯流排頻寬。然而,蹈處理器之覆轍,最后同樣因?qū)嶓w效應(yīng)的影響,匯流排上的元件數(shù)目不得不減少,因而催生出了匯流排分割、分層化拓?fù)浜妥罱K的點(diǎn)對(duì)點(diǎn)開(kāi)關(guān)網(wǎng)路。
嵌入式系統(tǒng)通常劃分為三種子系統(tǒng):控制面、資料面和系統(tǒng)管理。當(dāng)系統(tǒng)只包含一個(gè)運(yùn)算系統(tǒng)時(shí),系統(tǒng)級(jí)的通訊串流數(shù)目很有限。這是幸運(yùn)的,因?yàn)榘凑斩x,基于匯流排的互連只能容納一個(gè)通訊串流。
圖1:當(dāng)系統(tǒng)只包含一個(gè)運(yùn)算系統(tǒng)時(shí),系統(tǒng)級(jí)的通訊串流數(shù)目很有限。在多核心SoC中,由于每個(gè)核心分別處理各自的通訊串流,有可能實(shí)現(xiàn)每晶片多個(gè)通訊串流。
QoS考量
過(guò)去,為了提高系統(tǒng)性能,每一個(gè)功能采用一個(gè)專(zhuān)用處理器。隨著多個(gè)并行通訊通訊串流的出現(xiàn),這種做法導(dǎo)致服務(wù)品質(zhì)(QoS)問(wèn)題急劇增加。為了最佳化頻寬并防止各個(gè)通訊串流之間產(chǎn)生干擾,在許多情況下都使用了三種單獨(dú)的互連。在這些系統(tǒng)中,每一個(gè)處理器執(zhí)行一個(gè)功能,并分別負(fù)責(zé)單一或最多很少幾個(gè)通訊串流。
然而,多核心SoC的問(wèn)世使這種局面大為改觀(guān)。由于每個(gè)核心均可分別處理各自的通訊串流,故有可能在每顆晶片上實(shí)現(xiàn)多個(gè)通訊串流。
平行地執(zhí)行現(xiàn)有程式碼,在單顆多核心SoC上實(shí)現(xiàn)控制、資料和管理面功能融合的這一近期目標(biāo),預(yù)計(jì)將作為多核心架構(gòu)的權(quán)宜之計(jì)。這種方法可在一個(gè)四核心元件上產(chǎn)生至少三個(gè)以上的通訊串流。長(zhǎng)遠(yuǎn)來(lái)看,軟件將支援多核心,并回復(fù)到運(yùn)用眾多核心執(zhí)行離散資料或控制面板功能。在任一種情況下,不論何處采用多核心SoC都將出現(xiàn)多個(gè)通訊串流。隨著使用8、16甚至更多核心的下一代SoC問(wèn)世,未來(lái)2-4年間,單顆元件所能支援的通訊串流數(shù)目將大幅增加。
目前的互連支援多個(gè)通訊串流嗎?答案是肯定的。透過(guò)在單一互連傳輸之前進(jìn)行多工,可支援任何數(shù)目的通訊串流。但仍存在兩大挑戰(zhàn):在目的節(jié)點(diǎn)如何對(duì)通訊串流進(jìn)行多工分離,如何賦予每一個(gè)通訊串流獨(dú)特的服務(wù)參數(shù),如保證頻寬和平均或最壞延遲?
要解決這些問(wèn)題,協(xié)議需要具備好幾個(gè)功能。首先,這個(gè)協(xié)議必須能夠?qū)Ω鱾€(gè)通訊串流進(jìn)行差異化。換言之,應(yīng)該能夠檢查纜線(xiàn)上的資料封包,并決定其屬于哪一個(gè)通訊串流?其次,當(dāng)資料封包透過(guò)互連傳輸時(shí),必須能夠執(zhí)行服務(wù)參數(shù)。這一點(diǎn)可透過(guò)控制仲裁和流量控制來(lái)實(shí)現(xiàn)。例如,穩(wěn)健的SoC需要多個(gè)通訊流量控制機(jī)制,以限制互連上的一系列擁塞事件。這些機(jī)制可能包括鏈路到鏈路、端到端和進(jìn)/出流量管理。
嵌入式系統(tǒng)中應(yīng)用最廣泛的互連也許是以太網(wǎng)絡(luò)。以太網(wǎng)絡(luò)的可擴(kuò)展性已在多年服務(wù)中得到了充分的證實(shí)?;镜腖ayer 2以太網(wǎng)絡(luò)訊框只支援資料報(bào)類(lèi)型(datagram-style)的處理,而且沒(méi)有已定義的流量差異化頭欄位。但之后,從Layer 2的VLAN標(biāo)簽到更廣泛的Layer 3 IP報(bào)頭中的‘5 Tuples(五元組)’,各種流量差異化方法被放在最高層。其中,‘五元組’方案可支援?dāng)?shù)百萬(wàn)個(gè)通訊串流。
不幸的是,對(duì)以太網(wǎng)絡(luò)而言,QoS已證實(shí)是一個(gè)更大的挑戰(zhàn)。這是因?yàn)橹挥幸粋€(gè)有限的鏈路級(jí)PAUSE-訊框協(xié)議可被采用,而缺乏廣獲采納的流量控制機(jī)制所致。在鏈路級(jí)之外,有少數(shù)可解決此一問(wèn)題的解決方案正在獲得更多支持,其中包括在Layer 2采用VLAN優(yōu)先順序標(biāo)簽(802.1Q),或在Layer 2和Layer 3之間采用MPLS報(bào)頭。流量管理也是常用方法。通常,在封閉式嵌入式系統(tǒng)中僅能發(fā)現(xiàn)一部份的這類(lèi)方案;針對(duì)以太網(wǎng)絡(luò),目前尚未有特定的完整與一貫性的方法。
另一個(gè)問(wèn)題的出現(xiàn),是由于大部份在以太網(wǎng)絡(luò)上分層的方案往往采用軟件來(lái)實(shí)現(xiàn)。由于硬體支援較少,可獲得的QoS參數(shù)受通訊串流通過(guò)軟件堆迭時(shí)產(chǎn)生的延遲和延遲抖動(dòng)所限制。
1999年定義的RapidIO互連規(guī)格代表了一種更先進(jìn)的系統(tǒng)互連方案。在該規(guī)格的開(kāi)發(fā)過(guò)程中,QoS曾是一個(gè)重要考慮事項(xiàng),包含了好幾種流量控制機(jī)制,如重試(retry)和基于信用(credit-based)的鏈路級(jí)流量控制、端到端XON/XOFF和流量控制協(xié)議。
在嵌入式系統(tǒng)中廣獲采用的另一種互連技術(shù)是PCI Express (PCIe)。PCIe最初瞄淮PC和服務(wù)器市場(chǎng),支援配置、事件消息發(fā)送和讀寫(xiě)處理。這種技術(shù)在系統(tǒng)級(jí)的QoS支援很有限。在per-VC basis上有穩(wěn)健的基于信用的鏈路級(jí)流量控制,足以實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通訊。
在實(shí)際應(yīng)用中,以太網(wǎng)絡(luò)可以實(shí)現(xiàn)穩(wěn)健的流量差異化,但缺乏穩(wěn)健的QoS特性。大多數(shù)PCIe實(shí)現(xiàn)方案都沒(méi)有流量差異化能力。PCIe的流量控制有限,似乎是針對(duì)未來(lái)多核心元件淮備最不足的元件。三者中RapidIO潛力最大,因?yàn)樗г齻€(gè)具有優(yōu)先順序之通訊串流上的數(shù)百萬(wàn)個(gè)差異化流量,并支援穩(wěn)健的QoS特性。
幸運(yùn)的是,許多新興的多核心SoC都支援多個(gè)外部互連協(xié)議。如飛思卡爾的8核心QorIQ P4080就可針對(duì)此處提到的所有協(xié)議進(jìn)行配置。
深圳宏力捷推薦服務(wù):PCB設(shè)計(jì)打樣 | PCB抄板打樣 | PCB打樣&批量生產(chǎn) | PCBA代工代料