www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]0 引 言基于組件的開發(fā)(Component Based Development,CBD)技術(shù)在軟件工程中占有舉足輕重的地位,并且在許多工程應(yīng)用領(lǐng)域已經(jīng)取得了重大的成功。在通用計算機(jī)軟件、電子商

0 引 言

基于組件的開發(fā)(Component Based Development,CBD)技術(shù)在軟件工程中占有舉足輕重的地位,并且在許多工程應(yīng)用領(lǐng)域已經(jīng)取得了重大的成功。在通用計算機(jī)軟件、電子商務(wù)、Internet和分布式計算環(huán)境中CBD技術(shù)已經(jīng)得到了成熟的應(yīng)用。但是,在其他一些領(lǐng)域,如嵌入式系統(tǒng)中,CBD的應(yīng)用還及其有限。由于不同嵌入式系統(tǒng)的需求和硬件平臺各異,要開發(fā)出適用于所有系統(tǒng)的通用組件是極其困難的,目前只能夠針對特定應(yīng)用領(lǐng)域和平臺研究開發(fā)適用的組件。正是由于嵌入式系統(tǒng)的差異性、專門性與組件技術(shù)的通用性之間的矛盾,所以要利用組件進(jìn)行嵌入式軟件開發(fā),就必須采取適用的組件技術(shù)和系統(tǒng)開發(fā)方法。

在此,主要介紹了面向組件軟件工程的總體原則及其在嵌入式系統(tǒng)中的應(yīng)用。通過分析嵌入式系統(tǒng)中對組件的要求和通用組件技術(shù)的差異,提出了嵌入式組件的設(shè)計原則,并基于嵌入式組件的特點(diǎn),提出一種面向組件的嵌入式軟件系統(tǒng)開發(fā)方法。表明盡管嵌入式系統(tǒng)與通用計算平臺具有很大的差異,但是組件技術(shù)仍然可以成功地應(yīng)用于嵌入式領(lǐng)域。

1嵌入式系統(tǒng)和組件技術(shù)

1.1嵌入式系統(tǒng)

嵌入式系統(tǒng)是滿足專門需求的小型計算機(jī)系統(tǒng)。例如,車載控制系統(tǒng)、工業(yè)控制系統(tǒng)、移動電話或者傳感控制系統(tǒng)。嵌入式系統(tǒng)的范圍極其廣泛,從微型計算設(shè)備到復(fù)雜的大型監(jiān)控設(shè)備都屬于嵌入式系統(tǒng)的范疇。實(shí)時性是大多數(shù)嵌入式系統(tǒng)的特性,是在系統(tǒng)設(shè)計時需要考慮的重要概念。對于實(shí)時性的要求,不同嵌入式系統(tǒng)可以分為軟實(shí)時系統(tǒng)(Soft Time System)和硬實(shí)時系統(tǒng)(Hard Time System)。嵌入式系統(tǒng)一般還要求有很好的穩(wěn)定性和可靠性。由于功能專一,需求多樣和系統(tǒng)小型化,這就要求系統(tǒng)的成本低廉,從而限制了系統(tǒng)的硬件性能。由于嵌入式系統(tǒng)的資源限制和實(shí)時性要求,軟件開發(fā)人員往往不能夠利用先進(jìn)的通用軟件工程技術(shù),而必須使用一些非正規(guī)的方法,利用高效的程序語言進(jìn)行開發(fā)。隨著系統(tǒng)復(fù)雜性不斷增加,對系統(tǒng)的需求分析,模型設(shè)計,早期的錯誤檢測,開發(fā)周期,可維護(hù)性等方面提出了新的要求。因此推動了先進(jìn)的軟件工程方法向嵌入式開發(fā)領(lǐng)域的轉(zhuǎn)移。

1.2組件技術(shù)

組件技術(shù)就是一種軟件工程中的先進(jìn)技術(shù)。組件可以認(rèn)為是能夠用于構(gòu)建大型系統(tǒng)的自包含的部件或子系統(tǒng)。在軟件工程中,一個組件與一個微型應(yīng)用程序類似,即都是已經(jīng)編譯鏈接好,并可以使用的二進(jìn)制代碼,應(yīng)用程序由多個這樣的組件打包而得到。在需要對應(yīng)用程序進(jìn)行修改或改進(jìn)時,只需要將構(gòu)成此應(yīng)用程序組件中的某個用新版本替換掉即可。這樣,使用組件技術(shù)的系統(tǒng)就具有很好的靈活性和可移植性。另外強(qiáng)大的組件庫能夠?yàn)殚_發(fā)人員提供功能豐富的組件支持,從而大大縮短軟件的開發(fā)周期。使用組件的種種優(yōu)點(diǎn)直接來源于可以將它們動態(tài)地插入或卸出的應(yīng)用。為了實(shí)現(xiàn)這種功能,所有的組件必須滿足兩個條件:一是組件必須動態(tài)鏈接;二是它們必須隱藏其內(nèi)部實(shí)現(xiàn)細(xì)節(jié)。另外,利用組件還能幫助開發(fā)人員根據(jù)所使用的組件功能預(yù)測和驗(yàn)證系統(tǒng)的功能特性。正是由于組件具有諸多優(yōu)點(diǎn),基于組件的開發(fā)技術(shù)才引起了軟件工程領(lǐng)域的廣泛應(yīng)用,并且逐漸將它引入迅猛發(fā)展的嵌入式軟件開發(fā)領(lǐng)域中。

