新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 分析寬帶系統(tǒng)互聯(lián)中的串行選擇

分析寬帶系統(tǒng)互聯(lián)中的串行選擇

作者: 時(shí)間:2013-05-23 來(lái)源:網(wǎng)絡(luò) 收藏
  系統(tǒng)中的互聯(lián)體系結(jié)構(gòu)一直得到了廣泛應(yīng)用。芯片邊界和電路板邊沿等物理約束要求對(duì)系統(tǒng)進(jìn)行劃分。而I/O的GPIB或者USB、內(nèi)部互聯(lián)的微處理器總線等標(biāo)準(zhǔn)定義了互聯(lián)方法。除了這些標(biāo)準(zhǔn),連接還常用于異步和點(diǎn)對(duì)點(diǎn)應(yīng)用中。

  然而今天,子系統(tǒng)之間帶寬的迅速增長(zhǎng),低延時(shí)通路在子系統(tǒng)邊界擴(kuò)展的風(fēng)險(xiǎn),以及嚴(yán)格的功耗和成本預(yù)算等因素導(dǎo)致一切變得更加復(fù)雜。在很多設(shè)計(jì)中,不可能在系統(tǒng)中布滿CPU總線,或者外設(shè)總線。對(duì)于以芯片系統(tǒng)()實(shí)現(xiàn)的子系統(tǒng),一些芯片設(shè)計(jì)人員能夠通過(guò)這些子系統(tǒng)預(yù)先了解您的系統(tǒng)互聯(lián)體系結(jié)構(gòu)。由于低I/O電壓和極短的上升時(shí)間,點(diǎn)對(duì)點(diǎn)互聯(lián)遇到了很大的時(shí)序、信號(hào)完整性和電路板設(shè)計(jì)難題。

  對(duì)于這一越來(lái)越復(fù)雜的情形,需要其他的解決方案。高速串行互聯(lián)一直主要用于通信行業(yè),在較長(zhǎng)的距離上傳輸數(shù)據(jù)流。采用高級(jí)硅片工藝技術(shù),在很多系統(tǒng)中,這些串行鏈路的接口變得非常小,而數(shù)據(jù)速率足夠高,多千兆位串行鏈路替代了并行總線,甚至是異步I/O.

  一個(gè)很明顯的例子是PCI Express (PCIe)。最初的PCI是非常傳統(tǒng)的并行同步總線。隨著個(gè)人計(jì)算機(jī)帶寬需求的增長(zhǎng),Intel把這一拓?fù)溥w移到了高速串行鏈路的多個(gè)通路上。相似的發(fā)展也出現(xiàn)在大容量存儲(chǔ)器件中,老的AT連接總線變?yōu)楝F(xiàn)在非常熟悉的串行ATA (SATA)。

  而這些概念的應(yīng)用已經(jīng)超出了外設(shè)總線。為能夠理解為什么高速串行鏈路可以應(yīng)用于點(diǎn)對(duì)點(diǎn)連接甚至是單個(gè)電路板邊界上,讓我們了解一些系統(tǒng)劃分問(wèn)題。

  系統(tǒng)劃分

  在理想的理論體系結(jié)構(gòu)中,系統(tǒng)劃分完全是基于數(shù)據(jù)和控制流圖的系統(tǒng)過(guò)程。您畫(huà)出圖,然后,將功能模塊劃分到子系統(tǒng)中,子系統(tǒng)分成更大的組,這樣,減小了帶寬需求,增大了子系統(tǒng)之間鏈路的延時(shí)約束。然后,您可以針對(duì)這一鏈路的需求,以最短的合適互聯(lián),實(shí)現(xiàn)子系統(tǒng)之間的每一連接。

  這一方法對(duì)于空白電路板非常適用。這實(shí)際上與設(shè)計(jì)和FPGA使用的早期階段非常相似。但是,當(dāng)今的大部分設(shè)計(jì)都從商用芯片開(kāi)始:專用標(biāo)準(zhǔn)產(chǎn)品(ASSP)或者微控制器單元(MCU)。這些給我們提出了很多劃分要求,如圖1所示。我們選擇的芯片決定了我們的子系統(tǒng)邊界,以及應(yīng)使用那種互聯(lián)技術(shù)。如果您MCU唯一的外部互聯(lián)是AMBA APB外設(shè)總線,或者DDR2存儲(chǔ)器總線,以及一些通用I/O引腳,那么,這就是您的選擇。

