基于FPGA實(shí)現的高速串行交換模塊實(shí)現方法研究
3 高速串行交換模塊的基本原理
3.1 RapidIO協(xié)議到PCIE協(xié)議的轉換
RapidIO協(xié)議到PCIE協(xié)議交換分為3個(gè)步驟:
(1)根據串行RapidIO協(xié)議將打包數據解析;
(2)將解析的數據緩存在乒乓使用的存儲器中,可以使用片外ZBTSRAM也可以使用片內RAM資源;
(3)數據根據PCIE協(xié)議規定的方式打包,并按照PCIE協(xié)議發(fā)送出去。
RapidIO與PCIE交換原理圖如圖3。本文引用地址:http://dyxdggzs.com/article/191698.htm
3.2 光纖協(xié)議到PCIE協(xié)議的轉換
光纖協(xié)議使用的自定協(xié)議較RapidIO協(xié)議簡(jiǎn)單得多,因此實(shí)現原理也簡(jiǎn)單很多。從光纖協(xié)議到PCIE協(xié)議交換分為3個(gè)步驟:
(1)根據光纖自定義協(xié)議將打包數據提??;
(2)將解析的數據緩存在乒乓使用的存儲器中,可以使用片外ZBTSRAM也可以使用片內RAM資源;
(3)數據根據PCIE協(xié)議規定的方式打包,并按照PCIE協(xié)議發(fā)送出去。
光纖與PCIE交換原理圖見(jiàn)圖4。
4 交換模塊實(shí)現的關(guān)鍵技術(shù)
在此交換模塊中,關(guān)鍵技術(shù)集中在PCIE的DMA實(shí)現上,本節將討論存儲器寫(xiě)模式下的TLP結構以及基于FPGA實(shí)現的PCIE的DMA寫(xiě)操作核心狀態(tài)機的設計與實(shí)現。
4.1 TLP結構簡(jiǎn)介
PCIE設備之間以數據包形式傳送信息,最主要類(lèi)型的數據包是處理層數據包TLP。其包格式如圖5。
事務(wù)是在PCIE請求者和完成者之間進(jìn)行的操作,包括存儲器事務(wù)、IO事務(wù)、配置事務(wù)和消息事務(wù)。本文討論的DMA讀寫(xiě)操作是針對存儲器空間的操作,存儲器寫(xiě)操作TLP頭的格式如圖6。
4.2 PCIE的DMA寫(xiě)操作的設計與實(shí)現
PCIE的DMA寫(xiě)操作實(shí)現的主要方法是將TLP包頭中的各個(gè)字段正確填充,并將數據按照64 bit或者32 bit并行放在TLP包頭后,按照64 bit或者32 bit并行傳輸給PCIE硬核,由硬核以PCIE協(xié)議串行傳輸給其他設備。PCIE的寫(xiě)操作封裝在TX模塊的狀態(tài)機中。在本設計中規定一次DMA寫(xiě)操作分為65 536次包傳輸,每次包傳輸的最大載荷為128 B,一次寫(xiě)操作的傳輸數據為8 MB。其狀態(tài)機轉換模型如圖7(CPLD指返回完成包)。
評論