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