《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的混合遙測數據復接技術的研究
基于FPGA的混合遙測數據復接技術的研究
來源:電子技術應用2012年第10期
單立超,謝雪松,張小玲,李 超
北京工業(yè)大學 微電子可靠性研究室,北京100124
摘要: 在進行多路傳輸的PCM 遙測系統(tǒng)中,為了節(jié)省信道資源, 降低調制解調設備的復雜度, 遙測數據復接系統(tǒng)得到了廣泛應用。混合信號處理首先需要進行數字化再交給FPGA并且與之交互。基于FPGA的數字復接系統(tǒng)具有模塊化設計,通過建立一個組幀模型完成多路復用。最后在Quartus II集成環(huán)境下進行了系統(tǒng)的綜合、布局布線及時序仿真。仿真結果驗證了輸入與輸出的邏輯關系,并且下載到開發(fā)板中進行了板級驗證,其功能穩(wěn)定可靠。
中圖分類號: TN914.3
文獻標識碼: A
文章編號: 0258-7998(2012)10-0012-03
Research of multiplexing technology for hybrid telemetry data based on FPGA
Shan Lichao,Xie Xuesong,Zhang Xiaoling,Li Chao
Microelectronics Reliability Research,Beijing University of Technology,Beijing 100124,China
Abstract: In a multiplex transmission of PCM telemetry system, in order to save channel resources and reduce the modulation and demodulation equipment complexity, telemetry data multiplexing system has been widely applied. Mixed signal is digitised firstly,then sent to FPGA to interact with it. FPGA-based digital multiplexing system has a modular design, through the establishment of a set of frame model can complete multiplexer. Finally, in the Quartus II integrated environment, the comprehensive system, layout and time sequence simulation are conducted. Simulation results verify the logical relations between input and output, and the board level test in development board shows that the function is stable and reliable.
Key words : embedded system;data multiplexing;FPGA;hybrid telemetry data

    遙測系統(tǒng)一般由輸入設備、傳輸設備和終端設備組成。按其使用信道的方式,可分為時分制遙測系統(tǒng)、頻分制遙測系統(tǒng)和碼分制遙測系統(tǒng)[1]。脈沖編碼調制(PCM)在遙測系統(tǒng)中占主導地位。在進行多路傳輸的PCM遙測系統(tǒng)中,待測參數可以是模擬信號或者是數字信號,也可以是數字和模擬混合信號。這些信號包括速變信號、緩變信號、負脈沖信號和階躍信號。對于模擬信號,需要將其轉換成數字信號,再經過PCM多路復用器,按一定的格式由程序控制器完成格式控制,使PCM遙測信息呈現出具有一定周期的數據結構形成串行的PCM碼元序列。PCM遙測信息完成組幀后,通過調制發(fā)射出去。

1 遙測數據編碼的原理分析
    在數字通信系統(tǒng)中,一般采用時分復用方式提高信道的傳輸速率。所謂時分多路復用(即時分制)即利用各路信號在信道上占有不同的時間間隔的特征來分開各路信號[2],其特點是:各路信號在頻譜上是相互重疊的,但在傳輸時是彼此獨立的;任何時刻,信道上只有一個信道在傳輸[3]。
1.1 復接幀結構分析
    數據以幀為單位傳輸,每一片段稱為一幀,幀的長度稱為幀周期。在每一個幀內,一般還要分為等時間間隔的小段,這些事件小段的分配決定幀結構的構成方式。通常,將這一小段稱作子幀,而包含子幀的結構叫做復幀[4]。
    在數字通信系統(tǒng)中,一般采用時分復用方式提高信道的傳輸速率。滿足復接條件的低速支路碼流進行復接時,根據碼流的具體匯接方式分為逐位復接、按字復接和逐幀復接。本文采用按字復接[5]。因為本例包括8路數字信號和16路模擬信號,按字復接有利于數字電話交換,降低設計難度,但同時要求有較大的存儲容量。為了既不丟失信號的信息又能合理利用信道,對于不同速率的參數,應在復幀基礎上用不同的子幀來實現。數字通道在復幀的固定位置(即占復幀前88 B),模擬通道占160 B,幀計數占4 B,復幀同步碼有4 B,因此就構成了復幀的256 B。這樣就提出一個問題:模擬信號有16路,每一路表示一個單獨信息。對于模擬信號一個子幀必須包括16路信息;每路采樣率為3 200 S/s,32個采樣點組成一路信息為一個周期,則一個子幀有16×32=512 B。這樣,一個復幀長度小于子幀,為此就需要多個復幀構成一個子幀。解決這個問題的方式是在有些復幀中插入子幀同步碼。圖1是幀結構示意圖,其上半部分有子幀同步碼,下半部分沒有子幀同步碼。

