基于VSC8228的高速誤碼測試儀的設計*
摘要: 本文介紹了利用VSC8228完成高速誤碼檢測的實現過程。通過實際使用表明:該方案的實現不僅廉價和使用方便,而且性能可靠。
本文引用地址:http://www.j9360.com/article/80008.htm關鍵詞: 誤碼測試;高速;重定時器;VSC8228
引言
在數字通信系統的性能測試中,通常使用誤碼測試儀對其誤碼性能進行測量。目前市面上已有多種誤碼測試儀。隨著通信技術的不斷發展,通信系統向著工作頻率更高,信號處理更快的方向發展。在這種情況下,對于高速通信系統性能的檢驗,就需要高速誤碼率測試儀。國內廠家的產品,其信號處理速度較低,很難跟上現代通信系統的發展。國外的產品功能比較完善,處理速度很高,但其價格也相對較高。本文根據VITESSE公司的VSC8228芯片特點,提出一種可以方便地設計和制造價廉高速誤碼測試儀的方案,速度可達4.25Gbps。
VSC8228實現誤碼檢測
VSC8228可提供的一個雙通道重發器或重定時器,能應用于光纖信道、千兆比特以太網、SONETSDH以及無限帶寬等多個領域。設備支持速率從125Mbps到4.25Gbps。利用獲得的單一的時鐘頻率,該芯片可以將輸入的串行數據在重定時器模式下與本地的參考時鐘同步,或者在重發器模式下,與從輸入數據中提取的時鐘同步。在重定時器模式下,通過增加/減少彈性緩沖器插入/刪除光纖信道填充字來調整輸入數據與本地參考時鐘的時序差異。
表1 piox與復用模式選項
VSC8228芯片主要分為四個主要部分:接收信道(RX),發送信道(TX),碼型產生器與檢測器,串行接口。當芯片應用于SGMII的標準時,接收信道能夠提供一個從數據中提取的時鐘,除了這種情況之外,接收信道和發送信道完全相同。每個信道都有一個輸入緩沖器,時鐘恢復單元,提供反饋和可編程的輸出驅動。每個信道可以由各自的內部寄存器和硬件I/O口來獨立控制。VSC8228的狀態寄存器與控制寄存器的地址從00h到77h,一共128個寄存器,其中部分寄存器為VITESSE公司保留使用。通過設置相關寄存器,可以實現誤碼檢測功能。
通過差分I/O口,片上輸入/輸出端接,輸入均衡與輸出去重,可以保持高度的信號完整性??删幊痰妮斎刖怆娐房梢匝a償PCB長線、背板、連接器和電纜上的頻率限制。均衡、去重、輸出驅動級、數據速率以及其他性能都是通過工業標準串行接口(Two-wire或者SPI)配置的。芯片內核與高速I/O口可以由一個1.2V的電源供電,也可是1.8V電源,或者兩者一起供電。采用1.8V的電源供電是為了滿足LVPECL輸出擺動。為了兼容老化的控制器和專用集成電路(ASIC),TTL控制和標準I/O口可以由1.2V,1.8V,2.5V,3.3V電源中的任意一種供電。
從表1中可以看出,PIOx提供三種功能:SPI串行通信、I2C串行通信、引腳可編程模式。因此,可以利用SPI或者I2C總線來完成對VSC8228內部寄存器的設置,而通過對引腳可編程模式可以選擇多種操作模式,比如環路,旁路,重定時或者重發,碼型產生和檢測。這些模式可以通過硬件引腳M0、M1、M2、M3或者內部芯片模式選擇寄存器來控制。對于大部分模式,RX與TX都可以分別配置為重發器或者重定時器。而對于實際運用,一般將TX與RX信道同時配置為重發器或者重定時器。在重發模式下,串行數據進入CDR,在CDR中時鐘從數據中提取出來,數據與恢復的時鐘重新同步。而在重定時模式下,CDR的重定時功能將接收的串行數據與本地產生的參考時鐘同步。
SPI通信時序如圖1所示,SCK為SPI串行通信時鐘信號,SSN為片選信號,低有效,MOSI為主出從入,MISO為主入從出,它們都與SCK的上升沿同步。在SPI通信時,先傳輸7位地址,后傳輸讀寫控制位OP,OP為0時表示讀,OP為1時表示寫,最后傳輸8位數據,故SPI通信的命令字長度為16位。
圖1 SPI通信時序圖
通過選擇125M、106.25M、155M或者62.5M、53.125M、77.76M作為本地參考時鐘頻率,VSC8228可運用的領域有ESCON/SBCON、OC-3/OC-12/OC-48、快速及千兆比特以特網,以及光纖信道。故其速率最高可達4×Fibre Channel的4.25Gbps。
誤碼檢測功能設置及BER計算
VSC8228的碼型產生器與檢測器可以產生與探測27 、 223、231的偽隨機碼,40 或 64比特用戶定義碼型以及光纖信號CRPAT、 CJTPAT 、CSPAT碼型。錯誤掩碼使能可以在碼型產生端使某些位發生錯誤,也可以使檢測端的某些比特產生錯誤,從而實現誤碼插入功能。碼型產生器與碼型檢測器都是互相獨立的。當芯片模式為引腳可編程模式,而M3、M2、M1、M0當設置為0001或者1100時,可以實現誤碼檢測功能。而且此時,TX與RX信道都必須設置為Retimer模式,即重定時模式。
圖2就是當M3、M2、M1、M0設置為0001時,時鐘與數據的流向圖,圖中,綠線為數據流,藍線為時鐘。由圖可知,PG模塊(即碼型產生器)產生的PBRS流從TXout流出,需檢測的數據流從RXin輸入,由于TX與RX信道都工作在Retimer模式,RX接收的數據將與本地時鐘重新同步,同步后,數據流進入CHK模塊進行誤碼檢測。
圖2 重定時模式下的碼型產生器與檢測器
VSC8228關于誤碼檢測的寄存器有8個。寄存器為8比特寬,通過SPI或者I2C串行總線來設置各寄存器。
碼型產生與碼型檢測以及自定義碼型產生與自定義碼型檢測的碼型必須設置一致。該芯片的誤碼計數器有32比特寬,可以計數高達43億個誤碼。誤碼比較停止有兩種模式:一種是檢測的時間達到了檢測時間設定寄存器里的設定的時間值;另一種是“自由比較”模式,在這種模式下,除非誤碼計數器記滿或者用戶強制停止,否則誤碼比較將永遠比較下去。
為了計算BER,檢測器有一個40比特的定時器。定時器的時鐘周期為傳輸碼流速率的1/16,在檢測時間設定寄存器里設定測試時間,而檢測時間讀回寄存器里的值表示測試剩余時間,每經過一個時鐘周期,讀回寄存器里的值就減1。誤碼率是誤碼個數與總碼個數的比值??偞a個數是檢測時間和速率的乘積。對不同的速率有不同的總數。計算測試時間與BER的公式如下:
(1)
BER=誤碼個數= 誤碼個數
碼總個數 碼流速率×檢測時間 (2)
其中,fs為系統時鐘(串行傳輸碼流速率)。
碼型檢測狀態寄存器中的SYNC位在檢測器與輸入的碼流同步之后就置1,FAIL位置1表示檢測器探測到至少一個比特誤碼,而ECF位只有在誤碼計數器滿了才會置1,如果SYNCERR位為1,則表示檢測器還未與輸入碼流同步,而檢測控制位已經清零,BUSY位在檢測開始之后就一直為1。該位只有以下三種情況下才會清零:
·檢測控制位清零,即檢測停止命令;
·誤碼計數器記滿;
·定時器的設定的檢測時間到。
狀態寄存器的各比特位聯合表示的含義如表2所示。
表2 碼型檢測狀態寄存器各比特的含義
誤碼測試儀的調試與實現
利用VSC8228芯片可以很方便的設計出一個廉價的高速誤碼測試儀。誤碼儀可分為兩個獨立的子系統:誤碼測試子系統和人機界面子系統。測試子系統由VSC8228芯片來實現。它完成偽隨機碼型的產生,同步及對比檢測,計算出誤碼個數。人機界面子系統在整個測試系統中作為系統控制核心單元,通過人機界面完成系統作業。以C8051F系列單片機作為人機界面硬件的控制部分。對VSC8228芯片的控制、誤碼率的計算以及測試子系統的各狀態的顯示都通過PC機的界面來實現。PC界面可采用Delphi語言編寫。
整個誤碼測試儀系統方框圖如圖3所示。
圖3 誤碼測試儀系統方框圖
由于本誤碼測試儀的工作速率較高,故必須選擇高精度的晶振作為本地參考時鐘。在開發中,目前選取的晶振是VECTRON公司的VCC6-QAB-125M00,其頻偏小于100ppm,上升時間與下降時間都在2ns左右。
C8051F005單片機是完全集成的混合信號系統級芯片(SoC),具有與8051兼容的高速CIP-51內核,片內集成了數據采集和控制系統中常用的模擬、數字外設及其他功能部件。內置FLASH程序存儲器、內部RAM,大部分器件內部還有位于外部數據存儲器空間的RAM,即XRAM,有I2C/SMBus、UART、SPI串行接口。C8051F005單片機具有片內調試電路,通過JTAG接口可以進行非侵入式、全速的在系統調試。
誤碼測試儀的實現過程如下:PC界面通過RS232串口實現與C8051F005的通信,將對VSC8228各寄存器的設置發送給F005單片機,每個控制命令為16比特;單片機通過SPI口將上位機發送過來的控制命令轉發給VSC8228,完成VSC8228的各寄存器的設置。在將8228從SPI通信模式轉到引腳可編程模式后,VSC8228產生PBRS(自定義碼型或光纖信道碼流),碼流經調試模塊后,輸入到VSC8228的碼型檢測端,檢測端開始進行同步,同步完成后,就開始檢測誤碼,并將整個工作過程中的各種狀態通過檢測狀態寄存器以及其他狀態寄存器顯示出來。為了實時的顯示誤碼儀的工作狀態,單片機每秒掃描一次各寄存器,將其值通過RS232串口上傳到PC界面。
圖4 誤碼測試儀PC界面
本誤碼議的界面開發,主要基于Delphi平臺。主要采用Delphi的spcomm組件來實現串口通信。它主要實現以下功能:顯示當前日期和時間、根據檢測需要設置檢測參數(產生碼型、檢測碼型、速率、輸出去重、擺動輸入均衡、探測門限等)、運行時間及BER的計算、控制按鈕及LED顯示檢測狀態。狀態燈可以顯示的狀態有“無信號”,“同步態”“失同步態”與“等待態”等。
由于該誤碼儀的工作頻率可高達4.25Gbps,故在電路設計中需特別考慮信號完整性問題,嚴格按高速PCB電路設計方法來進行設計,如合理的端接,布4層PCB板,利用candence軟件對于關鍵線路進行仿真等。在本誤碼儀的調試過程中,遇到的問題也主要是由于信號的速度快而引起的。
目前本方案的誤碼檢測儀已運用于EPON光收發模塊的連續碼測試,在與臺灣宜捷威科技的FMTS-3000以及安立的MP1630的測試比較結果看,本方案的誤碼儀其誤碼數量級與上述兩種設備基本一致,但是不能支持突發誤碼的測試。對突發誤碼測試的支持是項目組下一步研究的目標。
結語
VSC8228芯片支持多種速率,內置PBRS及其他碼型的產生及探測模塊,本文利用該特點設計出一種廉價的高速誤碼儀,其測試碼型有27 、223、231的偽隨機碼,40或64比特用戶定義碼型以及光纖信號CRPAT、CJTPAT、CSPAT碼型,一次可測誤碼高達43億個,測碼速高達4.25Gbps。在EPON光收發模塊中實現了誤碼測試,取得較好的效果,而且功耗低。
參考文獻:
1. Vitesse Inc.VSC8228 datasheet.www.vitesse.com
2. Yongquan Fan, Zeljko Zilic,and Man Wah Chiang.A Versatile High Speed Bit Error Rate Testing Scheme.Quality Electronic Design, 2004. Proceedings. 5th International Symposium on,IEEE2004:395-400
3. Wei-Zen Chen;Guan-Sheng Huang.A parallel multi-pattern PRBS generator and BER tester for 40/sup +/ Gbps Serdes applications.Advanced System Integrated Circuits 2004. Proceedings of 2004 IEEE Asia-Pacific Conference on. Aug 2004 Page(s):318-321
4. Sharawi, M.S.Practical issues in high speed PCB design.Potentials,IEEE,Volume 23,Issue 2,Apr-May 2004 Page(s):24~27
5. 陳偉、劉會衡、黃秋元,EPON突發式光信號產生及測試系統設計,武漢理工大學學報2005.27(10),86-88
adc相關文章:adc是什么
塵埃粒子計數器相關文章:塵埃粒子計數器原理 晶振相關文章:晶振原理 網線測試儀相關文章:網線測試儀原理
評論