2嵌入式系統(tǒng)組件的設(shè)計原則

2.1接口設(shè)計原則

適用于嵌入式系統(tǒng)中的組件遵從大部分的通用組件設(shè)計原則,特別是組件的接口和實(shí)現(xiàn)相分離的封裝特性。組件的接口是組件功能的體現(xiàn),系統(tǒng)中的其他部分或者組件正是通過接口使用組件提供的功能。但是對于嵌入式系統(tǒng)而言,有一些額外的系統(tǒng)特性或約束和系統(tǒng)功能是同樣重要的(如實(shí)時性),那么接口僅包含組件本身的功能特性就不完備,它還必須包含額外的系統(tǒng)特性,即加入約束條件。這樣在系統(tǒng)設(shè)計階段,利用組件進(jìn)行設(shè)計不但能夠驗(yàn)證功能需求,而且還能預(yù)測和分析系統(tǒng)特性需求。

2.2組件綁定與發(fā)布原則

在通用組件的設(shè)計中,接口是以支持運(yùn)行期綁定的多態(tài)對象接口方式實(shí)現(xiàn)的。組件完全以動態(tài)形式綁定,獨(dú)立于接口的定義。這樣為組件復(fù)用、系統(tǒng)升級提供了強(qiáng)大的靈活性。但是,這種靈活性在嵌入式系統(tǒng)中會帶來性能的下降和風(fēng)險的上升,影響系統(tǒng)的實(shí)時性和穩(wěn)定性。因?yàn)樗薪M件都在運(yùn)行期綁定,這樣必然會增加冗余代碼,并且讓系統(tǒng)行為變得難以預(yù)測。因此,通用組件的動態(tài)特性在嵌入式系統(tǒng)中特別是小型系統(tǒng)中是不可行的。由于實(shí)時性和硬件資源限制,在嵌入式系統(tǒng)中,組件鏈接和組合最好在系統(tǒng)設(shè)計期靜態(tài)而不是運(yùn)行期動態(tài)地進(jìn)行。進(jìn)行組件的靜態(tài)綁定,可以通過系統(tǒng)建模工具對一個基于組件的系統(tǒng)設(shè)計產(chǎn)生一個總體視圖,這樣能夠?qū)ο到y(tǒng)性能有更好的預(yù)測和優(yōu)化。所以組件的形式不應(yīng)該再使用通用組件中的二進(jìn)制可執(zhí)行文件形式發(fā)布,而應(yīng)該采用高級語言或更為抽象的建模語言(如UML) 定義組件的形式,這樣可以讓組件在編譯期或者在設(shè)計的早期就可以綁定鏈接,而不是像通用組件那樣的遲綁定(Late Binding)。

2.3 大型嵌入式系統(tǒng)中的組件原則

隨著嵌入式技術(shù)的不斷發(fā)展,許多功能復(fù)雜的大型嵌入式系統(tǒng)也隨之出現(xiàn)。對于這些系統(tǒng)硬件資源和實(shí)時性已經(jīng)不是首要的考慮因素,如何有效控制系統(tǒng)復(fù)雜性和降低高昂的開發(fā)成本已成為最主要的問題。所以對于這樣的大型嵌入式系統(tǒng),通用組件幾乎可以毫無障礙地在系統(tǒng)中發(fā)揮作用,極大地簡化了開發(fā)難度,減少了開發(fā)工作量和開發(fā)周期。如微軟的嵌入式系統(tǒng)Windows CE就是這項(xiàng)技術(shù)的成功應(yīng)用,系統(tǒng)功能和應(yīng)用功能完全以組件方式列出,開發(fā)人員只需要簡單地添加和刪除就能將一項(xiàng)復(fù)雜功能加入或移除系統(tǒng)鏡像,并且支持功能強(qiáng)大的COM組件庫,為應(yīng)用程序的開發(fā)提供了非常便利的工具。當(dāng)然,那些要求強(qiáng)實(shí)時的大型嵌入式系統(tǒng)也不應(yīng)該使用通用組件技術(shù),應(yīng)該根據(jù)具體的系統(tǒng)特性使用精簡版本來進(jìn)行系統(tǒng)開發(fā)。

3面向嵌入式組件的系統(tǒng)開發(fā)過程

