《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的通用PCM測(cè)試系統(tǒng)設(shè)計(jì)
基于FPGA的通用PCM測(cè)試系統(tǒng)設(shè)計(jì)
2015年電子技術(shù)應(yīng)用第4期
蘇淑靖,何 青
中北大學(xué) 儀器科學(xué)與動(dòng)態(tài)測(cè)試教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原030051
摘要: 遙測(cè)系統(tǒng)中,使用大量、種類繁多的數(shù)據(jù)綜合設(shè)備將不同種類、不同通道的有用信息綜合、編碼為PCM流。為滿足種類繁多的數(shù)據(jù)綜合設(shè)備的測(cè)試需求,研制了基于FPGA的通用PCM測(cè)試系統(tǒng),實(shí)現(xiàn)對(duì)具有不同碼型、碼速率、幀結(jié)構(gòu)以及接口等的數(shù)據(jù)綜合設(shè)備的功能測(cè)試。系統(tǒng)功能強(qiáng)大,使用靈活方便。
關(guān)鍵詞: FPGA PCM 解碼 IRIG-106
中圖分類號(hào): TP274+.2
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)04-0029-03
Design of general PCM test system based on FPGA
Su Shujing,He Qing
Key Laboratory of Instrumentation Science & Dynamic Measurement of Ministry of Education,North University of China,Taiyuan 030051,China
Abstract: The telemetry system uses a large number of varied data synthesizing equipments to code useful information into PCM stream.To meet the testing requirements of varied equipments, general PCM test system based on FPGA is developed, achieving the functional test of the equipments with different code type, code rate, frame structure and interface. The system is powerful, flexible and convenient to use.
Key words : FPGA;PCM;decoding;IRIG-106

  

0 引言

  PCM(Pulse Code Modulation)是一種有效成熟的數(shù)字化的編碼系統(tǒng),廣泛應(yīng)用于航空、航天、地面遙測(cè)站、移動(dòng)遙測(cè)試驗(yàn)等國(guó)防領(lǐng)域中[1-3]。數(shù)據(jù)綜合器是彈上遙測(cè)設(shè)備的數(shù)據(jù)綜合設(shè)備,不同型號(hào)導(dǎo)彈根據(jù)測(cè)試參數(shù)數(shù)量的不同配置不同數(shù)量的數(shù)據(jù)綜合器,分布在導(dǎo)彈的彈頭、彈體及彈尾。數(shù)據(jù)綜合器控制彈上各種采編器、中間變換器。各采編器采集到的參數(shù)經(jīng)中間變換器變換后發(fā)送到內(nèi)部數(shù)據(jù)總線上,數(shù)據(jù)綜合器在時(shí)序的配合下,接收這些數(shù)據(jù)并按照預(yù)先約定的幀結(jié)構(gòu)進(jìn)行編幀,之后以綜合數(shù)據(jù)流的形式輸出給遙測(cè)發(fā)射機(jī)進(jìn)行調(diào)制和功率變換。由于應(yīng)用場(chǎng)合的特殊性,數(shù)據(jù)綜合器通常不具有通用性。不同的數(shù)據(jù)綜合器通常具有不同的碼型、碼率、幀格式、接口。研制一種碼率、碼型、幀格式、位寬等可以柔性調(diào)整的通用數(shù)據(jù)綜合器測(cè)試儀,可以在保證測(cè)量效果的前提下,實(shí)現(xiàn)不同產(chǎn)品復(fù)用一臺(tái)測(cè)試儀,從而提高可靠性,降低研發(fā)成本,加快遙測(cè)系統(tǒng)研制配套周期[4-5]。

1 系統(tǒng)總體結(jié)構(gòu)


