《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于FPGA的VPX時間統(tǒng)一系統(tǒng)設(shè)計
基于FPGA的VPX時間統(tǒng)一系統(tǒng)設(shè)計
2018年電子技術(shù)應(yīng)用第1期
王 振,李建宏,張大松,王肖楠,黃毅龍
華北計算機(jī)系統(tǒng)工程研究所,北京100083
摘要: IRIG-B時間碼(B碼)因其性能優(yōu)越,實現(xiàn)和使用方法簡單易行,被廣泛應(yīng)用于靶場時間信息傳遞和各系統(tǒng)的時間同步,成為時統(tǒng)設(shè)備首選的標(biāo)準(zhǔn)碼型。但隨著大規(guī)模集成電路和可編程技術(shù)的發(fā)展,以及靶場對時統(tǒng)設(shè)備的穩(wěn)定性、精準(zhǔn)性和集成度要求越來越高,原有的IRIG-B碼時統(tǒng)設(shè)備已不能滿足要求。為了解決這些問題,提出了一種基于FPGA的VPX時間統(tǒng)一系統(tǒng)設(shè)計方案。該方案具有可靠性高、集成度高、操作簡單、功能拓展性強(qiáng)、體積小等優(yōu)點, 并具有更廣泛的實際應(yīng)用價值。
中圖分類號: TN911
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.172617
中文引用格式: 王振,李建宏,張大松,等. 基于FPGA的VPX時間統(tǒng)一系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2018,44(1):65-67,71.
英文引用格式: Wang Zhen,Li Jianhong,Zhang Dasong,et al. VPX time unified system design based on FPGA[J]. Application of Electronic Technique,2018,44(1):65-67,71.

VPX time unified system design based on FPGA
Wang Zhen,Li Jianhong,Zhang Dasong,Wang Xiaonan,Huang Yilong
National Computer System Engineering Research Institute of China,Beijing 100083,China
Abstract: IRIG-B time code(B code) becomes the suitable standard code for time system equipment because of its superior capacity, simple implementation and easy deployment. IRIG-B code time system is used for time information transfer and time synchronization between different ranges in the shooting range system. However, with the development of large-scale integrated circuit and PLD,and with the enhancement of acquiring of integrability and programmability for timing equipment, conventional time unified system cannot meet the requirement. In order to solve those problems, we put forward a VPX time unified system design based on FPGA, which has the characters of high reliability and integrability, high operability and scalability, and small volume as well. In addition, the design implemented in this paper could support more applications.
Key words : time unified system;FPGA;IRIG-B code

0 引言

    時間作為物理學(xué)的基本量綱之一,是系統(tǒng)運(yùn)行的重要參考指標(biāo),而IRIG-B碼作為國際標(biāo)準(zhǔn)時間碼,其性能優(yōu)越,實現(xiàn)和使用方法簡單易行,十分適合應(yīng)用于高精度時間傳輸系統(tǒng)中。

    FGPA具有編程方便、集成度高、速度快等特性,可反復(fù)編程、擦除及使用,在不改動硬件設(shè)計的情況下,可實現(xiàn)不同的功能需求。采用FPGA實現(xiàn)授時、分頻,產(chǎn)生時間信號和各種同步信號,可以使時統(tǒng)接口模塊集成度更高,可維護(hù)性更強(qiáng)。

    本文結(jié)合實際時統(tǒng)項目提出了一種基于FPGA的高速時間統(tǒng)一系統(tǒng)設(shè)計方案,它以Altera[1]公司Cyclone系列FPGA[2-3]芯片為核心,采用原理圖和Verilog語言編程[4]實現(xiàn)。通過接收GPS、北斗、B碼等外部基準(zhǔn),并選擇其中一路產(chǎn)生與其同步的IRIG-B碼信號和各脈沖信號,供其他分系統(tǒng)使用。

1 系統(tǒng)總體設(shè)計

    時統(tǒng)系統(tǒng)硬件包括時統(tǒng)卡(安裝于服務(wù)器)和IRIG-B碼終端[6]。圖1為時統(tǒng)系統(tǒng)設(shè)備組成圖。

ck4-t1.gif

    IRIG-B 碼終端可以實現(xiàn)GPS衛(wèi)星系統(tǒng)與北斗衛(wèi)星系統(tǒng)的雙系統(tǒng)時間信號冗余接收以及外來B碼信號的直接接收,產(chǎn)生多路直流或交流IRIG-B碼發(fā)送給時統(tǒng)卡。

    時統(tǒng)卡通過直接接收IRIG-B碼并通過解碼電路自動獲取標(biāo)準(zhǔn)時間信息,通過VPX總線向配有時統(tǒng)卡的服務(wù)器發(fā)送時統(tǒng)信息,服務(wù)器接收時統(tǒng)信息后,向服務(wù)器自身、網(wǎng)絡(luò)內(nèi)各工作站和終端進(jìn)行網(wǎng)絡(luò)授時,實現(xiàn)對設(shè)備自身信號嚴(yán)格的監(jiān)控和輸出,以提高系統(tǒng)的可靠性及滿足時間同步要求。

