田園


摘要:CFP MSA定義了100G CFP/CFP2/CFP4光模塊的硬件接口規范和管理接口規范。CFP MsA管理接口規范是CFP模塊用戶和CFP模塊供應商之間的基礎技術協議,用戶對CFP光模塊的管理即通過此協議實現。文章通過對比當前主流的2種CFP MDIO接口實現方案,從100G CFP光模塊的成本、功耗以及技術演進的方向等因素綜合考慮,提出一種100G CFPMDIO管理接口設計方案,并從軟、硬件設計2個方面,結合CFP MsA規范,對此方案進行了詳細的說明。本方案設計通過了嚴格的工程實驗驗證,應用此方案的100G CFP/CFP2光模塊已經批量供應客戶。
關鍵詞:100GBASE-LR4;MDIO;CFP;MSA
IEEE 802.3ba 100GBASE-LR4標準制定了基于以太網應用的100G光模塊光接口和高速電接口指標規范。CFP Multi-Source Agreement(MSA)定義了100G CFP/CFP2/CFP4光模塊的硬件接口規范和管理接口規范。CFP MSA硬件規范對CFP光模塊的高速收發數據信號、控制信號、告警信號、參考時鐘、監控時鐘、電源、地等作了規范定義,可用于指導100GCFP光模塊的硬件設計。CFP MSA管理接口規范是CFP模塊用戶和CFP模塊供應商之間的基礎技術協議,用戶對CFP光模塊的管理即通過此協議實現。本文主要針對CFP MSA管理接口(MDIO)進行了深入研究,提出了一種CFP MSA管理接口(MDIO)實現方案,并實現其工程應用。
1CFP MSA管理接口設計
1.1 MDIO接口說明
CFP管理接口是指HOST(用戶設備)和100G CFP光模塊之間的通訊/控制接口。MDIO總線是HOST與CFP模塊間的通訊總線,MDIO接口包括MDC,MDIO,GLB ALRMn等5根地址線。CFP MSA定義MDIO接口遵守IEEE 802.3Clause 45標準,通訊速率4MHz且向下兼容到100kHz;MDIO讀、寫操作只在MDC時鐘上升沿使能;支持MDIO器件地址選擇,MDIO接口提供5根地址線支持最多32個可選地址(見圖1)。
CFP寄存器以存儲屬性區分NVR非易失性存儲器和VR易失性存儲器2種。NVR寄存器標識模塊屬性(只讀),在CFP光模塊內部需要有非易失性存儲設備支持數據存儲。VR寄存器支持HOST對模塊的控制命令和模塊實時數字診斷信息更新。
1.2CFP MDIO接口硬件設計
CFP MDIO接口設計工程實現中通常有2種方案:方案一使用FPGA+MCU方式,FPGA編碼實現從MDIO協議轉換,FPGA和MCU之間定義私有接口,兩者配合實現CFP模塊標準管理接口功能;方案二使用MCU實現MDIO接口和模塊管理功能。方案二使用單顆芯片,設計復雜度較方案一低,且功耗低,尺寸小,有成本優勢。從第一代CFP模塊發展到現在的CFP2和下一代的CFP4模塊,對模塊封裝大小、功耗要求都更加嚴苛,在CFP2/CFP4的設計中方案二具有明顯的優勢。本文設計方案采用方案二。
本設計使用ARM Cortex-M3內核的ADuCM320微控制器作為CFP模塊主控芯片,負責100G CFP光模塊MDIO接口功能實現。MDIO接口區分主、從設備,接口間通訊只能由主MDIO設備發起,從MDIO設備被動響應,CFP模塊MDIO實現從接口功能,用戶設備(HOST)與CFP模塊間的MDIO通訊協議遵守IEEE 802.3 Clause 45規范定義。CFP模塊MDIO數據幀結構如表1所示。
MDIO數據幀長度64位(32位前導碼+32位地址幀或命令幀)。IEEE802.3規定32位前導碼為主機向從機發送連續32位邏輯“1”比特。sT是開始位(2bit),固定為OOb;OP是操作碼(2bit);PHYADR是物理端口地址(5bit),地址值“b00000”為廣播地址;DEVADD為MDIO器件地址(5bit),CFP模塊對應PMA/PMD子層;TA為turnaronud碼(2bit),讀操作時為模塊數據準備提供延時,寫操作時為“b10”;16-bit ADDRESS/DATA為數據凈荷,根據操作碼OP的不同可以是寄存器地址或數據(16bit)。
CFP模塊內置MCU ADuCM320實現對MDIO數據幀的解析和處理。MCU MDIO功能引腳直接與CFP連接器相連,用戶設備與模塊的MDIO通訊通過連接器引腳,與模塊內置MCU MDIO接口交互。CFP連接器是CFP模塊與用戶設備(HOST)連接的接插件,CFP MSA硬件協議對CFP連接器引腳功能做了定義。MCU與CFP模塊連接器的硬件連接如圖2所示。
1.3 CFP MDl0接口軟件設計
本方案中軟件需要編碼驅動MCU MDIO從接口工作在4Mhz頻率下接收和解析MDIO幀數據。MDIO幀數據有MDIO寫操作、MDIO讀操作、MDIO連讀操作3種結構。用戶設備Host發送給CFP模塊的MDIO數據,模塊MDIO接口通過獲取幀數據中PHYADR。地址判斷Host是否發起與自己的通訊,PHYADR地址由5位MDIO物理端口地址狀態決定。若MDIO幀數據中的PHYADR地址與模塊MDIO接口地址匹配,CFP模塊根據OP操作碼執行MDIO寄存器地址讀寫操作,否則CFP模塊MDIO接口不對Host操作進行響應。
軟件實現對CFP管理接口寄存器映射,圖1CFP MDIO管理接口架構中標識的8000h~FFFFh地址寄存器,IEEE 802.3分配給100G CFP光模塊使用,此部分寄存器根據存儲屬性分為非易失性存儲器(NVR)和易失性存儲器(VR)2種。
NVR寄存器從8000h~88FFh,模塊在MCU片內Flash沒有被代碼空間填充的區域劃分存儲空間,存儲NVR寄存器數據。使用MCU片內Flash可以節省用于存儲非易失性數據的EEPROM芯片,降低模塊功耗,節省成本。軟件實現對MCU片內Flash的編程接口,在生產階段寫入NVR數據,Host讀取NVR寄存器時,模塊軟件根據接收到的CFP寄存器地址,從NVR表中查找此寄存器地址映射的Flash地址,并讀取數據寫入MDIO接口buffer,等待Host讀取。NVR寄存器對Host僅支持讀操作。
2實驗驗證
驗證本設計方案,選擇NVR寄存器8000h執行讀操作,CFP模塊8000h寄存器為非易失存儲,支持只讀,協議定義此寄存器數值為0011h(CFP2);選擇VR寄存器A011h的讀寫操作,A011h寄存器為易失存儲,支持讀寫,其上電默認值為0200h。
8000h寄存器讀讀取數據為0011h;A011h寄存器讀取數據為0200h。VR A011h寄存器寫入0206h,讀操作讀取數據為0206h。
3結語
本方案設計實現的CFP MSA 100G光模塊MDIO接口,已經完成工程驗證,可以滿足CFP MS艚理接口規范要求,成功應用于某公司100G CFP/CFP2光模塊產品,且已經批量供應給客戶。