基于Virtex-6的PCI Express高速采集卡設計
摘要:為了提高數據采集速率,適應大數據量交互處理要求,介紹了一種應用Virtex-6芯片的PCI Express高速采集卡設計。Virtex-6內嵌PCIE協(xié)議硬核能完成完整的PCIE分層協(xié)議,實(shí)現與上位機通信。設計了DMA控制器,作為采集卡數據傳輸主控,實(shí)現基于PCI Express總線(xiàn)的DMA高速數據傳輸方案。主機軟件系統包括驅動(dòng)程序和應用軟件2部分。經(jīng)實(shí)驗測試,該采集卡能完成時(shí)外部高速數據的實(shí)時(shí)采集,性能穩定可靠。
關(guān)鍵詞:數據采集;PCI Express;FPGA;DMA
隨著(zhù)計算機技術(shù)的發(fā)展,以及大數據量交互的需要,硬件系統對PC總線(xiàn)傳輸速率、數據完整性提出了越來(lái)越高的應用要求。傳統的PCI總線(xiàn)技術(shù)雖然經(jīng)過(guò)不斷的改進(jìn),開(kāi)發(fā)出64 b,66 MHz的并行協(xié)議PCI-X標準,但由于并行總線(xiàn)整體設計難度以及造價(jià)高昂,主流的PCI技術(shù)已經(jīng)成為限制數據傳輸系統性能發(fā)揮的瓶頸。因此,第3代I/O技術(shù)PCI Express總線(xiàn)標準一經(jīng)推出即成為取代PCI總線(xiàn)的下一代標準,并得到迅速的發(fā)展。
PCI Express總線(xiàn)利用串行的連接特點(diǎn)能輕松的將數據整體傳輸速度提到一個(gè)更高的頻率,達到遠遠超出以往PC總線(xiàn)的傳輸速度,同時(shí)保證了數據的完整性。PCI Express連接采用點(diǎn)對點(diǎn)差分傳輸,可以被配置成最高x32的數據帶寬,其中:PCI Express Gen2.0標準的x1通道傳輸能力達到單向5 Gb/s。PCI Express總線(xiàn)設備可以通過(guò)主機橋接器芯片進(jìn)行基于主機的傳輸,也可以通過(guò)交換器進(jìn)行多點(diǎn)傳輸,這極大的拓展了PC總線(xiàn)的開(kāi)發(fā)靈活性。Xilinx公司的Virtex-6系列FPGA芯片內嵌了PCI Express協(xié)議硬核,支持x1,x2,x4和x8通道傳輸,為實(shí)現PCI Express總線(xiàn)解決方案單片集成提供了可能。
本文在研究PCI Express協(xié)議標準及其接口技術(shù)的基礎上,設計了基于Virtex-6 FPGA芯片的PCI Express高速數據采集卡,實(shí)現了外部系統與PC的數據交互。
1 系統總體設計
PCI Express采集系統組成框圖如圖1所示。
采集系統以FPGA作為采集卡的控制核心,外部數據經(jīng)數據接口傳入FPGA,FPGA通過(guò)內部邏輯對高速數據進(jìn)行必要的時(shí)序控制和相關(guān)處理后將數據存儲到片外的SDRAM進(jìn)行緩存,然后采集卡在總線(xiàn)主控DMA控制器的控制下,通過(guò)PCIE x8通道將緩存的數據寫(xiě)入計算機內存。上位機由驅動(dòng)軟件識別PCIExpress采集卡,并設置DMA控制寄存器,通過(guò)上層應用軟件接收硬件電路發(fā)送到內存的數據,并在每次傳輸結束是處理中斷。采用DMA模式傳輸實(shí)現了在實(shí)時(shí)數據高速采集的同時(shí),不影響上位機對數據的處理工作,不僅提高了采集系統整體的采集速度,也保證了數據質(zhì)量,以及測試分析完整性。
數據接口模塊完成外部數據的差分接收,這有利于保證高速數據的傳輸質(zhì)量。Virtex-6 FPGA實(shí)時(shí)接收差分信號,并在Data Processor模塊中進(jìn)行解碼然后根據一定時(shí)序通過(guò)高速FIFO緩存送入外部SDRAM存儲模塊。PCI Express IP Core為Virtex-6 FPGA內部集成協(xié)議硬核,完成數據的分層打包,DMA控制器作為PCI Express總線(xiàn)傳輸的主控,實(shí)現了DMA方式傳輸。
2 采集卡硬件設計
2.1 基于IP Core的PCI Express接口設計
本采集卡采用Xilinx公司的Virtex-6系列FPGA芯片作為核心控制器。該款FPGA中內置了PCI Express集成模塊和RocketIO GTP收發(fā)器,提供了符合《PCI Express基本規范v2.0》的PCI-E解決方案,單通道最高設計速度達到5 Gb/s。根據PCI-E總線(xiàn)的分層模型,Virtex-6集成端點(diǎn)模塊提供事務(wù)層(TL)、數據鏈路層(DLL)、物理層(PHYMAC)以及配置空間所具有的全部功能。通過(guò)使用Xilinx公司提供的PCI Express LogiCORE IP Endpoint Block Plus核,可實(shí)現符合PCI-E總線(xiàn)協(xié)議的數據傳輸。Endpoint Block Plus核在內部例化了Virtex-6集成端點(diǎn)模塊,實(shí)現了集成端點(diǎn)模塊和GTP收發(fā)器之間的數據傳輸。集成硬核頂層模塊接口組成如圖2所示。
評論