2 IRIG-B碼編碼原理

    IRIG-B碼是國際通用的一種常用串行傳輸方式時間格式碼,與并行傳輸方式相比,其物理連接簡單、信息量大、分辨率高、傳輸距離遠(yuǎn)、抗干擾能力強(qiáng)、具有標(biāo)準(zhǔn)化接口。根據(jù)時間精度的不同要求及B碼傳輸距離的不同,B碼采用了兩種碼型:B(DC)直流碼和B(AC)交流碼。B(DC)碼的每個碼元是一個脈沖信號,可以實現(xiàn)較高精度的時間同步,但脈沖信號頻譜豐富,窄帶信道無法傳輸,適用于短距離電纜傳輸;B(AC)碼則可以使用標(biāo)準(zhǔn)語音帶寬(0.3 kHz~3.4 kHz)信道傳輸,傳輸距離更遠(yuǎn),但傳輸精度有一定損失。B(AC)碼可由B(DC)碼對標(biāo)準(zhǔn)正弦波載波進(jìn)行幅度調(diào)制得到。根據(jù)不同要求可選擇不同碼型傳輸,在本時統(tǒng)系統(tǒng)中,兩種碼型均有應(yīng)用。

3 B碼終端

    B碼終端可以接收GPS/北斗的授時信號和外來B碼信號,通過編解碼處理生成1PPS脈沖信號與DC/AC時間編碼信號,以供時間同步設(shè)備使用。

3.1 B碼終端系統(tǒng)原理及組成

    B碼終端系統(tǒng)原理圖如圖2所示。

ck4-t2.gif

    B碼終端可同時接收GPS/北斗信號和外來B碼信號。當(dāng)GPS/北斗信號到來時,GPS/北斗模塊通過天線接收授時信號,向ARM和FPGA發(fā)送1PPS脈沖信號,同時以串行方式向ARM發(fā)送時間信息;ARM將解出的時間信息及有效標(biāo)志,通過自定義總線和通信協(xié)議發(fā)送至FPGA; FPGA在接收到1PPS與時間信息后,根據(jù)信息的有效性決定選用該時間信息或自守時的方式,生成多路AC/DC碼和1PPS信號向外輸出。當(dāng)外來B碼到來,通過AC/DC解碼電路,將外來B碼信號整形運(yùn)放,然后傳給FPGA進(jìn)行編解碼。

3.2 B碼終端單元模塊設(shè)計

    (1)GPS/北斗模塊

    選用精度為30 ns、1 PPS的GPS/北斗模塊,向FPGA和ARM傳輸時間信號,并支持通過串口命令對芯片進(jìn)行配置。

    GPS/北斗模塊輸出包含UTC年、月、日、時、分、秒。ARM處理器通過模塊提供的1PPS中斷接收整秒信號,并通過異步串行通信方式獲取時間信息。

    (2)外部B碼解碼電路

    當(dāng)采用外部B碼信號作為產(chǎn)生IRIG-B碼的基準(zhǔn)時,需要對外部B碼基準(zhǔn)進(jìn)行接收解調(diào),以產(chǎn)生基準(zhǔn)秒和串行時間數(shù)據(jù)。在本設(shè)計中,采用硬件電路完成對外部B碼基準(zhǔn)的解調(diào)工作。

    (3)1PPS選擇模塊

    FPGA對GPS/北斗信號及外來B碼信號進(jìn)行處理,產(chǎn)生AC_1PPS、DC_1PPS、GPS_1PPS信號,作為ARM與FPGA之間通信基準(zhǔn)。

    (4)FPGA各功能模塊設(shè)計

    FPGA作為B碼終端的核心,實現(xiàn)了時碼產(chǎn)生、同步分頻、外來B碼信號解碼等功能,主要包含B(AC/DC)碼生成模塊、B(DC)碼解碼模塊、B(AC)碼解碼模塊等。各模塊工作原理如圖3所示。

ck4-t3.gif

    B(AC)碼生成模塊:FPGA根據(jù)GPS/北斗模塊的時間信息產(chǎn)生AC碼,其每一位的高低電平的AC碼實際輸出對應(yīng)ROM中一個周期的正弦波形,F(xiàn)PGA輸出的波形控制字發(fā)送至DAC,DAC輸出對應(yīng)電流值,經(jīng)運(yùn)算放大電路轉(zhuǎn)換后生成對應(yīng)AC碼高低電平的正弦波形,最后經(jīng)1:1變壓器將波形輸出。

    B(DC)碼生成模塊:FPGA根據(jù)GPS/北斗模塊的時間信息直接產(chǎn)生DC碼的TTL輸出,經(jīng)單端/差分轉(zhuǎn)換后,輸出至多路DC碼輸出。

    B碼解碼模塊:FPGA通過完成外來B碼的解碼,以實現(xiàn)精準(zhǔn)時間信息的提取并輸出。

