0731-84728105
15116127200
代碼更新通告[2018.4.24]
發布時間:2018-04-24
     根據用戶反映,現有(yǒu)的(de)FAST通用輸出引擎模塊(GOE.v)在某種情況下無法有(yǒu)效處理(lǐ)Metadata0中定義的(de)discard位(第61位)。目前該bug已經修複,新版本GOE代碼(GOE-v1-1.0.v)已經上傳網站(www.fastswitch.org),請正在使用FAST流水線的(de)用戶及時更新GOE-v1-1.1.v代碼。
     附:GOE模塊代碼升級說明
FAST 平台的(de)流水線通過UM實現,FAST 的(de)UM主要由5部分組成,包含用戶定義解析(UDP),用戶定義關鍵字提取(UKE),通用查表引擎(GME),用戶定義動作(UDA)和(hé)通用輸出引擎(GOE)5個流水線模塊,如(rú)圖1所示。

圖1 GOE模塊
     此次對FAST流水線UM中的(de)GOE模塊進行(xíng)了升級,GOE模塊之前主要是完成數據的(de)轉發功能,即輸入的(de)數據直接轉發輸出。目前GOE模塊實現了根據Metadata的(de)丢棄位丢棄報文分組的(de)功能,即當丢棄位為(wèi)1時,丢棄此報文分組;丢棄位為(wèi)0時,轉發報文分組。Metadata定義如(rú)下表所示。
表1列車數據類型與TSN數據類型映射表
信号名稱 寬度 功能 使用情況
TTL [127:124] 初始為(wèi)每經過一(yī)模塊減1 未使用
IngressPort [123:120] 分組的(de)原始輸入端口号 在CDP、Nmac_ctrl、UM、Cpu_ctrl模塊中都有(yǒu)處理(lǐ)
Length [119:108] 分組長(cháng)度,包含MetaData,最長(cháng)為(wèi)4K,最短(duǎn)為(wèi)60字節(去(qù)掉CRC域的(de)最小以太網幀長(cháng)度) 在CDP、Cpu_ctrl、Nmac_ctrl模塊中的(de)很多子(zǐ)模塊中都有(yǒu)做(zuò)處理(lǐ);例如(rú):增加删減兩拍Metadata時。
SrcModuleID [107:100] 報文通信時,源功能模塊的(de)ID 在mux_4stream子(zǐ)模塊中将來自(zì)端口的(de)報文,該值都置為(wèi)0。
DstModuleID [99:92] 1來自(zì)端口,5來自(zì)CPU
Seq_Num [91:80] 報文接收序号,由FPGA OS在分組接收時标記,每個輸入接口維護一(yī)個獨立的(de)序列号 未使用
EgressPort 63 分組的(de)最終輸出端口号 在CDP、Nmac_ctrl、Cpu_ctrl、UM模塊中都有(yǒu)處理(lǐ);例如(rú)在dmux_4stream子(zǐ)模塊中,根據該值決定其轉發端口
Pkt_Src 63 表示進入硬件流水線的(de)分組來源,0:來自(zì)網絡接口,1:來自(zì)cpu 未使用
Pkt_Dst 62 表示分組離(lí)開硬件流水線的(de)目的(de),0:送網絡接口發出;1:送cpu處理(lǐ) 在trans_ctrl模塊中,根據其值确定報文的(de)轉發方向
Discard 61 1:指示GOE模塊丢棄該分組;0:GOE模塊正常轉發該分組 在GOE模塊中,根據其值進行(xíng)報文棄丢或轉發處理(lǐ)
Priority [60:58] 分組優先級,默認最低(dī)優先級(000) 未使用
FlowID [57:44] 分組屬于的(de)流ID,最大16K 未使用
TimeStamp [43:0] 報文接收時間戳,由FPGA OS在分組接收時标記 在CDP模塊中有(yǒu)提取處理(lǐ)