新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA與DSP的高速通信接口設(shè)計與實現(xiàn)

基于FPGA與DSP的高速通信接口設(shè)計與實現(xiàn)

作者: 時間:2012-06-20 來源:網(wǎng)絡(luò) 收藏

在雷達信號處理、數(shù)字圖像處理等領(lǐng)域中,信號處理的實時性至關(guān)重要。由于芯片在大數(shù)據(jù)量的底層算法處理上的優(yōu)勢及芯片在復(fù)雜算法處理上的優(yōu)勢,+的實時信號處理系統(tǒng)的應(yīng)用越來越廣泛。ADI公司的TigerSHARC系列芯片浮點處理性能優(yōu)越,故基于這類。DSP的DSP+處理系統(tǒng)正廣泛應(yīng)用于復(fù)雜的信號處理領(lǐng)域。同時在這類實時處理系統(tǒng)中,F(xiàn)PGA與DSP芯片之間數(shù)據(jù)的實時通信至關(guān)重要。 TigerSHARC系列DSP芯片與外部進行數(shù)據(jù)通信主要有兩種方式:總線方式和鏈路口方式。鏈路口方式更適合于FPGA與DSP之間的實時通信。隨著實時信號處理運算量的日益增加,多DSP并行處理的方式被普遍采用,它們共享總線以互相映射存儲空間,如果再與FPGA通過總線連接,勢必導(dǎo)致FPGA與DSP的總線競爭。同時采用總線方式與FPGA通信,DSP的地址、數(shù)據(jù)線引腳很多,占用FPGA的I/O引腳資源太多。而采用鏈路口通信不但能有效緩解DSP總線上的壓力,而且傳輸速度快,與FPGA之間的連線相對也少得多,故鏈路口方式更適合于FPGA與DSP之間進行實時數(shù)據(jù)通信。

本文引用地址:http://butianyuan.cn/article/257423.htm

參考文獻給出TS201與TS101的性能比較,但沒有針對兩者的鏈路口進行詳細介紹,本文對兩者的鏈路口進行了細致的分析和比較。文獻所設(shè)計的采集系統(tǒng)中,DSP與FGA的通信僅限于FPGA發(fā)、TS101收的單工通信;文獻給出了FPGA內(nèi)部沒計TS101鏈路口的框圖,但只給出了簡單的介紹,無法給設(shè)計者以參考。本文采用Altera公司Cyclone系列芯片EP1C12實現(xiàn)了與TS101/TS201兩種芯片的鏈路口的雙工通信,并給出了具體的設(shè)計實現(xiàn)方法。其中TS101的設(shè)計已經(jīng)成功應(yīng)用于某信號處理機中。

1 TS101和TS201的鏈路口分析與比較

TS101和TS210都是高性能的浮點處理芯片,目前兩者都廣泛應(yīng)用于復(fù)雜的信號處理領(lǐng)域。TS201是繼TS101之后推出的新型芯片,核時鐘最高可達600MHz,其各類性能也相對優(yōu)于TS101,而且TS201的鏈路口采用了低壓差分信號LVDS技術(shù),功耗更低、抗噪聲性能更好。表1列出了兩種芯片鏈路口性能的詳細比較,其中TS101核時鐘工作在250MHz,TS201核時鐘工作在500MHz。


限于篇幅,TS101、TS201的鏈路口結(jié)構(gòu)請參閱參考文獻。由于TS101收發(fā)端共用一個通道,所以只能實現(xiàn)半雙工通信。而TS201將收發(fā)端做成兩個獨立通道,可實現(xiàn)全雙工通信,理論上數(shù)據(jù)的傳輸速率可以提高一倍。雖然TS201的鏈路口收發(fā)通道獨立,但實際上二者的收發(fā)機制大體相同,都是靠收發(fā)緩存和移位寄存器收發(fā)數(shù)據(jù)。然而FPGA內(nèi)部的鏈路口設(shè)計不必拘泥于此,只要符合鏈路口通信協(xié)議并達成通信即可。


