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