摘 要: 本文提出了一種基于FPGA的誤碼測試方案,并在FPGA上實現(xiàn)了其功能。該方案不僅納入了“同步保護”的思想,同時對誤碼率量級的判斷也提出了一種簡化而又可行的方法。
在數(shù)字通信系統(tǒng)中,為了檢測系統(tǒng)的性能,通常使用誤碼分析儀對其誤碼性能進行測量。誤碼分析儀給工程實際應(yīng)用帶來了極大的便利,比如它有豐富的測試接口和測試內(nèi)容,并能將結(jié)果直觀、準確的顯示出來。但是它的價格昂貴,并且通常需要另加外部輔助長線驅(qū)動電路才能與某些系統(tǒng)接口適配。這些都嚴重的制約了通用誤碼儀在實際中的應(yīng)用。
基于工程的需要和實際應(yīng)用中的困難性,本文提出一個基于FPGA的多功能誤碼測試方案。芯片采用Altera公司的ACEX1K家族的EP1K50。
誤碼測試
圖1就是系統(tǒng)框圖。
該誤碼儀由發(fā)送端、接收端,以及接口模塊等部分組成。發(fā)送端產(chǎn)生測試的比特流,作為通信系統(tǒng)的信源數(shù)據(jù)通過接口模塊發(fā)送出去,另外它還有誤碼插入功能;接收端模塊從數(shù)據(jù)接口中接收通信系統(tǒng)輸出的比特流,并將它與本地產(chǎn)生的,與發(fā)端形式相同的比特流進行比較,進行誤碼統(tǒng)計,從而完成誤碼測試功能。
發(fā)送端
在發(fā)送端要產(chǎn)生替代通信信源的碼序列,那么究竟應(yīng)該選擇什么樣的碼作為測試碼呢?這類碼序列的最重要的特征是具有近似于隨機信號的性能。也可以說具有噪聲近似的性能。但是,真正的隨機信號和噪聲是不能重復(fù)再現(xiàn)和產(chǎn)生的。所以只能產(chǎn)生一種周期性的脈沖信號來近似隨機噪聲的性能,這稱之為偽隨機序列或PN碼。本方案中就采用m序列作為測試碼,雖然它是周期信號,但它具有類似于隨機信號較好的自相關(guān)特性。
發(fā)送端另外一個重要的功能是實現(xiàn)誤碼插入。也就是人為的在發(fā)送序列中插入已知插入頻率的誤碼信號,然后在接收端檢測這些誤碼,最后可以將檢測的結(jié)果與發(fā)送端已知的插入頻率進行比較,以判斷通信系統(tǒng)的誤碼性能。這也是檢測通信系統(tǒng)性能的重要方法之一。在此可以通過一個受時鐘控制的反向器實現(xiàn)這一功能。將傳輸?shù)哪骋粋€碼通過反向器,也就是強制它變?yōu)橐粋€比特的誤碼,改變反向器的時鐘控制信號就可以實現(xiàn)對誤碼插入率的控制。

圖1 系統(tǒng)框圖

圖2 同步判別的狀態(tài)轉(zhuǎn)移圖

圖3 有同步保護的同步判別狀態(tài)轉(zhuǎn)移圖

圖4 不含插入誤碼的時序圖圖