2 FPGA與DSP的鏈路口通信

2.1 鏈路口通信協(xié)議分析

TS101的鏈路口共有11根引腳,通過8根數(shù)據(jù)線(LxDAT[7..0],這里x可以是0、1、2或3,代表TS101或TS201的0號~3號鏈路口中的一個,以下同)進行數(shù)據(jù)傳輸,并采用3根控制線(LxCLKOUT、LxCLKIN、LxDIR)來控制數(shù)據(jù)傳輸時鐘、通信的握于和數(shù)據(jù)傳輸方向。其中LxDIR為通知鏈路口當(dāng)前工作狀態(tài)是接收或發(fā)送的輸出引腳,可懸空不用。TS201的鏈路口共24根引腳,接收和發(fā)送各12根引腳,通過LVDS形式的數(shù)據(jù)線(LxDAT_P/N[3..0])和時鐘線(LxCLK_P/N)進行數(shù)據(jù)傳輸,并采用LxACK和LxBCMP#(‘#’代表信號低有效)來通知接收準(zhǔn)備好和數(shù)據(jù)塊傳輸結(jié)束。

采用FPGA與DSP通過鏈路口通信的關(guān)鍵是令雙方通信的握手信號達成協(xié)議,促使數(shù)據(jù)傳輸?shù)倪M行。實際上,如果考慮TS201的LVDS信號形式已經(jīng)被轉(zhuǎn)換完畢,則TS101和TS201鏈路口傳輸?shù)臄?shù)據(jù)形式是一樣的,都是時鐘雙沿觸發(fā)的DDR數(shù)據(jù),并且每次傳輸?shù)臄?shù)據(jù)個數(shù)都是4個長字(即128bit)的整數(shù)倍。鑒于以上兩種芯片鏈路口數(shù)據(jù)的共同點,所以采用FPGA與兩類芯片通信時,接收和發(fā)送的數(shù)據(jù)緩存部分的設(shè)計應(yīng)該是很相近的,只是通信握手信號部分的設(shè)計應(yīng)當(dāng)分別加以考慮。下面分別給予介紹。

2.2 基于FPGA的TS101鏈路口設(shè)計

圖1給出了FPCA與TS101進行半雙工鏈路口通信的設(shè)計(對LxCLKOUT、LxCLKIN均以FPCA的角度來敘述),該接口由接收、控制和發(fā)送三部分組成。本設(shè)計FPGA時鐘為40MHz,TS101核時鐘上作在250MHz,鏈路口時鐘設(shè)定為DSP核時鐘的8分頻,F(xiàn)PGA與DSP的實際數(shù)據(jù)傳輸率為62.5MBps。


(1) 接收部分:由編碼和緩存兩部分組成。由于鏈路口的數(shù)錯是DDR形式的,不方便數(shù)據(jù)的緩存,本文采用QuartusII Megafunctions中的altddio模塊將上升沿數(shù)據(jù)和下降沿數(shù)據(jù)分開。注意這個模塊的下降沿數(shù)據(jù)輸出會滯后上升沿數(shù)據(jù)1個時鐘周期,輸出時應(yīng)該用鏈路口時鐘信號(LxCLKIN)通過D觸發(fā)器來將數(shù)據(jù)對齊。該模塊的inclock一定要用鏈路口時鐘信號以保證數(shù)據(jù)的正確讀取,如圖2所示。又由于DSP內(nèi)部數(shù)據(jù)是32位的長字,所以寫入接收緩存前應(yīng)該用一組D觸發(fā)器將數(shù)據(jù)進行32bit對齊,這里注意DSP鏈路口先傳輸32位數(shù)據(jù)中的低8位。


上一頁 1 2 下一頁

關(guān)鍵詞: DSP FPGA 高速通信接口

評論


相關(guān)推薦

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

關(guān)閉