SPI-4.2總線應(yīng)用和調(diào)試經(jīng)驗(yàn)談
引言
SPI-4.2總線(System Packet Interface,系統(tǒng)間數(shù)據(jù)包接口)是一種速度高達(dá)10 Gb/s的芯片間互連總線,主要應(yīng)用于ATM信元傳輸、POS(Packet Over SONET/SDH,基于SONET/SDH的包傳輸)和10 Gb/s以太網(wǎng)等高端場(chǎng)合。特別在通信領(lǐng)域,很多高端處理器和網(wǎng)絡(luò)處理器,如Intel公司的IXP2800、Cavium公司的多內(nèi)核處理器CN58xx系列、NetLogic公司的XLR732、Broadcom的BCM1480,幾乎都集成了SPI-4.2接口,以提高芯片的吞吐能力,適應(yīng)通信產(chǎn)業(yè)朝著LTE(長(zhǎng)期演進(jìn))發(fā)展的需求。還有眾多的物理層芯片,例如Cortina公司的CS1331,可以將SPI-4.2總線轉(zhuǎn)換成8個(gè)千兆以太網(wǎng)接口。SPI-4.2總線之所以被眾多的高端芯片所采用,與其高速、靈活、可靠的特性是密不可分的。
1 SPI-4.2總線基本原理
SPI-4.2總線是一種芯片間的互連總線,連接芯片的鏈路層和物理層模塊。其工作時(shí)鐘是源同步雙邊沿觸發(fā)時(shí)鐘,至少為311 MHz。圖1是使用SPI-4.2總線連接兩個(gè)芯片的示意圖??梢?jiàn),SPI-4.2總線的信號(hào)在發(fā)送和接收方向完全對(duì)稱而又互相獨(dú)立,數(shù)據(jù)鏈路和狀態(tài)鏈路分開(kāi),并且其時(shí)鐘也是完全分開(kāi)的。因此,該總線不僅適合于雙向通道,而且適合于只收不發(fā)或者只發(fā)不收的單向通道。
SPI-4.2總線具有以下特點(diǎn):
①點(diǎn)對(duì)點(diǎn)互連,收發(fā)數(shù)據(jù)鏈路寬度為16位。
②發(fā)送和接收模塊的信號(hào)各分為兩組,即數(shù)據(jù)信號(hào)和狀態(tài)信號(hào),分別對(duì)應(yīng)數(shù)據(jù)鏈路和狀態(tài)鏈路,每個(gè)鏈路具有自己的時(shí)鐘。數(shù)據(jù)鏈路發(fā)送和接收數(shù)據(jù),狀態(tài)鏈路傳輸相應(yīng)鏈路的狀態(tài)信息。
③數(shù)據(jù)鏈路包含DCLK、DAT[15:0]和CTL三種LVDS(低壓差分傳輸)信號(hào)。前面加“T”表示信號(hào)屬于發(fā)送模塊,加“R”表示信號(hào)屬于接收模塊。以發(fā)送模塊為例,TDCLK是雙邊沿觸發(fā)時(shí)鐘,TCTL是控制信號(hào),TDAT[15:0]承載了數(shù)據(jù)和控制信息。當(dāng)TCTL為高電平時(shí),TDAT[15:0]傳送的是數(shù)據(jù)包;當(dāng)TCTL為低電平時(shí),TDAT[15:0]傳送的是控制包。數(shù)據(jù)采用DIP~4校驗(yàn)交織碼。
④狀態(tài)鏈路包括SCLK時(shí)鐘信號(hào)和STAT[1:0]狀態(tài)信號(hào),信號(hào)類型是LVTTL或LVDS。SPI~4.2發(fā)送時(shí)序如圖2所示。如果選擇LVTTL,則SC-LK時(shí)鐘頻率是數(shù)據(jù)鏈路時(shí)鐘速率的1/4。如果選擇LVDS,則SCLK時(shí)鐘頻率和數(shù)據(jù)鏈路時(shí)鐘頻率相同。下文中均以LVDS為例進(jìn)行闡述。狀態(tài)鏈路主要用于流控。
⑤接收和發(fā)送模塊都含有一個(gè)FIFO隊(duì)列,用于緩存數(shù)據(jù),隊(duì)列長(zhǎng)度由芯片設(shè)計(jì)而定。隊(duì)列的狀態(tài)信息通過(guò)狀態(tài)鏈路周期性地發(fā)送,接收模塊和發(fā)送模塊的狀態(tài)信息是獨(dú)立的。狀態(tài)信息附加了DIP-2交織校驗(yàn)碼,以提高傳輸可靠性。
評(píng)論