李振軍
(中國廣電山東網絡有限公司聊城市分公司,山東 聊城 252000)
目前利用可見光作為信息通信媒介的可見光通信技術(Visible Light Communication,VLC)技術已經廣泛應用于工業生產的各個領域,并且取得了較好的實際應用效果。相對于無線通信而言,光通信能夠實現大容量、高速率的數據傳輸,且定向傳輸效果極好,降低了通信信號受到復雜電磁背景的干擾和影響。針對光通信的技術優勢,結合現階段工業領域常用的可編程邏輯設計工具來設計光通信多路自動測試系統。通過現場可編程門陣列(Field-Programmable Gate Array,FPGA)高效對接VLC,突出了介質訪問控制(Media Access Control,MAC)層與物理層(Physical Layer,PHY)的層間數據聯動和信息層與物理層的一體融合,以此提高軟硬件對于測試邏輯電路的適配性,強化光通信網絡架構在MAC中的應用能力[1]。
利用FPGA系統構建光通信終端產品測試系統,需要重點解決的是基于光通信的控制系統MAC。從原理上分析,利用多個集成部件設計控制器,以分布式布局和模塊化設計實現控制器的基礎功能,內部組織架構如圖1所示[2]。

圖1 光通信終端產品測試系統內部結構
數據流轉的有效指令通常由PC端通過數據總線傳遞,數據幀結構(打包后)從串口RS-232直接傳輸至MAC,然后將數據包通過指定MAC-PHY核心通路傳遞到PHY。從邏輯原理上看,數據流轉難度不大,但是考慮到信息數據的結構復雜、傳輸量大,為了便于FPGA實現并確保后續測試的準確性,這里設計兩個MAC,分別針對發送端與接收端[3]。
依據RS-232接口的數據傳輸協議,將RS-232端口作為終端設備和邏輯電路間數據傳輸與信號連接的橋梁。在多路測試系統設計中,串口的主要作用是對MAC數據標準、指令等進行傳輸、判斷,滿足終端PC與邏輯電路板之間的串行通信要求[4]。結合功能需求和串口協議,創建異步重構多組同頻收發機制作為數據流轉標準,滿足表1所列的數據幀格式要求。

表1 數據幀格式要求
考慮到數據同步問題,在邏輯電路設計中需要確保同頻同時。在發射、接收設備中采用相同的授時,滿足授時一致的數據結構。充分結合信號特性、數據環境以及硬件性能等條件,數據幀內部結構如圖2所示[5]。串口RS-232從終端PC接收串行數據幀(打包),在數據流轉的同時實現由串行到并行的轉變。如果數據傳輸中涉及指令信息,則將其通過CPU數據接口同步至MAC。

圖2 數據幀內部結構
在數據傳輸層面,CPU接口按照分時重構的原則進行工作,基于控制機制通過6路數據通道、20個數據端口以及多路邏輯單元等完成FPGA與RS-232間的串行信號到并行信號的轉換。
自數據信號流轉結束到完成轉換,MAC實現了接收、打包與發送數據的任務。值得注意的是,采用PHY接口傳輸協議的框架需按照既定的數據幀標準來構建數據包[6]。解壓過程也應遵循此流程,并將數據按照任務優先級在緩沖數據池中排序,便于終端設備隨時根據需求查詢和引用。
為了簡化測試系統構建流程,在MAC-PHY邏輯通路中模擬PHY功能,引入先進先出(First In First Out,FIFO)模塊來實現任務序列的數據緩存,以便對內部數據進行操作。
為了便于在多路系統中有效捕捉、檢測并分析高速傳輸的光信號,在信號處理模塊前加裝低通濾波器(Low Pass Filter,LPF),以此有效降低系統內部噪聲與干擾對檢測信號造成的影響[7]。考慮到LPF通帶即為基帶帶寬,需要濾除信號鄰近模擬/數字(Analog/Digital,A/D)的重頻部分,同時去除經下變頻處理后的倍頻部分。鄰近A/D重頻間的最小采樣間隔ΔF為

式中:FL為采樣信號中頻部分的下邊緣頻率;FH為采樣信號中頻部分的上邊緣頻率;Fs為采樣頻率。下變頻處理后的倍頻部分最低頻率為

式中:F0為中頻部分的載波頻率;BF為中頻信號的實際帶寬。
根據過渡帶數字信號處理理論,可以得到LPF截止頻率為

多路測試系統中,接收回路的環路濾波器設計會影響到整個系統對于結果的收斂性能[8]。對于環路濾波器的參數選取,需要先得到噪聲帶寬BL。依據鎖相回路(Phase Locked Loop,PLL)工作原理,要求BF<50.1Rb(Rb為調制數據間相位差),一般設BF=0.005Rb。帶寬BL為

式中:wn為采樣權值,一般取 0.2;Γε=8ε,ε=0.707。
此外,還要得到環路濾波器輸出的位寬和其他系數。根據PLL組成與增益計算得到環路濾波器的總增益為

式中:K為總增益;C1、C2為濾波器組的系數;N為采樣總數;Bloop為接收端信號數據的實際位寬;T為采樣周期。
系統測試可以視為系統技術實現的反過程,通過解調基帶信號并經硬件解碼后得到待檢測信號,FPGA接收指令后在200 ms內利用串口通信協議將計算信息反饋至上位機,同時以控制器局域網絡(Controller Area Network,CAN)總線形式將檢測機制的狀態信息及時輸出至顯示終端,對各項參數和結果進行邏輯判斷,判定功能性實現和是非性結論[9]。
測試四路并行的系統,測試實施步驟主要包括ID配置、數據判定、信息閱讀、報文響應以及串行通信監測[10]。
(1)ID配置測試。直接采取FPGA與多層板路以直連方式進行點位判讀,多次分區設置測試位,輸出點位記為001、002、003、004。
(2)數據判定測試。實時同步收集CAN總線上的狀態信息并分析,當收到的信息存在錯誤時,及時將情況傳至數據線,經審核后給出有效判斷。如果檢測錯誤,則同步記錄系統狀態信息。
(3)信息閱讀測試。針對傳感器中的多路頻率響應進行報文式應答,一旦判定內容正確,則通過CAN總線將指令信息傳輸至信息節點,否則記錄失敗信息。
(4)報文響應測試。通過FPGA設計的多層電路板對測試信息進行邏輯判定,完成信號流轉和數據格式轉換后進一步通過接收端對載頻信息進行內容讀取,一旦發現內容與指令的邏輯性和是非性保持一致,則可以認定報文的響應機制能夠正常工作。如果檢測錯誤,則同步記錄系統狀態信息。
(5)串行通信監測測試。充分利用MAC與PHY端口對總線采集的數據進行速率分析和傳輸能力研究,針對系統完成一體化的串行通信監測。
針對光通信終端產品多路自動測試系統設計與實現中存在的問題,提出了一種基于FPGA的多路自動測試系統。通過信號測試的算法流程可以驗證信號處理模塊時序的先后,結合終端與平臺間的異步重構模式可以進一步檢驗數據傳輸的互通性。該多路自動測試系統在邏輯控制、智能監測以及數據處理效能等方面均取得了較好的效果,值得借鑒。