《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 基于ADμC7020的高速誤碼測試儀
基于ADμC7020的高速誤碼測試儀
潘 冬
摘要: 針對國內(nèi)外高速誤碼測試儀價格昂貴、系統(tǒng)復雜的現(xiàn)狀,,采用ADI公司的ARM7TDMI微控制器ADμC7020和SiliconLaboratoties公司生產(chǎn)的XFP收發(fā)芯片Si5040,設計一種簡易,、低成本的誤碼測試系統(tǒng)。系統(tǒng)由Si5040,、ADμCT020和虛擬儀器LabWindows/CVI組成,。Si5040具有可編程的偽隨機碼比特流生成和比較功能,讀出誤碼值,,通過ADμC7020計算得到誤碼率,,并通過I2C接口與LabWindows/CVI構成的上位機進行通信。
關鍵詞: 測試測量儀器
Abstract:
Key words :

長期平均誤碼率,,簡稱誤碼率(BitErrorRate,,BER),是光通信網(wǎng)絡及設備的重要指標之一,。目前光通信網(wǎng)絡及設備正朝著小型化,、高頻率、高速率,、大容量的方向發(fā)展,,對作為測量儀器的誤碼測試儀速率及功能的要求也越來越高。雖然國內(nèi)外儀器儀表廠,,如安捷倫(Agilent),、泰克(Tektronix)等推出了各種高速誤碼測試儀,但是大多價格昂貴,,并且系統(tǒng)復雜,。所以,對于國內(nèi)通信行業(yè),,開發(fā)一種價廉,、方便、速率可達10 Gb/s的高速誤碼測試系統(tǒng),,具有實用價值,。

1 系統(tǒng)概述
   
本誤碼測試系統(tǒng)由兩部分組成:誤碼測試部分和上位機人機界面部分。其中誤碼測試部分由高速誤碼儀,、光衰減器,、光功率計和光源等組成。高速誤碼儀以微控制器ADμC7020為核心,,控制XFP收發(fā)控制器Si5040來實現(xiàn),。
    ADμC7020是ADI公司的基于ARM7TDMI的體系結構的控制器,支持16/32位精簡指令集(RISC),。片內(nèi)集成了12位的ADC(1MSPS),、4通道12位帶緩沖的DAC、電壓比較器,、62 KB可在系統(tǒng)中編程(ISP)的片內(nèi)閃速/電擦除存儲器Flash和8 KB RAM,,串行接口包括UART,、SPI、2個I2C,、用于下載/調(diào)試的JTAG端口,、4個定時器、14個通用I/0引腳,、片內(nèi)可編程邏輯陣列(PLA),。CPU時鐘高達45 MHz,可使用片內(nèi)晶體振蕩器和片內(nèi)PLL,。
    Si5040是Silicon Laboratories公司高速物理層(highspeed PHY)產(chǎn)品線的產(chǎn)品,。采用其已通過市場驗證的DSPLL技術,同時在數(shù)據(jù)發(fā)送和接收路徑提供信號抖動消除功能的10 Gb/s XFP收發(fā)器,。Si5040支持3種不同的模擬與數(shù)字信號質(zhì)量監(jiān)測功能,,分別是模擬信號LOS監(jiān)測、CID(連O或連1)監(jiān)測以及專有的數(shù)字眼圖開度測量功能,,還提供線路環(huán)回測試,、XFI回路測試和接收/發(fā)送雙方向的PRBS碼流生成和檢查功能。
    此設計中,,ADμC7020作為控制器,,對Si5040芯片進行配置和初始化,完成誤碼數(shù)的采集,,并作為整個系統(tǒng)上位機和Si5040之間的橋梁,,及時向上位機提供測量的誤碼及狀態(tài)值等數(shù)據(jù);Si5040完成偽隨機碼型(PRBS)的產(chǎn)生,、同步及對比檢測,,計算出誤碼數(shù)(Error Count);上位機由LabWindows/CVI構造的測試平臺,,通過上位機PC的并口(LPT)模擬I2C總線讀ADμC7020所構建的寄存器映射表,,將測試系統(tǒng)各器件的狀態(tài)(包括Si5040)及誤碼數(shù)顯示出來,計算誤碼數(shù)和測試時間內(nèi)的總發(fā)送碼數(shù)的比值得出誤碼率(BER),,通過I2C總線讀寫ADμC7020的寄存器表完成對系統(tǒng)各部分(包括Si5040)的控制和查詢,。