001.jpg

  測(cè)試系統(tǒng)硬件采用總線背板與模塊化插卡方法,如圖1所示,主要由背板總線模塊、主控模塊、綜合數(shù)據(jù)流測(cè)試模塊、模擬源模塊及電源模塊組成。上位機(jī)使用LabWindows/CVI 編寫,該軟件是建立監(jiān)控檢測(cè)系統(tǒng),自動(dòng)化測(cè)試環(huán)境與數(shù)據(jù)采集系統(tǒng)的理想開(kāi)發(fā)環(huán)境。

  測(cè)控計(jì)算機(jī)配置各模塊的相關(guān)參數(shù),包括碼型、碼率、幀同步碼、幀長(zhǎng),并對(duì)測(cè)試儀解碼后上傳的數(shù)據(jù)進(jìn)行分析、處理及顯示處理結(jié)果;主控模塊是整個(gè)測(cè)試儀的核心控制模塊,上位機(jī)下傳的數(shù)據(jù)和命令以及其他模塊上傳數(shù)據(jù)都受主控模塊的控制;背板總線是主控模塊與各功能模塊之間的通信橋梁,電源模塊也通過(guò)背板總線向測(cè)試儀內(nèi)部各模塊供電;綜合數(shù)據(jù)流測(cè)試模塊接收不同的待測(cè)數(shù)據(jù)流并進(jìn)行解碼,然后上傳到上位機(jī)進(jìn)行后續(xù)處理,是實(shí)現(xiàn)通用測(cè)試功能的核心;綜合數(shù)據(jù)流模擬源模塊由上位機(jī)配置數(shù)據(jù)流參數(shù),輸出不同的數(shù)據(jù)流,用作系統(tǒng)自檢,同時(shí)可作為其他外部設(shè)備的標(biāo)準(zhǔn)源。

2 主控模塊


002.jpg

  主控模塊是聯(lián)系測(cè)控計(jì)算機(jī)與測(cè)試儀的關(guān)鍵節(jié)點(diǎn)。與上位機(jī)之間的通信通過(guò)USB接口實(shí)現(xiàn),與其他各模塊之間則通過(guò)高速LVDS總線進(jìn)行通信。主控模塊電路方案如圖2所示,通過(guò)USB接口電路接收上位機(jī)下發(fā)的命令和數(shù)據(jù),由FPGA進(jìn)行數(shù)據(jù)格式變換后,在120 MHz時(shí)鐘控制下,通過(guò)LVDS模塊DS92LV18進(jìn)行串化后發(fā)送至背板總線,總線上的其他模塊按地址接收數(shù)據(jù)并響應(yīng)。綜合數(shù)據(jù)流測(cè)試模塊對(duì)接收到的數(shù)據(jù)流進(jìn)行解碼后,將數(shù)據(jù)通過(guò)背板總線發(fā)送到主控模塊,主控模塊把接收到的數(shù)據(jù)經(jīng)DS92LV18解串、FIFO緩存,通過(guò)USB接口上傳給上位機(jī)。

3 背板總線模塊

  背板總線模塊是測(cè)試儀內(nèi)部各模塊間的橋梁,包括電源總線和信號(hào)總線兩部分。電源模塊通過(guò)電源總線為測(cè)試儀內(nèi)部供電;信號(hào)總線完成系統(tǒng)內(nèi)部各模塊之間的通信任務(wù)。其中信號(hào)總線選用低壓差分信號(hào)技術(shù)LVDS總線,該總線具有低功耗、低誤碼率、低串?dāng)_和低輻射的優(yōu)點(diǎn),且可以高達(dá)數(shù)千Mbps的速度傳送串行數(shù)據(jù)。

003.jpg

  背板總線模塊模塊硬件原理如圖3所示,由4對(duì)總線插槽和3個(gè)2×2模擬交叉開(kāi)關(guān)組成。4個(gè)插槽分別對(duì)應(yīng)電源模塊、主控模塊、綜合數(shù)據(jù)流測(cè)試模塊和數(shù)據(jù)流模擬源模塊。插槽、槽上的功能模塊以及插槽間的高速2×2模擬交叉開(kāi)關(guān)共同形成自適應(yīng)的LVDS環(huán)網(wǎng)總線,作為測(cè)試儀內(nèi)部信號(hào)傳輸總線。

4 綜合數(shù)據(jù)流測(cè)試模塊

  綜合數(shù)據(jù)流測(cè)試模塊是實(shí)現(xiàn)系統(tǒng)功能的核心單元,主要由阻抗匹配及電平轉(zhuǎn)換接口、位同步器、碼型變換、幀同步器及參數(shù)識(shí)別和邏輯控制模塊組成。其原理圖如圖4所示。

