CPLD器件在時(shí)間統(tǒng)一系統(tǒng)中的應(yīng)用
摘要:時(shí)間統(tǒng)一系統(tǒng)是靶場(chǎng)試驗(yàn)任務(wù)順利完成的關(guān)鍵。本文介紹一種利用CPLD器件實(shí)現(xiàn)的可編程的性能良好的IRIG-B碼源。通過高度集成,將用于產(chǎn)生B碼的各種門電路集成在一個(gè)芯片中,構(gòu)成一個(gè)應(yīng)用系統(tǒng),達(dá)到了最佳性價(jià)比。 關(guān)鍵詞:B碼源 CPLD器件 時(shí)序 引 言 隨著電子技術(shù)的發(fā)展,對(duì)遙測(cè)信號(hào)的幀結(jié)構(gòu)的可編程度、集成度的要求越來(lái)越高,用于時(shí)間統(tǒng)一系統(tǒng)的B碼源的設(shè)計(jì)也趨于高度集成化。為了適應(yīng)現(xiàn)代靶場(chǎng)試驗(yàn)任務(wù)的要求,我們采用Altera的CPLD器件,將用于產(chǎn)生B碼的各種門電路集成在一個(gè)芯片,通過高度集成的系統(tǒng)可以用于產(chǎn)生標(biāo)準(zhǔn)的串行時(shí)間碼向測(cè)量設(shè)備發(fā)送,測(cè)量設(shè)備對(duì)接收到的B碼進(jìn)行解調(diào)能產(chǎn)生出系統(tǒng)所需的絕對(duì)時(shí)間和各種控制信號(hào)。此B碼產(chǎn)生系統(tǒng)可作為基地設(shè)備檢測(cè)調(diào)試用,也可作實(shí)踐教學(xué)設(shè)備。 在靶場(chǎng)試驗(yàn)中隨著設(shè)備所需信息量的增加,對(duì)標(biāo)準(zhǔn)化時(shí)統(tǒng)設(shè)備要求也就越來(lái)越高,其中關(guān)鍵的問題之一就是選用什么樣的時(shí)間碼。IRIG-B(美國(guó)靶場(chǎng)儀器組-B 型格式)DC時(shí)間碼以其實(shí)際優(yōu)越性能,成為時(shí)統(tǒng)設(shè)備首選的標(biāo)準(zhǔn)碼型。 IRIG(Inter-Range Instrumentation Group)是美國(guó)靶場(chǎng)司令部委員會(huì)的下屬機(jī)構(gòu),稱為"靶場(chǎng)時(shí)間組"。IRIG時(shí)間標(biāo)準(zhǔn)有兩大類:一類是并行時(shí)間碼格式,這類碼由于是并行格式,傳輸距離較近,且是二進(jìn)制,因此遠(yuǎn)不如串行格式廣泛;另一類是串行時(shí)間碼,共有六種格式,即A、B、D、E、G、H。它們的主要差別是時(shí)間碼的幀速率不同。B碼的主要特點(diǎn)是時(shí)幀速率為1幀/s;攜帶信息量大,經(jīng)譯碼后可獲得1、10、100、1000 c/s的脈沖信號(hào)和BCD編碼的時(shí)間信息及控制功能信息;高分辨率;調(diào)制后的B碼帶寬,適用于遠(yuǎn)距離傳輸;分直流、交流兩種;具有接口標(biāo)準(zhǔn)化,國(guó)際通用。IRIG-B(DC)時(shí)間碼格式如圖1所示。其幀速率為1幀/s,可將1幀(1s)分為10個(gè)字,每字為10位,每位的周期均為10 ms。每位都以高電平開始,其持續(xù)時(shí)間分為3種類型:2 ms(如二進(jìn)制"0"碼和索引標(biāo)志) 、5 ms(如二進(jìn)制"1"碼)和8 ms(如參考碼元,即每秒開始的第一字的第一位;位置標(biāo)志P0~P9,即每個(gè)字的第十位)。第一個(gè)字傳送的s是信息,第二個(gè)字是min信息,第三個(gè)字是h信息,第四、五個(gè)字是d(從1月1日開始計(jì)算的年積日)。另外,在第八個(gè)字和第十個(gè)字中分別有3位表示上站和分站的特標(biāo)控制碼元(參考圖1)。 2 硬件電路設(shè)計(jì) B碼信號(hào)是否正確,是否被正確地解調(diào)出來(lái),關(guān)鍵在于能否按照B碼的變化規(guī)律產(chǎn)生預(yù)置信號(hào)。本課題的難點(diǎn)在于按照其本身的變化規(guī)律安排好產(chǎn)生B碼的各種時(shí)序。 用9個(gè)十進(jìn)制計(jì)數(shù)器級(jí)聯(lián)組成時(shí)鐘電路,用來(lái)產(chǎn)生時(shí)間信號(hào)--天、時(shí)、分、秒信號(hào)。四種信號(hào)經(jīng)過緩存后順序送入并串轉(zhuǎn)換電路,將并行碼串行輸出,由7個(gè)產(chǎn)生時(shí)序脈沖的4017級(jí)聯(lián)產(chǎn)生B碼所需的三種脈沖形式,經(jīng)過邏輯門的控制將串行輸出的時(shí)間碼轉(zhuǎn)化成B碼。將所有計(jì)數(shù)器、緩存器、并串轉(zhuǎn)換電路、時(shí)序脈沖產(chǎn)生器、各種邏輯門等集成到可編程器件(CPLD)中,即用將一個(gè)完整的系統(tǒng)集成到一個(gè)芯片中。外圍電路只需一個(gè)時(shí)鐘電路和上電置數(shù)電路即可。由于采用了可編程器件,用軟件編程可以把一個(gè)硬件系統(tǒng)集成到一個(gè)芯片中,大大簡(jiǎn)化了硬件電路,并且可以對(duì)芯片內(nèi)部的電路進(jìn)行仿真和多次編程,調(diào)試起來(lái)很方便。 根據(jù)確定的方案,設(shè)計(jì)的硬件電路如圖 2所示。可編程器件EPM7128SLC84-15內(nèi)部電路如圖3所示。 硬件電路由可編程芯片、主時(shí)鐘、置數(shù)電路三部分組成。芯片內(nèi)部電路由365進(jìn)制計(jì)數(shù)器、緩沖電路、并串轉(zhuǎn)換電路、時(shí)序脈沖發(fā)生器及邏輯門控制電路組成。 圖2中,置數(shù)電路將預(yù)置好的時(shí)間置入,使得芯片內(nèi)部的365進(jìn)制計(jì)數(shù)器從此時(shí)刻開始計(jì)數(shù)。主時(shí)鐘是頻率為10 MHz的晶振,作為芯片內(nèi)部時(shí)序脈沖發(fā)生器的時(shí)鐘信號(hào)??删幊绦酒瑑?nèi)部電路設(shè)計(jì)是本課題設(shè)計(jì)的核心。圖 3中,時(shí)序脈沖發(fā)生器由七級(jí)4017級(jí)聯(lián)而成,由外輸入時(shí)鐘作為第一級(jí)的時(shí)鐘。第七級(jí)產(chǎn)生的秒信號(hào)作為365進(jìn)制計(jì)數(shù)器的時(shí)鐘,該計(jì)數(shù)器組由九個(gè)十進(jìn)制同步計(jì)數(shù)器74LS162組成,輸出7位二進(jìn)制形式的秒信號(hào),7位分信號(hào),6位時(shí)信號(hào),10位天信號(hào)(分為低八位和高二位天信號(hào)兩組)。輸出的時(shí)間信號(hào)送至緩沖器,由時(shí)序脈沖發(fā)生器的第六級(jí)輸出周期為100 ms的時(shí)鐘信號(hào)作為緩沖器的內(nèi)部時(shí)鐘,將緩沖過的時(shí)間信號(hào)以B碼的格式順序送入并串轉(zhuǎn)換電路。并串轉(zhuǎn)換電路的置位信號(hào)由時(shí)序脈沖發(fā)生器第六級(jí)的Q8提供,每100 ms將輸入的時(shí)間信號(hào)鎖存一次,時(shí)序脈沖發(fā)生器的第五級(jí)輸出的周期為10 ms的時(shí)鐘作為并串轉(zhuǎn)換的時(shí)鐘,將并行數(shù)據(jù)串行輸出。時(shí)序脈沖發(fā)生器通過邏輯門的控制產(chǎn)生了B碼的三種脈沖形式:第一種是高電平為2 ms ,低電平為8 ms的脈沖(代表邏輯"0");第二種是高、低電平均為5 ms的脈沖(代表邏輯"1");第三種是高電平為8 ms ,低電平為2 ms的脈沖(作為位置識(shí)別標(biāo)志和參考碼元)。并串轉(zhuǎn)換輸出的串行碼經(jīng)過邏輯門的控制,碼?quot;1"轉(zhuǎn)化為B碼脈沖的第一種形式,碼元"0"轉(zhuǎn)化為B碼脈沖的第二種形式,即將二進(jìn)制的時(shí)間信號(hào)轉(zhuǎn)變成為B碼形式。參考碼元、時(shí)間碼元、位置識(shí)別標(biāo)志綜合在一起作為真正的B碼輸出。 3 主要單元電路設(shè)計(jì) 3.1 置數(shù)電路 根據(jù)課題要求,電路應(yīng)具有置數(shù)功能。置數(shù)電路如圖 4 所示,改進(jìn)后的置數(shù)電路如圖 5所示。 將預(yù)置的天、時(shí)、分、秒在上電的同時(shí)置入各個(gè)計(jì)數(shù)器中。由于計(jì)數(shù)器74LS162是同步計(jì)數(shù)器,要求置數(shù)脈沖有效時(shí)(低電平有效)至少有一個(gè)時(shí)鐘的上升沿。 計(jì)數(shù)器的時(shí)鐘是由時(shí)序脈沖發(fā)生器提供的秒信號(hào),為了保證在置數(shù)脈沖有效時(shí)存在一個(gè)時(shí)鐘上升沿,對(duì)秒信號(hào)作如下改進(jìn): 輸入信號(hào)clka 由時(shí)序脈沖發(fā)生器產(chǎn)生,輸出信號(hào)clk 作為365進(jìn)制計(jì)數(shù)器的時(shí)鐘。輸入輸出波形關(guān)系如圖 6所示。 3.2 可編程芯片EPM7128SLC84-15內(nèi)部電路 本部分采用層次結(jié)構(gòu)的設(shè)計(jì),由底層到頂層將復(fù)雜的電路模塊化,最后生成一個(gè)頂層模塊。圖7 表示內(nèi)部電路的層次結(jié)構(gòu)。 最底層的四個(gè)模塊分別包含四部分較復(fù)雜的電路,將四個(gè)模塊分為兩組,又生成較高層的模塊t1和t2,模塊t1和t2最終生成最頂層的模塊。采取模塊化設(shè)計(jì)的優(yōu)點(diǎn)在于可以由底層到頂層對(duì)每一個(gè)模塊分別進(jìn)行仿真,有利于各個(gè)模塊間時(shí)序的配合。 (1)t2模塊 365進(jìn)制計(jì)數(shù)器 該部分電路由九個(gè)十進(jìn)制同步計(jì)數(shù)器 74LS162級(jí)聯(lián)而成,稱為計(jì)數(shù)鏈,生成的模塊形式如圖 8所示。 它的功能是將計(jì)數(shù)器輸出的5組時(shí)間信號(hào)以B碼的格式交替輸出。緩沖電路生成的模塊如圖 9所示。 為簡(jiǎn)單起見,用VHDL語(yǔ)言描述如下: FUNCTION 74160 (clk, ldn, clrn, enp, ent, d, c, b, a) RETURNS (qd, qc, qb, qa, rco); SUBDESIGN testa (dina[6..0],dinb[6..0],dinc[5..0],dind[7..0],dine[1..0],fin1,fin2:INPUT ; dout[9..0] : output;) VARIABLE q[3..0] :node; begin (q3,q2,q1,q0,)= 74160(fin1,vcc,fin2,vcc,vcc,GND,GND,GND,GND); case q[3..0] is when 0=> dout[4..1]=dina[3..0];dout5=gnd;dout[8..6]=dina[6..4];dout9=gnd;dout0=gnd; when 1=> dout[3..0]=dinb[3..0];dout4=gnd;dout[7..5]=dinb[6..4] ;dout[9..8]=gnd; when 2=> dout[3..0]=dinc[3..0];dout4=gnd;dout[6..5]=dinc[5..4] ;dout[9..7]=gnd; when 3=> dout[3..0]=dind[3..0];dout4=gnd;dout[8..5]=dind[7..4];dout9=gnd; when 4=> dout[1..0]=dine[1..0];dout[9..2]=gnd; when others=> dout[9..0]=gnd; end case; end; (2)t1模塊 并串轉(zhuǎn)換電路 由于B碼是串行碼,須將t1模塊輸出的并行數(shù)據(jù)進(jìn)行并串轉(zhuǎn)換。并串轉(zhuǎn)換電路生成的模塊如圖 12 所示。 時(shí)序脈沖發(fā)生器 該部分電路主要由七個(gè)脈沖分配器相級(jí)聯(lián)和一些邏輯門控制組成。完成的主要功能有:產(chǎn)生B碼的3種脈沖形式;提供計(jì)數(shù)器的時(shí)鐘--"S"信號(hào);提供緩沖電路中計(jì)數(shù)器的時(shí)鐘--周期100 ms;提供并串轉(zhuǎn)換電路的置位信號(hào)。時(shí)序脈沖發(fā)生器生成的模塊如圖13所示。 (3)t3模塊 t3模塊是由t1、t2兩個(gè)模塊構(gòu)成的最頂層的模塊,其內(nèi)部連接如圖16所示。 由圖16可見,t3模塊(圖17)將所有內(nèi)部電路集成,整個(gè)電路只有32個(gè)輸入端,3個(gè)輸出端。將t3模塊直接燒入可編程芯片即可。 3.3 碼合成電路 可編程芯片輸出了組成B碼的3個(gè)分信號(hào),經(jīng)過1個(gè)或門后將3個(gè)信號(hào)合成了B碼信號(hào),如圖18所示。 本設(shè)計(jì)的難點(diǎn)在于如何正確地安排好芯片內(nèi)部各個(gè)模塊之間的時(shí)序。該B碼源通過解調(diào)之后能夠顯示正確的時(shí)間,達(dá)到了很好的效果。該B碼源最大的特點(diǎn)是電路非常簡(jiǎn)單,可靠性較高。通過可編程芯片高度集成了一個(gè)系統(tǒng),克服了以往B碼源電路復(fù)雜的缺點(diǎn)。 |