2 原理及組成
   
誤碼測試儀框圖如圖1所示。


2.1 測試原理
   
在數(shù)字光纖通信系統(tǒng)中,,經(jīng)常測試或驗證系統(tǒng)和器件的誤碼率指標,,若要獲得精確的測試結果,必須進行無限長時間的試驗,。根據(jù)統(tǒng)計置信度原理,,只要驗證數(shù)字系統(tǒng)或器件的誤碼率指標是否優(yōu)于某一規(guī)定標準,即可在測量精度和測試時間之間進行折中處理,而且仍能保證測試結果的可信度,。產(chǎn)生誤碼的主要原因是傳輸系統(tǒng)的噪聲和脈沖抖動,,誤碼性能用誤比特率BER來衡量。但在實際測量中,,常以長時間測量中誤碼數(shù)目與傳送的總碼元數(shù)之比來表示BER,BER=錯誤比特數(shù)/傳輸總的比特數(shù),。
    由于這是一個統(tǒng)計過程,,因此當被測比特數(shù)接近于無窮大時,被測BER才能接近實際BER,。但是在大多數(shù)情況下,,只需測試小于預定義閾值的BER即可。完成測試所需的比特數(shù)取決于所需的置信度和BER閾值,。置信度是指,,系統(tǒng)的真實BER小于指定BER時的測試占全部測試的百分比。由于無法測量無窮位,,也無法準確預測什么時候會出現(xiàn)誤碼,,因此置信度永遠不會達到100%。另外,,IEEE802.3規(guī)定最壞情況的誤碼率是10E-10,。在這種條件下,出現(xiàn)的誤碼不會降低網(wǎng)絡的性能,,因為所有的網(wǎng)絡軟硬件都按這個要求建立,。因此,這個條件下出現(xiàn)的噪聲將不足以改變接收端的比特值,,不會造成誤碼,。一般情況下,選擇的誤碼率標準比IEEE標準高出100倍,,并把10E-12誤碼率稱為零誤碼率,。零誤碼率意味著每10萬億位中產(chǎn)生的誤碼小于1個。置信度的公式如下:
   
    其中CL為置信度,,Nbits為接收的總比特數(shù),。
    在生產(chǎn)和測試中,只考慮零誤碼且置信度為標準的95%的情況,,用比特數(shù)除以數(shù)據(jù)速率可確定測試所需時間,。得出常用的方程式如下:
   
    對于10 Gbps的系統(tǒng),測試30 s基本可以達到10E-12的要求,。
    Si5040的發(fā)端模塊產(chǎn)生偽隨機碼序列數(shù)據(jù)流,,作為通信系統(tǒng)的信源數(shù)據(jù)流,收端模塊接收通信系統(tǒng)輸出的比特流,并與本地產(chǎn)生的與發(fā)端形式相同的偽隨機碼比特流相比較,,如比較結果不同即系統(tǒng)有誤碼,。Si5040在收端和發(fā)端信道上都有可編程的模式生成器和檢查器。發(fā)端信道通過配置寄存器(tpSel Register 157),,收端信道通過配置寄存器(RxtpSel Register 29),,可以生成PRBS7、PRBS31或者64位用戶自定義碼型,。模式檢查器還提供了不同步信號(Loss-of-Sync)檢查,。在同步情況下,測試中發(fā)端的誤碼值結果存于Si5040中40位的寄存器組(tp-ChkErrCnt registerl76-180)和一個8位浮點數(shù)的寄存器(tpChkErr register 181),。收端的誤碼值結果存于40位寄存器組(RxtpChkErrCntRe-gister48-52)或8位浮點數(shù)據(jù)類型的寄存器(RxtpChkErr Register 53),。本設計僅使用Si5040的發(fā)端信號的模式生成器和檢查器功能。