004.jpg

  本設(shè)計(jì)中,除輸入端的阻抗匹配及電平轉(zhuǎn)換接口電路和輸出端的LVDS接口電路,其他功能均通過(guò)一片PFGA實(shí)現(xiàn),電路簡(jiǎn)潔,方便升級(jí)更新。LVDS控制器實(shí)現(xiàn)對(duì)上位機(jī)命令參數(shù)的接收、解碼數(shù)據(jù)的上傳以及位同步和幀同步狀態(tài)的上傳。位同步模塊、碼元變換模塊以及幀同步模塊配合實(shí)現(xiàn)對(duì)不同數(shù)據(jù)流的解碼,完成通用測(cè)試的核心功能。

  要實(shí)現(xiàn)對(duì)不同碼速率的數(shù)據(jù)流的解碼,就要求系統(tǒng)可以快速準(zhǔn)確地生成對(duì)應(yīng)的恢復(fù)時(shí)鐘,完成位同步。碼同步模塊采用DDS+鑒相器的方案實(shí)現(xiàn)同步時(shí)鐘的提取[6]。原理框圖如圖5所示。

006.jpg

  使用64位的累加器保證DDS分頻精度和分辨率,頻率控制字K由式(1)計(jì)算得到。

  K=fo×264/fR(1)

  其中fR為輸入?yún)⒖紩r(shí)鐘頻率,fo為待測(cè)數(shù)據(jù)流的碼速率。當(dāng)接收到參數(shù)K時(shí),DDS可快速生成與待測(cè)數(shù)據(jù)流碼速率相同的時(shí)鐘。之后還需完成時(shí)鐘與信號(hào)的對(duì)齊,這直接關(guān)系到系統(tǒng)的誤碼率及信噪比。當(dāng)輸入信號(hào)出現(xiàn)跳變時(shí),讀取DDS中累加器的sum值、即時(shí)相位,可得到時(shí)鐘與信號(hào)的準(zhǔn)確關(guān)系,根據(jù)超前量或滯后量,對(duì)sum進(jìn)行加K或減K操作,加K即使下一個(gè)同步時(shí)鐘提前一個(gè)參考時(shí)鐘周期,減K即使下一個(gè)同步時(shí)鐘滯后一個(gè)參考時(shí)鐘周期。同時(shí)使用抖動(dòng)容限值L,當(dāng)超前或滯后超過(guò)L時(shí),直接對(duì)同步時(shí)鐘進(jìn)行復(fù)位。此種時(shí)鐘同步方案完成同步僅需1個(gè)時(shí)鐘周期,不僅滿足不同碼速率的數(shù)據(jù)流的測(cè)試需求,而且進(jìn)入同步狀態(tài)快速穩(wěn)定。

  待測(cè)數(shù)據(jù)流碼型不盡相同,碼型變換模塊根據(jù)碼型參數(shù)對(duì)其進(jìn)行運(yùn)算轉(zhuǎn)換為NRZ-L碼。完成碼型變換之后,幀同步器將碼型變換后的數(shù)據(jù)信號(hào)流中提取字同步和幀同步信號(hào),產(chǎn)生幀同步和字同步保護(hù)信號(hào),從而完成數(shù)據(jù)分離并獲得正確的數(shù)據(jù)格式。幀同步信號(hào)頻率由位同步信號(hào)分頻即可方便得出,然而每幀的開(kāi)頭和末尾不能由此得到,為實(shí)現(xiàn)幀同步,在數(shù)字信息流中插入一些特殊碼組作為每幀的頭尾標(biāo)記,接收端根據(jù)這些特殊碼組的位置實(shí)現(xiàn)幀同步。

  本系統(tǒng)要求通用性,因而幀格式是可編程的,在工作時(shí),上位機(jī)通過(guò)USB接口進(jìn)行參數(shù)配置,包括幀同步碼組、幀同步誤差容限、幀同步保護(hù)系數(shù)和幀同步檢碼系數(shù)等,下位機(jī)將這些參數(shù)存入寄存器,串行數(shù)據(jù)經(jīng)移位寄存器移位后鎖存,鎖存后的數(shù)據(jù)與本地同步碼組送入相關(guān)檢測(cè)器進(jìn)行檢測(cè)。相關(guān)檢測(cè)器直接關(guān)系到幀同步器的速度和精度。一個(gè)N位長(zhǎng)的數(shù)字相關(guān)器,U={u1,u2,…,uN}是同步碼組,R={r1,r2,…,rN}是數(shù)字相關(guān)器任意時(shí)刻接收的數(shù)據(jù)流通過(guò)移位寄存器的內(nèi)容,R與U進(jìn)行異或運(yùn)算,得到ri與ui不一致的個(gè)數(shù)W。W與相關(guān)檢測(cè)門限ε比較,若W>ε,則認(rèn)為沒(méi)有檢出同步碼,容錯(cuò)判決輸出;若W≤ε,則同步碼被檢出。

