2015年9月21日 星期一

NuStream API Group 和 Global 命令差異

關於Global command以及Group command的差異,這邊都先忽略counter等其他動作,單純就設定打包。我這邊用圖來說明:

Group Command for XM module

Global Command for RM module
這邊簡單說明一下內容:

  1. 設定FillTxpkt
    • 這邊換成以「RMModule_FILLTXPKT_ADDENTRY_T」來對每個Port做設定,因此會多了(chassis, board, port) 需要去設定
  2. 設定StartTx
    • 在「RMModule_STARTTXPKT_T」裡頭有個欄位「start_tx」,設定成0,表示需要等待Global Command觸發
  3. 設定Global Command
    • 這邊要稍微說明一下,因為Global command是叫XM-2S8G(NuStream 2000i機箱)或是XM-2S10(NuStream 600i機箱)這兩著控制卡來操控,因此是對這兩張板卡下Gloabl命令,以2000i的例子來說,就是去呼叫「Nu_XM2S8G_GlobalCmd_StartTx」這個function而裡頭的參數portmap可以這樣設定:
      • globaltx_map += power(2, (port.boardid-2)*4+(port.portid-1));
    • 意思是說,bit0代表(機箱插槽2的第1個port),bit1代表(機箱插槽2的第2個port),…,bit10代表(機箱插槽4的第2個port),……,bit63(機箱插槽17的第4個port)
這樣設定就可以達到Global Start Tx的效果了

沒有留言:

張貼留言