DSP和FPGA的高速通信接口的實(shí)現(xiàn)[4]

互聯(lián)網(wǎng)技術(shù) 責(zé)任編輯:nanlihui 2012-03-19

摘要:2.3基于FPGA的TS201鏈路口設(shè)計(jì)由于TS201的握手信號(hào)較多,所以相對(duì)TS101的鏈路口設(shè)計(jì)容易些。本設(shè)計(jì)FPGA時(shí)鐘50MHz,TS101核時(shí)鐘500MHz,鏈路口時(shí)鐘為DSP核時(shí)鐘的4分頻,采用4bit方式,單向?qū)嶋H數(shù)據(jù)傳輸速率為125MBps.TS201的鏈路口數(shù)據(jù)和時(shí)鐘采LVDS信號(hào),具有速率高、功耗低、噪聲小的優(yōu)點(diǎn)。Cyclone系列芯片不僅支持LVDS信號(hào),還集成了


2.3 基于FPGA的TS201鏈路口設(shè)計(jì)

由于TS201的握手信號(hào)較多,所以相對(duì)TS101的鏈路口設(shè)計(jì)容易些。本設(shè)計(jì)FPGA時(shí)鐘50MHz,TS101核時(shí)鐘500MHz,鏈路口時(shí)鐘為DSP核時(shí)鐘的4分頻,采用4bit方式,單向?qū)嶋H數(shù)據(jù)傳輸速率為125MBps.

TS201的鏈路口數(shù)據(jù)和時(shí)鐘采LVDS信號(hào),具有速率高、功耗低、噪聲小的優(yōu)點(diǎn)。Cyclone系列芯片不僅支持LVDS信號(hào),還集成了LVDS轉(zhuǎn)換模塊,這給設(shè)計(jì)提供了很大方便。應(yīng)該注意的是,在硬件設(shè)計(jì)時(shí)LVDS信號(hào)兩極的PCB走線要匹配,并且注意匹配電阻網(wǎng)絡(luò)的接入。具體請(qǐng)參考文獻(xiàn)[6]-9 Implementing LVDS in Cyclone De-vices.

由于TS201的收發(fā)做成了兩個(gè)單獨(dú)的通道,F(xiàn)PGA的設(shè)計(jì)也應(yīng)該相應(yīng)地設(shè)計(jì)為兩個(gè)通道,真正做到全雙工通信,收發(fā)互不影響。接收與發(fā)送部分與TS101的設(shè)計(jì)基本相同,發(fā)送部分也采用外部中斷方式通知DSP接收鏈路口數(shù)據(jù)。TS201的通信握手信號(hào)有ACK和BCMP#信號(hào)。其中ACK信號(hào)用來(lái)通知接收準(zhǔn)備好,在實(shí)時(shí)信號(hào)處理中,一般不允許數(shù)據(jù)傳輸?shù)牡却蕦⑦@個(gè)信號(hào)置為準(zhǔn)備好。BCMP#信號(hào)用于通知數(shù)據(jù)塊傳輸?shù)慕Y(jié)束,當(dāng)能確定DMA傳輸數(shù)據(jù)個(gè)數(shù)時(shí),可以將此引腳懸空。

L1_IRQ是FPGA發(fā)給DSP的外部中斷,用來(lái)通知DSP收數(shù)據(jù);L1_ACKI是DSP的接收準(zhǔn)備好信號(hào);R_BUF_EN是讀發(fā)送緩存使能信號(hào) ;鏈路口時(shí)鐘L1_CLKOUT是以讀緩存時(shí)鐘R_CLK下降沿的二次分頻,對(duì)應(yīng)從緩存中讀出的4bit鏈路口數(shù)據(jù)L1_DA-To.注意這里讀緩存及時(shí)鐘分頻時(shí)會(huì)有納秒級(jí)的延遲。

3 DSP的相應(yīng)設(shè)置

TS101和TS201的鏈路口都配置了控制寄存器(LCTLX)和狀態(tài)奇存器(LSTATx)兩組寄存器。LCTLx用來(lái)控制鏈路口的傳輸,LSTATx用來(lái)通知鏈路口的工作狀態(tài)。TS101鏈路口時(shí)鐘頻率可以是核時(shí)鐘的8、4、3 或2分頻,通過(guò)設(shè)置LCTLx中的SPD位米完成,本文設(shè)計(jì)將SPD位置000,即為核時(shí)鐘8分頻。由于TS201的接收發(fā)送通道獨(dú)立,所以其控制寄存器分為接收控制寄存器(LRCTLx)和發(fā)送控制寄存器(LTCTLx)。 TS101鏈路口發(fā)送時(shí)鐘頻率可以與核時(shí)鐘相同或?yàn)槠?、2、1.5分頻,通過(guò)設(shè)置LTCTLx中SPD位來(lái)完成。本文設(shè)計(jì)將SPD位置100,即為核時(shí)鐘4分頻,并將LRCTLx/LTCTLx中(接TDSIZE位置1,設(shè)置成4bit傳輸 方式。如果BCMP#信號(hào)懸空,注意一定要將LRCTLx巾RBCMPE位置0.

有兩種方法啟動(dòng)DSP的鏈路口DMA傳輸:利用鏈路中斷和利用DSP的四個(gè)外部中斷(IRQ0~IRQ3)。兩種中斷方式都需要在中斷服務(wù)程序中對(duì)DMA的TCB寄存器進(jìn)行配置來(lái)啟動(dòng)鏈路口的接收DMA通道。鑒于外部中斷的優(yōu)先級(jí)高于鏈路口中斷,可以避免數(shù)據(jù)丟失,本文設(shè)計(jì)的通信方式均以外部中斷方式通知DSP接收數(shù)據(jù)。在DMA的TCB寄存器配置過(guò)程中,為了保證程序不被其他中斷打斷,可以在中斷服務(wù)程序開(kāi)始時(shí)就把所有其他中斷屏蔽掉,存中斷服務(wù)程序返回之前再把屏蔽掉的中斷位還原。

本文對(duì)TigerSHARC系列的兩種典型DSP芯片的鏈路口進(jìn)行了分析和比較,并給出了FPGA與這兩種DSP芯片進(jìn)行鏈路口通倍的具體方法。在FPGA內(nèi)部實(shí)現(xiàn)了DSP鏈路口的設(shè)計(jì),同時(shí)給出了DSP進(jìn)行鏈路口通信的具體設(shè)置方法。

通信設(shè)計(jì)沒(méi)有對(duì)所傳輸?shù)臄?shù)據(jù)進(jìn)行校驗(yàn)。本文給出的基于FPGA路口設(shè)計(jì)具有很強(qiáng)的通用性,可以應(yīng)用于基于TS101/TS201的多種應(yīng)用系統(tǒng)中,提高系統(tǒng)內(nèi)部的通信能力;也可用于板間DSP的數(shù)據(jù)傳輸,提高系統(tǒng)外部的通信能力。

[1]  [2]  [3]  [4]  

更多資料
更多課程
更多真題
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請(qǐng)考生以權(quán)威部門公布的內(nèi)容為準(zhǔn)!

通信工程師備考資料免費(fèi)領(lǐng)取

去領(lǐng)取

距離2025 通信工程師考試

還有
  • 3
  • 1
  • 2
專注在線職業(yè)教育23年

項(xiàng)目管理

信息系統(tǒng)項(xiàng)目管理師

廠商認(rèn)證

信息系統(tǒng)項(xiàng)目管理師

信息系統(tǒng)項(xiàng)目管理師

學(xué)歷提升

!
咨詢?cè)诰€老師!