設備控制協議
SFPTotal Mini、Plus、Plus New和Plus X系列編程板支持設備控制協議命令。
該命令列表適用於具有嵌入式固件軟件1.3.5或更高版本的設備。
讀取收發器存儲器
讀命令使用8位地址和偏移參數來訪問數據總線上的設備,並且從高達256字節的頁讀取數據。
R1A000807F
讀取命令由以下參數組成:
R + 1 + A0 + 00 + 80 + 7F
命令代碼
讀取命令以命令代碼字符開始 R (簡稱 讀).
命令碼的大小寫決定了讀取結果的輸出格式。
- R 大寫 — 以 HEX 字符串形式返回數據;
- r 小寫 — 以 HEX 表的形式返回數據。
端口號
編程板上的端口的數字標識符。
- GBIC
- SFP
- SFP+
- XFP
- QSFP
If CMODPRST=01 啓用時,編程板在讀取之前檢查收發器是否連接到指定端口。 禁用此設置以忽略端口號。
頁面地址
數據總線上的從設備頁地址,以大寫HEX格式書寫。 例如: A0 or A2.
參見 收發器存儲器結構 有關支持的收發器存儲器頁地址的更多信息。
附加頁碼
用於具有動態地址空間的收發器的HEX格式的附加頁碼。
示例值: 00, 01, 02, 03.
If AWRADTBL=01 啓用時,編程板將附加頁碼寫入 頁選擇字節 當訪問XFP和QSFP模塊的上部存儲器時。 這選擇收發器在 A0h 偏移量 80h 處公開哪個附加表:
T00 or T01 or T02 or T03.
要忽略附加頁碼參數,請設置 AWRADTBL=00.
偏移
讀取或寫入數據的偏移量。
例如:
00較低的存儲區域,從字節0開始80高位存儲區域,從字節128開始5F從字節 95 開始讀取
讀/寫字節計數
從收發器存儲器讀取或向收發器存儲器寫入的字節數。 以大寫HEX格式指定參數。 由於寄存器表示的原因,讀取字節數必須減一。
00讀/寫1字節7F讀/寫128字節03讀/寫4字節
輸入並執行命令
要執行該命令,請用回車符終止它 \x0D.
讀取區域的格式化輸出:
r1A000007F
## 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00 : 03 04 07 00 00 00 01 20 40 0C 15 01 2A 00 00 00
01 : 0F 07 00 00 46 49 4E 49 53 41 52 20 43 4F 52 50
02 : 32 33 34 20 00 00 90 65 46 54 4C 46 38 35 32 34
03 : 50 32 42 4E 56 20 20 20 41 20 20 20 03 52 00 9C
04 : 00 32 00 00 50 42 39 31 59 5A 57 20 20 20 20 20
05 : 20 20 20 20 30 37 30 32 32 37 20 20 68 D8 01 0B
06 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
07 : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
標準讀取命令執行。
R1A000007F
0304070000000120400C15012A0000000F07000046494E4953415220434F5250323334200000906546544C46383532345032424E56202020412020200352009C0032000050423931595A57202020202020202020303730323237202068D8010B0000000000000000000000000000000000000000000000000000000000000000
從地址空間A0h偏移量80h處的QSFP28收發器的頁T03h讀取128字節。
R4A003807F
11CC07800000000000000003FF00020000000040484953494C49434F4E20202020202020000000004F4D333535394358313030202020202030316658051446E60607FFDE30333448545831304D3930303333383832313039333032300C1067A60000000000000000000000000000000000000000000000000000000000000000
命令結果以換行符和回車符結束。
寫入收發器存儲器
寫命令使用8位地址和偏移參數來訪問數據總線上的設備,並將數據寫入最多256字節的頁。
W4A002800F11223344556677889900AABBCCDDEEFF
寫命令由以下參數組成:
W + 4 + A0 + 02 + 80 + 0F + 11223344556677889900AABBCCDDEEFF
命令代碼
寫命令以命令代碼字符開始 W (簡稱 寫).
命令碼的大小寫決定寫入後是否返回結果。
- W uppercase-寫入後執行驗證讀取並返回結果;
- w 小寫——只寫,沒有驗證讀。
爲了確認寫入,將寫入命令中發送的數據與命令完成後編程板返回的數據進行比較。
端口號
編程板上的端口的數字標識符。
- GBIC
- SFP
- SFP+
- XFP
- QSFP
If CMODPRST=01 啓用時,編程板在寫入之前檢查收發器是否連接到指定端口。 禁用此設置以忽略端口號。
頁面地址
數據總線上的從設備頁地址,以大寫HEX格式書寫。 例如: A0 or A2.
參見 收發器存儲器結構 有關支持的收發器存儲器頁地址的更多信息。
附加頁碼
用於具有動態地址空間的收發器的HEX格式的附加頁碼。
示例值: 00, 01, 02, 03.
If AWRADTBL=01 啓用時,編程板將附加頁碼寫入 頁選擇字節 當訪問XFP和QSFP模塊的上部存儲器時。 這選擇收發器在 A0h 偏移量 80h 處公開哪個附加表:
T00 or T01 or T02 or T03.
要忽略附加頁碼參數,請設置 AWRADTBL=00.
偏移
讀取或寫入數據的偏移量。
例如:
00較低的存儲區域,從字節0開始80高位存儲區域,從字節128開始5F從字節 95 開始讀取
寫入/讀取字節計數
寫入收發器存儲器的字節數。 以大寫HEX格式指定參數。 由於寄存器表示的原因,寫入字節數必須減一。
00讀/寫1字節7F讀/寫128字節03讀/寫4字節
資料
將寫入數據作爲不帶空格或換行符的大寫HEX字符串附加在命令末尾。
11223344556677889900AABBCCDDEEFF
寫入數據的長度必須與命令參數中指定的寫入字節計數匹配。
輸入並執行命令
要執行該命令,請用回車符終止它 \x0D.
配置命令
CLI
在打字時啓用或禁用終端窗口中的字符回顯。 默認禁用。 重新啓動電源後,該設置將恢復爲默認設置。
查詢當前狀態
? CLI
CLI=0
啓用
CLI=1
禁用
CLI=0
VERSION
請求設備版本信息。
SFPTotal Plus New (c) 2023
HW: 1.3
SW: 1.3.7
SN: SFPT-P1323122800
ACTIVE
CMODPRST
在讀取或寫入之前檢查收發器是否連接到端口。
查詢當前設置:
? CMODPRST
CMODPRST=01
啓用收發器連接檢測:
CMODPRST=01
禁用收發器連接檢測:
CMODPRST=00
當啓用該設置時,如果多個收發器連接到編程板的端口,則編程板返回錯誤:
QERR: MTDOC
如果在讀或寫操作期間沒有收發器連接到端口,則編程板返回相應的錯誤代碼:
QERR: SFP_EMPTY
AWRADTBL
啓用將附加頁碼自動寫入 頁選擇字節 當訪問T00h、T01h、T02h和T03h頁地址空間時寄存器。
查詢當前設置:
? AWRADTBL
AWRADTBL=01
啓用附加頁碼寫入:
AWRADTBL=01
禁用附加頁碼寫入:
AWRADTBL=00
STATUS
編程板端口輸入和輸出狀態。
STATUS
GBIC : 1; 0; 0; 1;
SFP : 1; 1; 1; 1;
XFP : 1; 1; 1; 1; 1;
QSFP : 1; 1; 1; 1;
參數值位置對應如下圖:
GBIC : MOD_ABS; TX_FAULT; RX_LOS; TX_DIS; SFP : MOD_ABS; TX_FAULT; RX_LOS; TX_DIS; XFP : MOD_ABS; RX_LOS; INTERRUPT; MOD_SEL; P_DOWN/RESET; QSFP : MOD_ABS; INTL; MOD_SEL; RESETL;
TX_DIS
控制TX_DIS線,其啓用低功率模式。 默認啓用。
打開激光器並禁用低功率模式
TX_DIS=0
關閉激光器並啓用低功率模式
TX_DIS=1
編程板可以具有用於低功率模式的硬件控制的跳線。 封閉式跳線優先。
I2CRATE
將編程板的數據總線時鐘頻率設置爲 主控端.
參數由十六進制寄存器表示。
I2CRATE=12 # Clock frequency 100 kHz
I2CRATE=40 # Clock frequency 30 kHz
I2CRATE=C6 # Clock frequency 10 kHz
要查詢當前速度設置,請使用 ? I2CRATE
? I2CRATE
I2CRATE=C6
接受來自的值 01h to FFh.
時鐘頻率使用以下公式計算:
16 000 000 / (2 * I2CRATE * I2CPRESC + 16) = Speed Rate Hz
I2CPRESC
編程板的數據總線時鐘頻率的預分頻器 主控端.
參數由十六進制寄存器表示。 默認值: 04h
I2CPRESC=04
要查詢當前速度設置,請使用 ? I2CPRESC
? I2CPRESC
I2CPRESC=04
接受值 00h, 04h, 10h, 40h.
I2CPAUSE
在出發前延遲閱讀公交車的結果,幾毫秒鐘。 假設值: 64h or 100ms
? I2CPAUSE
I2CPAUSE=64
I2CPAUSE=32
I2CPAUSE=32
I2CDELAY
設置發出 ReSTART 之前的延遲,以 0.1 ms 爲增量。
默認值: 0Ah
? I2CPAUSE
I2CPAUSE=0A
I2CPAUSE=64
I2CPAUSE=64
I2CRESET
在軟件中重置數據總線。 重新啓動接口,並在數據總線SCL線上產生9個時鐘脈衝,以恢復可能被鎖定的從設備。
重置數據總線:
I2CRESET
啓用觸發器。 當收發器連接到端口時,數據總線會自動復位。
I2CRESET=01
禁用觸發器。
I2CRESET=00
I2CSTATE
返回數據總線線路狀態。
I2CSTATE
SCL=01 SDA=02
USBDELAY
在通過虛擬串行端口將數據字節從設備發送到計算機之前的延遲。
? USBDELAY
USBDELAY=0A
USBDELAY=10
USBDELAY=10
功率控制
僅在具有軟件電源控制的編程板上受支持。
PWRRST
對收發器端口進行電源循環。
PWRRST
I2CPAUSE以10ms增量影響總線復位間隔。
PWRCTRL
控制端口功率。
關閉電源。
PWRCTRL=0
打開電源。
PWRCTRL=1
功率狀態改變應當伴隨相應的LED指示。
硬件密碼搜索
編程板支持範圍內的硬件密碼搜索 00000000 to FFFFFFFF
搜索循環運行,將密碼遞增一。 在每次迭代中,編程板輸入密碼並寫入校驗字 SFPTOTAL 長度為 8 位元組。接著讀回校驗字。
當燒錄板能從收發器記憶體讀出校驗字時,表示搜尋成功。
BFCWADR
寫入校驗字的頁地址。
BFCWOFT
用於寫入校驗字的偏移量。
BFSET
開始硬件密碼搜索。 該命令具有以下參數:
- 密碼輸入頁面
- 密碼輸入偏移量
- 值範圍的開始
- 範圍結束
- 起始位置
該命令開始搜索,在頁面上輸入密碼 A2h 在偏移處 7Bh 在從 41414141h to 5A5A5A5Ah 開始於 45454545h.
BFSET A2 7B 41414141 5A5A5A5A 45454545
Device=A2
Offset=7B
From 41 41 41 41
To 5A 5A 5A 5A
Start 45 45 45 45
45 45 45 46
BFSTOP
停止密碼搜索。
BFSTOP
STOP
Device=A2
Offset=7B
From 41 41 41 41
To 5A 5A 5A 5A
Current 45 45 47 5A
BFSTART
從停止的地方恢復密碼搜索。
BFPASS
該 ? BFPASS 命令返回當前值。
? BFPASS
45 45 47 5A