嵌入式系統的序列RapidIO架構

本文作者:admin       點擊: 2007-11-09 00:00
前言:
電信、網路和寬頻應用都需要高速互連的系統架構,而序列和並列RapidIO恰好能在嵌入式系統內提供超大頻寬及輕量的通訊能力。RapidIO的主要設計目的為支援系統內通訊、並提供一套輕量級協定,以減少軟體對系統處理器的衝擊。

正當現代嵌入式應用的效能需求大幅提高時,這些應用必須同時擁有精密直接的對等通訊能力、高度可靠性、高品質服務、分佈處理架構,以及互用性 (interoperability)。快速且具彈性I/O的高效能DSP能滿足目前各種應用的即時處理需求。而嵌入式元件也已開始將業界標準的序列RapidIO(sRIO)匯流排技術整合至晶片中,以提供高效能的封包交換式互連技術來滿足業界對可靠性、更大頻寬和更快匯流排速度的需求。這種開放標準、龐大頻寬和系統層級互連能力可減少切換和處理器匯集(processor aggregation)所需的額外零件,進而降低系統總成本。

了解多工處理應用需求
嵌入式系統包含分散在單一系統單晶片裡的多工處理單元,這些處理單元分別負責執行整體應用所需的不同功能,包括訊號處理、資料處理和控制。還有些系統將多個不同處理單元分散到電路板上的各個元件,在這種情形下,這些元件必須相互聯繫以便共享資料和狀態,進而完成系統處理作業。隨著元件數目增加,通訊線路也變得越來越多,而處理器之間的通訊互連需求也相對更高。

互連需求可分為功能性(functional)及非功能性(non-functional)兩大類。功能性需求包括對等通訊和支援不同的元件架構,非功能性需求則包括低延遲時間、可擴展頻寬和其他因可靠性、彈性和效率(就硬體和軟體效能而言)等考量而產生的需求。彈性是其中特別重要的因素,因為隨著應用空間的差異,將有許多系統設計方案可供選擇。

RapidIO解決互連的問題
目前已有許多常見方法可解決網路互連的問題,包括:
■橋接:由外部元件執行協定和實體的轉換。
■彈性界面:採用可配置組態的元件以支援多種互連架構和匯流排。
■多種元件版本:晶片製造商提供支援不同界面的多種元件。

許多多工處理器演算法如DSP演算法都必須在處理同一問題的多個運算節點間傳送大量資料。因此,系統的整體效能常受到系統互連架構的傳輸效能限制,而解決這種互連問題的方法之一便是採用RapidIO(RIO,www.rapidio.org)。RapidIO是業界標準的封包交換式高速互連架構,目前有越來越多的嵌入式系統開始採用此架構支援需要這種互連及通訊模式的應用。RapidIO的主要設計目的是提供一套輕量級協定,降低軟體對系統處理器的衝擊,並以支援系統內的通訊為主。這套架構不但具備優異的相容性,還採用可靠而高效能的封包交換技術,故能於晶片間和電路板間提供更大的通訊頻寬。

為了提供可擴充性和未來功能強化的可能性,並繼續維持與舊產品的相容性,RapidIO採用由實體層、傳輸層和邏輯層構成的三層硬體架構。因此RapidIO擁有不需修改傳輸層或實體層規格就能在邏輯層規格中增加新交易類型 (transaction type)的優異彈性。

實體層包含電氣訊號和鏈路層級交握機制(link level handshaking mechanisms)以及CRC錯誤偵測。RapidIO是一種8或16位元寬的並列界面,執行速率為250MHz到1GHz,而且時脈訊號的兩個邊緣都會觸發資料動作。RapidIO在交換式環境中的封包路由則是由傳輸層決定,這套架構採用目標導向的路由方式(destination based routing)根據封包內含的裝置ID將封包送到正確裝置。這套架構的最上層是邏輯層,負責定義封包類型與功能。RapidIO的每個封包最多能攜帶256 byte的資料。

晶片內建序列RapidIO(sRIO)
序列RapidIO(sRIO)為RapidIO的另一種技術。sRIO是點對點的交換式序列互連技術,因其與並列RapidIO技術並不相容,所以開發人員須選擇正確的並列與序列連線組合。sRIO的訊號速率是每個差動傳送和接收對(又稱為“lanes”)為1.25、2.5或3.125Gbps,能讓每個lane在每個方向提供高達312.5MBps的訊號速率。每個sRIO連接埠都能設為1-lane或4-lane,使每個埠的最大資料速率達到1.25Gbps。

