《軟件開發(fā)中的嵌入式軟件開發(fā)論文》由會員分享,可在線閱讀,更多相關(guān)《軟件開發(fā)中的嵌入式軟件開發(fā)論文(3頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、軟件開發(fā)中的嵌入式軟件開發(fā)論文
在一般應(yīng)用軟件系統(tǒng)開發(fā)時,程序員只需要考慮軟件系統(tǒng)的功能設(shè)計,硬件部分直接根據(jù)軟件需求購買即可。嵌入式軟件的開發(fā)則需要軟硬件綜合開發(fā),這有兩方面的原因:一方面,任何一個嵌入式產(chǎn)品都是軟硬件的結(jié)合體;另一方面,一旦嵌入式產(chǎn)品研制完成后,軟件就已經(jīng)固化在硬件環(huán)境中,用戶不能對其修改。嵌入式軟件的這一特點決定了嵌入式應(yīng)用開發(fā)方式不同于傳統(tǒng)的軟件工程方法。
1嵌入式軟件開發(fā)的特點
嵌入式軟件的開發(fā)具有如下幾方面的特點:
1)需要交叉開發(fā)工具和環(huán)境。由于嵌入式軟件本身不具備自主開發(fā)能力,即使設(shè)計完成以后用戶通常也不能對其中的程序功能進(jìn)行
2、修改,因此必須有一套開發(fā)工具和環(huán)境才能進(jìn)行開發(fā)。這些工具和環(huán)境一般基于通用計算機上的軟硬件設(shè)備以及各種邏輯分析儀、混合信號示波器等。開發(fā)時往往有主機和目標(biāo)機交叉開發(fā)的概念,主機用于程序的開發(fā)、調(diào)試,目標(biāo)機作為最后的執(zhí)行機構(gòu)。開發(fā)時主機和目標(biāo)機需要交替結(jié)合進(jìn)行。
2)軟硬件協(xié)同設(shè)計。軟硬件協(xié)同設(shè)計涉及以下方面:嵌入式軟件設(shè)計、實時系統(tǒng)設(shè)計、硬件設(shè)計和軟件設(shè)計。軟硬件協(xié)同設(shè)計強調(diào)硬件與軟件的協(xié)同性與整合性、軟件與硬件的可裁減,以滿足系統(tǒng)對功能、成本、體積和功耗等要求。
3)嵌入式軟件開發(fā)人員以應(yīng)用專家為主。通用計算機的開發(fā)人員一般是計算機科學(xué)或計算機工程方面的專業(yè)人士,而嵌入式
3、軟件則是要和各個不同行業(yè)的應(yīng)用相結(jié)合的,要求更多的計算機以外的專業(yè)知識,其開發(fā)人員往往是各個應(yīng)用領(lǐng)域的專家。
4)軟件要求固態(tài)化存儲。為了提高執(zhí)行速度和系統(tǒng)可靠性,嵌入系統(tǒng)中的軟件一般都固化在存儲器芯片或單片機本身中,而不是存儲于磁盤等載體中。
5)軟件代碼高質(zhì)量、高可靠性。盡管半導(dǎo)體技術(shù)的發(fā)展使處理器速度不斷提高,片上存儲器容量不斷增加,但在大多數(shù)應(yīng)用中,存儲空間仍然是寶貴的,還存在實時性的要求。為此要求程序編寫和編譯工具的質(zhì)量要高,以減少程序二進(jìn)制代碼長度,提高執(zhí)行速度。嵌入式軟件的核心是系統(tǒng)軟件和應(yīng)用軟件,由于存儲空間有限,因而要求軟件代碼緊湊、可靠,大多對實時性有嚴(yán)
4、格要求。
6)系統(tǒng)軟件的高實時性。在多任務(wù)嵌入式軟件中,對重要性各不相同的任務(wù)進(jìn)行統(tǒng)籌兼顧和合理調(diào)度是保證每個任務(wù)及時執(zhí)行的關(guān)鍵,單純通過提高處理器速度是無法完成和沒有效率的,這種任務(wù)調(diào)度只能由優(yōu)化編寫的系統(tǒng)軟件來完成,因此系統(tǒng)軟件的高實時性是基本要求。嵌入式軟件應(yīng)用程序雖然可以沒有操作系統(tǒng)直接在芯片上運行,但是為了合理地調(diào)度多任務(wù),利用系統(tǒng)資源,系統(tǒng)一般以成熟的實時操作系統(tǒng)作為開發(fā)平臺,這樣才能保證程序執(zhí)行的實時性、可靠性,并減少開發(fā)時間,保障軟件質(zhì)量。
2軟硬件協(xié)同設(shè)計概念
嵌入式軟件設(shè)計是使用一組物理硬件和軟件來完成所需功能的過程。系統(tǒng)是指任何由硬件、軟件或
5、者兩者的結(jié)合來構(gòu)成的功能設(shè)備。由于嵌入式軟件是一個專用系統(tǒng),所以在嵌入式產(chǎn)品的設(shè)計過程中,軟件設(shè)計和硬件設(shè)計是緊密結(jié)合、相互協(xié)調(diào)的。這就產(chǎn)生了一種全新的發(fā)展中的設(shè)計理論——軟硬件協(xié)同設(shè)計。這種方法的特點是,在設(shè)計時從系統(tǒng)功能的實現(xiàn)角度考慮,把實現(xiàn)時的軟硬件同時考慮進(jìn)去,硬件設(shè)計包括芯片級“功能定制”設(shè)計。既可最大限度地利用有效資源,縮短開發(fā)周期,又能取得更好的設(shè)計效果。
系統(tǒng)協(xié)同設(shè)計的整個流程從確定系統(tǒng)要求開始,包含系統(tǒng)要求的功能、性能、功耗、成本、可靠性和開發(fā)時間等。這些要求形成了由項目開發(fā)小組和市場專家共同制定的初步說明文檔。系統(tǒng)設(shè)計首先確定所需的功能。復(fù)雜系統(tǒng)設(shè)計最常用的方法是
6、將整個系統(tǒng)劃分為較簡單的子系統(tǒng)及這些子系統(tǒng)的模塊組合,然后以一種選定的語言對各個對象子系統(tǒng)加以描述,產(chǎn)生設(shè)計說明文檔。其次,是把系統(tǒng)功能轉(zhuǎn)換成組織結(jié)構(gòu),將抽象的功能描述模型轉(zhuǎn)換成組織結(jié)構(gòu)模型。由于針對一個系統(tǒng)可建立多種模型,因此應(yīng)根據(jù)系統(tǒng)的仿真和先前的經(jīng)驗米選擇模型。
3嵌入式軟件開發(fā)的方法論
在建立一個完整的嵌入式軟件或是產(chǎn)品時,大部分系統(tǒng)都很復(fù)雜,不但功能規(guī)格很多,還必須考慮例如價格、性能等其他因素,否則很容易做出一個失敗的系統(tǒng)或是產(chǎn)品。因此,在進(jìn)行系統(tǒng)開發(fā)之前,必須先了解一些系統(tǒng)設(shè)計技術(shù),使得在開發(fā)過程中更為順利。一般來說,產(chǎn)品設(shè)計的過程會經(jīng)歷幾個步驟,為了確保這些步
7、驟的合理性,我們需要一個設(shè)計方法論來面對整個設(shè)計過程。采用方法論有以下三個重要理由。
確認(rèn)所做的每一件事情都是必須要做的,不做無謂的工作,也不漏掉關(guān)鍵性的重要工作,其中包含性能最佳化或是功能測試。
根據(jù)設(shè)計方法論可以發(fā)展出計算機輔助工具或是設(shè)計經(jīng)驗累積,汲取每一次產(chǎn)品開發(fā)的經(jīng)驗。再經(jīng)過量化之后,可以發(fā)展出一套工具或是方法,讓往后的產(chǎn)品設(shè)計步入自動化。
開發(fā)團隊遵循同一套方法論,可以讓團隊成員更容易彼此溝通。每個人都能在短時間內(nèi)了解整體過程中將經(jīng)歷哪些過程,需要何種支持與接收到何種結(jié)果。此外,也容易通過一套已經(jīng)定義好的方法論,彼此相互合作協(xié)調(diào)。設(shè)計過程的目標(biāo)是做出有一定用途且具有創(chuàng)新點的產(chǎn)品。產(chǎn)品的典型規(guī)格包含功能性、制造成本、性能表現(xiàn)、省電考慮和其他特性。
4結(jié)束語
嵌入式系統(tǒng)開發(fā)是在開發(fā)過程中綜合考慮軟硬件環(huán)境和需求,這樣開發(fā)的軟件產(chǎn)品不僅能使系統(tǒng)與硬件的驅(qū)動默契更高,還能有效縮短開發(fā)周期。由于能夠有效解決軟件危機帶來的危害,嵌入式系統(tǒng)開發(fā)成為系統(tǒng)開發(fā)的主要趨勢也是不可避免的。