由以上分析可以看出,由于嵌入式系統(tǒng)的功能和性能要求,以及硬件資源限制和復(fù)雜性控制需求,適用于嵌入式軟件系統(tǒng)的組件體現(xiàn)了接口定義約束、靜態(tài)綁定和抽象語言的發(fā)布形式等特性。那么正是由于這些特性的存在,適用于通用組件的軟件開發(fā)方法就不能直接應(yīng)用于嵌入式軟件開發(fā)過程,而需要一種適合于嵌入式組件特性的系統(tǒng)開發(fā)方法。下面介紹面向嵌入式組件的開發(fā)過程,它能夠有效地利用和體現(xiàn)嵌入式組件的特性。[!--empirenews.page--]

整個開發(fā)過程如圖1所示。根據(jù)組成與分解、抽象與具體的兩個基本開發(fā)思想建立了一個二維坐標(biāo)系,橫坐標(biāo)為抽象與具體;縱坐標(biāo)為分解與組合。兩個坐標(biāo)軸將整個開發(fā)空間分成了4部分,即建模過程的4個基本步驟:分解、實(shí)體化、組合、確認(rèn)。

分解 整個開發(fā)過程從圖1的左上角開始。黑色方框代表了最初的待實(shí)現(xiàn)系統(tǒng),即開發(fā)人員經(jīng)過需求分析所建立的系統(tǒng)模型。通過系統(tǒng)功能域的劃分,將系統(tǒng)進(jìn)行分解,在每一個功能域都包含了與該功能相關(guān)的所有邏輯組件。每一個邏輯組件再作為一個子系統(tǒng)遞歸地進(jìn)行分解,直到組件達(dá)到了可重用組件的粒度。分解過程只是從抽象和邏輯角度決定組件的功能形式。

實(shí)體化 將具有最小粒度的不能再分解的邏輯組件進(jìn)行實(shí)體化。由于這些邏輯組件已經(jīng)具有了明確的功能或者直接就是已有的組件,所以可以很容易地將這些邏輯組件轉(zhuǎn)化為實(shí)際組件,如圖1中右下角的黑粗線方框所示。

 

組合 將重用的或者是將實(shí)現(xiàn)的實(shí)際組件,根據(jù)抽象模型,通過組件接口組合起來,該過程完全是分解的逆過程。如圖2所示。

 

驗(yàn)證 對實(shí)體化以后再構(gòu)建起來的系統(tǒng)與最初的待實(shí)現(xiàn)系統(tǒng)進(jìn)行對比,利用組件的功能和約束特性預(yù)測整個系統(tǒng)的功能和性能,從而驗(yàn)證系統(tǒng)設(shè)計的正確性。

面向嵌入式組件開發(fā)的整個過程體現(xiàn)為一個樹形結(jié)構(gòu),相當(dāng)于一棵組件樹。樹的每一片葉子都代表一個組件,而每一個組件都可以視為一棵子樹,遞歸地利用該開發(fā)過程。整個過程總是不斷利用已有組件或者明確可實(shí)現(xiàn)的小粒度組件的組合對設(shè)計進(jìn)行驗(yàn)證,由于組件接口和實(shí)現(xiàn)已經(jīng)靜態(tài)綁定,每一個組件在運(yùn)行時的功能在設(shè)計期就能完全確定,這樣能幫助開發(fā)人員在最早的時間內(nèi)發(fā)現(xiàn)設(shè)計上的缺陷,及時對設(shè)汁進(jìn)行修改。

4 結(jié) 語

如今,嵌入式系統(tǒng)已經(jīng)被廣泛地應(yīng)用于生活的方方面面。CBD技術(shù)無疑會對嵌入式領(lǐng)域的發(fā)展起到重要的作用。這里通過深入分析通用組件的設(shè)計原則和嵌入式系統(tǒng)的特性要求,提出了適合于嵌入式系統(tǒng)的組件設(shè)計原則和開發(fā)方法,使組件技術(shù)的優(yōu)點(diǎn)在嵌入式系統(tǒng)中得到了很好的體現(xiàn),為CBD技術(shù)向嵌入式領(lǐng)域的轉(zhuǎn)移提供了一種有效的途徑。

當(dāng)然,要使CBD技術(shù)得以在嵌入式系統(tǒng)中充分的利用,還有一些問題有待推進(jìn)和解決。例如,目前還缺乏廣泛使用的適合于嵌入式系統(tǒng)的組件技術(shù)標(biāo)準(zhǔn),大多數(shù)的組件技術(shù)還不能夠支持對嵌入式系統(tǒng)性能特性(如實(shí)時性)的定義和分析,并且應(yīng)用于具有特定系統(tǒng)性能要求的嵌入式系統(tǒng)的組件組合方法和系統(tǒng)設(shè)計時的功能預(yù)測和驗(yàn)證手段都還有待于發(fā)展。此外,幫助嵌入式開發(fā)人員進(jìn)行組件和系統(tǒng)建模、分析和驗(yàn)證的輔助工具還需要進(jìn)一步的開發(fā)和引入。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機(jī)驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機(jī)驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