基于多DSP系統(tǒng)互連方案分析
通過專用互連芯片(Crossbar)實(shí)現(xiàn)多DSP互連方案
可以設(shè)計(jì)一個(gè)專用互連芯片(Crossbar)來實(shí)現(xiàn)多個(gè)DSP、CPU、I/O器件之間的高速互連。圖4所示的互連方案提供了一個(gè)按照包路由協(xié)議進(jìn)行尋址交換的機(jī)制。專用互連芯片(Crossbar)提供多個(gè)異步讀寫FIFO接口,完成到外部器件的連接和數(shù)據(jù)包的路由轉(zhuǎn)發(fā)功能。DSP通過 EMIF總線訪問對(duì)應(yīng)端口的BiFIFO,數(shù)據(jù)由Crossbar傳輸?shù)街付―SP,Crossbar同時(shí)也給主機(jī)和外部I/O模塊一個(gè)通路。主機(jī)通過 HPI訪問和控制DSP,也可以通過Crossbar訪問DSP。BiFIFO為兩個(gè)芯片之間數(shù)據(jù)的突發(fā)傳輸提供了一個(gè)雙向緩沖區(qū)。
圖4中Crossbar提供6個(gè)高速互連通道,每個(gè)通道的數(shù)據(jù)總線寬度為32bit/16bit/8bit;每個(gè)通道的數(shù)據(jù)吞吐帶寬可達(dá) 200MBytes/s,每個(gè)通道都提供與異步FIFO的無縫接口;Crossbar可以同時(shí)提供3對(duì)端口到端口的數(shù)據(jù)傳輸通道,也可以提供一個(gè)端口到多個(gè)端口的數(shù)據(jù)分發(fā);任何具有FIFO接口的CPU、DSP及高速并行I/O都可以通過Crossbar及雙向FIFO實(shí)現(xiàn)互連。
在本方案中需自定義互連路由協(xié)議,互連和路由模塊(CrossbarRouter)可以由FPGA實(shí)現(xiàn),每個(gè)端口上的BiFIFO可以根據(jù)實(shí)際需要選用FPGA內(nèi)部邏輯實(shí)現(xiàn)或用專用外部器件實(shí)現(xiàn)。多個(gè)Crossbar進(jìn)行互連可實(shí)現(xiàn)大規(guī)模的DSP陣列。此方案的優(yōu)點(diǎn)是能夠?qū)崿F(xiàn)多個(gè) DSP、CPU、外部并行I/O等器件之間的數(shù)據(jù)高速傳輸,且擴(kuò)展容易;缺點(diǎn)是FPGA邏輯十分復(fù)雜,實(shí)現(xiàn)難度較大。
下面是在3G WCDMA基站中使用Crossbar的一個(gè)例子。在這個(gè)例子中,把上下行鏈路碼片速率級(jí)處理和符號(hào)速率級(jí)處理、編碼和譯碼處理放在一塊單板上。碼片速率級(jí)處理包括上行解擴(kuò)和下行擴(kuò)頻,由FPGA/ASIC實(shí)現(xiàn);符號(hào)速率級(jí)處理包括上行鏈路信道估值、信道譯碼協(xié)議、下行鏈路信道編碼協(xié)議等,由DSP實(shí)現(xiàn)。
系統(tǒng)構(gòu)成如圖5所示。對(duì)下行鏈路來說,從網(wǎng)絡(luò)過來的數(shù)據(jù)通過UTOPIA接口進(jìn)入Crossbar,然后由Crossbar中轉(zhuǎn)到編碼DSP, 在DSP內(nèi)完成信道編碼協(xié)議處理,接著通過Crossbar把編碼后的數(shù)據(jù)送入FPGA/ASIC完成擴(kuò)頻,最后輸出信號(hào)經(jīng)過上變頻并通過天線發(fā)送出去。對(duì)上行鏈路來說,經(jīng)過射頻接收和下變頻后的數(shù)據(jù)首先被送入FPGA/ASIC進(jìn)行碼片速率級(jí)處理,如匹配濾波、解擴(kuò)/解擾等,同時(shí)一片DSP輔助進(jìn)行多徑搜索和信道估值。在此過程中這片DSP需要和FPGA/ASIC通過Crossbar進(jìn)行數(shù)據(jù)的相互傳遞,經(jīng)過信道估值和解擴(kuò)處理的數(shù)據(jù)再通過 Crossbar送入另外一片DSP進(jìn)行信道譯碼協(xié)議處理,處理結(jié)果通過Crossbar送入U(xiǎn)TOPIA接口,接著送到基站控制器(RNC)進(jìn)行處理。
4 利用TMS320C5X/C6X的McBSP組成多DSP互連系統(tǒng)
McBSP稱為多通道緩沖串口,它有一個(gè)發(fā)送端口和一個(gè)接收端口。多個(gè)DSP可通過McBSP連接到一個(gè)串行時(shí)隙交換芯片,采用時(shí)隙交換的方式進(jìn)行數(shù)據(jù)交換。數(shù)據(jù)的收發(fā)以幀為單位進(jìn)行。每個(gè)發(fā)送幀分成n個(gè)發(fā)送時(shí)隙,不同的發(fā)送時(shí)隙對(duì)應(yīng)不同的接收DSP,例如SP0的發(fā)送端口在時(shí)隙1給 DSP1發(fā)送數(shù)據(jù),在時(shí)隙2給DSP2發(fā)送數(shù)據(jù),在時(shí)隙n給DSPn發(fā)送數(shù)據(jù);每個(gè)接收幀分成n個(gè)接收時(shí)隙,不同的接收時(shí)隙對(duì)應(yīng)不同的發(fā)送DSP。例如SP1的接收端口在時(shí)隙0接收來自DSP0的數(shù)據(jù),在時(shí)隙2接收來自DSP2的數(shù)據(jù),在時(shí)隙n接收來自DSPn的數(shù)據(jù)。這種方案的優(yōu)點(diǎn)是接口簡(jiǎn)單, 可以實(shí)現(xiàn)多個(gè)DSP的全互連,缺點(diǎn)是數(shù)據(jù)以串行方式傳輸,速率較低。
不同的應(yīng)用需要的處理能力不同,對(duì)各個(gè)DSP之間、DSP與主處理器之間的數(shù)據(jù)流量和時(shí)延要求也不同,因此需要的DSP數(shù)目、互連方式也各異。利用DSP三個(gè)不同接口的互連方式,HPI有利于外部主處理器對(duì)各個(gè)DSP進(jìn)行控制,適合于主處理器和多個(gè)DSP構(gòu)成主從方式的互連系統(tǒng);EMIF數(shù)據(jù)傳輸?shù)乃俾矢?適合于構(gòu)成DSP高速全互連陣列;McBSP接口簡(jiǎn)單,適用于對(duì)傳輸速率要求不高的低速全互連系統(tǒng);也可以同時(shí)利用兩種接口構(gòu)成多DSP互連系統(tǒng),充分利用不同接口的優(yōu)點(diǎn),例如可以采用HPI作為主處理器控制多個(gè)從DSP的控制接口,同時(shí)采用EMIF連接到Crossbar作為多個(gè)DSP、主處理器、外部并行I/O之間高速互連的數(shù)據(jù)接口。
以上所述的多DSP系統(tǒng)互連方案各有優(yōu)缺點(diǎn),可以根據(jù)實(shí)際需要進(jìn)行選擇。
評(píng)論