新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于Virtex 6的PCI Express高速采集卡設計

        基于Virtex 6的PCI Express高速采集卡設計

        作者: 時間:2013-02-22 來源:網絡 收藏

        隨著計算機技術的發展,以及大數據量交互的需要,硬件系統對PC總線傳輸速率、數據完整性提出了越來越高的應用要求。傳統的總線技術雖然經過不斷的改進,開發出64b,66MHz的并行協議-X標準,但由于并行總線整體設計難度以及造價高昂,主流的技術已經成為限制數據傳輸系統性能發揮的瓶頸[1-2]。因此,第3代I/O技術PCI總線標準一經推出即成為取代PCI總線的下一代標準,并得到迅速的發展。

        本文引用地址:http://www.104case.com/article/189684.htm

        PCI總線利用串行的連接特點能輕松的將數據整體傳輸速度提到一個更高的頻率,達到遠遠超出以往PC總線的傳輸速度,同時保證了數據的完整性[2]。PCI連接采用點對點差分傳輸,可以被配置成最高x32的數據帶寬,其中PCIExpressGen2.0標準的x1通道傳輸能力達到單向5Gb/s.PCIExpress總線設備可以通過主機橋接器芯片進行基于主機的傳輸,也可以通過交換器進行多點傳輸,這極大的拓展了PC總線的開發靈活性。Xilinx公司的-6系列FPGA芯片內嵌了PCIExpress協議硬核,支持x1,x2,x4和x8通道傳輸,為實現PCIExpress總線解決方案單片集成提供了可能[3]。

        本文在研究PCIExpress協議標準及其接口技術的基礎上,設計了基于-6FPGA芯片的PCIExpress高速數據采集卡,實現了外部系統與PC的數據交互。

        1系統總體設計

        PCIExpress采集系統組成框圖如圖1所示。

        圖1系統整體框圖

        圖1系統整體框圖

        采集系統以FPGA作為采集卡的控制核心,外部數據經數據接口傳入FPGA,FPGA通過內部邏輯對高速數據進行必要的時序控制和相關處理后將數據存儲到片外的SDRAM進行緩存,然后采集卡在總線主控DMA控制器的控制下,通過PCIEx8通道將緩存的數據寫入計算機內存[4]。上位機由驅動軟件識別PCI Express采集卡,并設置DMA控制寄存器,通過上層應用軟件接收硬件電路發送到內存的數據,并在每次傳輸結束是處理中斷。采用DMA模式傳輸實現了在實時數據的同時,不影響上位機對數據的處理工作,不僅提高了采集系統整體的采集速度,也保證了數據質量,以及測試分析完整性。

        數據接口模塊完成外部數據的差分接收,這有利于保證高速數據的傳輸質量。-6FPGA實時接收差分信號,并在DataProcessor模塊中進行解碼然后根據一定時序通過高速FIFO緩存送入外部SDRAM存儲模塊。PCIExpressIPCore為Virtex-6FPGA內部集成協議硬核,完成數據的分層打包,DMA控制器作為PCIExpress總線傳輸的主控,實現了DMA方式傳輸。

        2采集卡硬件設計

        2.1基于IPCore的PCIExpress接口設計

        本采集卡采用Xilinx公司的Virtex-6系列FPGA芯片作為核心控制器。該款FPGA中內置了PCIExpress集成模塊和RocketIOGTP收發器,提供了符合《PCIExpress基本規范v2.0》的PCI-E解決方案,單通道最高設計速度[5]達到5Gb/s.根據PCI-E總線的分層模型,Virtex-6集成端點模塊提供事務層(TL)、數據鏈路層(DLL)、物理層(PHYMAC)以及配置空間所具有的全部功能。通過使用Xilinx公司提供的PCIExpress LogiCOREIPEndpointBlockPlus核,可實現符合PCI-E總線協議的數據傳輸[6]。EndpointBlock Plus核在內部例化了Virtex-6集成端點模塊,實現了集成端點模塊和GTP收發器之間的數據傳輸。集成硬核頂層模塊接口組成如圖2所示。

        Xilinx公司所提供的PCIExpress解決方案,遵守了PCIE分層協議標準,從完成對接收的數據進行分層打包,通過PCIE接口與計算機通信。分層傳輸過程如圖3所示。

        其中處理層主要是接受從軟件層送來的讀寫請求,并且建立一個請求包傳輸到數據鏈路層。作為事務層和物理層之間的接口,數據鏈路層通過維護鏈路活躍狀態信息、流控制初始化和流控制來確保數據的完整性、數據包的有序性和數據傳輸的可靠性。物理層位于PCIE結構的最底層,主要實現鏈路的建立、通路的分配、時鐘的編碼和并行數據與串行數據的之間的轉換。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 仙桃市| 平顶山市| 阜新市| 德州市| 寻乌县| 南和县| 宜宾市| 天津市| 吴川市| 眉山市| 贵德县| 邢台县| 林甸县| 浏阳市| 郓城县| 西林县| 年辖:市辖区| 佛教| 遵化市| 纳雍县| 东源县| 恩施市| 友谊县| 开鲁县| 五家渠市| 清涧县| 武冈市| 阳泉市| 榕江县| 卓资县| 那坡县| 康保县| 进贤县| 织金县| 务川| 西乌珠穆沁旗| 五指山市| 临高县| 曲麻莱县| 根河市| 赞皇县|