基于Wishbone和端點(diǎn)IP的PCIE接口設(shè)計(jì)
Wishbone數(shù)據(jù)傳輸?shù)奈帐謾C(jī)制如圖3所示。準(zhǔn)備傳輸數(shù)據(jù)時(shí),Master設(shè)置STB_O輸出信號(hào)為有效(Wishbone設(shè)置高電平為有效電平),表示開(kāi)始對(duì)Slave進(jìn)行訪問(wèn);當(dāng)接收完數(shù)據(jù),Master的ACK_I信號(hào)接收到Slave發(fā)出的完成信號(hào),然后Master取消STB_O信號(hào)。Slave可以置RTY_O為高,表示Slave現(xiàn)在忙,以后再試;還可以置ERR_O為高,表示出錯(cuò)。在Master和Slave傳輸數(shù)據(jù)期間,兩端都可以控制數(shù)據(jù)的傳輸速度。本文引用地址:http://www.ex-cimer.com/article/190176.htm
1.2 Xilinx集成硬核端點(diǎn)IP結(jié)構(gòu)
Xilinx的端點(diǎn)IP符合PCIe協(xié)議V1.1,集成了PCI Express協(xié)議中的物理層(PHY)、數(shù)據(jù)鏈接層(DLL)和傳輸層(TLL),其結(jié)構(gòu)框圖如圖4所示,包含有以下幾個(gè)接口:時(shí)鐘及復(fù)位接口;事務(wù)層接口;管理接口;緩存接口;收發(fā)器接口;配置和狀態(tài)接口。
事務(wù)層接口,與用戶應(yīng)用設(shè)計(jì)連接。在本次設(shè)計(jì)中連接到Wishbone從接口。
時(shí)鐘及復(fù)位接口,包含DCM所需的反饋時(shí)鐘。在本次設(shè)計(jì)中系統(tǒng)參考時(shí)鐘為100 MHz,用戶時(shí)鐘為62.5MHz。
收發(fā)器接口,與GTP相連。包含多條發(fā)送和接收鏈路,每條鏈路包含一對(duì)發(fā)送和一對(duì)接收信號(hào),發(fā)送和接收信號(hào)都是差分信號(hào),本文采用X1。
緩存接口,與事務(wù)層和數(shù)據(jù)鏈路層相連。用來(lái)實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)木彌_。這三個(gè)緩存器已在CORE Generator中進(jìn)行了例化和配置。Block RAM數(shù)據(jù)通路為64位寬。三個(gè)Block RAM接口均與端點(diǎn)模塊的其余部分同步運(yùn)行。每個(gè)接口都具備單獨(dú)的讀寫(xiě)地址、數(shù)據(jù)和控制信號(hào)。
管理接口,用于訪問(wèn)端點(diǎn)模塊中的各種寄存器和信號(hào),包括PCI Express配置空間、各種控制和狀態(tài)寄存器。管理接口還包含用于統(tǒng)計(jì)數(shù)據(jù)和監(jiān)測(cè)的輸出信號(hào)以及一個(gè)讀取流量控制信用輸出的接口。
配置及狀態(tài)接口包含控制和狀態(tài)、錯(cuò)誤、后端接口配置以及中斷端口。
收發(fā)器接口、存儲(chǔ)器接口以及時(shí)鐘和復(fù)位接口在CORE Generator封裝中自動(dòng)連接。這些接口在封裝之外均不可見(jiàn)。
1.3 TLP包結(jié)構(gòu)
PCI Express協(xié)議是基于TLP包傳輸?shù)模?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/PCIE">PCIExpress設(shè)備之間傳輸?shù)腡LP結(jié)構(gòu)如圖5所示。數(shù)據(jù)發(fā)送時(shí),來(lái)自軟件層/核心設(shè)備的核心信息包括頭以及數(shù)據(jù)部分(某些TLP不包含數(shù)據(jù)),經(jīng)事務(wù)層添加摘要部分,發(fā)往數(shù)據(jù)鏈路層后附加序列號(hào)及LCRC,最后在物理層添加幀開(kāi)始及結(jié)束標(biāo)志后發(fā)送;數(shù)據(jù)接收時(shí),逐層去掉附加部分,最后將頭及數(shù)據(jù)部分送至軟件層/核心設(shè)備。
評(píng)論