- 相關(guān)推薦
基于FPGA的智能誤碼測試儀
摘要:誤碼儀是評估信道性能的基本測量儀器。先從誤碼儀的基本框圖入手,介紹其中各個(gè)功能模塊的作用;之后著重討論誤碼儀中關(guān)鍵模塊的實(shí)現(xiàn)方法;最后介紹誤碼儀的外圍附件和擴(kuò)展能力。在實(shí)際工作中,常常需要誤碼儀能測試多種信道。但是目前市面上所銷售的誤碼儀大多只能測試電信部門的標(biāo)準(zhǔn)通信信道,低速以一、二次群為主,高速可達(dá)SDH信道速率;且價(jià)格昂貴、體積偏大,不能用于測試實(shí)際工作中大量存在的專用信道或自行架設(shè)的信道。這類信道多為水文監(jiān)測、氣象預(yù)報(bào)等特殊用途而設(shè)計(jì),一般對傳輸系統(tǒng)的可靠性要求較高。
本文所介紹的智能誤碼儀在設(shè)計(jì)時(shí)特別考慮了這類信道的測試要求。它結(jié)合FPGA及單片機(jī)的結(jié)構(gòu)特點(diǎn)進(jìn)行編程,可在較寬的速率范圍內(nèi)(150bit/s~2.048Mbit/s)實(shí)現(xiàn)智能位同步和快速碼序列同步。用戶不僅可以從LCD上了解信道的誤碼情況,還可以通過儀器與PC機(jī)連接,在個(gè)人電腦上看到某段時(shí)間內(nèi)的誤碼率折線圖和其它誤碼信息,并以此來了解系統(tǒng)的誤碼發(fā)生情況。為了便于在無人值守的情況下進(jìn)行誤碼測試,該誤碼儀內(nèi)置了大容量的E2PROM,可以保存被測系統(tǒng)最后4000次的誤碼事件(包括時(shí)間及誤碼率大。S捎谠O(shè)計(jì)時(shí)采用了FPGA、單片機(jī)等大規(guī)模集成電路,該誤碼儀不僅體積小巧(采用貼片元件時(shí)僅香煙盒大。页杀镜土、功能強(qiáng)大,具有較高的實(shí)用價(jià)值和市場價(jià)值。
1 誤碼儀總體框圖及誤碼測試原理
1.1 誤碼儀整體結(jié)構(gòu)
圖1是該誤碼儀的整體設(shè)計(jì)框圖。
m序列發(fā)生模塊的主要功能是根據(jù)用戶的速率要求產(chǎn)生測試序列——m序列。實(shí)際設(shè)計(jì)時(shí),采用CCITT建議的用于低速數(shù)據(jù)傳輸設(shè)備測試誤碼的m序列,其特征多項(xiàng)式為X9+X5+1,周期為512。在外部附件的支持下,它還可以進(jìn)行多種碼型變換和調(diào)制解調(diào)。
位同步模塊的主要功能是從傳來的碼元中提取位同步信息——碼元時(shí)鐘?并將這一時(shí)鐘提供給本地序列同步模塊,以便在本地恢復(fù)出與測試序列同步的檢驗(yàn)序列。
序列比較模塊用于比較檢驗(yàn)序列與測試序列的一致性。通過比較就能知道經(jīng)過被測信道傳輸后測試序列中有多少碼元產(chǎn)生了錯(cuò)誤,并以此評估被測信道的性能。由于m序列是周期序列,所以測試序列與檢驗(yàn)序列的比較必須在周期的同一位置開始進(jìn)行(即同相)。這也是本地序列同步模塊的另一項(xiàng)重要功能。完成了序列比較后,序列比較模塊將實(shí)時(shí)地把傳輸?shù)目偞a元數(shù)和誤碼數(shù)傳送給單片機(jī)。
單片機(jī)是整個(gè)誤碼儀的核心,它根據(jù)用戶的選擇控制各模塊的正常工作,并根據(jù)各模塊提供的狀態(tài)向用戶發(fā)出誤碼事件、狀態(tài)告警、故障提示等信息。在加電時(shí)對FPGA進(jìn)行配置也是單片機(jī)的一項(xiàng)重要任務(wù)。實(shí)際設(shè)計(jì)時(shí)選用了性價(jià)比極高的FPGA——Altera公司的FLEX10K10。該器件的配置文件有15K字節(jié),因此選用了大容量的通用單片機(jī)AT89C55。存儲(chǔ)器及時(shí)鐘為用戶查詢誤碼信息提供了方便,為了簡化電路設(shè)計(jì),選用了I2C總線方式的E2PROM(24LC128)和專用時(shí)鐘芯片(PCF8563)。
1.2 主要模塊特點(diǎn)
在設(shè)計(jì)該誤碼儀時(shí),根據(jù)FPGA的結(jié)構(gòu)特點(diǎn)進(jìn)行編程,采用了獨(dú)特的算法,使該誤碼儀中位同步模塊和本地序列同步模塊具有較強(qiáng)的智能處理能力。
位同步模塊可自適應(yīng)地提取并跟蹤位同步時(shí)鐘。由于誤碼儀需要對多種非標(biāo)準(zhǔn)信道進(jìn)行測試,因此它必須能在較寬的速率范圍內(nèi)工作。在位同步模塊中采用了新型數(shù)字鎖相算法,使該誤碼儀能在不知道發(fā)端發(fā)送速率的情況下對信號進(jìn)行快速而準(zhǔn)確的位同步處理。在單片機(jī)的配合下,還可向用戶提供無信號提示、失步告警等多種信息。
本地序列同步模塊可實(shí)現(xiàn)快速序列同步。完成位同步后,誤碼儀還需進(jìn)行序列同步。為了減少序列同步的時(shí)間,設(shè)計(jì)了快速序列同步算法,使誤碼儀能在不知道發(fā)送端m序列發(fā)生器初始狀態(tài)的情況下進(jìn)行快速盲同步,并提供序列失步告警和序列失步后快速恢復(fù)功能。因此,該誤碼儀不僅可以用于對信道進(jìn)行閉環(huán)測試,而且還能方便地進(jìn)行開環(huán)測試。
1.3 誤碼儀基本測試過程
m序列發(fā)生模塊首先根據(jù)用戶的速率要求發(fā)送測試序列。該序列經(jīng)過被測信道傳輸后到達(dá)接收端,并送入位于FPGA內(nèi)的位同步模塊。位同步模塊恢復(fù)碼元時(shí)鐘成功后,會(huì)將這一時(shí)鐘送至其它模塊,并通知單片機(jī)位同步成功。其它模塊利用本地時(shí)鐘完成檢驗(yàn)序列恢復(fù)、同步及比較,并由此得到誤碼信息:誤碼數(shù)和總碼數(shù)。該信息實(shí)時(shí)傳送給單片機(jī)后,單片機(jī)每隔1秒進(jìn)行一次誤碼率的計(jì)算,并將具體日期、時(shí)間和誤碼率大小顯示在LCD上。如果誤碼率大于0則認(rèn)為發(fā)生了一次誤碼事件,單片機(jī)會(huì)將此事件發(fā)生的時(shí)間和誤碼率的大小記錄在儲(chǔ)存器內(nèi),并通過RS232串口上傳至PC機(jī)。
2 核心部分設(shè)計(jì)
FPGA中的位同步模塊和序列同步模塊是實(shí)現(xiàn)誤碼儀的關(guān)鍵。這兩個(gè)模塊設(shè)計(jì)得好壞直接影響著誤碼儀的整體性能。同時(shí),誤碼儀智能能力的實(shí)現(xiàn)也離不開單片機(jī)的有效工作。
2.1 位同步模塊
實(shí)際應(yīng)用中,由于不同的被測信道采用不同的技術(shù),因此其傳輸方式、傳輸速率、復(fù)雜程度都各不相同。這就要求誤碼儀中的位同步模塊具有較強(qiáng)的適應(yīng)能力。一般常見的同步方法如插入導(dǎo)頻法、濾波法等都無法滿足信道多變的要求?5?。為此,根據(jù)數(shù)字鎖相環(huán)的基本原理并結(jié)合FPGA的結(jié)構(gòu)特點(diǎn),研究了一種自適應(yīng)的智能鎖相算法,該算法可使誤碼儀在較寬的速率范圍內(nèi)對信號時(shí)鐘進(jìn)行智能提取和跟蹤,具有較高的實(shí)用價(jià)值。
【基于FPGA的智能誤碼測試儀】相關(guān)文章:
一種基于FPGA的誤碼性能測試方案03-18
基于FPGA的集成運(yùn)放參數(shù)測試儀03-07
基于EDA技術(shù)的FPGA設(shè)計(jì)03-18
基于FPGA的快速傅立葉變換03-19
基于FPGA的HDLC通信模塊的實(shí)現(xiàn)05-14
基于FPGA的TS over lP的設(shè)計(jì)與實(shí)現(xiàn)03-21
基于FPGA的前端圖像采集卡的設(shè)計(jì)11-22
基于微處理器的FPGA配置方案03-07