基于PowerPC的高速處理系統(tǒng)設(shè)計(jì)
隨著現(xiàn)代大型系統(tǒng)和設(shè)備復(fù)雜性、綜合化、智能化程度的不斷提高,PHM(Prognostic and Health Management,故障預(yù)測(cè)與健康管理)技術(shù)應(yīng)運(yùn)而生,并在提高系統(tǒng)可靠性、安全性以及降低設(shè)備的維護(hù)和保障費(fèi)用等方面表現(xiàn)出了巨大的發(fā)展?jié)摿蛻?yīng)用前景[1-2]。
結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)是對(duì)各種大型系統(tǒng)和設(shè)備健康狀態(tài)進(jìn)行監(jiān)測(cè)、診斷、預(yù)測(cè)和管理的典型嵌入式應(yīng)用系統(tǒng)。用于飛機(jī)等大型設(shè)備的結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)是目前PHM技術(shù)的研究熱點(diǎn)[3-5],該系統(tǒng)的應(yīng)用可以有效改善飛機(jī)系統(tǒng)的維護(hù)方式,降低系統(tǒng)故障發(fā)生率和維護(hù)保障費(fèi)用。
本項(xiàng)目研制的高速處理系統(tǒng)主要負(fù)責(zé)結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)的整體控制、接收采集系統(tǒng)和傳感器接口系統(tǒng)采集到的大量監(jiān)測(cè)數(shù)據(jù)以及運(yùn)用復(fù)雜算法和智能模型對(duì)結(jié)構(gòu)的健康狀況的進(jìn)行整體監(jiān)控、診斷、預(yù)測(cè)和管理。該系統(tǒng)在處理能力和數(shù)據(jù)傳輸速度方面相比于以前的系統(tǒng)都有了較大的提高,外形符合CPCI-3U規(guī)范。
1 硬件總體設(shè)計(jì)
高速處理系統(tǒng)主要由中央處理器、存儲(chǔ)模塊、配置模塊、接口模塊和時(shí)鐘、電源電路組成,整體結(jié)構(gòu)圖如圖1所示。
本項(xiàng)目選用飛思卡爾公司具有高度整合性的PowerPC處理器P1010作為中央處理器。存儲(chǔ)模塊由內(nèi)存芯片DDR3、系統(tǒng)和應(yīng)用程序存儲(chǔ)器FLASH和配置信息存儲(chǔ)器EEPROM組成。配置模塊包括POR配置電路和CPLD,其中CPLD也是整個(gè)系統(tǒng)的輔助控制模塊,對(duì)于系統(tǒng)上電時(shí)序、POR引腳設(shè)置、復(fù)位、LED控制和IO擴(kuò)展等都有重要作用。接口模塊包括串口、網(wǎng)口、SATA口和CPCI接口,用于實(shí)現(xiàn)本系統(tǒng)與外部的高速數(shù)據(jù)交互。
2 硬件功能模塊設(shè)計(jì)
2.1 中央處理器
飛思卡爾的QorIQ P1010是一款采用先進(jìn)安全技術(shù)的高性能處理器,內(nèi)部集成了高性能、Power架構(gòu)的e500v2內(nèi)核,有32KB的一級(jí)指令緩存和32KB的一級(jí)數(shù)據(jù)緩存,256KB的二級(jí)緩存,支持浮點(diǎn)運(yùn)算和最高800MHz的內(nèi)核時(shí)鐘頻率,最高數(shù)據(jù)處理速度可達(dá)1600DMIPS[6],可滿(mǎn)足PHM技術(shù)對(duì)于數(shù)據(jù)處理能力的要求。同時(shí)P1010為用戶(hù)提供了GPIO、串口、網(wǎng)口、PCI-E、I2C、SATA等豐富的外設(shè)接口,具有強(qiáng)大的控制功能,1.1W的運(yùn)行功耗和19mm×19mm的BGA封裝也符合嵌入式設(shè)備對(duì)于低功耗和小體積的要求。P1010正常工作需要為其配置外圍時(shí)鐘、電源、存儲(chǔ)模塊和配置模塊。
P1010有兩個(gè)時(shí)鐘信號(hào),系統(tǒng)時(shí)鐘SYSCLK和實(shí)時(shí)時(shí)鐘RTC。本設(shè)計(jì)采用66.667MHz的有源晶振產(chǎn)生SYSCLK,經(jīng)內(nèi)部鎖相環(huán)電路倍頻后為P1010內(nèi)核和所有與內(nèi)核同步的設(shè)備和接口提供時(shí)鐘。RTC由實(shí)時(shí)時(shí)鐘模塊PT7C4338和32.768kHz的無(wú)源晶振實(shí)現(xiàn),連接在P1010的I2C控制器上,為系統(tǒng)提供日期、時(shí)間信息,也可以用作內(nèi)核和PIC(可編程中斷控制器)的計(jì)時(shí)器時(shí)鐘。
P1010的內(nèi)核電壓為1V±50mV,工作電流較大,本設(shè)計(jì)選用Intersil的ZL6100芯片為P1010供電。ZL6100是一個(gè)集成了MOSFET驅(qū)動(dòng)的數(shù)字電壓控制器,它的輸出電壓誤差在±1%以?xún)?nèi),輸出電流最高為3A,可以滿(mǎn)足P1010內(nèi)核對(duì)電壓精度和電流大小的要求。
2.2 存儲(chǔ)模塊
內(nèi)存主要用于存放用戶(hù)數(shù)據(jù)和代碼,為程序運(yùn)行和保存臨時(shí)數(shù)據(jù)提供空間,高速、大容量的內(nèi)存可以提高系統(tǒng)運(yùn)行效率。P1010內(nèi)部集成的DDR控制器支持DDR3和DDR3L兩種內(nèi)存芯片,本設(shè)計(jì)采用四片256M*8bit、支持800MHz操作頻率的DDR3芯片K4B2G0846C-HCK0并聯(lián),實(shí)現(xiàn)了總共1GB的內(nèi)存空間。四個(gè)芯片并聯(lián)支持最高800MHz×2×4×8bit=51.2Gb/s的數(shù)據(jù)傳輸速率。
2.3 配置模塊
P1010的大多數(shù)功能可通過(guò)在 信號(hào)的上升沿采樣POR配置引腳的值來(lái)設(shè)定,本項(xiàng)目通過(guò)上下拉電阻和撥碼開(kāi)關(guān)電路對(duì)相關(guān)POR引腳值進(jìn)行了配置,主要配置內(nèi)容如表1所示,其中1表示上拉至高電平,0表示下拉至低電平。
要使P1010正常工作,必須通過(guò)CPLD對(duì)系統(tǒng)上電時(shí)序、復(fù)位信號(hào)、JTAG相關(guān)引腳等進(jìn)行配置,另外,CPLD還可以用于POR引腳配置、系統(tǒng)擴(kuò)展和整體控制等。
2.4 接口模塊
為實(shí)現(xiàn)系統(tǒng)開(kāi)發(fā)過(guò)程中與外部主機(jī)的通信,本項(xiàng)目采用SP3232芯片實(shí)現(xiàn)了符合EIA/TIA-232-F標(biāo)準(zhǔn)的串口通信,采用RGMII物理層收發(fā)器VSC8641和一個(gè)用于電纜接口隔離的磁性模塊24HSS1041-2LF實(shí)現(xiàn)了網(wǎng)口通信。
P1010的SATA控制器可提供最高3.0Gbps的數(shù)據(jù)傳輸速率,通過(guò)外接SATA硬盤(pán)可以實(shí)現(xiàn)結(jié)構(gòu)健康監(jiān)測(cè)數(shù)據(jù)的快速存儲(chǔ),方便后期回放和研究。
P1010內(nèi)部?jī)H集成了PCI-E控制器,為實(shí)現(xiàn)CPCI總線(xiàn)方式的數(shù)據(jù)傳輸,本項(xiàng)目采用橋接芯片PEX8112實(shí)現(xiàn)PCI-E和CPCI接口的轉(zhuǎn)換。PCI-E接口的參考時(shí)鐘為100MHz,由PI6C557-05和一個(gè)25MHz的無(wú)源晶振產(chǎn)生。
3 系統(tǒng)測(cè)試
高速處理系統(tǒng)的PCB板,大小為100mm×160mm,厚度不超過(guò)15mm。符合嵌入式應(yīng)用對(duì)于小體積的要求。硬件調(diào)試成功后即可進(jìn)行嵌入式Linux系統(tǒng)移植。
本文采用飛思卡爾提供的、面向Linux的軟件開(kāi)發(fā)包Freescale Linux SDK for QorIQ Processors為高速處理系統(tǒng)開(kāi)發(fā)嵌入式Linux系統(tǒng),通過(guò)修改SDK中P1010rdb的配置文件得到適用于高速處理系統(tǒng)的配置文件,并在此基礎(chǔ)上生成可從NOR FLASH加載的u-boot以及Linux內(nèi)核和根文件系統(tǒng)。首先,將u-boot寫(xiě)入NOR FLASH[7],系統(tǒng)上電后可在超級(jí)終端看到如圖2所示的反饋信息,表示u-boot移植成功。
內(nèi)核和根文件系統(tǒng)有網(wǎng)絡(luò)和本地兩種加載方式,在系統(tǒng)調(diào)試階段,一般采用網(wǎng)絡(luò)加載方式,方便調(diào)試過(guò)程中反復(fù)修改。系統(tǒng)調(diào)試完成后,將其寫(xiě)入FLASH等非易失性存儲(chǔ)器,采用本地加載方式,使系統(tǒng)可脫離主機(jī)獨(dú)立運(yùn)行。
系統(tǒng)移植成功后即可進(jìn)行系統(tǒng)性能測(cè)試。在主機(jī)上編寫(xiě)C語(yǔ)言程序?qū)崿F(xiàn)對(duì)1000個(gè)數(shù)的快速排序、選擇排序、插入排序,使用gcc編譯器生成Linux系統(tǒng)上的可執(zhí)行文件,將其加載到高速處理系統(tǒng)中并運(yùn)行,得到它們需要的時(shí)間分別為0.124s、0.376s和0.438s,可見(jiàn)高速處理系統(tǒng)具有較強(qiáng)的數(shù)據(jù)處理能力。
4 結(jié)語(yǔ)
本項(xiàng)目設(shè)計(jì)并實(shí)現(xiàn)了用于結(jié)構(gòu)健康監(jiān)測(cè)的高速處理系統(tǒng)設(shè)計(jì),該系統(tǒng)具有高速的數(shù)據(jù)處理和傳輸能力,可以滿(mǎn)足結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)的要求,具有小體積、低功耗等優(yōu)點(diǎn)。該系統(tǒng)可以移植嵌入式Linux系統(tǒng),為后期各種算法的開(kāi)發(fā)和移植提供了便利。該系統(tǒng)在實(shí)際使用過(guò)程中可以根據(jù)監(jiān)測(cè)數(shù)據(jù)迅速的對(duì)飛機(jī)的健康狀態(tài)做出評(píng)估,也可以用作其他結(jié)構(gòu)的結(jié)構(gòu)健康監(jiān)測(cè)系統(tǒng)的數(shù)據(jù)處理中心。