1.2 復接實現技術分析
    由于數字部分數據在復幀的位置固定,一個復幀的數據中每個字節(jié)都是一個位置,所以可以用一個寄存器來表示,將數字通道數據、幀計數、復幀同步碼插到預定的位置。由于傳輸數據在變化,如:數字通道的刷新率是60 ms(即60 ms出現一幀),有時沒有數據(也就是說沒有采樣數據),這時可以用填充位來填充位置從而確保數字通道位置固定。但是,模擬部分如果沒有采集到波形,則可以視為采集到直流的波形。在PCM遙測體制中,PCM遙測編碼器采用硬件實現。遙測系統(tǒng)中,由于不同測量目的所需要的遙測參數的數量有所不同,為了保證遙測系統(tǒng)的相對通用性,往往都是以最多測量參數為基準進行設計,且留有冗余的通道。本例中無論8路數字信號還是16路模擬信號都是最大支持通道??紤]到數字分接的難易程度,本系統(tǒng)還提供與原數據高度匹配的隨路時鐘。
    數據復接系統(tǒng)面臨著數據滑動或溢出的問題, 解決這個問題需要在復接前對各路不同類型的數據進行碼速率調整,同時保證定時和時鐘同步精度。因緩沖區(qū)的容量不可能很大, 解決數字信號滑動問題的關鍵是不能在FIFO寫滿時讀出, 讀出速率不能小于寫入數據速率。可根據需要適時加入填充位, 以調整寫入、 讀出速率, 防止信息的丟失或溢出。在數字部分中,緩沖器之間可以有一個握手協(xié)議,即當組幀部分讀取一個數據時計數器減1,而當一幀數據來到時可以屏蔽組幀部分讀取,再根據計數器計算地址完成一幀數據賦值,以免數據丟失。在傳輸協(xié)議中, 可以加入特定的數據位來指示數據傳輸的狀態(tài)信息,比如對幀的數量進行計數。
2 基于FPGA的數據復接系統(tǒng)設計方案
2.1 系統(tǒng)實現方案

    圖2為完整的基于幀的同步數字復接通信系統(tǒng)原理框架, 圖中線框內分別是數字復接系統(tǒng)。由圖可知, 遙測數據編碼由模擬開關、 信號調理模塊、電平轉換、數據復接器(FPGA組幀單元)構成。外部M個通道的低頻數據經過模擬開關后提取出一路信號, 再經過A/D轉換芯片將其轉換成數字信號。外部N-M數字信號由電平轉換單元將傳輸電平轉換為TTL電平,再經過一個FIFO緩存器和數據復接器對數據緩沖區(qū)中的M個支路的原始數據進行復接后送入編碼信道進行傳輸。

      復接系統(tǒng)主要由FPGA Cyclone 3C25、模擬開關ADG506A、 模/數轉換器ADC(AD7899)以及電平轉換器等幾部分組成,采用HDL、C語言開發(fā)設計。整個系統(tǒng)集成在印制板上,能夠滿足升空平臺對設備體積、重量和功耗的要求。
      FPGA主要向模擬門提供選通信號編號,將數據組幀,并且提供隨路時鐘。模擬門主要是對模擬信號的選通和模擬信號的放大[6]。電平轉換模塊是將數字信號的其他形式電平轉化成TTL電平。采用FPGA設計, 系統(tǒng)具備開放性,可以通過加載軟件,在不改變硬件的條件下很方便地增加新的功能模塊。采用模塊化設計使開發(fā)過程簡化, 便于系統(tǒng)的調試,提高研究的效率,系統(tǒng)的升級只需要對軟件進行更新。
