摘 要: Cyclone是Altera公司推出的低價(jià)格、高容量的FPGA,具有多達(dá)20 060個(gè)邏輯單元和173個(gè)可使用的I/O管腳。IRIG-B碼是標(biāo)準(zhǔn)時(shí)間碼格式之一,廣泛應(yīng)用于靶場(chǎng)時(shí)間信息的傳遞和各系統(tǒng)的信號(hào)同步。利用FPGA和高精度頻率源設(shè)計(jì)的同步信號(hào)源,將同步信號(hào)精度由原來(lái)的200 ns提高到10 ns,并實(shí)現(xiàn)了系統(tǒng)的小型化、模塊化。結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定,調(diào)試方便,具有較強(qiáng)的抗干擾能力和實(shí)際應(yīng)用價(jià)值。
關(guān)鍵詞: FPGA;IRIG-B碼;同步信號(hào)
現(xiàn)場(chǎng)可編程門陣列FPGA(Field Programmable Gate Array)采用邏輯單元陣列LCA(Logic Cell Array)作為基本單元,內(nèi)部包括可配置邏輯模塊、輸入輸出模塊和內(nèi)部連線三部分。適用于時(shí)序、組合等各種邏輯電路的應(yīng)用場(chǎng)合,兼有串、并行工作方式,其內(nèi)部時(shí)鐘延遲可達(dá)納秒級(jí),具有集成度高、速度快、可靠性高等優(yōu)點(diǎn)。B碼是美國(guó)靶場(chǎng)測(cè)量組制定的標(biāo)準(zhǔn)時(shí)間碼格式之一,主要特點(diǎn)是幀速率為1幀/s,攜帶信息量大,適用于遠(yuǎn)距離傳輸。B碼分為直流(DC)碼和交流(AC)碼兩種,具有標(biāo)準(zhǔn)化接口,國(guó)際通用。以DC碼解調(diào)秒為基準(zhǔn)的同步信號(hào)源向?qū)?、航天試?yàn)各個(gè)參試設(shè)備提供標(biāo)準(zhǔn)同步信號(hào),只有參試設(shè)備各系統(tǒng)工作在同一觸發(fā)脈沖下,才能使整個(gè)導(dǎo)彈、航天試驗(yàn)任務(wù)得以順利實(shí)施,因此,同步信號(hào)源是靶場(chǎng)測(cè)控系統(tǒng)的重要設(shè)備之一。
1 B碼原理
靶場(chǎng)間儀器組IRIG(Inter-Range Instrumentation Group)是美國(guó)靶場(chǎng)司令委員會(huì)RCC(Range Commanders Council)的下屬機(jī)構(gòu)。IRIG時(shí)間標(biāo)準(zhǔn)有兩大類:并行時(shí)間碼和串行時(shí)間碼,共有6種格式,即A、B、D、E、G、H,它們的主要差別是時(shí)間碼的幀速率不同,其中應(yīng)用最為廣泛的是IRIG-B格式時(shí)間碼[1](以下簡(jiǎn)稱B碼)。B碼的波形如圖1所示。
2 系統(tǒng)設(shè)計(jì)
通常的同步信號(hào)源硬件設(shè)計(jì)采用分離元件和小規(guī)模集成電路,結(jié)構(gòu)復(fù)雜、可維修性和通用性較差。本系統(tǒng)由大容量、高集成度的FPGA,結(jié)合光電耦合器、電源轉(zhuǎn)換芯片及一些外圍接口電路組成。
2.1 FPGA選擇
目前市場(chǎng)上FPGA的種類很多,主要是Altera、Xilinx和TI公司的產(chǎn)品。本系統(tǒng)設(shè)計(jì)中采用了Altera公司生產(chǎn)的Cyclone系列EP1C12Q240I7芯片。Cyclone系列FPGA是低成本的可編程器件,具有豐富的邏輯資源、存儲(chǔ)器資源、時(shí)鐘管理電路以及高性能的I/O資源[2-3]。
EP1C12Q240I7芯片主要有以下特點(diǎn):
(1)具有多達(dá)20 060個(gè)邏輯單元,可以用來(lái)實(shí)現(xiàn)復(fù)雜的功能;
(2)提供239 616 bit的RAM存儲(chǔ)容量;
(3)最高運(yùn)行速度可達(dá)200 MHz;
(4)具有多達(dá)129個(gè)兼容LVDS(Low-Voltage Differential Signaling)的通道,每個(gè)通道數(shù)據(jù)率高達(dá)640 MB/s;
(5)具有兩個(gè)可編程鎖相環(huán)PLL(Phase Locked Loop)和8個(gè)全時(shí)鐘線,提供健全的時(shí)鐘管理和頻率合成功能;
(6)支持LVTTL(Low Voltage Transistor Transistor Logic)、LVCMOS(Low Voltage Complementary Metal Oxide Semicon-
ductor)、SSTL(Stub Series Terminated Logic)和PCI(Periph-
eral Component Interconnect)單端I/O接口標(biāo)準(zhǔn)。
2.2 配置電路
FPGA上電后需要對(duì)其進(jìn)行重新配置,將用戶程序讀入芯片內(nèi)。FPGA的配置方式有主動(dòng)配置(AS)、被動(dòng)配置(PS)和JTAG方式,每種配置方式選用的周邊器件和電路都不相同,本系統(tǒng)采用AS和JTAG兩種方式[4]。
2.2.1 AS方式
在AS(Active Serial)方式下,采用的串行配置芯片為可重復(fù)擦除的EPCS4;3.3 V電源供電;4 Mbit容量。EPCS4對(duì)FPGA進(jìn)行配置,是通過(guò)專用接口對(duì)EPCS4進(jìn)行工程數(shù)據(jù)下載,并將下載數(shù)據(jù)存入EPCS4芯片實(shí)現(xiàn)的。其優(yōu)點(diǎn)是設(shè)備掉電后配置信息仍存在其中,可以實(shí)現(xiàn)“上電即用”,用于固定工程信息的下載和連接方式。AS連接如圖2所示。
2.2.2 JTAG方式
用于芯片內(nèi)部測(cè)試的JTAG(Joint Test Action Group)是一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議(IEEE 1149.1兼容)。QuartusⅡ軟件在編譯時(shí),會(huì)自動(dòng)生成用于JTAG下載配置的.sof文件。通過(guò)JTAG專用接口,利用QuartusⅡ軟件直接對(duì)FPGA芯片進(jìn)行單獨(dú)的硬件重配。JTAG配置的優(yōu)點(diǎn)在于:使用方便,無(wú)需其他配置器件,方便系統(tǒng)在線調(diào)試;簡(jiǎn)化了設(shè)計(jì)流程,加快了工程進(jìn)度;指令優(yōu)先級(jí)高,可實(shí)現(xiàn)“即插即用”。缺點(diǎn)在于:設(shè)備掉電后配置信息丟失,每次調(diào)試和使用FPGA芯片前,都需要對(duì)設(shè)備進(jìn)行重新下載和配置。JTAG連接如圖3所示。
2.3 運(yùn)行環(huán)境
本系統(tǒng)采用的軟件開(kāi)發(fā)工具是QuartusⅡ8.0,它是Altera公司推出的FPGA開(kāi)發(fā)工具,提供了完全集成且與電路結(jié)構(gòu)無(wú)關(guān)的開(kāi)發(fā)包環(huán)境,能夠直接滿足特定設(shè)計(jì)需要,具有數(shù)字邏輯設(shè)計(jì)的全部特性。本系統(tǒng)所有模塊均采用Verilog HDL進(jìn)行FPGA編程實(shí)現(xiàn)。Verilog HDL語(yǔ)言不僅定義了語(yǔ)法,而且對(duì)每個(gè)語(yǔ)法結(jié)構(gòu)都定義了清晰的模擬仿真語(yǔ)義,同時(shí)Verilog HDL語(yǔ)言從C編程語(yǔ)言中繼承了多種操作符和結(jié)構(gòu),非常易于學(xué)習(xí)和使用[5]。
3 同步信號(hào)源
3.1 工作原理
同步信號(hào)源的工作原理是以解調(diào)出的DC碼的準(zhǔn)時(shí)秒為基準(zhǔn),輸出各種頻率的同步脈沖信號(hào),輸出的脈沖信號(hào)同步精度是衡量系統(tǒng)性能的重要指標(biāo)。國(guó)軍標(biāo)GJB 2991A-2008中對(duì)脈沖信號(hào)的精度要求是前沿比對(duì)應(yīng)小于0.2 μs。實(shí)際上隨著FPGA技術(shù)的應(yīng)用,已經(jīng)能夠很好地實(shí)現(xiàn)輸出脈沖的同步,精度指標(biāo)遠(yuǎn)遠(yuǎn)超過(guò)了國(guó)軍標(biāo)中的規(guī)定。
3.2 DC碼解調(diào)
DC碼解調(diào)在FPGA中采用Verilog HDL編寫數(shù)據(jù)接入模塊, 完成捕獲光耦輸出DC信號(hào)的任務(wù),稱其為DC碼邏輯處理模塊。模塊的主要任務(wù)是記錄當(dāng)前時(shí)刻的脈沖信號(hào)邊沿信息(上升沿/下降沿),然后計(jì)算出每個(gè)DC脈沖信號(hào)的寬度信息,再根據(jù)所記錄的脈寬信息判斷出幀頭位置(即兩個(gè)連續(xù)8 ms脈沖的位置),并對(duì)脈沖依次編號(hào),為軟件解碼提供一一對(duì)應(yīng)的脈沖編號(hào)與脈寬信息[6]。根據(jù)測(cè)量出的脈寬信息即可解調(diào)出時(shí)間信息。同時(shí)根據(jù)找到的兩個(gè)8 ms的脈沖信號(hào),發(fā)出一個(gè)秒脈沖信號(hào)(JSEC),用這個(gè)脈沖信號(hào)與DC碼相與,得到解調(diào)秒脈沖DEMS。它們與DC碼準(zhǔn)時(shí)秒的對(duì)應(yīng)關(guān)系如圖4所示。DEMS即是解調(diào)DC碼獲得的準(zhǔn)時(shí)秒,把它作為同步信號(hào)源內(nèi)部的頻率標(biāo)準(zhǔn),輸出的各種脈沖信號(hào)都要與這個(gè)秒信號(hào)保持同步。
3.3 同步信號(hào)的產(chǎn)生
本系統(tǒng)的各種同步脈沖信號(hào)由FPGA內(nèi)部設(shè)計(jì)的移相分頻電路產(chǎn)生。用精度很高的10 MHz溫補(bǔ)晶振作為時(shí)鐘源,依次分頻產(chǎn)生100 kHz、10 kHz、1 kHz、100 Hz、10 Hz、1 Hz等各種頻率信號(hào)。輸出100 Hz信號(hào)與DC碼準(zhǔn)時(shí)秒同步關(guān)系如圖5所示。前沿同步精度可以達(dá)到10 ns,如圖6所示。
同步信號(hào)源是靶場(chǎng)光測(cè)設(shè)備的關(guān)鍵設(shè)備之一,高準(zhǔn)確度和高穩(wěn)定度的頻率信號(hào)是獲得各種準(zhǔn)確數(shù)據(jù)、實(shí)時(shí)精密測(cè)量和控制飛行目標(biāo)的基礎(chǔ)。隨著科學(xué)技術(shù)的發(fā)展,對(duì)同步信號(hào)源的功能、體積、精度、可靠性等技術(shù)指標(biāo)提出越來(lái)越高的要求。設(shè)計(jì)結(jié)果表明,以FPGA為硬件核心的同步信號(hào)源外圍電路簡(jiǎn)單、體積小、成本低,具有廣泛的實(shí)際應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] GJB2991A-2008,B時(shí)間碼接口終端通用規(guī)范[S]. 2008.
[2] 劉成明,李新娥,張艷兵.基于FPGA的數(shù)據(jù)采集與壓縮系統(tǒng)[J].儀表技術(shù)與傳感器,2012(1):36-39.
[3] Altera Corporation.Cyclone Device Handbook[S]. 2008.
[4] 梁鋒.基于MEMS慣性器件的小型姿態(tài)測(cè)量系統(tǒng)設(shè)計(jì)[D]. 哈爾濱:哈爾濱工程大學(xué),2011.
[5] 夏宇聞.Verilog 數(shù)字系統(tǒng)設(shè)計(jì)教程[M].北京:北京航空航天大學(xué)出版社,2008.
[6] 佟剛,崔明.基于S3C2440A的時(shí)統(tǒng)終端系統(tǒng)的設(shè)計(jì)[J].儀表技術(shù)與傳感器,2012(7):42-44.