電機(jī)控制電路板上的芯片按照子系統(tǒng)進(jìn)行分組

  圖1.電機(jī)控制電路板上的芯片按照子系統(tǒng)進(jìn)行分組。

  即使這樣,劃分仍然是系統(tǒng)設(shè)計(jì)中的一個(gè)重要步驟。而且,您必須對(duì)比SoC設(shè)計(jì)人員做出的假設(shè)和系統(tǒng)實(shí)際物理邊界、帶寬需求以及延時(shí)要求。因此,您需要識(shí)別出子系統(tǒng):把需要交換大量數(shù)據(jù)的芯片放到一起,例如,SoC及其DRAM等??梢园阉鼈冎g的窄帶、對(duì)延時(shí)要求不高的芯片放在不同的子系統(tǒng)中,例如,MCU和系統(tǒng)監(jiān)視模數(shù)轉(zhuǎn)換器(ADC)等。通過(guò)這種分組方法包括了系統(tǒng)中所有的功能模塊后,可以轉(zhuǎn)向?qū)ψ酉到y(tǒng)之間的鏈路進(jìn)行特征描述。

  特征描述

  在基于SoC的系統(tǒng)中,對(duì)子系統(tǒng)之間的互聯(lián)進(jìn)行特征描述看起來(lái)似乎沒(méi)有什么意義。SoC的I/O選項(xiàng)很好的定義了接口。但是作為系統(tǒng)設(shè)計(jì)人員,您還是需要回答某些重要問(wèn)題,仍然有一些可能不太明確的選項(xiàng)。

  把問(wèn)題分成帶寬、延時(shí)和成本幾類。帶寬是這些問(wèn)題的基礎(chǔ)。如果您建議的互聯(lián)方案是可行的,那么,您應(yīng)該清楚的知道每一子系統(tǒng)的帶寬需求。一般而言,這實(shí)際上是一個(gè)意義不大的問(wèn)題。SoC設(shè)計(jì)人員將通路設(shè)計(jì)得很長(zhǎng),以保證芯片上的I/O要比預(yù)測(cè)的任務(wù)需求多得多。一般有足夠的DRAM帶寬來(lái)處理芯片CPU高速緩存生成的所有指令和數(shù)據(jù)流。通常有PCIe等高速總線連接至主系統(tǒng)或者寬帶外設(shè)和加速器等。而且,還有與標(biāo)準(zhǔn)兼容的專用I/O接口。

  但是,如果SoC設(shè)計(jì)人員沒(méi)有預(yù)見(jiàn)到您所做的工作呢?有時(shí)候,基于您對(duì)系統(tǒng)體系結(jié)構(gòu)的分析,您選擇的SoC完全滿足您的接口要求。在其他情況下,您可能會(huì)發(fā)現(xiàn),在某些地方會(huì)遇到瓶頸,而有的情況下會(huì)遇到未使用的帶寬,或者完全沒(méi)有使用的接口。在所有這些情況下,您可能會(huì)重新思考這些接口的用途。或者,如果您通過(guò)在FPGA中匯集知識(shí)產(chǎn)權(quán)(IP)來(lái)構(gòu)建SoC,那么,您能夠更靈活的重新安排系統(tǒng)互聯(lián)體系結(jié)構(gòu)。特別是,您應(yīng)該仔細(xì)處理系統(tǒng)中要求最高的數(shù)據(jù)流。將所有的東西都自動(dòng)轉(zhuǎn)儲(chǔ)到一條共享總線上,即使是快速PCIe總線,也不是好方法。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 寬帶系統(tǒng) 串行選擇 SoC

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