基于FPGA的具有流量控制機制的高速串行數據傳輸系統設計
摘要:本文介紹了基于Xilinx Virtex-6 FPGA的高速串行數據傳輸系統的設計與實(shí)現,系統包含AXI DMA和GTX串行收發(fā)器,系統增加了流量控制機制來(lái)保證高速數據傳輸的可靠性。最后進(jìn)行了仿真測試,測試結果顯示系統可以高速可靠地傳輸數據。
本文引用地址:http://dyxdggzs.com/article/131654.htm引言
隨著(zhù)數字多媒體技術(shù)的發(fā)展,在現代電子系統中各模塊之間經(jīng)常需要高速數據傳輸。傳統的數據傳輸系統采用并行接口,并行數據傳輸技術(shù)向來(lái)都是提高數據傳輸速率的重要手段。隨著(zhù)數據傳輸速率的提高,并行數據傳輸的進(jìn)一步發(fā)展遇到了瓶頸,面臨很多問(wèn)題,如接口信號不同步,信號串擾,引腳過(guò)多增加PCB板布線(xiàn)難度及設計制作成本。因此,高速串行接口已經(jīng)逐漸取代并行接口。與并行傳輸相比,串行傳輸具有獨特優(yōu)勢,可以提供更大的帶寬更遠的傳輸距離以及更低的成本。
高速數據傳輸系統中各模塊規模以及復雜度逐漸加大,數據傳輸的可靠性逐漸成為影響系統性能的關(guān)鍵因素之一。數據發(fā)送模塊和數據接收模塊處理數據的速度很難達到一致,因此經(jīng)常會(huì )出現接收模塊等待發(fā)射模塊發(fā)送數據,或者發(fā)送模塊等待接收模塊接受數據的情況。為了使高速數據傳輸系統可靠工作不丟失數據,系統需要加入流量控制機制,來(lái)協(xié)調發(fā)送模塊和接受模塊的工作。
系統結構
本系統基于Xilinx公司的Virtex-6系列的一款FPGA——XC6VLX240T,用于進(jìn)行高速串行數據傳輸,其結構如圖1所示。系統主要包括微控制器MicroBlaze模塊,直接存儲器存取(DMA)模塊以及基于A(yíng)urora協(xié)議以及GTX收發(fā)機的Aurora模塊,另外還有內存模塊(DDR3),兩個(gè)作為緩沖器的FIFO模塊以及一個(gè)用于流量控制的有限狀態(tài)機(FSM)模塊。系統的工作流程為:微控制器MicroBlaze通過(guò)AXI-Lite總線(xiàn)向DMA寄存器寫(xiě)數據,配置DMA讀操作的數據源地址,讀數據長(cháng)度,DMA寫(xiě)操作的目標地址以及寫(xiě)數據長(cháng)度,然后啟動(dòng)DMA。DMA開(kāi)始讀取DDR3源地址空間中的數據通過(guò)FIFO1傳給Aurora模塊,Aurora模塊中的GTX收發(fā)器將數據通過(guò)同軸電纜以串行的方式從發(fā)射端發(fā)送到接收端。然后接收端將數據傳輸到FIFO2中,然后通過(guò)DMA將數據寫(xiě)入到DDR3內存規定的目標地址空間中。本系統中采用回路(loopback)的模式來(lái)方便地模擬串行數據傳輸系統?! ?/p>

以下分別對其主要模塊進(jìn)行介紹。
微控制器Microblaze模塊
MicroBlaze是Xilinx公司推出的一款可以嵌入在FPGA中處理器軟核,采用RISC架構和哈佛結構的32位指令和數據總線(xiàn),具有豐富的適用于嵌入式應用的指令集,支持CoreConnect總線(xiàn)的標準外設集合,最新的MicroBlaze支持AXI總線(xiàn)。MicroBlaze運行速度快,占用資源少,具有很強的可配置性,在很多領(lǐng)域得到了廣泛應用。
評論