張博洋
(蘭州交通大學(xué),甘肅 蘭州 730070)
當(dāng)前是半導(dǎo)體技術(shù)和納米技術(shù)高速發(fā)展的時(shí)代;同時(shí),國(guó)內(nèi)IT 技術(shù)也在不斷地發(fā)展。目前,在各個(gè)領(lǐng)域已經(jīng)逐步引入越發(fā)復(fù)雜的由固件和硬件組成的嵌入式系統(tǒng),服務(wù)于民生行業(yè)的關(guān)鍵領(lǐng)域。所引入的復(fù)雜的嵌入式系統(tǒng)中包括有多個(gè)處理器和控制器,從而能夠滿(mǎn)足應(yīng)用領(lǐng)域的實(shí)時(shí)控制要求。鑒于嵌入式系統(tǒng)的復(fù)雜性和多功能型,進(jìn)而對(duì)嵌入式系統(tǒng)檢測(cè)的可控性、直觀(guān)性等方面提出了更高的要求。傳統(tǒng)針對(duì)嵌入式系統(tǒng)的監(jiān)測(cè)系統(tǒng)在可靠性和維修性方面存在不足;因此,設(shè)計(jì)一款可對(duì)復(fù)雜嵌入式系統(tǒng)的快速處理、分析和控制能力的檢測(cè)系統(tǒng)對(duì)于系統(tǒng)的性能尤為重要。
本文針對(duì)復(fù)雜嵌入式系統(tǒng)的檢測(cè)需求,以CPCI 總線(xiàn)架構(gòu)為基礎(chǔ),融合DSP+FPGA 處理器的架構(gòu),采用多標(biāo)準(zhǔn)的總線(xiàn)和模擬數(shù)字信號(hào)結(jié)構(gòu)技術(shù),設(shè)計(jì)一款針對(duì)嵌入式系統(tǒng)高可靠性、智能化以及通用的檢測(cè)系統(tǒng)。具體闡述為:
本節(jié)將從復(fù)雜嵌入式系統(tǒng)的概述,對(duì)復(fù)雜嵌入式系統(tǒng)的測(cè)試需求進(jìn)行分析。
在當(dāng)前計(jì)算機(jī)技術(shù)高度發(fā)展的時(shí)代,嵌入式系統(tǒng)已經(jīng)被廣泛應(yīng)用于通信、消費(fèi)產(chǎn)品等各個(gè)領(lǐng)域中。在現(xiàn)代科學(xué)中,首個(gè)嵌入式系統(tǒng)為阿波羅導(dǎo)航計(jì)算機(jī),該基于嵌入式系統(tǒng)的計(jì)算機(jī)主要用于對(duì)月球的探測(cè)。復(fù)雜嵌入式系統(tǒng)與普通嵌入式系統(tǒng)的主要區(qū)別在于,復(fù)雜嵌入式系統(tǒng)具備數(shù)據(jù)采集、通信、信號(hào)處理、監(jiān)控以及用戶(hù)界面顯示等功能外還具備以下特點(diǎn):
(1)復(fù)雜嵌入式系統(tǒng)主要由基礎(chǔ)的嵌入式操作系統(tǒng)和專(zhuān)用的硬件架構(gòu)所組成,其具備執(zhí)行特殊任務(wù)的應(yīng)用程序。
(2)根據(jù)嵌入式系統(tǒng)應(yīng)用功能的不同,嵌入式操作系統(tǒng)可視情況而定;但是,嵌入式系統(tǒng)中固件是必需的,其主要承擔(dān)嵌入式系統(tǒng)的預(yù)變成功能。
(3)對(duì)于復(fù)雜嵌入式系統(tǒng)而言,除了滿(mǎn)足基礎(chǔ)的性能、內(nèi)存以及功能需求外,尤其關(guān)乎系統(tǒng)的響應(yīng)時(shí)間;即保證系統(tǒng)的硬實(shí)時(shí)系統(tǒng)是屬于確定性的。
復(fù)雜嵌入式系統(tǒng)的測(cè)試型設(shè)計(jì)技術(shù)可歸納為測(cè)試性、內(nèi)部測(cè)試、外部測(cè)試以及人工測(cè)試等技術(shù)。各項(xiàng)測(cè)試技術(shù)闡述為:
固有測(cè)試性需求:主要是對(duì)復(fù)雜嵌入式系統(tǒng)的固有性能進(jìn)行測(cè)試,其與響應(yīng)數(shù)據(jù)和測(cè)試機(jī)理無(wú)直接關(guān)系。
內(nèi)部測(cè)試需求:需要對(duì)復(fù)雜嵌入式系統(tǒng)的內(nèi)部檢測(cè),并實(shí)現(xiàn)對(duì)其內(nèi)部故障的自動(dòng)隔離;測(cè)試結(jié)果與系統(tǒng)的資源利用和功耗相關(guān)。
人工測(cè)試需求:需要對(duì)嵌入式系統(tǒng)進(jìn)行人工測(cè)試,該項(xiàng)測(cè)試一般效率偏低,而且測(cè)試精度容易受到影響。
彈載計(jì)算機(jī)為典型的復(fù)雜嵌入式系統(tǒng),其主要功能是對(duì)導(dǎo)彈的控制,包括導(dǎo)航、慣導(dǎo)以及通信等功能。一般彈載計(jì)算機(jī)嵌入式系統(tǒng)的結(jié)構(gòu)如圖1 所示。
圖1 彈載嵌入式計(jì)算機(jī)系統(tǒng)
以圖1 的彈載計(jì)算機(jī)嵌入式系統(tǒng)為測(cè)試對(duì)象,根據(jù)測(cè)試任務(wù)和要求,需要對(duì)嵌入式系統(tǒng)的供電電壓、數(shù)字信號(hào)、模擬信號(hào)、物理效應(yīng)信號(hào)以及各類(lèi)總線(xiàn)的信號(hào)進(jìn)行監(jiān)測(cè)。對(duì)于一般的嵌入式系統(tǒng)而言,除了具備對(duì)上述信號(hào)的準(zhǔn)確監(jiān)測(cè)功能外,還需具備以下功能:
(1)檢測(cè)系統(tǒng)可模擬彈載計(jì)算機(jī)嵌入式系統(tǒng)的外部環(huán)境以及被測(cè)對(duì)象的各個(gè)功能模塊。
(2)檢測(cè)系統(tǒng)可采用軟件分析手段對(duì)被測(cè)設(shè)備的硬件接口和軟件性能進(jìn)行綜合評(píng)價(jià)。
(3)檢測(cè)系統(tǒng)能夠與被測(cè)對(duì)象(彈載計(jì)算機(jī)嵌入式系統(tǒng))進(jìn)行實(shí)時(shí)通信,以確保能夠?qū)崟r(shí)記錄、分析以及顯示測(cè)試結(jié)果。
(4)檢測(cè)系統(tǒng)具備半實(shí)物仿真測(cè)試的功能,可對(duì)彈載計(jì)算機(jī)嵌入式系統(tǒng)的綜合性能進(jìn)行評(píng)估。
為保證所設(shè)計(jì)的針對(duì)嵌入式系統(tǒng)的自動(dòng)檢測(cè)系統(tǒng)能夠滿(mǎn)足“1.2”中的測(cè)試需求,需要突破自動(dòng)檢測(cè)系統(tǒng)的總體設(shè)計(jì)、主從式通信總線(xiàn)以及可靠性等關(guān)鍵技術(shù)。下面進(jìn)行具體闡述。
根據(jù)嵌入式系統(tǒng)的自動(dòng)檢測(cè)需求,采用自頂而下的設(shè)計(jì)思路和模塊化的設(shè)計(jì)理念;根據(jù)需求確定軟硬件模型;最后,將所設(shè)計(jì)的各個(gè)模塊有機(jī)結(jié)合為嵌入式系統(tǒng)的自動(dòng)檢測(cè)系統(tǒng)。為保證所設(shè)計(jì)的嵌入式自動(dòng)檢測(cè)系統(tǒng)滿(mǎn)足應(yīng)用需求,在總體和模塊化設(shè)計(jì)時(shí)需遵循成熟性、通用性、擴(kuò)展性、便攜性、可靠性以及經(jīng)濟(jì)性等原則。
基于上述設(shè)計(jì)總原則,針對(duì)嵌入式系統(tǒng)設(shè)計(jì)的自動(dòng)檢測(cè)系統(tǒng)的基本檢測(cè)原路如圖2 所示。
根據(jù)圖2 中的自動(dòng)檢測(cè)系統(tǒng)的基本原理并結(jié)合嵌入式系統(tǒng)的測(cè)試需求,需要為自動(dòng)檢測(cè)系統(tǒng)配套微型計(jì)算機(jī)模塊、測(cè)試所需激勵(lì)信號(hào)產(chǎn)生模塊、測(cè)試響應(yīng)信號(hào)的采集模塊以及相關(guān)的各類(lèi)接口等?;谧詣?dòng)檢測(cè)系統(tǒng)的檢測(cè)原理和各模塊的需求,將各個(gè)模塊有機(jī)結(jié)合形成嵌入式檢測(cè)系統(tǒng)。嵌入式自動(dòng)檢測(cè)系統(tǒng)主要模塊包括有通用計(jì)算機(jī)主板、功能接口板、供電系統(tǒng)、開(kāi)關(guān)子系統(tǒng)等。
圖2 自動(dòng)檢測(cè)系統(tǒng)基本原理圖
主從式通信總線(xiàn)技術(shù)實(shí)現(xiàn)上位機(jī)與下位機(jī)的通信。本系統(tǒng)采用緊密型或密集型的PCI 總線(xiàn)實(shí)現(xiàn)通信功能。針對(duì)自動(dòng)檢測(cè)系統(tǒng)上位機(jī)與下位機(jī)的通信需求,可采用ASIC+CORE、FPGA內(nèi)部的PCI硬核、FPGA內(nèi)部的PCI軟核、DSP+PCI 協(xié)議芯片、FPGA+PCI 協(xié)議芯片等幾種方式實(shí)現(xiàn)通信功能。以下為各種通信方式的特點(diǎn)說(shuō)明。
ASIC+CORE 通信方式對(duì)應(yīng)模塊的編程量大、不便于后期的維護(hù),其技術(shù)實(shí)現(xiàn)難度較大。
FPGA 內(nèi)部的PCI 硬核通信方式具有調(diào)用方便、靈活性較差、不容易被移植等特點(diǎn);而且該種通信方式對(duì)應(yīng)可選擇的芯片種較少。
FPGA 內(nèi)部的PCI 軟核通信方式支持多個(gè)版本的PCI 通信協(xié)議,靈活性相對(duì)于硬核較好;但是軟核通信方式的處理速度較慢且價(jià)格較高,同時(shí)其還需要一些物理元器件做支撐才能實(shí)現(xiàn)功能。
DSP+PCI 協(xié)議芯片的通信方式操作簡(jiǎn)單,但是其在通信中所占據(jù)的引腳資源較多,通信效率偏低。
PGA+PCI 協(xié)議芯片的通信方式技術(shù)成熟度高且功能實(shí)現(xiàn)的難度較低,通信的穩(wěn)定性較好,具有較好的靈活性。
綜合上述幾種通信方式的類(lèi)型,從通信穩(wěn)定性、成本以及可靠性層面對(duì)比,最終確定采用PGA+PCI 協(xié)議芯片通信方式實(shí)現(xiàn)嵌入式系統(tǒng)自動(dòng)檢測(cè)系統(tǒng)上位機(jī)與下位機(jī)的通信,以滿(mǎn)足自動(dòng)檢測(cè)通信需求的基礎(chǔ)上,實(shí)現(xiàn)通信的靈活性。
結(jié)合嵌入式系統(tǒng)的檢測(cè)需求以及總體設(shè)計(jì)基礎(chǔ)和通信關(guān)鍵技術(shù)的選擇,本節(jié)完成嵌入式系統(tǒng)自動(dòng)檢測(cè)系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)。以下為具體闡述。
根據(jù)嵌入式自動(dòng)檢測(cè)系統(tǒng)的功能需求,本小節(jié)對(duì)檢測(cè)系統(tǒng)的關(guān)鍵硬件包括有功能接口、供電系統(tǒng)以及開(kāi)關(guān)子系統(tǒng)模塊進(jìn)行設(shè)計(jì)。
(1)功能接口模塊的設(shè)計(jì)。功能接口模塊作為嵌入式系統(tǒng)的自動(dòng)檢測(cè)系統(tǒng)的核心模塊,其主要任務(wù)是實(shí)現(xiàn)對(duì)檢測(cè)系統(tǒng)底層模塊的模擬控制。為了提升功能接口模塊的通用性,為嵌入式自動(dòng)檢測(cè)系統(tǒng)配置多種功能的接口模塊。
(2)自動(dòng)檢測(cè)系統(tǒng)供電模塊的設(shè)計(jì)。嵌入式自動(dòng)檢測(cè)系統(tǒng)所外接的電源為220 V 的市電;但是,自動(dòng)檢測(cè)系統(tǒng)中各個(gè)模塊的額定電壓遠(yuǎn)低于220 V。因此,需要對(duì)市電進(jìn)行轉(zhuǎn)換后才能為自動(dòng)檢測(cè)系統(tǒng)中的各個(gè)模塊進(jìn)行供電。根據(jù)自動(dòng)檢測(cè)系統(tǒng)中各個(gè)模塊的額定電壓,設(shè)計(jì)電源轉(zhuǎn)換模塊。
(3)CPCI 總線(xiàn)接口模塊的設(shè)計(jì)。CPCI 總線(xiàn)接口模塊的主要功能是實(shí)現(xiàn)嵌入式系統(tǒng)的自動(dòng)檢測(cè)系統(tǒng)中各個(gè)模塊之間的數(shù)據(jù)通信;同時(shí),還需時(shí)間檢測(cè)系統(tǒng)與上位機(jī)的通信??偟膩?lái)講,CPCI 總線(xiàn)接口模塊是整個(gè)自動(dòng)檢測(cè)系統(tǒng)實(shí)現(xiàn)其功能的關(guān)鍵。本系統(tǒng)選用PLX 公司研發(fā)的CPCI 橋接芯片為總線(xiàn)接口模塊,該芯片支持CI2.2 協(xié)議。
在上述核心硬件做支撐的基礎(chǔ)上,根據(jù)自動(dòng)檢測(cè)系統(tǒng)的功能需求設(shè)計(jì)相應(yīng)的軟件控制流程才能夠正常、高效發(fā)揮自動(dòng)檢測(cè)系統(tǒng)的功能。針對(duì)嵌入式檢測(cè)系統(tǒng)的軟件設(shè)計(jì)需求,采用分層結(jié)構(gòu)實(shí)現(xiàn)其各個(gè)模塊的功能,包括用應(yīng)用層、管理層和物理接口層。其中,應(yīng)用層和管理層主要指的是的自動(dòng)檢測(cè)系統(tǒng)的主控制計(jì)算機(jī)對(duì)應(yīng)的上位機(jī)軟件;而物理接口層主要面對(duì)的下位機(jī)軟件。
根據(jù)自動(dòng)檢測(cè)系統(tǒng)的功能接口模塊完成相關(guān)的功能接口模塊初始化、PCI 總線(xiàn)接口、數(shù)字開(kāi)關(guān)量接口、串行總線(xiàn)接口、模擬量接口等軟件。根據(jù)自動(dòng)檢測(cè)需求,設(shè)計(jì)如圖3 所示的驅(qū)動(dòng)程序。
圖3 自動(dòng)檢測(cè)系統(tǒng)驅(qū)動(dòng)流程圖
為保證所設(shè)計(jì)的嵌入式檢測(cè)系統(tǒng)能夠滿(mǎn)足設(shè)計(jì)需求,正常發(fā)揮其檢測(cè)功能。本節(jié)對(duì)所設(shè)計(jì)嵌入式檢測(cè)系統(tǒng)功能接口模塊進(jìn)行安裝測(cè)試,并對(duì)其功能進(jìn)行驗(yàn)證,測(cè)試界面如圖4所示。
圖4 測(cè)試界面
測(cè)試結(jié)果為:
(1)系統(tǒng)能夠正確識(shí)別各個(gè)硬件模塊單元,說(shuō)明功能接口模塊可滿(mǎn)足應(yīng)用要求。
(2)所設(shè)計(jì)的嵌入式自動(dòng)檢測(cè)系統(tǒng)可以滿(mǎn)足彈載計(jì)算機(jī)嵌入式系統(tǒng)的監(jiān)測(cè)需求,尤其是檢測(cè)系統(tǒng)的功能接口模塊、開(kāi)關(guān)子系統(tǒng)以及供電模塊等均可正常發(fā)揮功能。
針對(duì)傳統(tǒng)檢測(cè)系統(tǒng)對(duì)復(fù)雜嵌入式檢測(cè)時(shí)存在精度低、效率低等問(wèn)題。本文結(jié)合復(fù)雜嵌入式系統(tǒng)的檢測(cè)需求為出發(fā)點(diǎn),設(shè)計(jì)一款高效率、高精度以及高可靠型的自動(dòng)檢測(cè)系統(tǒng),為提升復(fù)雜嵌入式系統(tǒng)的可靠性,指導(dǎo)復(fù)雜嵌入式系統(tǒng)的設(shè)計(jì)提供支撐,并總結(jié)為:
(1)根據(jù)嵌入式系統(tǒng)的自動(dòng)檢測(cè)需求,采用自頂而下的設(shè)計(jì)思路和模塊化的設(shè)計(jì)理念,確定復(fù)雜嵌入式自動(dòng)檢測(cè)系統(tǒng)的工作原理和結(jié)構(gòu)組成。
(2)本系統(tǒng)選用PLX 公司研發(fā)的CPCI 橋接芯片為總線(xiàn)接口模塊。
(3)采用PGA+PCI 協(xié)議芯片通信方式實(shí)現(xiàn)嵌入式系統(tǒng)自動(dòng)檢測(cè)系統(tǒng)上位機(jī)與下位機(jī)的通信,可在滿(mǎn)足自動(dòng)檢測(cè)通信需求的基礎(chǔ)上,實(shí)現(xiàn)通信的靈活性。
(4)經(jīng)驗(yàn)證表明:所設(shè)計(jì)的嵌入式自動(dòng)檢測(cè)系統(tǒng)可以滿(mǎn)足彈載計(jì)算機(jī)嵌入式系統(tǒng)的監(jiān)測(cè)需求,檢測(cè)系統(tǒng)的功能接口模塊、開(kāi)關(guān)子系統(tǒng)以及供電模塊等均可正常發(fā)揮功能。