国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種航空電子模塊電壓采集方法設(shè)計(jì)及應(yīng)用

2019-06-11 09:53劉紅偉范永坤
電子技術(shù)與軟件工程 2019年7期
關(guān)鍵詞:狀態(tài)機(jī)寄存器時(shí)鐘

文/劉紅偉 范永坤

1 引言

為解決航空電子系統(tǒng)不標(biāo)準(zhǔn)的問題,北大西洋公約組織(NATO)成立了聯(lián)合標(biāo)準(zhǔn)航空電子系統(tǒng)結(jié)構(gòu)委員會(huì)(Allied Standard Avionics Architecture Concil, ASSAAC)。 目前,ASSAAC標(biāo)準(zhǔn)已經(jīng)發(fā)布了5個(gè)標(biāo)準(zhǔn):軟件標(biāo)準(zhǔn)、封裝標(biāo)準(zhǔn)、通信及網(wǎng)絡(luò)標(biāo)準(zhǔn)、通用功能模塊標(biāo)準(zhǔn)及系統(tǒng)相關(guān)問題指南標(biāo)準(zhǔn)。同時(shí),ASSAAC定義了通用功能模塊和通用處理模塊兩種標(biāo)準(zhǔn)硬件類型。為進(jìn)一步降低成本,模塊由一系列的通用標(biāo)準(zhǔn)電路單元集進(jìn)行構(gòu)造,如圖1所示。這些通用標(biāo)準(zhǔn)單元集包 括MSU(Module Support Unit)、PSU(Power Supply Unit)、RU(Routing Unit)、NIU(Network Interface Unit)、PU(Processing Unit),模 塊 物理接口是電源的輸入接口和網(wǎng)絡(luò)的輸入輸出接口。其中MSU負(fù)責(zé)監(jiān)視和控制模塊運(yùn)行,提供模塊BIT檢測(cè)、初始化配置、維護(hù)測(cè)試等功能,完成模塊健康狀態(tài)檢測(cè)和模塊故障管理的數(shù)據(jù)采集輸入。

模塊內(nèi)部芯片的供電電壓的狀態(tài)是模塊健康狀態(tài)的重要檢測(cè)指標(biāo),是故障管理的重要數(shù)據(jù)輸入。本專利提出了一種通用功能模塊和通用處理模塊的電壓采集方法,來監(jiān)控模塊內(nèi)部芯片的供電電壓5V、3.3V、2.5V、1.8V、1.2V、1.05V、1.0V等的電壓狀態(tài),并通過MSU進(jìn)行檢測(cè)結(jié)果采集。

目前的航空電子模塊內(nèi)部電壓的檢測(cè)多根據(jù)自身模塊的特點(diǎn)采用的電壓采集方法也不同:或利用模塊中集成模數(shù)轉(zhuǎn)換功能的DSP來采集模塊內(nèi)的電壓,或利用模塊中集成模數(shù)轉(zhuǎn)換功能的高性能FPGA來采集模塊內(nèi)的電壓,或采用多個(gè)單路的模數(shù)轉(zhuǎn)換芯片來采集模塊內(nèi)的電壓。同一個(gè)系統(tǒng)中也無法形成統(tǒng)一標(biāo)準(zhǔn)的電壓采集方法。

國內(nèi)在研的模數(shù)轉(zhuǎn)換芯片多是單通道的模數(shù)轉(zhuǎn)換器,一片芯片只能采集一路電壓信號(hào),用在模塊內(nèi)部進(jìn)行電壓采集就需要多片芯片,需要的數(shù)字接口的數(shù)量也會(huì)隨著芯片數(shù)量成倍增加,不利于高集成度航空電子模塊的設(shè)計(jì)。

圖2:多通道電壓采集的硬件框圖

圖3:AD7327驅(qū)動(dòng)接口框圖

圖4:AD7327驅(qū)動(dòng)的讀時(shí)序圖

