摘 要:飛行器自毀系統是飛行器的重要組成部分,它的可靠性和穩定性是飛行器可靠工作的基礎。分析飛行器自毀系統工作原理,采用復雜可編程邏輯器件(CPLD)實現了飛行器自毀系統設計,結合CPLD的特點,提出一種基于改進型有限狀態機" title="有限狀態機">有限狀態機的飛行器自毀系統時序控制" title="時序控制">時序控制的設計方法,并在CPLD中予以實現。仿真及實驗表明,基于有限狀態機的飛行器自毀系統定時精度達到納秒級,可以有效地控制自毀信號輸出并消除毛刺現象,很好地滿足系統性能要求。該方法具有結構簡單緊湊、成本低、可靠性高、精度高等優點。
關鍵詞:飛行器;自毀系統;有限狀態機;時序控制
O 引 言
飛行器自毀系統是飛行器的重要組成部分,它具有非常重要的軍事及民用價值。飛行器自毀系統主要是實現飛行器在非正常飛行狀態" title="飛行狀態">飛行狀態時的可靠自毀。飛行器按正常狀態飛行,如果出現異??梢酝ㄟ^外部的飛行狀態參數傳感器及自毀電路控制自身自毀。隨著飛行器研制技術的不斷發展,對飛行器自毀系統小型化、模塊化、通用化的要求越來越迫切,CPLD的出現可以滿足這一要求。由于CPLD硬件電路的特點,必須研究適合CPLD硬件架構的設計方法,以達到系統在運行速度與資源消耗上的平衡。有限狀態機及其技術是實用數字系統設計中實現高效率高可靠邏輯控制的重要途徑,有限狀態機是一種簡單、結構清晰、設計靈活的方法,它易于建立、理解和維護,特別應用在具有大量狀態轉移和復雜時序控制的系統中,更顯其優勢。這里針對自毀系統的特點,提出一種符合CPLD結構、基于有限狀態機的設計方法。
l 自毀系統硬件設計
硬件設計采用以高性能CPLD芯片為核心的數字電路和高性能運算放大器及飛行參數傳感器組為主要元件的模擬電路相結合的方案。系統主要由系統時鐘、CPLD控制芯片、飛行參數傳感器組、傳感器組輸出判斷與產生電路、自毀控制邏輯、測試模塊和電源等模塊組成。該設計使用Altera公司的EPM7064SLC44-10芯片,其內部包含有64個宏單元,1 250個可用的系統門,引腳到引腳的邏輯延遲時間為5.0 ns,計數器工作頻率可達175.4 MHz。
用CPLD實現上述自毀條件的時序控制邏輯的核心電路及其外圍電路如圖1所示。CPLD芯片為整個系統的核心,它用來實現計時以及整個系統的時序控制。直流電壓變換電路用于將輸入的直流電壓轉換成EPM7064S所需的電壓,以及外圍電路所需的工作電壓。系統時鐘電路為計時裝置提供穩定的時鐘信號及后續分頻使用的時鐘基準;電平轉換電路將飛行器上輸入信號" title="輸入信號">輸入信號進行調理后轉換為芯片可識別的TTL/CMOS電平標準;復位電路在系統上電后給控制芯片提供復位信號。
飛行參數傳感器組電路用來實時監控飛行器的各項指標,當飛行狀態出現異常時則由傳感器組產生相應模擬值到由高性能運算放大器及比較器為主要元件的模擬電路。模擬電路對傳感器的輸入值進行處理后送到CPLD時序控制模塊中??煽亻_關能通過對CPLD編程實現多路轉換,從而使被監控的飛行參數傳感器改變,進而改變飛行器的自毀條件。通過CPLD進行飛行器內部時序控制,最后輸出的自毀指令輸入到飛行控制信號模塊中,從而改變飛行器的飛行狀態,使之自毀。
2 有限狀態機模型及選擇
2.1 有限狀態機模型
有限狀態機(Finite State Machine,FSM)可以用下面包含5種元素的集合來表示{X,Y,S,f,g},這里S={S1,S2,…,Sk}是FSM中狀態的集合;X={X1,X2,…,Xn}是FSM中輸入的集合;Y={Y1,Y2,…,Ym)是FSM中輸出的集合;f為狀態轉移函數,表示由輸入信號變量X和當前狀態S決定下一個狀態,即:XY;→S;g為輸出函數,表示由輸入信號變量X和狀態S決定狀態機的輸出變量Y,即:XS→Y。從上面定義可以看出,有限狀態機包含5類基本要素:即狀態、輸入、輸出、轉移函數及輸出函數。它們分別用矢量函數表示如下:
不用的分類規則,狀態機分類也不同。在實際的應用中,根據有限狀態機是否使用輸入信號,設計人員經常將其劃分為Moore有限狀態機和Mealy型有限狀態機兩種類型。Moore型狀態機的輸出只與當前的狀態有關而與輸入無關,而Mealy型狀態機的輸出不僅與當前狀態有關,還與當前的輸入有關,它們共同決定Mealy狀態機的輸出。圖2和圖3分別表示了Moore,Mealy狀態機的結構圖。
有限狀態機還有很多分類方法,比如根據復位信號的不同可以分為同步復位狀態機和異步復位狀態機。根據輸出是否寄存分為直接輸出、寄存輸出、根據狀態編碼輸出等類型。
對于Moore型有限狀態機,輸出信號將在時鐘信號的觸發沿到的幾個門時延后得到輸出值,同時在該時鐘周期" title="時鐘周期">時鐘周期的剩余時間內保持不變,即使輸入信號在該時鐘周期內發生變化,輸出信號的值也不會改變。由于Moore型有限狀態機的輸出與當前的輸入部分無關,因此當前輸入產生的任何效果將會延遲到下一個時鐘周期??梢?,Moore型狀態機的最大優點就是可以將輸入部分與輸出部分隔離開。
對于Mealy型有限狀態機,由于它的輸出是輸入信號的函數,因此如果輸入信號發生變化,則輸出可以在1個時鐘周期的中間發生改變。與Moore型有限狀態機相比,它對輸入信號的變化相應要早1個時鐘周期。但它也會將輸入端口的噪聲傳遞給輸出信號。
綜合以上幾點的考慮,該設計采用Moore型有限狀態機實現飛行器自毀系統的時序控制。
2.2 毛刺和信號時延處理
Moore型有限狀態由于有組合邏輯進程的存在,狀態機輸出信號會出現毛刺(競爭冒險現象);另一方面,如果狀態信號是多位值的,則在電路中對應了多條信號線。由于存在傳輸延遲,各信號線上的值發生改變的時間則存在先后,從而使得狀態遷移時在初始狀態和目的狀態之間出現臨時狀態,因此出現毛刺。
參考各方面文獻,現在消除輸出信號的“毛刺”一般可采用3種方案:一是調整狀態編碼,使相鄰狀態間只有1位信號改變,從而消除競爭冒險的發生條件,避免了毛刺的產生。這種方案適用于順序遷移的狀態機;二是在有限狀態機的基礎上采用時鐘同步信號,即把時鐘信號引入組合進程。狀態機每一個輸出信號都經過附加的輸出寄存器,并由時鐘信號同步,因而保證了輸出信號沒有毛刺。這種方法存在一些弊端;由于增加了輸出寄存器,硬件開銷增大,這對于一些寄存器資源較少的芯片是不利的;從狀態機的狀態位到達輸出需要經過兩級組合邏輯,這就限制了系統時鐘的最高工作頻率;由于時鐘信號將輸出加載到附加的寄存器上,所以在輸出端得到信號值的時間比狀態的變化延時1個時鐘周期;三是直接把狀態機的狀態碼作為輸出信號,即采用狀態碼直接輸出型狀態機,使狀態和輸出信號一致,使得輸出譯碼電路被優化掉了,因此不會出現競爭冒險。這種方案,占用芯片資源少,信號與狀態變化同步,因此速度快。
因此該設計采用狀態作為輸出信號且帶有復位信號的Moore型有限狀態機。其結構框圖如圖4所示。
3 QuartusⅡ環境下有限狀態機的設計
3.1 系統總體結構
飛行器自毀系統在飛行器起飛后開始工作,并實時監控飛行參數傳感器組及計時模塊產生的控制信號。圖5給出了自毀控制電路的硬件實現方案。在CPLD中實現系統的總體結構如圖5所示。CPLD外圍的高性能運算放大器為主要元件的模擬電路以及傳感器組用來產生時序控制信號(c1,c2,c3,c4,c5),并輸入到輸入信號處理模塊。時鐘分頻用來產生各個模塊工作所需的時鐘。計時模塊用來產生飛行總時間(tmax)。時序控制模塊用來產生自毀輸出信號(Output),它是整個系統的控制核心,它的可靠性和穩定性是飛行器能否實現可靠自毀的基礎。這里采用狀態作為輸出信號且帶有復位信號的Moore型有限狀態機設計時序控制模塊實現飛行器可靠自毀。
3.2 改進型有限狀態機實現時序控制
飛行器自毀時序控制流程圖如圖6所示。飛行器自毀系統的時序狀態變化由各個傳感器的輸入及CPLD計時器狀態決定。飛行參數傳感器組輸入不同的狀態指令,時序控制系統就可以在不同的狀態間變化,其中ST5狀態是整個自毀系統的控制輸出。根據圖6可以得到5個狀態觸發器的激勵方程:
采用VHDL語言描述這種改進的Moore型有限狀態機之前,首先要對Moore型有限狀態機的狀態進行編碼操作。如表1所示,由于有限狀態機的輸出只有Output,為了在綜合時更好地識別這5個不同的狀態,需要添加狀態位。在表2中添加兩個冗余的狀態位a,b來區分STl,ST2,ST3,ST4。
3.3 VHDL編程注意事項
本設計采用單進程描述方式,也可以采用兩進程描述。用兩進程時最好把轉移條件判斷邏輯和輸出邏輯分開,這樣有利于綜合器優化代碼,利于用戶添加合適的時序約束,利于布局布線。狀態機要有默認狀態,這是從狀態機的安全性方面考慮的。在狀態機的設計中,一般要包含一個初始狀態,當芯片上電復位時,狀態機能夠進入到初始狀態。這需要在狀態機設計中加入復位信號。
4 電路仿真
在QuartusⅡ環境下,將VHDL文本程序保存為工程,工程文件經編譯后即可進行電路仿真。仿真波形如圖7所示,從波形結果可以看出,復位信號(reset)有效,使狀態機恢復到初始狀態,飛行器起飛(off)有效開始,時序控制系統經歷了飛行過程中5個不同的狀態,如圖7中state變量所示。并最終輸出自毀指令(Output),VHDL程序設計符合要求。整個時序控制可靠,消除了毛刺現象。在QuartusⅡ環境下,只需要1根下載編程電纜,通過PC機的并行口連接到目標板的JTAG口,將下載信息下載到目標器件中。
5 結 語
仿真及實驗結果證明,采用上述的有限狀態機思想進行飛行器自毀系統時序控制設計,不但可以減小占用CPLD資源,降低成本,方便測試,并且可以有很好的系統性能?;谟邢逘顟B機的飛行器自毀系統定時精度達到納秒級,可以有效可靠地控制自毀信號輸出,有效消除毛刺現象,提高了飛行器自毀系統的穩定性、可靠性。