2.2 硬件設計
   
本文硬件設計僅列出Si5040和ADμC7020兩部分的原理圖,。
2.2.1 Si5040
   
Si5040的PINl3和PINl4是參考時鐘輸入引腳,。在此設計應用中使用Silicon Laboratories公司的SI534四頻晶體振蕩器(XO),其工作頻率范圍10 MHz~1.4 GHz,,RMS抖動低于O.3 ps,,可提供高線性度的控制電壓及寬范圍的電壓增益選擇,并可以支持PECL,、LVDS,、CMOS和CML各種電平形式的輸出。
    Si5040的通信接口支持I2C和類SPI模式,。通過SPSEL(PIN9)來選擇使用接口的類型,。當SPSEL置低電平時,使用I2C接口類型,,PIN25(ser-ial data line,,SD)and PIN24(serial clock input,SCK)作為I2C總線的SDA和SCL,。當SPSEL置高電平時,,使用類SPI接口類型。
    Si5040在發(fā)端和收端都有可編程的碼型模式生成器和檢查器,。發(fā)端信道使用TxtpSel寄存器,,可配置成PRBS7、PRBS31或者64位用戶自定義碼型,。
    Interrupt,、RX_LOL和Rx_LOS反映Si5040的工作狀態(tài)。由ADμC7020的I/O口來采樣其電平邏輯,,由此反映Si5040的工作狀態(tài),。
    TD+、TD-、TXDOUT+,、TXDOUT-和RD+,、RD-、RXDIN+,、RXDIN-接入SMA頭,,信號為差分CML信號。
    Si5040原理圖如圖2所示,。


2.2.2 ADμC7020
   
使用JTAG仿真調(diào)試ADμC7020,,其引腳為TMS、TDI,、TCK、TD0,、TRST,。
    使用ADμC7020的兩個I2C接口。P1.1和P1.2構成I2C總線O,,ADμC7020作為I2C從機,。上位機PC作為I2C主機。P1.3和P1.4構成I2總線1,,ADμC7020作為I2C主機,,Si5040作為I2C從機。
    P0.6,、P0.4和P0.5引腳作為輸入腳測試Si5040的狀態(tài)RX LOS,、RX LOK和Interrupt。
    P1.4,、P1.5,、P1.6、P1.7和P4.2引腳控制測試待測XFP模塊的各種狀態(tài),。
    ADC0,、ADC1和ADC2測量誤碼測試系統(tǒng)中有關電壓值+5 V、+3.3 V和+1.8 V的各電壓通道上的總電流值,。
    ADC3,、ADC4和ADC12測量誤碼測試系統(tǒng)中XFP模塊的電壓值+5 V、+3.3 V和+1.8 V,。
    跳線接地時即P0.0接地,,同時Flash 0x14地址的內(nèi)容為0xFFFFFFFF時,在兩個條件同時滿足時,,在ADμC7020復位時可自動進入Bootlo-ader程序(即在系統(tǒng)中編程ISP),,這樣可以不使用JTAG仿真器,以方便誤碼測試儀的ADμC7020的Firmware在線升級換代。
    ADμC7020部分原理圖如圖3所示,。



3 FIRMWARE設計
   
