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

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

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

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

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

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

ck4-t1.gif

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

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

2 IRIG-B碼編碼原理

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

3 B碼終端

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

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

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

ck4-t2.gif

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

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

    (1)GPS/北斗模塊

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

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

    (2)外部B碼解碼電路

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

    (3)1PPS選擇模塊

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

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

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

ck4-t3.gif

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

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

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

4 時(shí)統(tǒng)卡

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

4.1 硬件電路設(shè)計(jì)

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

ck4-t4.gif

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

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

4.2 FPGA

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

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

ck4-t5.gif

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

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

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

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

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

5 實(shí)驗(yàn)結(jié)果

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

ck4-t6.gif

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

6 結(jié)論

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

參考文獻(xiàn)

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

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

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

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

[5] 包利民,潘奇.VPX總線技術(shù)及其實(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è)計(jì)與實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2015,38(5):67-71.

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