基于FPGA的智能誤碼測試儀
實際工作中,常常需要誤碼儀能測試多種信道。但是目前市面上所銷售的誤碼儀大多只能測試電信部門的標準通信信道,低速以一、二次群為主,高速可達SDH信道速率;且價格昂貴、體積偏大,不能用于測試實際工作中大量存在的專用信道或自行架設的信道。這類信道多為水文監(jiān)測、氣象預報等特殊用途而設計,一般對傳輸系統(tǒng)的可靠性要求較高。
本文引用地址:http://cafeforensic.com/article/191849.htm本文所介紹的智能誤碼儀在設計時特別考慮了這類信道的測試要求。它結合FPGA及單片機的結構特點進行編程,可在較寬的速率范圍內(150bit/s~2.048Mbit/s)實現智能位同步和快速碼序列同步。用戶不僅可以從LCD上了解信道的誤碼情況,還可以通過儀器與PC機連接,在個人電腦上看到某段時間內的誤碼率折線圖和其它誤碼信息,并以此來了解系統(tǒng)的誤碼發(fā)生情況。為了便于在無人值守的情況下進行誤碼測試,該誤碼儀內置了大容量的E2PROM,可以保存被測系統(tǒng)最后4000次的誤碼事件(包括時間及誤碼率大?。?。由于設計時采用了FPGA、單片機等大規(guī)模集成電路,該誤碼儀不僅體積小巧(采用貼片元件時僅香煙盒大?。页杀镜土?、功能強大,具有較高的實用價值和市場價值。
1 誤碼儀總體框圖及誤碼測試原理
1.1 誤碼儀整體結構
圖1是該誤碼儀的整體設計框圖。
m序列發(fā)生模塊的主要功能是根據用戶的速率要求產生測試序列――m序列。實際設計時,采用CCITT建議的用于低速數據傳輸設備測試誤碼的m序列,其特征多項式為X9+X5+1,周期為512。在外部附件的支持下,它還可以進行多種碼型變換和調制解調。
位同步模塊的主要功能是從傳來的碼元中提取位同步信息――碼元時鐘并將這一時鐘提供給本地序列同步模塊,以便在本地恢復出與測試序列同步的檢驗序列。
序列比較模塊用于比較檢驗序列與測試序列的一致性。通過比較就能知道經過被測信道傳輸后測試序列中有多少碼元產生了錯誤,并以此評估被測信道的性能。由于m序列是周期序列,所以測試序列與檢驗序列的比較必須在周期的同一位置開始進行(即同相)。這也是本地序列同步模塊的另一項重要功能。完成了序列比較后,序列比較模塊將實時地把傳輸的總碼元數和誤碼數傳送給單片機。
單片機是整個誤碼儀的核心,它根據用戶的選擇控制各模塊的正常工作,并根據各模塊提供的狀態(tài)向用戶發(fā)出誤碼事件、狀態(tài)告警、故障提示等信息。在加電時對FPGA進行配置也是單片機的一項重要任務。實際設計時選用了性價比極高的FPGA――Altera公司的FLEX10K10。該器件的配置文件有15K字節(jié),因此選用了大容量的通用單片機AT89C55。存儲器及時鐘為用戶查詢誤碼信息提供了方便,為了簡化電路設計,選用了I2C總線方式的E2PROM(24LC128)和專用時鐘芯片(PCF8563)。
1.2 主要模塊特點
在設計該誤碼儀時,根據FPGA的結構特點進行編程,采用了獨特的算法,使該誤碼儀中位同步模塊和本地序列同步模塊具有較強的智能處理能力。
位同步模塊可自適應地提取并跟蹤位同步時鐘。由于誤碼儀需要對多種非標準信道進行測試,因此它必須能在較寬的速率范圍內工作。在位同步模塊中采用了新型數字鎖相算法,使該誤碼儀能在不知道發(fā)端發(fā)送速率的情況下對信號進行快速而準確的位同步處理。在單片機的配合下,還可向用戶提供無信號提示、失步告警等多種信息。
本地序列同步模塊可實現快速序列同步。完成位同步后,誤碼儀還需進行序列同步。為了減少序列同步的時間,設計了快速序列同步算法,使誤碼儀能在不知道發(fā)送端m序列發(fā)生器初始狀態(tài)的情況下進行快速盲同步,并提供序列失步告警和序列失步后快速恢復功能。因此,該誤碼儀不僅可以用于對信道進行閉環(huán)測試,而且還能方便地進行開環(huán)測試。
評論