- 相關(guān)推薦
嵌入式系統(tǒng)軟件開(kāi)發(fā)技術(shù)概述
嵌人式系統(tǒng)開(kāi)發(fā)經(jīng)過(guò)30多年的發(fā)展,到現(xiàn)在算是一個(gè)成熟的技術(shù)了。下面yjbys小編為大家準(zhǔn)備了關(guān)于嵌入式系統(tǒng)軟件開(kāi)發(fā)技術(shù)的文章,歡迎閱讀。
1 微處理器技術(shù)
最早的微處理器是4位和8位器件。由于制造技術(shù)越來(lái)越復(fù)雜,集成的單片8位微處理器開(kāi)始出現(xiàn),16位微處理器也開(kāi)始使用。隨著微電子技術(shù)的發(fā)展,16位的微處理器已得到廣泛的應(yīng)用。32位架構(gòu)的器件逐漸占領(lǐng)了高端的應(yīng)用市場(chǎng),第一代的32位器件都是CISC架構(gòu),但目前,越來(lái)越多的RISC芯片正在提供更高的性能。嵌人式系統(tǒng)設(shè)計(jì)者選擇微處理器的范圍比以前大了,必須根據(jù)性能、需求、支持、可用性和價(jià)格來(lái)進(jìn)行選擇。
2 系統(tǒng)架構(gòu)
隨著微處理器的發(fā)展系統(tǒng)架構(gòu)也在進(jìn)步。最早的系統(tǒng),是由CPU和一些邏輯器件組成的。多年以來(lái),系統(tǒng)變得日益復(fù)雜,但都還可以使用同樣的調(diào)試技術(shù)—電路仿真、芯片級(jí)調(diào)試、ROM監(jiān)控器以及指令集模擬。嵌入式系統(tǒng)日益強(qiáng)勁,而功能需求的增長(zhǎng)則更快很多設(shè)計(jì)者開(kāi)始重新審視微處理器和它們的用法。
3 設(shè)計(jì)組成
嵌入式系統(tǒng)發(fā)展的最初階段。所有的開(kāi)發(fā)包括軟件和硬件設(shè)計(jì),通常都是一個(gè)工程師來(lái)承擔(dān)。軟件在整個(gè)工作址中的比例很小,大約5%-10%。隨著時(shí)間的推移軟件開(kāi)發(fā)占工程時(shí)間的比例持續(xù)增長(zhǎng)。至20世紀(jì)80年代中期,軟件開(kāi)發(fā)已經(jīng)是由專(zhuān)業(yè)歡件人員來(lái)做,所占比例一般已超過(guò)整個(gè)開(kāi)發(fā)工作量的50%。
在最近幾年,雖然硬件設(shè)計(jì)變得更加復(fù)雜,但軟件的份量也急劇增長(zhǎng),目前通常占到開(kāi)發(fā)總量70%-80%。因此,需要有軟件團(tuán)隊(duì)參與,同時(shí)也產(chǎn)生了一些新的挑戰(zhàn)。這些挑戰(zhàn)中的一個(gè),就是要有可用的硬件平臺(tái)來(lái)進(jìn)行軟件測(cè)試。由于要在更短的時(shí)間內(nèi)開(kāi)發(fā)更多的軟件,就需要盡快建立測(cè)試環(huán)境。發(fā)出更多的軟件,就需要盡快建立測(cè)試環(huán)境。有多種可行的方法,如本地代碼執(zhí)行原型環(huán)境、指令集軟仿真(模擬),以及使用標(biāo)準(zhǔn)的、低成本的、現(xiàn)成的評(píng)估板。此外,低成本的主機(jī)一目標(biāo)機(jī)連接技術(shù),也變得越來(lái)越普及,有代表性的就是JTAG接口。
4 軟件內(nèi)容
軟件開(kāi)發(fā)所占總時(shí)間的比例一直在增加。同時(shí),來(lái)自全球貿(mào)易和競(jìng)爭(zhēng)的壓力使得產(chǎn)品投放市場(chǎng)的時(shí)間也一直在縮短。這極大地影響了設(shè)計(jì)的策略。最早的設(shè)計(jì)相當(dāng)簡(jiǎn)單,僅僅由自己設(shè)計(jì)的應(yīng)用代碼組成。隨著系統(tǒng)的復(fù)雜度增加,多任務(wù)的模型被軟件開(kāi)發(fā)者廣泛采納,很多開(kāi)發(fā)者選擇標(biāo)準(zhǔn)的、商用的實(shí)時(shí)操作系統(tǒng)產(chǎn)品。隨著各個(gè)標(biāo)準(zhǔn)的進(jìn)一步被采納,買(mǎi)來(lái)的軟件,或者說(shuō)有“知識(shí)產(chǎn)權(quán)”的軟件所占的比例正穩(wěn)步增長(zhǎng)。這個(gè)趨勢(shì)給了軟件開(kāi)發(fā)者很多啟示。集成標(biāo)準(zhǔn)的軟件組件—和應(yīng)用代碼及其他—是我們所關(guān)心的。在多任務(wù)背景下調(diào)試是另一個(gè)值得關(guān)注的問(wèn)題。與選擇知識(shí)產(chǎn)權(quán)有關(guān)的商業(yè)決定尤為復(fù)雜;除了當(dāng)前的要求之外,還有將來(lái)的(例如移植到別的處理器)也必須加以考慮。
5 編程語(yǔ)言
對(duì)于早期的4位和8位微處理器,匯編語(yǔ)言是唯一的選擇。隨著16位微處理器技術(shù)成為現(xiàn)實(shí),出現(xiàn)了幾種可供選擇的語(yǔ)言。有Pascal和C語(yǔ)言和PL/M語(yǔ)言。對(duì)某些類(lèi)型的系統(tǒng)來(lái)說(shuō),F(xiàn)orth語(yǔ)言也曾很流行,隨著時(shí)間推移,32位技術(shù)的使用日益增多,出現(xiàn)了C和Ada。后者在國(guó)防部的系統(tǒng)中被普遍使用。
在嵌入式軟件開(kāi)發(fā)中,C++開(kāi)始逐步取代C語(yǔ)言,F(xiàn)在,1/4~1/3的嵌入式系統(tǒng)代碼是用C++編寫(xiě)的。Java語(yǔ)言當(dāng)初是專(zhuān)門(mén)為嵌人式應(yīng)用開(kāi)發(fā)的,在要求運(yùn)行時(shí)重新配置的應(yīng)用場(chǎng)合,它找到了一席之地。統(tǒng)一建模語(yǔ)言(UML)也成為高級(jí)設(shè)計(jì)方法學(xué)的最流行選擇。
6 軟件隊(duì)伍的規(guī)模和分布
正如先前討論的一樣,最初的嵌人式系統(tǒng)設(shè)計(jì)只要一個(gè)人就夠了。在適當(dāng)?shù)臅r(shí)候,因?qū)I(yè)化,產(chǎn)生了致力于軟件開(kāi)發(fā)的工程師。下一步就是建立嵌人式軟件開(kāi)發(fā)團(tuán)隊(duì)。管理軟件開(kāi)發(fā)在任何情況下都是一個(gè)挑戰(zhàn),嵌入式系統(tǒng)開(kāi)發(fā)也不例外,只是有細(xì)微差別。使用傳統(tǒng)的編程技術(shù)———過(guò)程語(yǔ)言,如C語(yǔ)言和匯編語(yǔ)言,團(tuán)隊(duì)里的大部分成員都需要對(duì)整個(gè)系統(tǒng)了解比較全面。隨著團(tuán)隊(duì)變大,這就變得越來(lái)越不可行。價(jià)況住往是,團(tuán)隊(duì)里有一些特殊的人才,他們對(duì)某些專(zhuān)門(mén)領(lǐng)域很在行。為了有效地管理團(tuán)隊(duì)必須使用合適的策略,將他們的專(zhuān)長(zhǎng)封裝起來(lái)。盡可能使一個(gè)專(zhuān)家的工作成果能夠被非專(zhuān)家以安全、可靠和直觀的方式加以使用.在這種情況下,面向?qū)ο缶幊碳夹g(shù)找到應(yīng)用點(diǎn)。
雖然有很多非常大的公司,但軟件隊(duì)伍不是簡(jiǎn)單的人員擴(kuò)充他們正在變成分布式的。團(tuán)隊(duì)的一些成員在一個(gè)地方,而其他的可能在別處。這些地點(diǎn)甚至有可能位于不同的國(guó)家。這種安排在歐洲很常見(jiàn),在那里,真正關(guān)心的可能是交流的語(yǔ)言。其他地方,時(shí)區(qū)可能是個(gè)問(wèn)題(可能也是一個(gè)優(yōu)勢(shì),因?yàn)榉植际降膱F(tuán)隊(duì)可以全天候工作)。隨著新興的技術(shù)中心(如印度)廣泛崛起,上述情況越來(lái)越普遍。在這一背景不,軟件組件的可重用性需求就變得很常見(jiàn)了。
7 UML和建模
最近幾年,UML己經(jīng)成為一項(xiàng)關(guān)鍵的設(shè)計(jì)方法,它和逐漸增七的嵌人式軟件團(tuán)隊(duì)規(guī)模關(guān)系密切。廣義上說(shuō),使用設(shè)計(jì)工具的方式有2種:或者是作為編寫(xiě)代碼的指導(dǎo),或者就作為直接生成代碼的一種手段。對(duì)于嵌人式軟件來(lái)說(shuō),代碼生成是有爭(zhēng)議的,它可能會(huì)被爭(zhēng)論(而且還很有道理)—每一個(gè)系統(tǒng)都是不同的,都有各自的特殊需求。這正是xtUML(可執(zhí)行和可翻譯的UML)吸引人的地方,因?yàn)樗沟脩?yīng)用與架構(gòu)清晰地分離了。這里所遵循的,是與面向?qū)ο缶幊掏瑯拥脑瓌t—使用工具和技術(shù)來(lái)平衡專(zhuān)家意見(jiàn)。
追蹤所有被當(dāng)前各種嵌人式系統(tǒng)開(kāi)發(fā)趨勢(shì)所驅(qū)動(dòng)的新技術(shù)并非易事。孤立地看待其中任何一項(xiàng)技術(shù)也是毫無(wú)意義的,因?yàn)樗鼈冎g有著許多聯(lián)系。例如,多任務(wù)與多處理器調(diào)試相關(guān);基于標(biāo)準(zhǔn)的RTOS技術(shù)對(duì)處理器移植來(lái)說(shuō)真是件幸事;使用設(shè)計(jì)方法學(xué)可以令實(shí)現(xiàn)更容易。
【嵌入式系統(tǒng)軟件開(kāi)發(fā)技術(shù)概述】相關(guān)文章:
嵌入式系統(tǒng)應(yīng)用技術(shù)概述06-05
嵌入式Linux系統(tǒng)概述06-08
嵌入式系統(tǒng)接口技術(shù)02-27
2016嵌入式系統(tǒng)開(kāi)發(fā)技術(shù)知識(shí)點(diǎn):嵌入式系統(tǒng)06-01
嵌入式系統(tǒng)介紹01-13
嵌入式系統(tǒng)特點(diǎn)06-06
嵌入式系統(tǒng)組成03-09
嵌入式系統(tǒng)的分類(lèi)06-08
嵌入式系統(tǒng)的名詞05-16