引 言
隨著通信技術(shù)的不斷發(fā)展,通信系統(tǒng)信號(hào)處理越來越快。在這種情況下,對(duì)于高速通信系統(tǒng)性能的檢驗(yàn),就需要高速誤碼測(cè)試儀。目前市而上已有多種誤碼測(cè)試儀。國(guó)內(nèi)產(chǎn)品的信號(hào)處理速度較低,而國(guó)外產(chǎn)品的功能雖然比較完善,處理速度很高,但其價(jià)格也相對(duì)較高。本文根據(jù)Vitesse公司的VSC8228芯片特點(diǎn),利用C8051F005單片機(jī)設(shè)計(jì)出一種價(jià)廉的高速誤碼測(cè)試儀。下面將對(duì)其軟硬件設(shè)計(jì),特別是C8051F005與上位機(jī)的串口通信以及與VSC8228的SPI通信進(jìn)行詳細(xì)探討。
1 誤碼測(cè)試系統(tǒng)概述
Cygnal公司的單片機(jī)C8051F005具有高速8051微控制器內(nèi)核,速度可達(dá)25 MIPS,指令為流水線指令結(jié)構(gòu),70%的指令的執(zhí)行時(shí)間為1個(gè)或2個(gè)系統(tǒng)時(shí)鐘周期;可片內(nèi)JTAG調(diào)試和邊界掃描,這樣可提供全速、非侵人式的在系統(tǒng)調(diào)試(不需仿真器);片內(nèi)有多達(dá)60 KB的FlashROM和2 KB RAM,用戶無需再外擴(kuò)存儲(chǔ)器;可同時(shí)使用的硬件SMBus(I2C兼容)、SPI及UART串口,4個(gè)通用16位計(jì)數(shù)器/定時(shí)器。
VSC8228可提供的一個(gè)雙通道重發(fā)器或重定時(shí)器,能應(yīng)用于光纖信道、千比特以太網(wǎng)、SONET/SDH以及無限帶寬等多種領(lǐng)域。設(shè)備支持速率從125Mbps~4.25Gbps。該芯片可以將輸入的串行數(shù)據(jù)在重定時(shí)器模式下與本地的參考時(shí)鐘同步,內(nèi)置的碼型產(chǎn)生器與檢測(cè)器可以產(chǎn)生與探測(cè)27、223、231的偽隨機(jī)碼,40或64位用戶定義碼型以及光纖信號(hào)CRPAT、CJTPAT、CSPAT碼型。它含128個(gè)寄存器,可通過SPI或者I2C串行總線設(shè)置相關(guān)寄存器,可以實(shí)現(xiàn)誤碼檢測(cè)功能。
誤碼測(cè)試系統(tǒng)可分為兩個(gè)部分:誤碼測(cè)試部分和人機(jī)界面。測(cè)試部分由VSC8228芯片來實(shí)現(xiàn)。它完成偽隨機(jī)碼型的產(chǎn)生、同步及對(duì)比檢測(cè),計(jì)算出誤碼個(gè)數(shù)。人機(jī)界面子系統(tǒng)在整個(gè)測(cè)試系統(tǒng)中作為系統(tǒng)控制核心單元,通過人機(jī)界面完成系統(tǒng)作業(yè)。以C8051F005單片機(jī)作為人機(jī)界面硬件的控制部分,對(duì)VSC8228芯片的控制、誤碼率的計(jì)算以及測(cè)試子系統(tǒng)的各狀態(tài)的顯示都通過PC機(jī)的界面來實(shí)現(xiàn)。PC界面采用Delphi語言編寫。
誤碼測(cè)試儀的工作流程如下:PC界面通過RS232串口實(shí)現(xiàn)與C8051F005的通信,將對(duì)VSC8228各寄存器的沒置發(fā)送給C8051F005單片機(jī),每個(gè)控制命令為16位;單片機(jī)通過SPI口將上位機(jī)發(fā)送過來的控制命令轉(zhuǎn)發(fā)給VSC8228,完成VSC8228各寄存器的設(shè)置。為了實(shí)時(shí)地顯示誤碼測(cè)試儀的工作狀態(tài),單片機(jī)每秒掃描一次各寄存器,將其值通過RS232串口上傳到PC界面。