基于Wishbone和端點IP的PCIE接口設(shè)計
DMA寫操作實現(xiàn)的主要方法是主機將TLP包頭中的各個字段正確填充,按照32位并組裝成TLP包頭,通過主機PCI Express接口傳輸?shù)郊啥它c硬核。硬核收到數(shù)據(jù)后,緩存到Rx_ram中,在解碼邏輯控制下,根據(jù)包頭類型(10/11b)及格式字段(00000b)發(fā)起Wishbone寫操作,將TLP包的有效載荷寫入存儲器中。
在進(jìn)行PCI Express的DMA讀操作時,數(shù)據(jù)通過wishbone總線讀入,在編碼邏輯控制下,數(shù)據(jù)按照TLP包格式寫入Tx_ram中,將數(shù)據(jù)打包成一個3DW完成包,等待端點模塊發(fā)送。
2.3 功能仿真
本設(shè)計在XUPV5 LX110T開發(fā)板上進(jìn)行了功能驗證試驗。首先利用Xilinx公司的CORE Generator工具生成PCI Express端點IP核,其主要參數(shù)是鏈路數(shù)為X1,基地址0使能,地址類型為32位,訪問類型為Memory類型,用戶時鐘輸入為62.5 MHz。編程設(shè)計完成后,通過JTAG接口下載到FPGA芯片中,用Chipscope進(jìn)行測試,波形圖如圖9~圖10所示。本文引用地址:http://www.ex-cimer.com/article/190176.htm
通過數(shù)據(jù)傳輸試驗測試,Wishhone轉(zhuǎn)PCI Express接口的傳輸速率能達(dá)到80 MB/s以上,系統(tǒng)工作穩(wěn)定。目前,Wishbone實現(xiàn)了32 b/16 b/8 b的單個存儲器的讀和寫和DMA讀寫。如能夠編程實現(xiàn)Wishbone大字節(jié)塊的突發(fā)傳輸,傳輸速率將大大提高,這也是下一步開發(fā)的重點。
3 結(jié)語
測試試驗結(jié)果證明,采用Wishbone和端點IP實現(xiàn)PCI Express總線接口,具有較高的通信速率,能滿足許多應(yīng)用的一般通信要求,特別是開發(fā)過程簡化且極大地縮短了開發(fā)時間。這種設(shè)計模式能夠更加專注于應(yīng)用功能的實現(xiàn)而不必在一些公共模塊(如PCIExpress)上花費更多的時間和成本。另外,本文采用FPGA芯片內(nèi)嵌PCI Express End point Block硬核來進(jìn)行PCI Express的設(shè)計,實現(xiàn)方式也為相似產(chǎn)品開發(fā)提供了有益參考。
評論