,,,
(南瑞集團有限公司(國網電力科學研究院有限公司),南京 210003)
作為第三代I/O總線,PCI express(簡稱PCIe)總線采用了高速串行傳輸方式,不但簡化了接口部分的硬件連線,而且大幅度提高了傳輸速率。在單通道模式下,PCIe Gen2的單向傳輸速率為5 Gbps,PCIe Gen3的單向傳輸速率達到了8 Gbps;在多通道模式下,PCIe的單向傳輸速率還可以成倍增加,最高可達128 Gbps。但是在實際使用中,受讀寫順序、器件速度和I/O方式等因素影響,PCIe總線的通道帶寬難以被充分地利用。
本文在Xilinx PCIe硬核的基礎上設計了一個Scatter-Gather DMA(簡稱SG-DMA)控制器,使得在傳輸過程中盡量少地調用低速I/O讀寫操作;在DMA控制器的前后分別設計了環形隊列和FIFO,使得主機讀寫PCIe外設數據包呈異步方式,數據傳輸和數據處理也呈異步模式。如同多級流水線一樣,不同數據包的接收、處理、發送可以在同一個時刻進行,這樣可以最大限度地利用PCIe通道的傳輸帶寬,實現基于PCIe總線的高速異步傳輸。
PCIe總線是2001年由Intel提出的,是一種基于數據包的串行總線。由于其帶寬高、延時低、應用靈活等特點,PCIe總線可以將整個I/O系統統一起來,簡化設計,提高可擴展性,目前已經成為計算機行業流行的總線結構。
PCIe總線自下而上分為三層,分別是物理層、數據鏈路層和事務層。
物理層采用了串行差分信號,點對點傳輸,收發獨立,相對于并行共享總線,PCIe總線非常便利和高效,這也是CMOS工藝不斷發展的結果。為了嵌入時鐘和保持直流平衡,PCIe Gen1和PCIe Gen2還采用了8b/10b編碼,單通道實際數據速率分別為2 Gbps和4 Gbps,PCIe Gen3沒有使用8b/10b編碼,單通道實際數據速率為8 Gbps?!?br>