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