TI公司生產(chǎn)的AD7327是一款8通道12位采樣率為500kSPS的模數(shù)轉(zhuǎn)換芯片,檢測(cè)電壓范圍可以軟件配置成四種:-10V~+10V,-5V~+5V,-2.5V~+2.5V,0V~10V,數(shù)字輸出接口為高速串行外設(shè)接口(Serial Peripheral Interface,SPI)。目前,限于通用功能模塊和通用處理模塊的MSU單元多使用沒有集成模數(shù)轉(zhuǎn)換功能的大規(guī)??删幊涕T陣列(FPGA),模塊的健康狀態(tài)檢測(cè)結(jié)果多需要在沒有集成模數(shù)轉(zhuǎn)換功能的FPGA內(nèi)部轉(zhuǎn)換成并行數(shù)據(jù)進(jìn)行上報(bào),因此,需要對(duì)FPGA擴(kuò)充SPI接口,并轉(zhuǎn)換成并行數(shù)據(jù)進(jìn)行上報(bào)電壓檢測(cè)結(jié)果。

SPI通信作為一種串行總線通信方式,有簡(jiǎn)單、高速、全雙工傳輸?shù)葍?yōu)點(diǎn),廣泛應(yīng)用于數(shù)據(jù)通信、數(shù)據(jù)處理、航空電子、消費(fèi)電子產(chǎn)品等領(lǐng)域,通過FPGA來進(jìn)行SPI總線的協(xié)議解析、轉(zhuǎn)換是常用的數(shù)據(jù)處理方式。

2 硬件設(shè)計(jì)部分

電壓采集的硬件框圖如圖2所示。待采集的板載電壓,例如3.3V、2.5V、1.8V、1.1V、1.0V等模擬信號(hào)通過AD7327的IN0~I(xiàn)N7管腳輸入到模擬通道選擇器,模擬通道選擇器根據(jù)通道選擇信號(hào)依次選擇IN0至IN7先后輸出到模數(shù)轉(zhuǎn)換器進(jìn)行模數(shù)轉(zhuǎn)換,轉(zhuǎn)換結(jié)果輸出到控制邏輯寄存器,控制邏輯寄存器(包含輸入范圍寄存器1、輸入范圍寄存器2、通道選擇寄存器)輸出控制參數(shù)(如輸入電壓范圍為0~10V的選擇參數(shù)、參考電壓為內(nèi)部參考的選擇參數(shù)、選擇編碼格式為補(bǔ)碼格式的選擇參數(shù)等)到模數(shù)轉(zhuǎn)換器,控制邏輯寄存器輸出通道選擇參數(shù)到模擬通道選擇器來選擇IN0~I(xiàn)N7通道中的一個(gè)輸入通道作為模數(shù)轉(zhuǎn)化器的輸入。同時(shí)控制邏輯寄存器列化出高數(shù)串行總線至管腳,分別為DIN、SCLK、CS、DOUT,其中DIN為高速串行總線的輸入數(shù)據(jù)管腳、SCLK為高速串行總線的時(shí)鐘輸入管腳、CS為高速串行總線的片選管腳、DOUT為高速串行總線的數(shù)據(jù)輸出管腳。DIN、SCLK、CS、DOUT通過包含于MSU的大規(guī)??删幊涕T陣列(FPGA)的普通輸入輸出管腳分別連接至AD7327驅(qū)動(dòng) 的adc_sdo_i、ad_sclk_o、adc_cs_n_o、ad_sdi_o四個(gè)信號(hào)接口。

3 軟件設(shè)計(jì)部分

3.1 AD7327驅(qū)動(dòng)接口設(shè)計(jì)