2.2 系統(tǒng)硬件實現方案
    在數字通信系統(tǒng)中,一般采用時分復用方式提高信道的傳輸速率。所謂時分多路復用(即時分制)是利用各路信號在信道上占有不同的時間間隔的特征來分開各路信號[4]。而狀態(tài)機的狀態(tài)可以代表不同的時間間隔,狀態(tài)機的順序操作是以不同時間間隔進行轉換的。綜合以上分析,利用狀態(tài)機來實現組幀如圖3所示。

    首先系統(tǒng)要提供一個819.2 kHz的時鐘、FPGA提供50 MHz的時鐘。所以這需要一個50 MHz/0.819 2 MHz=61的分頻器來提供時鐘。這個時鐘不僅是狀態(tài)機的工作時鐘也是組幀單元提供的隨路時鐘。在隨路時鐘還要有一個每2 048 bit有一個高電平脈沖作為狀態(tài)機的啟動信號(start),同時也是一幀的開始。此外,還要有位計數器Fram_CNT(表示一幀的每一位)清零,其余時刻做加1操作。當分頻器來一個高電平脈沖、狀態(tài)機由idle狀態(tài)進入RX1狀態(tài)時,雙方通過一個握手協(xié)議將1 B數據放在8 bit緩沖器中,8 bit緩沖器再賦值給一個8 bit FIFO單元。FIFO單元再經過一個并/串轉換輸出串行的碼流。延時8個時鐘周期以后進入RX2狀態(tài);進入RX2狀態(tài)以后重復狀態(tài)RX1的操作;當在RX8狀態(tài)時,則判斷RX_CNT是否為88,是則進入MN1,否則進入RX1。
    當進入狀態(tài)MN、MN_CNT=0時,要在序列中加入子幀同步碼,然后將采集的數據放在24 bit緩存器中,24 bit緩沖器再賦值給一個24 bit FIFO單元。FIFO單元再經過一個并/串轉換輸出串行的碼流后,MN_CNT加1,計算地址(A0A2A3A4)=(MN_CNT-1)%16,然后發(fā)送地址(A0A2A3A4),選通模擬開關,在此狀態(tài)延時4個周期,等待模/數轉換器轉換完進行數據采集。再將采集的數據放在16 bit緩存器中,16 bit緩沖器再賦值給一個16 bit FIFO單元。FIFO單元再經過一個并/串轉換輸出串行的碼流,并同時計數MN_CNT加1。當MN_CNT為256時,對MN_CNT清零后,發(fā)送地址(A0A2A3A4),重復以上的操作。同時在另一模塊中,將16 bit寄存器地址發(fā)送到16 bit移位寄存器,在計時器為固定值時,最高位直接賦值給data,然后16 bit移位寄存器再做并/串轉換將采集數據由data輸出。
    當Fram_CNT=260×8,進入復幀計數器狀態(tài)并在這個狀態(tài)插上復幀計數時,通過一個累加器將數據放在16 bit緩存器中,16 bit緩沖器再賦值給一個16 bit FIFO單元。FIFO單元再經過一個并/串轉換后輸出串行的碼流。
      當Fram_CNT=262×8,采集的數據放在32 bit緩存器中,32 bit緩沖器再賦值給一個32 bit FIFO單元。FIFO單元再經過一個并/串轉換后輸出串行的碼流,插上復幀同步碼。
      到此,一個復幀已經組建完成。
3 仿真實現及結果分析
      根據以上分析,基于FPGA的數據鏈數據復接模塊程序在Quartus環(huán)境下進行仿真,能夠對數字8路、模擬16路復接成一串行碼流進行仿真。start表示啟動信號;data_Rx1、data_Rx2、data_Rx3、data_Rx4、data_Rx5、data_Rx6、data_Rx7、data_Rx8表示8路遙測等類型數據數字信號。本次仿真依次輸入1~8;data_MN表示遙測等類型數據模擬信號;本次仿真依次輸入9~24;Addr表示模擬信號選通開關仿真依次輸入0~15;data表示組幀形成的串行碼流;clock表示隨路時鐘。
    圖4中由于篇幅所限沒有完全表示出一幀數據,start一個高電平開始一幀數據先復接8路數字通道,然后需要模擬部分子幀幀同步碼(MN_CNT=0)逐個通道發(fā)送模擬信號選通開關,再將返回的數據進行復接。此外,還要對幀總數計數,以便計算傳輸和解碼是否發(fā)生丟幀。最后是復幀同步碼,以實現碼、字同步。圖4(c)、圖4(d)是程序下載到開發(fā)板用signal tap ii觀測到的波形。圖中,framout分別是檢測到復幀同步碼、子幀同步碼輸出一個高電平。經過程序仿真后, 不同遙測數據成功組幀并能夠按照選定速率進行傳輸。

 

 

    本文對基于FPGA的混合遙測數據復接技術進行了研究,并結合典型實例進行了設計的仿真驗證。結果驗證了該項技術能夠有效地融合和傳輸各種類型的遙測數據。整個系統(tǒng)具有模塊化設計、開放性、靈活性、體積重量小、功耗低等突出優(yōu)點,同時節(jié)省了信道資源,提高了信息傳輸效率。
參考文獻
[1] 孫義明,楊麗萍.信息化戰(zhàn)爭中的戰(zhàn)術數據鏈[M].北京:郵電大學出版社,2005:1-5.
[2] 張力軍.通信原理[M].北京:高等教育出版社,2008:1-5.
[3] 韓松,張曉林,占巍,等.基于空中指控節(jié)點的信息分發(fā)模型及時延分析[J].系統(tǒng)工程與電子技術,2009,31(11):2677-2681.
[4] 宋學瑞,蔡子裕,段青青.基于FPGA的數字復接系統(tǒng)的設計與實現[J].計算機測量與控制,2008,38(6):1174-1176.
[5] 鄧嵐,郭勇,賴武剛.基于FPGA的數字復接器的設計[J]. 微計算機信息,2007,23(11):209-210.
[6] 滕克難,董云龍,盛安冬.多傳感器異步融合技術研究[J]. 系統(tǒng)工程與電子技術,2010,32(2):221-225.

此內容為AET網站原創(chuàng),未經授權禁止轉載。