国产欧美一区二区三区在线看_久久精品国产99国产精品_国产97人人超碰caoprom,色婷婷久久综合,成年人晚上看的视频,美女羞羞视频网站下载

0731-84728105
15116127200
FAST入門(5)FAST硬件流水線之一
發布時間:2018-07-12
     FPGA中實現的硬件流水線是FAST平臺實現分組硬件處理的基礎。FPGA OS為FAST流水線提供了基本的分組收發,高速DMA和查表等服務。FAST 流水線與FPGA OS的接口定義直接反映了分組硬件處理功能在FPGA OS和FAST流水線中的劃分,也是FAST平臺提供商必須考慮的關鍵問題。
一、FAST流水線接口定義
      FAST流水線與FPGA OS之間定義了6個接口,分別是PIn/POut、CIn/COut,MEI和AUX。如下圖所示。
     PIn/POut是流水線接收和發送分組的接口,CIn/COut分別是流水線接收和發送流水線控制信息的接口,MEI(Match Engine Interface)是流水線訪問FPGA OS提供的匹配引擎的接口。AUX是FPGA OS為FAST流水線提供時鐘、復位和時間戳等信息的接口。
     各接口信號的詳細定義如下表所示。其中MEI接口中的信號寬度N1/N2與平臺相關。Clk時鐘頻率與平臺相關,一般不小于125MHz。所有I/O信號的變化都與CLK同步。
     FAST流水線通過Key接口向查表協處理器提交查表關鍵字,從FlowID接口接收返回的查表結果(匹配的地址)。包括是否匹配(match_flag為1表示匹配,0表示未匹配),以及匹配的規則序號FlowID等。
     只要me_ready信號有效,FAST流水線可連續地向查表協處理器提交查表請求,查表協處理器必須保證這些查表結果按照查表請求提交的順序返回查表結果。
     查表協處理器中規則的配置管理方法與具體的平臺相關。FAST庫在實現時必須對不同的平臺進行適配,提供管理這些規則的API接口。
二、數據通路PIn/POut數據格式
     PIn和POut兩個接口采用相同的分組格式,分組數據寬度為134位,其中低128位為報文數據,高6位為控制信息,每個數據分組包括32字節的metadata和分組數據,如下圖所示。
     分組數據的格式為接口收發的以太網報文格式。其中以太網報文格式中不包含最后的4字節CRC字段,接收時,FPGA OS負責接收時進行CRC校驗和剝離,發送時,FPGA OS會計算分組的CRC字段并附加在報文最后。
     數據通路的[133:132]位為報文數據的頭尾標識。01標識報文頭部,11標識報文中間數據,10標識報文尾部。由于不同報文具有不同長度,因此在報文數據最后一拍可能存在一些無效的字節。數據報文的最后一拍的[131:128]位用來標識無效字節的個數。其中0000表示16個字節全部有效;0001標識最低1個字節無效,最高15個字節有效;以此類推,1111表示最低15個字節無效,最高1個字節有效。
     設FAST流水線的時鐘頻率為xMhz,因此數據通路理論傳輸帶寬為128bit*xMHz。例如當x=125時,通路帶寬為16Gbps。
三、控制通路CIn/COut數據格式
     FAST流水線的控制通路CIn和COut采用相同的消息格式。對FAST流水線模塊的每次讀寫操作都轉換成一個128位寬的命令字寫入FAST流水線。命令字的格式如下表所示。與流水線處理分組信息一樣,每個模塊只處理DMID等于本地模塊號的命令字。相應的模塊完成讀寫操作后,修改命令字,并將命令字發送給下游模塊,最后命令字從COut接口輸出。FPGA OS負責將軟件讀寫請求轉換成FAST流水線的命令字,并將COut輸出的命令字返回給由SMID標識的軟件模塊。
      顯然,每個硬件模塊內部的編址與都是32位,且編址方法與其他模塊無關,由模塊開發者獨立確定。