AD7327驅(qū)動(dòng)的接口信號(hào)圖如圖3所示,分為時(shí)鐘和復(fù)位接口部分、AD7327驅(qū)動(dòng)的控制信號(hào)和數(shù)據(jù)接口部分、AD7327的高速串行總線接口部分三部分。時(shí)鐘和復(fù)位接口部分信號(hào)定義和功能如下:fpga_clk_i為AD7327的主時(shí)鐘,由FPGA內(nèi)部產(chǎn)生的100MHz時(shí)鐘提供;adc_clk_i為輸入給AD7327高速串行時(shí)鐘的時(shí)鐘源,由FPGA的100MHz時(shí)鐘分頻提供;reset_n_i為AD7327驅(qū)動(dòng)的復(fù)位信號(hào),復(fù)位AD7327驅(qū)動(dòng)中的信號(hào)量的初始值,信號(hào)為低有效。AD7327驅(qū)動(dòng)的控制信號(hào)和數(shù)據(jù)接口部分信號(hào)定義和功能如下:wr_data_n_i為寫入AD7327寄存器的使能信號(hào),信號(hào)為低有效;data_i[15:0]為寫入AD7327寄存器的16位數(shù)據(jù);data_o[15:0]為AD7327驅(qū)動(dòng)輸出的模數(shù)轉(zhuǎn)換結(jié)果的并行數(shù)據(jù);data_rd_ready_o為AD7327驅(qū)動(dòng)輸出信號(hào),當(dāng)電平為高時(shí),可以從data_o[15:0]讀出模數(shù)轉(zhuǎn)換結(jié)果;data_wr_ready_o為AD7327驅(qū)動(dòng)輸出信號(hào),當(dāng)電平為高時(shí),寫入AD7327的寄存器操作完成,具備再次寫入的狀態(tài)。AD7327的高速串行總線接口部分信號(hào)定義和功能如下:adc_sdo_i為AD7327驅(qū)動(dòng)的串行數(shù)據(jù)輸入信號(hào);ad_sdi_o為AD7327驅(qū)動(dòng)的串行數(shù)據(jù)輸出信號(hào);ad_sclk_o為AD7327驅(qū)動(dòng)的串行時(shí)鐘輸出信號(hào);adc_cs_n_o為AD7327驅(qū)動(dòng)的片選輸出信號(hào),為低電平有效。

圖5:AD7327驅(qū)動(dòng)的寫時(shí)序圖

圖6:AD7327驅(qū)動(dòng)內(nèi)部的狀態(tài)機(jī)轉(zhuǎn)換圖

圖7:全通道模數(shù)轉(zhuǎn)換流程圖

圖8:測(cè)試平臺(tái)框圖

圖9:測(cè)試結(jié)果輸出

3.2 AD7327的讀寫時(shí)序設(shè)計(jì)

AD7327驅(qū)動(dòng)的讀時(shí)序圖如圖4。以100MHz的時(shí)鐘信號(hào)fpga_clk_i作為讀時(shí)序的時(shí)鐘源,在表征數(shù)據(jù)可讀的狀態(tài)信號(hào)data_rd_ready_o為高時(shí),通道轉(zhuǎn)換結(jié)果的數(shù)據(jù)data_o[15:0]有效,可以讀取其中的高3位作為通道編碼:“000”為IN0通道,“001”為IN1通道,依次類推,IN0~I(xiàn)N7各通道編碼唯一,data_o[15:0]的低12位作為該通道的輸出結(jié)果。

AD7327驅(qū)動(dòng)的寫時(shí)序圖如圖5。以100MHz的時(shí)鐘信號(hào)fpga_clk_i作為讀時(shí)序的時(shí)鐘源,在表征數(shù)據(jù)可寫入的狀態(tài)信號(hào)wr_data_n_i下降沿時(shí)開始將已經(jīng)提前1個(gè)時(shí)鐘周期準(zhǔn)備好的數(shù)據(jù)data_i[15:0]寫入不同的AD7327控制邏輯寄存器,其中data_i[15:0]的高3位作為寄存器編碼:“101”表征輸入范圍寄存器1、“110”表征輸入范圍寄存器2、“111”表征通道選擇寄存器;低12位為寫入該寄存器的值。當(dāng)寫入寄存器操作完成時(shí),表征完成寫操作的信號(hào)wr_data_ready_o變高。

3.3 AD7327驅(qū)動(dòng)狀態(tài)機(jī)設(shè)計(jì)

