摘要:本文介紹了基于Xilinx Virtex-6 FPGA的高速串行數據傳輸系統的設計與實現,系統包含AXI DMA和GTX串行收發器,系統增加了流量控制機制來保證高速數據傳輸的可靠性。最后進行了仿真測試,測試結果顯示系統可以高速可靠地傳輸數據。
關鍵詞:串行;流量控制;數據傳輸;FPGA;DMA
DOI: 10.3969/j.issn.1005-5517.2012.4.006
引言
隨著數字多媒體技術的發展,在現代電子系統中各模塊之間經常需要高速數據傳輸。傳統的數據傳輸系統采用并行接口,并行數據傳輸技術向來都是提高數據傳輸速率的重要手段。隨著數據傳輸速率的提高,并行數據傳輸的進一步發展遇到了瓶頸,面臨很多問題,如接口信號不同步,信號串擾,引腳過多增加PCB板布線難度及設計制作成本[1]。因此,高速串行接口已經逐漸取代并行接口。與并行傳輸相比,串行傳輸具有獨特優勢,可以提供更大的帶寬更遠的傳輸距離以及更低的成本[2]。
高速數據傳輸系統中各模塊規模以及復雜度逐漸加大,數據傳輸的可靠性逐漸成為影響系統性能的關鍵因素之一。數據發送模塊和數據接收模塊處理數據的速度很難達到一致,因此經常會出現接收模塊等待發射模塊發送數據,或者發送模塊等待接收模塊接受數據的情況[3]。為了使高速數據傳輸系統可靠工作不丟失數據,系統需要加入流量控制機制,來協調發送模塊和接受模塊的工作。
本文的FPGA綜合和實現工具為Xilinx ISE 13.2,硬件平臺為ML605開發板,仿真環境為ISE自帶的iSim仿真工具。圖4為系統流量控制有限狀態機的工作波形,可以很明顯看到有限狀態機在FIFO達到閾值上限和閾值下限時發生的狀態跳變。
經過仿真測試得知,當DMA一次傳輸148比特數據用時8.3ns,傳輸速率為142.7Mbps;一次傳輸1480