①當ADμC7020作為I2C從機時,,構建一個I2C訪問的寄存器映射表(Memory Map)。共有2個頁面,,每個頁面256個寄存器,。其中頁面0有待測XFP模塊和Si5040的狀態(tài)顯示、控制,、上電初始化值,、儀器接口初始化等寄存器。頁面1為Si5040的映射寄存器,,其將Si5040內(nèi)部全部的184個寄存器全部映射到本頁,,測試人員可以通過該頁的寄存器對應訪問Si5040的相關寄存器,每個頁面的最后一個寄存器是頁面選擇寄存器,。
    ②收到上位機命令,,解釋上位機命令并完成測試或控制待測模塊和Si5040功能。
    ③設置Si5040循環(huán)控制定時器值為100 ms,,即每100 ms檢測待測模塊的狀態(tài)和Si5040的寄存器值,,并映射到構建的相關寄存器中。
    ④設置ADC采樣TIMER也為100 ms,,即每100 ms通過ADC采樣測量相應的電壓值和電流值,。并將值映射到構建的相關寄存器中,供上位機查詢,。
    ⑤上電初始化Si5040相關測試誤碼寄存器,。在上電復位時,ADμC7020按照其寄存器映射表的初始值配置Si5040,。修改初始配置表可以改變Si5040的上電寄存器設置,。在上電初始化完成后,通過I2C接口修改Tablel的Si5040映射寄存器值,,也可以改變Si5040的相關寄存器的配置,。

4 上位機及人機界面
4.1 人機界面

    Lab Windows/CVI所設計的人機界面如圖4所示,左部為誤碼率測試,,右部為寄存器狀態(tài)及控制,。在測試前,通過串口讀光功率計和衰減器的值,,根據(jù)生產(chǎn)和測試要求配置衰減器衰減量,,在完成整個測試平臺的配置并選擇測試時的偽隨機碼列后,按下“開始”按鍵,,可以開始測試,。在Elapsed Time(s),、Error Count和BER三個顯示框中分別顯示測試時間、誤碼個數(shù)及誤碼率,。“信號發(fā)生器”按鍵為使用Si5040配置TX信道的端口信號,,不讀Si5040的誤碼個數(shù),不計算RFR值,。


4.2 底層驅(qū)動
   
控制上位機PC的并口,,按I2C協(xié)議產(chǎn)生相應的I2C讀寫時序。上位機PC的并口DB25由3個寄存器組成:數(shù)據(jù)寄存器(Data Register),、狀態(tài)寄存器(Status Register)和控制寄存器(Control Register),,在SPP(Standard Parallel Port)模式,即標準并口模式下,,地址為:數(shù)據(jù)寄存器(0x378),、狀態(tài)寄存器(0x379)、控制寄存器(0x37a),。通過數(shù)據(jù)寄存器的數(shù)據(jù)輸出和狀態(tài)寄存器數(shù)據(jù)的讀入,,控制SCL和SDA總線以及讀SCL和SDA的狀態(tài),可以方便地產(chǎn)生I2C時序中的START,、STOP、ACK,、NACK等基本的時序,,通過這些基本時序生成了完整的I2C讀寫的時序。

5 實驗
   
在碼型中可選擇PRBS7,、PRBS31或64位用戶自定義碼型,,針對XFP光模塊一般選擇PRBS31碼型,置信度為95%,,短時間測量采用30 s,,長時間測量采用3000 s。對比實驗采用Agilent 86100 Infinite DAC和Agilent70843B 12 Gb/s誤碼測試儀搭建的誤碼測試系統(tǒng),。結果顯示,,在測量時間內(nèi)兩系統(tǒng)測試的誤碼個數(shù)相近,而且誤碼率測試結果達到10E-12,。

結語
    本系統(tǒng)充分利用了ADμC7020強大功能及Si5040的誤碼檢測功能,,結合虛擬儀器特點,構造了一種誤碼測試系統(tǒng),。對于大多數(shù)光收發(fā)模塊生產(chǎn)廠家,,其對XFP模塊生產(chǎn)及測試線有一定的量及周期要求,本系統(tǒng)以其體積小,、系統(tǒng)搭建簡便,、靈活性強,、成本低的特點,可以代替部分國內(nèi)外高速誤碼測試儀,。與進口誤碼測試儀的對比測量,,充分證明了這點。另外,,本測試系統(tǒng)可利用ADμC7020的強大Bootloader程序,,完成Firmware升級,實現(xiàn)在系統(tǒng)編程,,同時整套系統(tǒng)硬件稍加以改進就可以應用于XFP模塊的靈敏度測試,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載,。