嵌入式系統軟件開發技術概述
嵌人式系統開發經過30多年的發展,到現在算是一個成熟的技術了。下面yjbys小編爲大家準備了關於嵌入式系統軟件開發技術的文章,歡迎閱讀。
1 微處理器技術
最早的微處理器是4位和8位器件。由於製造技術越來越複雜,集成的單片8位微處理器開始出現,16位微處理器也開始使用。隨着微電子技術的發展,16位的微處理器已得到廣泛的應用。32位架構的器件逐漸佔領了高端的應用市場,第一代的32位器件都是CISC架構,但目前,越來越多的RISC芯片正在提供更高的性能。嵌人式系統設計者選擇微處理器的範圍比以前大了,必須根據性能、需求、支持、可用性和價格來進行選擇。
2 系統架構
隨着微處理器的發展系統架構也在進步。最早的系統,是由CPU和一些邏輯器件組成的。多年以來,系統變得日益複雜,但都還可以使用同樣的調試技術—電路仿真、芯片級調試、ROM監控器以及指令集模擬。嵌入式系統日益強勁,而功能需求的增長則更快很多設計者開始重新審視微處理器和它們的用法。
3 設計組成
嵌入式系統發展的最初階段。所有的開發包括軟件和硬件設計,通常都是一個工程師來承擔。軟件在整個工作址中的比例很小,大約5%-10%。隨着時間的推移軟件開發佔工程時間的.比例持續增長。至20世紀80年代中期,軟件開發已經是由專業歡件人員來做,所佔比例一般已超過整個開發工作量的50%。
在最近幾年,雖然硬件設計變得更加複雜,但軟件的份量也急劇增長,目前通常佔到開發總量70%-80%。因此,需要有軟件團隊參與,同時也產生了一些新的挑戰。這些挑戰中的一個,就是要有可用的硬件平臺來進行軟件測試。由於要在更短的時間內開發更多的軟件,就需要儘快建立測試環境。發出更多的軟件,就需要儘快建立測試環境。有多種可行的方法,如本地代碼執行原型環境、指令集軟仿真(模擬),以及使用標準的、低成本的、現成的評估板。此外,低成本的主機一目標機連接技術,也變得越來越普及,有代表性的就是JTAG接口。
4 軟件內容
軟件開發所佔總時間的比例一直在增加。同時,來自全球貿易和競爭的壓力使得產品投放市場的時間也一直在縮短。這極大地影響了設計的策略。最早的設計相當簡單,僅僅由自己設計的應用代碼組成。隨着系統的複雜度增加,多任務的模型被軟件開發者廣泛採納,很多開發者選擇標準的、商用的實時操作系統產品。隨着各個標準的進一步被採納,買來的軟件,或者說有“知識產權”的軟件所佔的比例正穩步增長。這個趨勢給了軟件開發者很多啓示。集成標準的軟件組件—和應用代碼及其他—是我們所關心的。在多任務背景下調試是另一個值得關注的問題。與選擇知識產權有關的商業決定尤爲複雜;除了當前的要求之外,還有將來的(例如移植到別的處理器)也必須加以考慮。
5 編程語言
對於早期的4位和8位微處理器,彙編語言是唯一的選擇。隨着16位微處理器技術成爲現實,出現了幾種可供選擇的語言。有Pascal和C語言和PL/M語言。對某些類型的系統來說,Forth語言也曾很流行,隨着時間推移,32位技術的使用日益增多,出現了C和Ada。後者在國防部的系統中被普遍使用。
在嵌入式軟件開發中,C++開始逐步取代C語言。現在,1/4~1/3的嵌入式系統代碼是用C++編寫的。Java語言當初是專門爲嵌人式應用開發的,在要求運行時重新配置的應用場合,它找到了一席之地。統一建模語言(UML)也成爲高級設計方法學的最流行選擇。
6 軟件隊伍的規模和分佈
正如先前討論的一樣,最初的嵌人式系統設計只要一個人就夠了。在適當的時候,因專業化,產生了致力於軟件開發的工程師。下一步就是建立嵌人式軟件開發團隊。管理軟件開發在任何情況下都是一個挑戰,嵌入式系統開發也不例外,只是有細微差別。使用傳統的編程技術———過程語言,如C語言和彙編語言,團隊裏的大部分成員都需要對整個系統瞭解比較全面。隨着團隊變大,這就變得越來越不可行。價況住往是,團隊裏有一些特殊的人才,他們對某些專門領域很在行。爲了有效地管理團隊必須使用合適的策略,將他們的專長封裝起來。儘可能使一個專家的工作成果能夠被非專家以安全、可靠和直觀的方式加以使用.在這種情況下,面向對象編程技術找到應用點。
雖然有很多非常大的公司,但軟件隊伍不是簡單的人員擴充他們正在變成分佈式的。團隊的一些成員在一個地方,而其他的可能在別處。這些地點甚至有可能位於不同的國家。這種安排在歐洲很常見,在那裏,真正關心的可能是交流的語言。其他地方,時區可能是個問題(可能也是一個優勢,因爲分佈式的團隊可以全天候工作)。隨着新興的技術中心(如印度)廣泛崛起,上述情況越來越普遍。在這一背景不,軟件組件的可重用性需求就變得很常見了。
7 UML和建模
最近幾年,UML己經成爲一項關鍵的設計方法,它和逐漸增七的嵌人式軟件團隊規模關係密切。廣義上說,使用設計工具的方式有2種:或者是作爲編寫代碼的指導,或者就作爲直接生成代碼的一種手段。對於嵌人式軟件來說,代碼生成是有爭議的,它可能會被爭論(而且還很有道理)—每一個系統都是不同的,都有各自的特殊需求。這正是xtUML(可執行和可翻譯的UML)吸引人的地方,因爲它使得應用與架構清晰地分離了。這裏所遵循的,是與面向對象編程同樣的原則—使用工具和技術來平衡專家意見。
追蹤所有被當前各種嵌人式系統開發趨勢所驅動的新技術並非易事。孤立地看待其中任何一項技術也是毫無意義的,因爲它們之間有着許多聯繫。例如,多任務與多處理器調試相關;基於標準的RTOS技術對處理器移植來說真是件幸事;使用設計方法學可以令實現更容易。
相關文章
-
2016嵌入式系統開發技術知識點:嵌入式系統
嵌入式系統以應用爲中心、以計算機技術爲基礎、軟件硬件可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。下面YJBYS小編爲大家整理了關於嵌入式系統的相關知識,希望對你有所幫助。 -
嵌入式系統開發技術工程師考試要點:嵌入式系統的組成
導語:計算機四級指的是全國計算機等級考試的最高級別,科目種類有:四級操作系統原理、四級計算機組成與接口、四級數據庫原理、四級軟件工程、四級計算機網絡。考試從科目中任意選取兩個科目進行考試,同時通過成績方爲合格 -
嵌入式系統開發技術工程師考試複習要點:嵌入式系統的定義
XX年是xx公司人力資源部的“創新年”,也是河南分公司人力資源部實現大規模跨躍式發展的一年。根據上級公司人力資源部的佈置和要求,**礦新一屆領導班子集思廣義、審時度世制訂了“求實奮進,開拓創新,實現**礦的可持續穩定發 -
嵌入式系統應用技術概述
在一個偶然的機會下,我得到了超能力。今天是星期天,我來到遊樂園,因爲是假日,所以人非常的多,我等待着坐升降機,正當我百無聊奈的排隊時,突然一聲巨響,只見升降機卡在了最高點,然後就是一陣慌亂,我見此情況,立刻使用超能力跳上升 -
移植開源軟件到嵌入式Linux系統技術攻略
雖然嵌入式系統是近幾年才風靡起來的,但是這個概念並非新近纔出現。從20世紀七十年代單片機的出現到今天各式各樣的嵌入式微處理器,微控制器的大規模應用,嵌入式系統已經有了近30年的發展歷史。下面是小編整理的移植開源 -
嵌入式系統開發技術工程師考試要點:實時系統
VxWorks、μClinux、μC/OS-II和eCos是4種性能優良並被廣泛應用的實時操作系統。本文通過對這4種操作系統的主要性能進行分析與比較,歸納出它們的選型依據和適用領域。 1 4種操作系統的介紹(1)VxWorksVxWorks是美國 -
嵌入式系統開發核心技術
處理器技術處理器技術與實現系統功能的計算引擎結構有關,很多不可編程的數字系統也可以視爲處理器,這些處理器的差別在於其面向特定功能的專用化程度,導致其設計指標與其它處理器不同。(1)通用處理器這類處理器可用 -
計算機三級考試嵌入式系統開發技術論述題「精選」
1.論述外設寄存器的作用、分類,以及每種分類完成的功能。答:外設寄存器又稱爲I/O端口,處理器對爲外部設備的訪問,就是通過對外設寄存器讀寫完成的。外設寄存器分爲3種:控制寄存器,用來控制外設行爲。狀態寄存器,用來指示 -
2017嵌入式系統開發工程師知識點:嵌入式系統簡介
嵌入式系統是一種"完全嵌入受控器件內部,爲特定應用而設計的專用計算機系統",根據英國電氣工程師協會的定義,嵌入式系統爲控制、監視或輔助設備、機器或用於工廠運作的設備。YJBYS小編下面爲你整理了2017嵌入式系統開發 -
嵌入式系統開發技術知識點
OC的開發大多以IP核爲基礎,在單個芯片上集成處理器、存儲器、各種接口等組價,組成一個相當完整的計算機系統,以滿足特定嵌入式應用領域的需求。下面YJBYS小編爲大家整理了關於嵌入式系統開發技術知識點,希望對你有所幫助