采用狀態(tài)機(jī)的軟件架構(gòu)使得AD7327驅(qū)動(dòng)程序流程更具層次化,增強(qiáng)了軟件的可讀性和規(guī)范性。AD7327驅(qū)動(dòng)內(nèi)部的狀態(tài)機(jī)主要由空等待狀態(tài)、開始轉(zhuǎn)換狀態(tài)、將轉(zhuǎn)換結(jié)果數(shù)據(jù)寫入AD7327驅(qū)動(dòng)的寄存器狀態(tài)、片選延時(shí)狀態(tài)、傳輸數(shù)據(jù)狀態(tài)、等待結(jié)束狀態(tài)共6個(gè)狀態(tài)組成。模塊上電、FPGA程序加載完成后,F(xiàn)PGA產(chǎn)生復(fù)位信號(hào)reset_n_i=0使得狀態(tài)機(jī)處于空等待狀態(tài),復(fù)位信號(hào)reset_n_i=1變?yōu)楦唠娖綍r(shí),復(fù)位結(jié)束,等待1個(gè)100MHz的時(shí)鐘周期,狀態(tài)機(jī)進(jìn)入AD7327開始轉(zhuǎn)換狀態(tài),芯片開始進(jìn)行預(yù)定通道的模數(shù)轉(zhuǎn)換;等待1個(gè)100MHz的時(shí)鐘周期后狀態(tài)機(jī)進(jìn)入將轉(zhuǎn)換結(jié)果數(shù)據(jù)寫入AD7327驅(qū)動(dòng)的寄存器狀態(tài),該狀態(tài)持續(xù)16個(gè)周期的10MHz的時(shí)鐘周期,之后狀態(tài)機(jī)進(jìn)入片選延時(shí)狀態(tài),確保AD7327驅(qū)動(dòng)內(nèi)表征轉(zhuǎn)換結(jié)果數(shù)據(jù)的寄存器穩(wěn)定;等待1個(gè)10MHz的時(shí)鐘周期之后進(jìn)入傳輸數(shù)據(jù)狀態(tài),此時(shí)data_rd_ready_o=1(其他狀態(tài)為0),此時(shí)data_o[15:0]有效,可以讀出對(duì)應(yīng)通道的模數(shù)轉(zhuǎn)換結(jié)果;等待1個(gè)100MHz的時(shí)鐘周期后狀態(tài)機(jī)進(jìn)入等待結(jié)束狀態(tài),該狀態(tài)持續(xù)等待完成一次轉(zhuǎn)換的周期數(shù)(完成1次轉(zhuǎn)換的周期數(shù)是198個(gè)100MHz的時(shí)鐘周期數(shù));之后狀態(tài)機(jī)又進(jìn)入空等待狀態(tài),完成一次模數(shù)轉(zhuǎn)換的循環(huán)。AD7327驅(qū)動(dòng)內(nèi)部的狀態(tài)機(jī)如圖6所示。

3.4 全通道電壓采集流程設(shè)計(jì)

AD7327全通道模數(shù)轉(zhuǎn)換流程圖如圖7所示。首先開啟電源,AD7327供電穩(wěn)定,大規(guī)??删幊涕T陣列(FPGA)供電正常,加載程序成功并正常工作;第二步,F(xiàn)PGA中的AD7327驅(qū)動(dòng)向AD7327的輸入范圍寄存器1寫入“1011111111100000”來選擇通 道IN0、IN1、IN2、IN3的 輸 入 模 擬 信號(hào)的范圍為0V至10V;第三步,F(xiàn)PGA中的AD7327驅(qū)動(dòng)向AD7327的輸入范圍寄存器2寫入“1101111111100000”來選擇通道IN4、IN5、IN6、IN7的輸入模擬信號(hào)的范圍為0V至10V;第四步,F(xiàn)PGA中的AD7327驅(qū)動(dòng)向AD7327的通道選擇寄存器寫入“1111111111100000”選擇轉(zhuǎn)換的通道IN0、IN1、IN2、IN3、IN4、IN5、IN6、IN7;第五步,F(xiàn)PGA中的AD7327驅(qū)動(dòng)向AD7327的通道控制邏輯寄存器寫入“10011100000011000”來選擇依次轉(zhuǎn)換的順序?yàn)椋和ǖ繧N0、IN1、IN2、IN3、IN4、IN5、IN6、IN7,選 擇 參考電壓為內(nèi)部參考,選擇輸入的模擬信號(hào)為單端信號(hào),選擇編碼為補(bǔ)碼格式;第六步,F(xiàn)PGA中的AD7327驅(qū)動(dòng)向AD7327的寫入“0000000000000000”,標(biāo)志位Write_Bit=0,啟動(dòng)ADC轉(zhuǎn)換,從IN0開始轉(zhuǎn)換;第七步,依次轉(zhuǎn)換通道IN1、IN2、IN3、IN4、IN5、IN6、IN7。循環(huán)至第六步開啟下一次的ADC轉(zhuǎn)換。