圖5 含插入誤碼的時序圖
接收端
接收端實際上可以分成三個功能子模塊:本地m序列發(fā)生子模塊,同步子模塊,誤碼率計算子模塊。
本地m序列發(fā)生子模塊的結(jié)構(gòu)與發(fā)送端相似,只是將接收到的連續(xù)r位碼長的序列(其中r為發(fā)送端m序列發(fā)生器的級數(shù))置入本地m序列寄存器中,作為其初始狀態(tài),并且收發(fā)雙方已同步于這個狀態(tài),由前面對m序列的討論知道,如果兩個具有相同邏輯結(jié)構(gòu)的m序列發(fā)生器在某一時刻寄存器狀態(tài)相同,則由這兩個m序列發(fā)生器所產(chǎn)生的數(shù)字數(shù)據(jù)流保持同步。這樣在本地就可以產(chǎn)生一個與發(fā)送端結(jié)構(gòu)相同且比特對齊的m序列了。
同步判斷是進行誤碼統(tǒng)計的先決條件,只有對接收到的碼序列與本地碼序列不斷地進行同步判斷,確定收、發(fā)端處于同步狀態(tài),那么誤碼統(tǒng)計才有意義。在通信系統(tǒng)中同步的方法有很多種,但由于對于誤碼測試儀,發(fā)送端并不是真實的隨機信息,在接收端只要確定了m序列的級數(shù)和某一時刻的寄存器狀態(tài),就能在后續(xù)的時間里產(chǎn)生出與發(fā)送端同步的m序列。所以通信系統(tǒng)中通常采用的如滑動相關(guān)法,匹配濾波法,插入導(dǎo)頻法等方法在這里并沒有用。
很容易想到,如果接收端截取的N位碼序列中包含有誤碼,則由此產(chǎn)生的本地序列與發(fā)端是不同的,那么此后進行的誤碼統(tǒng)計就是毫無意義的,因此對誤碼測試儀收發(fā)雙方進行嚴格同步的意義是為了避免由于將接收到的含有誤碼的狀態(tài)作為本地初始狀態(tài)而造成的“假同步”。同步判別的狀態(tài)轉(zhuǎn)移如圖2所示。
實現(xiàn)了上述功能的同步模塊在實際應(yīng)用中已經(jīng)能夠保證收發(fā)雙方的同步問題了,但是考慮到實際系統(tǒng)的處理能力及處理性能,還有必要對他做進一步的優(yōu)化。觀察上述系統(tǒng)不難發(fā)現(xiàn),同步模塊一旦探測到接收到的誤碼個數(shù)超過了預(yù)設(shè)的判決門限就認為收發(fā)雙方不同步,而重新進行同步判定,這種處理方式不僅降低了誤碼儀對突發(fā)錯誤的處理能力,更嚴重的是會導(dǎo)致接收端進行反復(fù)同步,從而大大降低了處理的效率。而實際上這種由突發(fā)錯誤造成的“反復(fù)同步”是沒有必要的。所以在實際的設(shè)計中我們又納入了“同步保護”機制。有同步保護的狀態(tài)轉(zhuǎn)移如圖3所示。
由圖3可以看到,有同步保護的同步判別狀態(tài)轉(zhuǎn)移圖只是在原有的四個狀態(tài)的基礎(chǔ)上增加了一個失同步檢查態(tài),增加這個狀態(tài)的目的是為了在同步計數(shù)的過程中,如果有短時的大量突發(fā)誤碼,并不立即指示時同步信號,而是進行失同步檢查,如果在后續(xù)的連續(xù)幾個檢測周期內(nèi)都有大量的誤碼,那么可以判斷收發(fā)端已經(jīng)失同步了,立即給出失同步報警信號。此時有必要對本地m序列發(fā)生器重新加載,重新同步;而如果短時的大量誤碼只是由于突發(fā)誤碼造成的,后續(xù)的幾個連續(xù)檢測周期內(nèi)接收端的誤碼并沒有超過判決門限,那么就繼續(xù)進行同步計數(shù),沒有必要重新進行同步判定了。
在同步模塊中,判決門限的設(shè)定與采用的m序列的周期,以及誤碼測試的準確性要求有關(guān)。
當(dāng)收發(fā)端已經(jīng)判斷同步以后,只要將接收信號與本地的m序列流進行同步的串行比較就可以統(tǒng)計誤碼了。誤碼率的計算常常又需要進行除法運算,要在FPGA中或其它的可編程邏輯器件中實現(xiàn)除法運算通常要消耗掉大量的邏輯資源,可以采用估算的辦法大致的估計出誤碼率。具體的方法是:在進行測試的時候首先設(shè)定一個統(tǒng)計周期,對傳輸?shù)拇a元進行一個統(tǒng)計,例如設(shè)定統(tǒng)計周期為100M信號。然后對這100M傳輸信號進行誤碼統(tǒng)計,給定一系列判決門限,在每個周期結(jié)束的時候,將誤碼統(tǒng)計結(jié)果與判決門限進行比較,得出誤碼率量級,例如:如果誤碼個數(shù)在5 到50 之間,則認為誤碼量級為10-7,在50 到500之間,就認為誤碼率量級為10-6,以此類推。這樣估算不可避免的會造成真實誤碼率的偏差,但是它不僅節(jié)約了大量的邏輯資源,而且并不影響工程實際中對誤碼量級的判斷,因此是完全可行的。
接口模塊
接口模塊主要是為了與通信系統(tǒng)傳輸形式相匹配,如常用的RS-232接口或RS-485接口。由于采用FPGA實現(xiàn)整體功能,哪怕是對非標準信道進行測試,接口形式也易于擴展,而且還有利于系統(tǒng)的集成化,避免了通用誤碼儀的外加輔助長線驅(qū)動器。
結(jié)語
在數(shù)字通信系統(tǒng)中,誤碼儀的使用是很普遍的,而現(xiàn)今的通信系統(tǒng)大量采用FPGA作為系統(tǒng)的核心控制器件,將物理層上的各協(xié)議層的功能集中在FPGA內(nèi)部實現(xiàn)。本文提出的誤碼測試方案在一片Altera公司的EP1K50芯片上進行了試驗驗證,大約需要消耗1000個邏輯單元,只占到整個芯片資源的36%。今后還有很大的擴展空間。設(shè)計的仿真波形如圖4和圖5。另外本測試方案還可以作為某些系統(tǒng)的嵌入式模塊,有利于系統(tǒng)的性能調(diào)試。
- 碼測試儀(5615)
比特誤碼率測試儀接收端受限眼圖自動校準最佳實踐
3828
IBERT GT收發(fā)器誤碼率測試實例
2687
是德科技全新多通道比特誤碼率測試儀
1854誤碼率測試儀的技術(shù)原理和應(yīng)用場景
Agilent N4906B新型串行誤碼測試儀/N4906B串行誤碼測試儀
Agilent N4906B新型串行誤碼測試儀/N4906B串行誤碼測試儀
HP8920B綜合測試儀
Keysight M8030A 長期回收 比特誤碼率測試儀
供應(yīng)維修 誤碼率測試儀 Keysight N4960A
供應(yīng)閑置 誤碼測試儀 Agilent N5980A
光模塊誤碼儀工作原理
回收DTX1800線纜測試儀
回收二手N4906B /長期回收N4906B 串行誤碼測試儀
回收日置BT3563電池測試儀
在線測試儀有什么優(yōu)點?
基于FPGA的RS485接口誤碼測試儀的設(shè)計怎么實現(xiàn)?
基于FPGA的高速誤碼測試儀該怎么設(shè)計?
如何去實現(xiàn)EPON測試儀硬件平臺的設(shè)計?
怎么設(shè)計智能誤碼測試儀?
怎樣設(shè)計一款基于USB接口的通用測試儀?
有無線模塊的外場測試儀怎么設(shè)計?
求一款2M誤碼測試儀的設(shè)計方案
求一種基于FPGA的誤碼率測試儀的方案
線材測試儀是什么?
絕緣電阻測試儀怎么用?絕緣電阻測試儀怎么接線?
網(wǎng)絡(luò)測試儀怎么選擇呢
請問怎樣去設(shè)計一款小電阻測試儀?
集成電路測試儀有什么類別?
81250A安捷倫誤碼率測試儀并行誤碼儀/測量儀表
Agilent N4906B串行比特誤碼率測試儀
Agilent N4906B串行比特誤碼率測試儀
基于FPGA的誤碼率測試儀的設(shè)計與實現(xiàn)
55Agilent安捷倫N4906B串行誤碼測試儀
N4906B 串行誤碼測試儀
基于DS2172的誤碼測試儀的設(shè)計
28N2101B PXIT 比特誤碼率測試儀
基于FPGA的誤碼性能測試原理方案
1730
一種基于FPGA的誤碼性能測試方案
1135
電阻測試儀的基本原理和選購
1575基于FPGA的2M誤碼測試儀設(shè)計
1822
基于FPGA的智能誤碼測試儀
1500
基于FPGA的新型誤碼測試儀的設(shè)計與實現(xiàn)
1172
基于FPGA的高速誤碼測試儀的設(shè)計
42CS21354在手持式2M誤碼測試儀中的應(yīng)用
1602
一種基于FPGA的新型誤碼測試儀的設(shè)計與實現(xiàn)
1291
PMU測試儀的設(shè)計與研究
4集成電路測試儀器有哪些_集成電路測試儀組成結(jié)構(gòu)介紹
15203lcr測試儀品牌有哪些_lcr測試儀八大品牌排名
26774lcr測試儀使用方法圖解_lcr測試儀使用指導(dǎo)書
49345電橋測試儀能測試哪些東西_電橋測試儀可以測量磁通量嗎?
15121
以FPGA為核心的高速誤碼測試儀設(shè)計流程概述
1916
耐壓測試儀原理_耐壓測試儀結(jié)構(gòu)組成
8928介質(zhì)損耗測試儀的技術(shù)參數(shù)
2171RY1100 2Mbit s誤碼測試儀的詳細資料介紹
1Agilent N4906B串行誤碼測試儀主要特性及應(yīng)用
1441基于Cyclone系列FPGA器件和UART功能實現(xiàn)誤碼率測試儀器的設(shè)計
1383
基于DDS和FPGA器件實現(xiàn)頻率特性測試儀的設(shè)計
1838
關(guān)于FPGA的誤碼測試儀研究與設(shè)計
4032
基于微機系統(tǒng)實現(xiàn)誤碼率測試儀的測試方案
4469
牙科針暢通性測試儀
1363
如何在DS2652x STC上使用誤碼率測試儀
1715是德M8020A比特誤碼率測試儀集成可調(diào)節(jié)碼間干擾功能
1196
是德高性能比特誤碼率測試儀M8020A介紹
1322
韌性測試儀詳解
2444
誤碼率測試儀,讓工程師從容應(yīng)對高速數(shù)字信號設(shè)計
1748
誤碼儀的使用方法 基于FPGA的誤碼儀設(shè)計案例
6026
M8040A誤碼儀助力高速數(shù)字接口測試
1506
LCR測試儀有什么用?LCR測試儀使用說明
3781電阻測試儀怎么使用
9330接地電阻測試儀使用方法 接地電阻測試儀與絕緣電阻測試儀的區(qū)別
3439藍牙測試儀的作用
1850內(nèi)置誤碼率測試儀(BERT)和采樣示波器一體化測試儀器安立MP2110A
1399
電池測試儀的使用方法 電池測試儀適用范圍
3643
電子發(fā)燒友App




評論