基于fpga的pcie設(shè)計(jì)

基于fpga的pcie設(shè)計(jì)

ID:19446187

大?。?13.09 KB

頁數(shù):14頁

時(shí)間:2018-10-02

基于fpga的pcie設(shè)計(jì)_第1頁
基于fpga的pcie設(shè)計(jì)_第2頁
基于fpga的pcie設(shè)計(jì)_第3頁
基于fpga的pcie設(shè)計(jì)_第4頁
基于fpga的pcie設(shè)計(jì)_第5頁
資源描述:

《基于fpga的pcie設(shè)計(jì)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、基于FPGA的PCIe設(shè)計(jì)1.PCIe簡介1.1.PCIe基本架構(gòu)PCIe的優(yōu)勢以其復(fù)雜性為代價(jià)。PCIe是基于分組的串行連接協(xié)議,估計(jì)比PCI并行總線復(fù)雜10倍以上。這種復(fù)雜性部分源于在千兆赫速率所要求的并行到串行的數(shù)據(jù)轉(zhuǎn)換以及轉(zhuǎn)向基于分組的實(shí)現(xiàn)。PCIe保持了PCI基于加載存儲的基本架構(gòu),包括對PCI-X增加的對分割事務(wù)的支持。此外,它引進(jìn)了一系列底層信息傳送要件來管理鏈接(如鏈路層流量控制)以模仿傳統(tǒng)并行總線的邊帶線,且提供了更高水平的robustness和功能。該規(guī)范定義了許多特性、能同時(shí)支持當(dāng)今

2、的需求和未來的擴(kuò)展需要,且同時(shí)與PCI保持了軟件兼容。PCIExpress的先進(jìn)特性包括:主動電源管理;先進(jìn)的錯(cuò)誤報(bào)告;通過端對端循環(huán)冗余校驗(yàn)(ECRC)支持的端對端的可靠性;支持熱插拔以及服務(wù)質(zhì)量(QoS)流通類。一個(gè)簡化系統(tǒng)的拓?fù)浣Y(jié)構(gòu)包括四個(gè)功能類型,根聯(lián)合體根聯(lián)合體(rootcomplex)、交換器(switch)、端點(diǎn)(multipleEndpoints)和橋(bridge)。1.ROOTComplex:根聯(lián)合體對整個(gè)PCIe建構(gòu)實(shí)施初始化并配置各鏈路。它通常把中央處理單元(CPU)與其它三個(gè)功能

3、中的一或多個(gè)——PCIe交換器、PCIe端點(diǎn)和PCIe到PCI橋——連接起來;2.Endpoint:端點(diǎn)通常位于終端應(yīng)用內(nèi),它負(fù)責(zé)連接應(yīng)用與系統(tǒng)內(nèi)的PCIe網(wǎng)絡(luò)。端點(diǎn)要求并完成PCIe事務(wù)傳輸。一般來說,系統(tǒng)內(nèi)的端點(diǎn)比任何其他類型的PCIe部件都要多;(1)LegacyEndpoint;(2)PCIExpressEndpoint;(3)RootComplexIntegratedEndpoint;1.Switch:PCIe交換器把數(shù)據(jù)路由至下游多個(gè)PCIe端口,并分別從其中每個(gè)端口路由到上游唯一一個(gè)根聯(lián)合體

4、。PCIe交換器也可以靈活地把數(shù)據(jù)從一個(gè)下游端口路由到另一個(gè)下游端口(點(diǎn)對點(diǎn)),它消除了傳統(tǒng)PCI系統(tǒng)限制性的樹狀結(jié)構(gòu);2.RootComplexEventCollector;3.PCIExpress-PCIBridge:橋用于連接PCIe與系統(tǒng)內(nèi)諸如PCI/PCI-X等其他PCI總線標(biāo)準(zhǔn),這樣的系統(tǒng)同時(shí)采用上述各總線架構(gòu);1.1.PCIe協(xié)議規(guī)格PCIe規(guī)范對于設(shè)備的設(shè)計(jì)采用分層的結(jié)構(gòu),有事務(wù)層、數(shù)據(jù)鏈路層和物理層組成,各層有都分為發(fā)送和接收兩功能塊。在設(shè)備的發(fā)送部分,首先根據(jù)來自設(shè)備核和應(yīng)用程序的信息

5、,在事務(wù)層形成事務(wù)層包(TLP),儲存在發(fā)送緩沖器里,等待推向下層;在數(shù)據(jù)鏈路層,在TLP包上再串接一些附加信息,這些信息是對方接收TLP包時(shí)進(jìn)行錯(cuò)誤檢查要用到的;在物理層,對TLP包進(jìn)行編碼,占用鏈路中的可用通道,從發(fā)送器發(fā)送出去。事務(wù)層包(TLP),數(shù)據(jù)鏈路層包(DLLP),物理層(PLP)產(chǎn)生于各自所在層,最后通過電或光等介質(zhì)和另一方通訊。這其中數(shù)據(jù)鏈路層包(DLLP),物理層(PLP)的包不需要關(guān)心,在PCIeHIP核中封裝好了。在FPGA上做PCIe的功能就是完成事務(wù)層包(TLP)的處理。1.1

6、.處理層(TransactionLayer)處理層接收來自PCIe設(shè)備應(yīng)用的數(shù)據(jù),并將其封裝為TLP(TransactionLayerPacket)后,發(fā)向數(shù)據(jù)鏈路層。此外事務(wù)層還可以從數(shù)據(jù)鏈路層中接收數(shù)據(jù)報(bào)文,然后轉(zhuǎn)發(fā)至PCIe設(shè)備的核心層。處理層在應(yīng)用層和數(shù)據(jù)鏈路層之間,來產(chǎn)生和接收傳輸層的包。處理層包括:發(fā)送數(shù)據(jù)路徑,配置空間和接收路徑。接收數(shù)據(jù)流程:1)收到從數(shù)據(jù)鏈路層來的TLP;2)配置空間用來確定處理層的包是否正確;3)在每個(gè)虛擬通道,處理層的包被存在接收buffer中一個(gè)特定的部分(由收發(fā)類

7、型確定:posted,non-posted,completion);4)處理層packetFIFO塊用來存儲buffer傳輸層包的地址;發(fā)送數(shù)據(jù)流程:1)MegaCore通過tx_cred[35:0]來給應(yīng)用層提供信息;2)應(yīng)用層會請求傳輸層給它包,此時(shí)應(yīng)用層需要提供提供PCIExpress傳輸字頭在tx_desc[127:0]中,已經(jīng)數(shù)據(jù)在tx_data[63:0]中;3)Megacore會確認(rèn)suffiicientflowcontrolcredits,并確定是相應(yīng)還是延遲請求;4)處理層仲裁各虛擬通道

8、,然后選擇優(yōu)先級高的數(shù)據(jù)給數(shù)據(jù)鏈路層;1.1.1.處理層結(jié)構(gòu)1.1.2.TLP報(bào)文TLP有三部分組成,幀頭、數(shù)據(jù)、摘要(或者稱ECRC)。TLP頭標(biāo)長3或者4個(gè)DWORD,格式和內(nèi)容隨報(bào)文類型變化,如下圖所示。lFmt[1:0]–FormatofTLP–bits6:5ofbyte0;lType[4:0]–TypeofTLP–bits4:0ofbyte0;lTC[2:0]–TrafficClass–bits[6:4]ofbyte

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。