4 達(dá)到技術(shù)指標(biāo)及工程驗(yàn)證

4.1 達(dá)到技術(shù)指標(biāo)

該多通道電壓采集方法已成功應(yīng)用于某航空電子系統(tǒng),并達(dá)到如下性能指標(biāo):

(1)最多采集電壓通道數(shù):8路。

(2)輸入電壓范圍可變:可軟件配置選擇電壓輸入范圍-10V~+10V;-5V~+5V;-2.5V~+2.5V;0V~+10V四種電壓輸入范圍。

(3)采樣率:500kSPS。

(4)每個(gè)通道的信噪比:大于72dB。

(5)單通道數(shù)據(jù)精度:0.61mV/LSB(最大輸入范圍差為5V);1.22mV/LSB(最大輸入范圍差為10V);2.441mV/LSB(最大輸入范圍差為20V)

(6)單AD7327的最大功耗:17mW。

4.2 工程測(cè)試平臺(tái)及驗(yàn)證

某通用模塊測(cè)試平臺(tái)框圖如圖 8所示。板載的電壓3.3V、2.5V、1.2V、1.5V、1.05V分別接入AD7327芯片的IN0~I(xiàn)N4通道,經(jīng)AD7327模數(shù)轉(zhuǎn)換,通過SPI總線將結(jié)果傳輸給FPGA,F(xiàn)PGA內(nèi)的AD7327驅(qū)動(dòng)完成串行SPI總線協(xié)議到16位數(shù)據(jù)線的并行總線的協(xié)議轉(zhuǎn)換并傳輸,處理器PowerPC通過并行總線接口將轉(zhuǎn)換結(jié)果接收并解析并行協(xié)議,并通過串口輸出結(jié)果。

處理器PowerPC上運(yùn)行嵌入式VxWorks操作系統(tǒng),并輸出板載電壓的輸出,如圖 9所示。

5 結(jié)束語

本文針對(duì)航空電子系統(tǒng)中通用功能模塊和通用處理模塊的健康狀態(tài)檢測(cè),提供了一種多通道電壓同時(shí)采集的電壓采集方法,降低了航空電子模塊中多種電壓采集時(shí)電路設(shè)計(jì)的復(fù)雜性,并在工程中得到實(shí)現(xiàn)和驗(yàn)證,可以滿足航空電子系統(tǒng)模塊對(duì)電壓的采集的健康管理需求。

猜你喜歡
狀態(tài)機(jī)寄存器時(shí)鐘
別樣的“時(shí)鐘”
古代的時(shí)鐘
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
基于有限狀態(tài)機(jī)的交會(huì)對(duì)接飛行任務(wù)規(guī)劃方法
分簇結(jié)構(gòu)向量寄存器分配策略研究*
時(shí)鐘會(huì)開“花”
高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
FPGA設(shè)計(jì)中狀態(tài)機(jī)安全性研究
基于反熔絲FPGA的有限狀態(tài)機(jī)加固設(shè)計(jì)
一種可重構(gòu)線性反饋移位寄存器設(shè)計(jì)