沖擊信號(hào)處理芯片設(shè)計(jì)、實(shí)現(xiàn)及應(yīng)用
引 言
沖擊信號(hào)的測量數(shù)據(jù)是確定飛行器工作環(huán)境條件的重要依據(jù)。沖擊信號(hào)的帶寬一般為10 Hz 到5 kHz ,采樣頻率不低于20 kHz/ s ,編碼一般應(yīng)大于10 bit (沖擊信號(hào)的動(dòng)態(tài)范圍較大)。沖擊信號(hào)的測量是遙測系統(tǒng)的難題,它要求遙測系統(tǒng)具有很大的傳輸帶寬。例如:傳輸一個(gè)測點(diǎn)X/ Y/ Z三個(gè)方向的沖擊信號(hào)測量數(shù)據(jù),大約需要600 kbit/ s 信道容量。沖擊信號(hào)的巨大數(shù)據(jù)量給飛行器遙測系統(tǒng)的設(shè)計(jì)帶來了壓力。
由于壓電加速度計(jì)具有體積小、安裝方便等優(yōu)點(diǎn),飛行器遙測系統(tǒng)一般采用壓電加速度計(jì)直接測量沖擊波。但是,沖擊波大都是復(fù)雜的振蕩型脈沖,它本身不便于分析和比較。工程上研究沖擊的目的,不是研究沖擊波形本身而更注重于沖擊作用于系統(tǒng)的效果,或者說沖擊運(yùn)動(dòng)對(duì)系統(tǒng)的損傷勢。因此,飛行試驗(yàn)中獲取的遙測沖擊數(shù)據(jù),事后一般被處理成最大絕對(duì)沖擊加速度響應(yīng)譜,來分析飛行器在飛行中的沖擊環(huán)境。
本文介紹的基于可編程門陣列( FPGA) 實(shí)現(xiàn)的沖擊信號(hào)處理芯片,能在飛行器飛行過程中,實(shí)時(shí)完成對(duì)三路沖擊信號(hào)的分析和處理,將沖擊信號(hào)的處理結(jié)果代
替沖擊波的原始測量數(shù)據(jù)傳到地面,利用沖擊信號(hào)的處理結(jié)果(主要是最大絕對(duì)沖擊加速度響應(yīng)譜和加速度計(jì)輸出零位、最大值、最小值) 的數(shù)據(jù)量遠(yuǎn)少于沖擊波測量數(shù)據(jù)的特點(diǎn),減小沖擊信號(hào)傳輸所要求的帶寬,實(shí)現(xiàn)沖擊信號(hào)的頻帶壓縮。
最大絕對(duì)沖擊加速度響應(yīng)譜計(jì)算方法
式(1) 為用改進(jìn)的遞歸數(shù)字濾波法求固有頻率為f i 單自由度系統(tǒng)沖擊加速度Xf i( k) 的數(shù)學(xué)模型。
式中: u ( k) ——沖擊信號(hào)幅值,Δt ——沖擊信號(hào)采樣間隔,N ——沖擊信號(hào)采樣點(diǎn)數(shù), f i ——單自由度系統(tǒng)固有頻率,ζ——單自由度系統(tǒng)阻尼系數(shù), Nf ——具有不同固有頻率的單自由度系統(tǒng)數(shù)量, Xf i( k) ———固有頻率f i 單自由度系統(tǒng)加速度,| Xf i( k) | max ———Xf i( k) 時(shí)間軸上的最大絕對(duì)值。| Xf i( k) | max作為單自由度系統(tǒng)固有頻率f i 的函數(shù)即為最大絕對(duì)沖擊加速度響應(yīng)譜。
芯片主要功能及設(shè)計(jì)參數(shù)
芯片主要功能
考慮到實(shí)際應(yīng)用中一般測量X/ Y/ Z 三個(gè)方向的沖擊加速度,為了減小產(chǎn)品體積,沖擊信號(hào)處理芯片采用SoC 設(shè)計(jì)思想,將三路沖擊信號(hào)的處理、數(shù)據(jù)存儲(chǔ)及輸入輸出管理集成在一個(gè)芯片上;同時(shí),為了簡化產(chǎn)品電路設(shè)計(jì),沖擊信號(hào)處理芯片還提供所有與之相連外圍電路的控制信號(hào)。為了減小誤差積累,沖擊信號(hào)處理芯片對(duì)沖擊信號(hào)實(shí)現(xiàn)分段處理并總是保存當(dāng)前測試時(shí)間段最大絕對(duì)沖擊加速度響應(yīng)譜,遙測系統(tǒng)可以根據(jù)系統(tǒng)容量和實(shí)時(shí)性要求,隨機(jī)讀取當(dāng)前處理時(shí)間段的最大絕對(duì)沖擊加速度響應(yīng)譜,調(diào)整沖擊數(shù)據(jù)壓縮比。
沖擊信號(hào)處理芯片的主要功能如下:
(1) 定時(shí)或外部觸發(fā)方式實(shí)現(xiàn)沖擊信號(hào)分段;
(2) 分段計(jì)算三路沖擊信號(hào)最大絕對(duì)沖擊加速度響應(yīng)譜;
(3) 分段計(jì)算沖擊信號(hào)零位;
(4) 實(shí)時(shí)捕獲沖擊信號(hào)最大值和最小值;
(5) 記錄沖擊信號(hào)最大值和最小值發(fā)生時(shí)刻;
(6) 提供A/ D 變換器、串行通信接口或并行通信接口控制信號(hào)。
芯片設(shè)計(jì)參數(shù)
沖擊信號(hào)處理芯片設(shè)計(jì)之前,有多個(gè)設(shè)計(jì)參數(shù)需要確定,如:采樣頻率、濾波系數(shù)字長、沖擊響應(yīng)譜運(yùn)算字長、單自由度系統(tǒng)固有頻率的取值范圍等等。這些參數(shù)既互相關(guān)聯(lián)、又互相制約,它們直接影響沖擊信號(hào)處理芯片的綜合性能。表1 為結(jié)合飛行器遙測系統(tǒng)容量、FPGA 硬件資源、處理器功耗,從減小沖擊響應(yīng)譜處理誤差和確保濾波器穩(wěn)定工作的角度,綜合權(quán)衡多種因素后,確定的沖擊信號(hào)處理芯片的設(shè)計(jì)參數(shù)。
芯片設(shè)計(jì)
芯片系統(tǒng)設(shè)計(jì)
沖擊信號(hào)處理芯片采用自頂向下( Top-Down) 的層次化結(jié)構(gòu)設(shè)計(jì)方法。系統(tǒng)由三個(gè)獨(dú)立的子系統(tǒng)組成( Top1 、Top2 、Top3) ,每個(gè)子系統(tǒng)又由三個(gè)完成不同功能的模塊組成( In ,Core ,Out) 。圖1 為沖擊信號(hào)處理芯片模塊設(shè)計(jì)。
從結(jié)構(gòu)上看,沖擊信號(hào)處理芯片采用模塊化設(shè)計(jì),共設(shè)計(jì)五個(gè)模塊,它們的名稱和功能分別為:
(1) Up- Top 模塊 系統(tǒng)復(fù)位、輸入輸出數(shù)據(jù)管理、起飛信號(hào)“真”“偽”判斷及自鎖、定時(shí)(或外觸發(fā)) 方式信號(hào)分段。
(2) Top 模塊 完成一路沖擊信號(hào)處理。
(3) In 模塊 完成輸入數(shù)據(jù)預(yù)處理、提供A/ D 控制信號(hào)、產(chǎn)生Core 模塊流水運(yùn)算控制信號(hào)、計(jì)算輸入信號(hào)零位、捕獲輸入信號(hào)最大和最小值。
(4) Core 模塊 計(jì)算最大絕對(duì)沖擊加速度響應(yīng)譜。
(5) Out 模塊 產(chǎn)生特征碼、單通道輸出數(shù)據(jù)管理。
上述五個(gè)模塊可以通過不同的組合,完成從一路到多路沖擊信號(hào)的處理。
芯片存儲(chǔ)器設(shè)計(jì)
合理的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)不僅有利于充分利用硬件資源,也為優(yōu)化計(jì)算流程和提高處理速度創(chuàng)造條件。圖2 為改進(jìn)的遞歸數(shù)字濾波法信號(hào)流程圖(直接型) ,它清楚地描述算法的步驟及實(shí)現(xiàn)該算法需要存儲(chǔ)的參數(shù)。
由于計(jì)算結(jié)果為最大絕對(duì)沖擊加速度響應(yīng)譜,除圖2 所示的參數(shù)外,還需要存儲(chǔ)Xf i ( k) 的最大絕對(duì)值| Xf i( k) | max。
式(1) 中濾波系數(shù)B0i 、B1i 、B2i 、Q1i 、Q2i 是決定濾波器性能的基本參數(shù),采用獨(dú)立的ROM存儲(chǔ),每次FPGA 芯片加電時(shí)ROM初始化。Xf i( k - 1) 、Xf i( k - 2) 、| Xf i( k) | max如果共用一個(gè)存儲(chǔ)器,控制電路設(shè)計(jì)簡單,但Xf i( k - 1) 和Xf i( k - 2) 動(dòng)態(tài)范圍遠(yuǎn)遠(yuǎn)大于| Xf i( k) | max ,與| Xf i( k) | max存儲(chǔ)在同一存儲(chǔ)器中會(huì)造成存儲(chǔ)資源浪費(fèi),因此,設(shè)計(jì)了兩個(gè)RAM將它們分開存儲(chǔ)。表2 是根據(jù)表1 所示參數(shù)設(shè)計(jì)的存儲(chǔ)器,該方案既保證了存儲(chǔ)資源的有效利用,控制電路也相對(duì)簡單。
Core 模塊設(shè)計(jì)
Core 模塊主要完成最大絕對(duì)沖擊加速度響應(yīng)譜計(jì)算。按表1 所示的設(shè)計(jì)參數(shù),當(dāng)濾波器中心頻率為1/ 12 th 倍頻程(Octave) 時(shí),每采樣一個(gè)u ( k) ,Core 模塊需要按式(1) 計(jì)算出Nf = 102 個(gè)單自由度系統(tǒng)最大絕對(duì)加速度。
Core 模塊采用流水運(yùn)算計(jì)算Nf 個(gè)單自由度系統(tǒng)的最大絕對(duì)加速度。每一個(gè)單自由度系統(tǒng)最大絕對(duì)加速度的計(jì)算分(1) 、(2) 兩拍流水完成, (1) 、(2) 兩拍流水又各有自已獨(dú)立的5 個(gè)節(jié)拍。設(shè)計(jì)了一個(gè)25 位乘法器和一個(gè)50 位累加器,用5 個(gè)芯片工作時(shí)鐘周期,完成一個(gè)單自由度系統(tǒng)最大絕對(duì)沖擊加速度的計(jì)算。下面以計(jì)算固有頻率為f i 的單自由度系統(tǒng)最大絕對(duì)加速度為例,介紹Core 模塊工作原理。
(1) 分5 步完成5 次乘及4 次累加操作,流程如下:
步驟1 u( k) 與B0i 相乘,累加器初始值為u( k)
評(píng)論