新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > FPGA+DSP的高速通信接口設計與實現

        FPGA+DSP的高速通信接口設計與實現

        作者: 時間:2013-12-04 來源:網絡 收藏
        it為例進行設計。圖4給出的信號都是經LVDS轉換后的信號。由于TS201的收發做成了兩個單獨的通道,的設計也應該相應地設計為兩個通道,真正做到全雙工通信,收發互不影響。接收與發送部分與TS101的設計基本相同,發送部分也采用外部中斷方式通知接收鏈路口數據。TS201的通信握手信號有ACK和BCMP#信號。其中ACK信號用來通知接收準備好,在實時信號處理中,一般不允許數據傳輸的等待,故將這個信號置為準備好。BCMP#信號用于通知數據塊傳輸的結束,當能確定DMA傳輸數據個數時,可以將此引腳懸空。

          TS201鏈路口的收發機制非常相似,本文僅給出發送數據時序圖,如圖5所示。L1_IRQ是發給的外部中斷,用來通知收數據;L1_ACKI是DSP的接收準備好信號;R_BUF_EN是讀發送緩存使能信號;鏈路口時鐘L1_CLKOUT是以讀緩存時鐘R_CLK下降沿的二次分頻,對應從緩存中讀出的4bit鏈路口數據L1_DA-To。注意這里讀緩存及時鐘分頻時會有納秒級的延遲。

          FPGA+DSP的高速通信接口設計與實現

          3 DSP的相應設置

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

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

          本文對TigerSHARC系列的兩種典型DSP芯片的鏈路口進行了分析和比較,并給出了與這兩種DSP芯片進行鏈路口通倍的具體方法。在FPGA內部實現了DSP鏈路口的設計,同時給出了DSP進行鏈路口通信的具體設置方法。由于實時處理中數據的重發會嚴重影響處理的實時性,故本文的鏈路口通信設計沒有對所傳輸的數據進行校驗。本文給出的基于FPGA路口設計具有很強的通用性,可以應用于基于TS101/TS201的多種應用系統中,提高系統內部的通信能力,也可用于板間DSP的數據傳輸,提高系統外部的通信能力。

        fpga相關文章:fpga是什么


        通信相關文章:通信原理



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 重庆市| 灯塔市| 金湖县| 夹江县| 罗甸县| 漳州市| 林西县| 独山县| 河间市| 西林县| 昆明市| 前郭尔| 苏州市| 永春县| 中山市| 嘉禾县| 文山县| 台湾省| 丹凤县| 车致| 若羌县| 融水| 彝良县| 英德市| 松江区| 凤山市| 来凤县| 应用必备| 涪陵区| 乌兰浩特市| 高阳县| 新邵县| 赤峰市| 禹城市| 延长县| 五峰| 平泉县| 金寨县| 郯城县| 南阳市| 大埔县|