Xilinx PCI-Express核總線接口設計與實現(xiàn)
摘 要: 介紹了基于PCI-Express總線的DMA硬件設計,并運用硬件描述語言Verilog HDL對其實現(xiàn)。使用Xilinx公司Virtex-5系列FPGA對該設計進行了驗證。結(jié)果表明,該設計能滿足實際應用對可讀性、可靠性及高效性的要求。
關鍵詞: PCI-Express事務層; DMA; Xilinx IP 核; Verilog HDL
隨著計算機技術的飛速發(fā)展,PCI總線已經(jīng)遠遠不能滿足當前處理器和I/O設備對帶寬的更高需求。傳統(tǒng)PCI和PCI-X[1]總線都是多點并行互連總線(即多臺設備共享一條總線),并行總線之間存在相互干擾、時鐘抖動,這些因素制約了其帶寬。PCI-SIG(Peripheral Component Interconnect Special Interest Group)推出的第三代I/O系統(tǒng)PCIE(PCI-Express)[2]能夠?qū)崿F(xiàn)兩臺設備之間點對點的串行通信,使用交換器還可實現(xiàn)多臺PCI-Express設備的互連,而且具有管腳少、帶寬高、外圍傳播能力強、兼容性能好等特點。目前,PCI-Express 1.0a發(fā)送和接收的數(shù)據(jù)速率可達2.5 Gb/s。
類似于OSI(Open System Interconnection)網(wǎng)絡模型,PCI-Epxress引入了分層概念,層與層之間透明,各自完成獨立功能的同時又緊密聯(lián)系。PCIE總共分為三層:物理層、數(shù)據(jù)鏈路層和事務層。其層次結(jié)構[3]如圖1所示。
物理層分為邏輯物理層和電氣物理層。邏輯物理層完成對數(shù)據(jù)包的合成分解、8 b/10 b編碼和10 b/9 b解碼、并串轉(zhuǎn)換和串并轉(zhuǎn)換;電氣物理層負責對每路串行數(shù)據(jù)差分驅(qū)動的傳輸與接收及阻抗匹配;數(shù)據(jù)鏈路層是其中間層,主要負責鏈路管理、與數(shù)據(jù)完整性相關的功能,包括錯誤檢測和錯誤改正以及產(chǎn)生和處理數(shù)據(jù)鏈路層包。事務層是PCI Express架構的上層,其主要功能是接收、緩沖和分發(fā)事務包TLP(Transaction Layer Packet)。TLP通過