sRIO的多架構支援能力不但使支援多工處理應用更容易,還能省下原本所需的匯集邏輯電路(aggregation logic)。例如在視訊基礎設施應用裡,實體層資料傳輸單元利用類比並序/序並轉換技術(SERDES)從資料串流中將時脈還原,並納入8B/10B編碼功能。這個序列規格還支援1-lane(1x)和4-lane (4x)連接埠;基本上,一個1x sRIO鏈路就能在裝置之間傳送兩個通道的高畫質1080i原始視訊,一個4x鏈路更能在裝置之間輕鬆傳送4個通道的高畫質1080p原始視訊,並同時有多餘頻寬供其他應用使用。

這種序列架構的每個封包最多可攜帶256byte的資料量,而且也無法提供如PCI Express或並列RapidIO等互連架構的擴充性。舉例來說,電腦應用常透過PCI匯流排將多個磁碟通道與系統連接。隨著磁碟資料產出增加,系統也必須提高匯流排頻率以提供更大產出,但卻會導致每段匯流排所能支援的裝置數目減少;此時,系統必須使用更多段匯流排才能連接同樣數目的裝置。PCI-to-PCI橋接元件雖能解決此問題,但只適用樹狀架構,而這種架構的系統延遲時間和成本卻會隨著更多PCI裝置連接到系統而增加。相形之下,利用RapidIO亦可提高系統層級的效能,除此之外,由於RapidIO採用點對點架構,因此移除裝置時幾乎不會對相鄰裝置或次系統造成任何電路衝擊。

德州儀器(TI) TMS320C6455 DSP元件內提供一組sRIO匯流排界面,此元件也是RIO和sRIO在嵌入式應用裡日益廣泛的例證之一。此界面可增加高階和多通道應用的效能與I/O頻寬,例如視訊與語音轉碼、視訊會議伺服器、高畫質視訊編碼和無線基地台收發器。sRIO不但將延遲時間減低,還提供龐大的10Gbps全雙工頻寬和低接腳數的互連能力,故能消除I/O瓶頸,將系統效能提高最多至12倍。這個晶片內建的sRIO還能連接協力廠商工具、FPGA、sRIO交換器和內建sRIO的嵌入式處理器。

軟體與基礎設施
除了sRIO提供的原始效能外,軟體開發人員不需做低階元件程式設計,就能開發應用軟體。目前已有數家嵌入式處理器廠商在核心軟體層提供sRIO支援,如TI的即時作業系統和DSP/BIOS核心基礎軟體就包含一組sRIO訊息佇列應用程式界面(Message Queue API),能讓開發人員在高階抽象層開發應用軟體。

在含有大量DSP的基礎設施應用中使用sRIO還能在元件數目、電路板面積和/或元件成本等方面降低系統成本。舉例來說,目前新開發的嵌入式系統都會擴大使用DMA和其他能高速移動資料的智慧型週邊。目前的點對多點(multi drop)互連架構若不使用更多的訊號/接腳和連接器,就無法支援所需頻寬,但增加訊號/接腳和連接器卻會提高系統成本。sRIO則能在大量DSP的配合下,以不影響成本的方式解決這個問題。

不同的應用需要不同的系統架構,sRIO提供高度彈性,協助系統開發人員將以sRIO為基礎的網路規劃為環狀或格狀架構。sRIO採用來源路由(source routing),而不是廣播路由(broadcast routing),因此在整個架構裡,只有傳送者與接收者之間的路徑需要處理傳輸作業,此舉將能為系統內其他DSP元件提供更多頻寬,讓這些元件同時相互通訊。sRIO還能在無論是否提供當地連線及連接到ASIC和FPGA的情況下,透過交換器將多個處理單元串連;此外,sRIO還能將多個處理單元連接成星狀架構。

最後,RapidIO還提供良好的互用性(interoperability),使採用RapidIO的系統更容易導入各種不同的應用。RapidIO的互用性測試是以相關標準機構所制定的RapidIO互連規格裝置互用性與符合性檢查清單 (RapidIO Interconnect Specification Device Interoperability and Compliance Checklists)為基礎,這份清單主要提供多工處理和多通道訊號處理解決方案給開發工程師參考,做為他們的RapidIO技術使用指南。舉例來說,裝置互用性測試的第一步是確保「裝置A」與「裝置B」之間的互用性通過測試。目前市場上已有許多sRIO開發系統,開發人員在設計電路板前可利用這些系統評估sRIO系統和製造原型。整體而言,設計人員已能在市場取得sRIO系統開發所需的全部重要組件。

電子郵件:look@compotechasia.com

聯繫電話:886-2-27201789       分機請撥:11