4 時統(tǒng)卡

    時統(tǒng)卡設(shè)計采用通用的VPX接口,可接收標(biāo)準(zhǔn)化時統(tǒng)的IRIG-B(DC)碼、IRIG-B(AC)碼輸入,設(shè)備可以通過上層驅(qū)動從VPX總線[5-6]上捕獲當(dāng)前時間信息,采集不同頻率的中斷信號。針對時統(tǒng)卡的具體要求,將時統(tǒng)卡劃分為兩個主要部分:硬件電路設(shè)計及IRIG-B碼解碼、時間獲取軟件設(shè)計。

4.1 硬件電路設(shè)計

    時統(tǒng)卡硬件總體主要包括B碼接收電路、VPX接口電路、B碼解碼電路和電源電路。具體硬件結(jié)構(gòu)設(shè)計框圖如圖4所示。

ck4-t4.gif

    B碼接收電路包含兩部分,即B(AC)碼和B(DC)碼兩種碼型的接收,通過接收電路后,最終兩種碼型都以TTL電平方式傳輸?shù)紹 碼解碼電路。

    B碼解碼電路主要由FPGA芯片和外圍電路組成,通過FPGA編程開發(fā)完成B碼的解碼,實現(xiàn)時間信息的提取。

4.2 FPGA

    FPGA通過完成B碼的解碼,以實現(xiàn)精準(zhǔn)時間信息的提取,并與VPX接口通信。

    FPGA內(nèi)部設(shè)計框圖如圖5所示。

ck4-t5.gif

    FPGA的B碼解碼模塊主要包括:B(DC)碼解碼模塊、B(AC)碼解碼模塊、時間選擇模塊、中斷產(chǎn)生模塊和VPX接口模塊。FPGA程序可以完成時間信息的提取、B(DC)碼和B(AC)碼的自動切換,還可以通過B碼解碼過程產(chǎn)生的PPS 秒脈沖,實現(xiàn)不同時間的中斷信號。VPX接口程序完成時間信息和中斷信號的接收并傳輸?shù)絍PX總線。

    B(AC)碼解模塊和B(DC)解碼模塊分別對兩種時統(tǒng)信號根據(jù)B碼的碼型特點進(jìn)行時間信息提取,并輸出有效時間信息、時間有效標(biāo)志和PPS秒脈沖。

    有效時間選擇模塊根據(jù)B(AC)和B(DC)碼解碼輸出的時間有效信號選擇輸出有效時間信號,這里優(yōu)先選擇B(DC)碼時間信息。

    中斷產(chǎn)生模塊根據(jù)PPS秒脈沖產(chǎn)生準(zhǔn)確的、不同周期的中斷時間信號,為上位機(jī)提供更高分辨率時間信號。

    守時模塊是FPGA在沒有B碼輸入時,通過內(nèi)部時鐘計數(shù)產(chǎn)生秒脈沖和時間的更新。B碼解碼模塊在沒有成功解碼時間信息時輸出相應(yīng)信號,通過時間選擇模塊完成守時時間的切換。守時模塊在有B碼輸入時每個秒周期自動更新時間,并且自行進(jìn)行時間計數(shù),完成守時功能。

5 實驗結(jié)果

    將B碼終端與時統(tǒng)卡相連接,在接入GPS/北斗信號條件下,采用上位機(jī)對時統(tǒng)卡輸出的信號進(jìn)行讀取。在讀取過程中,為了顯示直觀性與簡潔性,只在每秒初始時刻打印一次信息。另外,為了更加準(zhǔn)確地反映時統(tǒng)系統(tǒng)及上位機(jī)讀取的延時,上位機(jī)測試軟件中加入了每秒讀取時各個中斷的最大及最小延遲。圖6為時統(tǒng)系統(tǒng)運(yùn)行實驗結(jié)果。

ck4-t6.gif

    經(jīng)過多次長時間的測試,各個中斷最大延遲均滿足設(shè)計要求。

6 結(jié)論

    本文的時統(tǒng)系統(tǒng),其外圍硬件電路簡單, 可靠性高,時統(tǒng)卡使用VPX總線進(jìn)行通信,滿足靶場計算平臺高性能、高帶寬、抗惡劣環(huán)境的性能要求,有巨大的發(fā)展應(yīng)用前景,已成功應(yīng)用于某設(shè)備之中。經(jīng)過長時間工作檢驗可知,設(shè)備工作穩(wěn)定,指標(biāo)滿足要求。

參考文獻(xiàn)

[1] 于楓.ALTERA可編程邏輯器件應(yīng)用技術(shù)[M].北京:科學(xué)出版社,2004.

[2] 李洪偉,袁斯華.基于QuartusII的FPGA/CPLD設(shè)計[M].北京:電子工業(yè)出版社,2006.

[3] 吳繼華,王誠.Altera FPGA/CPLD設(shè)計[M].北京:人民郵電出版社,2005.

[4] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2003.

[5] 包利民,潘奇.VPX總線技術(shù)及其實現(xiàn)[J].電子機(jī)械工程,2012,28(2):57-60.

[6] VMEbus International Trade Association.American national standard for VPX baseline standard[S].ANSI/VITA 46.0,2007.

[7] 馮勝民,陳娟花.基于FPGA的IRIG-B碼產(chǎn)生器設(shè)計與實現(xiàn)[J].電子測量技術(shù),2015,38(5):67-71.

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