5 模擬源模塊

  模擬源產(chǎn)生需要的數(shù)據(jù)流,實(shí)現(xiàn)綜合數(shù)據(jù)流測(cè)試模塊的自檢和其他遙測(cè)設(shè)備的檢測(cè),由時(shí)鐘產(chǎn)生、信號(hào)發(fā)生和碼型變換3個(gè)核心部分組成。時(shí)鐘產(chǎn)生根據(jù)上位機(jī)配置的碼率和幀格式信息產(chǎn)生對(duì)應(yīng)的碼頻、字頻和幀頻信號(hào);信號(hào)發(fā)生部分在字頻信號(hào)控制下從數(shù)據(jù)ROM中讀出需要的特定波形數(shù)據(jù),與同步碼組按指定格式進(jìn)行編幀;碼型變換部分按照上位機(jī)下發(fā)的參數(shù)將NRZ-L碼變換成NRZ-L/M/S、Bi-φL/M/S。原理圖如圖6所示。

006.jpg

6 結(jié)束語(yǔ)


007.jpg

  使用LabWindows/CVI編寫了對(duì)應(yīng)的上位機(jī)軟件,主界面如圖7所示,通過(guò)該軟件對(duì)下位機(jī)進(jìn)行參數(shù)配置、解碼數(shù)據(jù)的讀取以及數(shù)據(jù)的后續(xù)處理。模擬源可生成1~10 Mb/s碼速率的PCM數(shù)據(jù)流,幀格式按IRIG-106標(biāo)準(zhǔn)可編程[7],可輸出正弦波、方波、三角波、鋸齒波、隨機(jī)數(shù)和固定值6種波形數(shù)據(jù),編碼格式NRZ-L/M/S、Bi-φL/M/S 6種可選,單端、差分可選。綜合數(shù)據(jù)流可實(shí)現(xiàn)上述可編程PCM碼流的解調(diào)。

  參考文獻(xiàn)

  [1] 喻金科,徐精華,鄒雄.基于FPGA的可編程PCM解調(diào)器的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2010,12(2):136-138.

  [2] 畢海,李永新,李柯.一種PCM遙測(cè)同步解調(diào)器的設(shè)計(jì)[J].電子測(cè)量與儀器學(xué)報(bào),2000,14(1):66-70.

  [3] 甄國(guó)涌,林華亮.串行PCM碼流解碼電路設(shè)計(jì)與應(yīng)用[J].航空計(jì)算技術(shù),2005,35(1):79-81.

  [4] 張?zhí)炱剑S斌.基于FPGA的遙測(cè)解調(diào)系統(tǒng)設(shè)計(jì)[J].電子元器件應(yīng)用,2007,9(9):43-46.

  [5] 朱旖,杜建軍.國(guó)外軍用電子自動(dòng)測(cè)試系統(tǒng)發(fā)展綜述[J].電子測(cè)量技術(shù),2008,31(8):1-3.

  [6] 劉東華,王元?dú)J,袁嗣杰,等.基于瞬時(shí)測(cè)頻的PCM/FM信號(hào)解調(diào)方法研究[J].系統(tǒng)仿真學(xué)報(bào),2005,17(10):2463-2466.

  [7] 李國(guó)民,周富大,高維路,等.基于IRIG-106標(biāo)準(zhǔn)的可編程PCM編碼數(shù)據(jù)采集系統(tǒng)[J].遙測(cè)遙控,2003,24(4):27-30.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。