吳文慶
摘? ?要:嵌入式系統(tǒng)在目前計算機技術的發(fā)展過程中逐漸得到了廣泛應用,作為一種專用計算機系統(tǒng),具有專用性與實時性強的特點。在嵌入式系統(tǒng)的開發(fā)過程中,采取工程化流程進行系統(tǒng)開發(fā),更有利于高效完成嵌入式系統(tǒng)開發(fā)工作。本文對嵌入式系統(tǒng)及其主要特征作出簡單概述,而后分析了基于工程化流程的嵌入式系統(tǒng)開發(fā)方法,為相關研究人員提供參考。
關鍵詞:工程化流程? 嵌入式? 系統(tǒng)開發(fā)
中圖分類號:TP311.52? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1674-098X(2020)06(c)-0114-02
Abstract: Embedded system has been widely used in the development of computer technology. As a special computer system, it has the characteristics of special and real-time. In the development process of embedded system, engineering process is adopted to develop the system, which is more conducive to the efficient completion of embedded system development. This paper gives a brief overview of embedded system and its main features, and then analyzes the development method of embedded system based on engineering process. To provide reference for related researchers.
Key Words: Engineering process; Embedded; System development
1? 嵌入式系統(tǒng)概述
1.1 嵌入式系統(tǒng)及其組成
根據(jù)目前對計算機系統(tǒng)的分類方法,計算機系統(tǒng)可以分為通用計算機系統(tǒng)、專用計算機系統(tǒng)兩類。嵌入式系統(tǒng)屬于一種專用的計算機系統(tǒng),也就是嵌入到對象體系中的專用計算機應用系統(tǒng),其設計目的主要是為了完成某種特定功能,其主要特征可以概括為嵌入性、專用性和有CPU[1]。目前,嵌入式系統(tǒng)在包括家電、工業(yè)控制、通信和商業(yè)在內(nèi)的許多領域都得到了推廣和應用,具備重要的應用價值。嵌入式系統(tǒng)的組成部分可以分為硬件和軟件兩部分。硬件部分主要包括嵌入式微處理器、外設接口與操作控制臺,其中嵌入式微處理器具有很高集成性,主要集成了ROM、RAM、串口、總線接口等[2]。外設接口包括具有輸入、輸出及通信等功能的普通外設,以及具有語音編解碼、信道編碼等特定功能的專用外設。操作控制臺主要作用是實現(xiàn)人機交互,組成部分包括開關、指示燈、顯示屏等。軟件系統(tǒng)包含嵌入式操作系統(tǒng)與用戶程序兩部分,與硬件系統(tǒng)相互配合,其中實時操作系統(tǒng)發(fā)揮著主要作用。
1.2 嵌入式系統(tǒng)的特點
相對于通用計算機來說,嵌入式系統(tǒng)還具有以下幾方面特點:第一是專用性強,是針對于某種特定應用所設計的系統(tǒng),相對于通用計算機系統(tǒng),在系統(tǒng)的可靠性、成本、體積與功耗等方面也具有更高要求。第二是具備較強的實時性,主要應用于過程控制,因此需要采用實時系統(tǒng),更有利于系統(tǒng)的實時反應。第三是軟件與硬件之間結合密切,軟件需要隨著硬件平臺的變化作出相應更改。第四是系統(tǒng)資源比較有限,相對于通用計算機具有更高的集成度。上述特點也決定了嵌入式系統(tǒng)的開發(fā)與通用計算機軟件的開發(fā)存在較大的差異性。
2? 基于工程化流程的嵌入式系統(tǒng)開發(fā)方法
2.1 系統(tǒng)工程化開發(fā)總體流程
系統(tǒng)工程化開發(fā)是指采用系統(tǒng)化、規(guī)范化和數(shù)量化等工程原則與操作方法進行系統(tǒng)的開發(fā)與維護[3]。其中主要包括開發(fā)技術、項目管理兩方面,開發(fā)技術可以具體分為開發(fā)工具、開發(fā)方法以及工程環(huán)境;項目管理主要包括項目估算、項目計劃、進度控制、人員和配置管理等。系統(tǒng)工程化開發(fā)的總體流程與建筑工程的實施流程之間具有一定程度的相似性,主要包括項目需求提出、任務分配、需求分析、概要設計、任務細分、詳細設計、開發(fā)實施、集成測試、試運行等環(huán)節(jié)[4]。系統(tǒng)工程化開發(fā)流程圖如圖1所示。
2.2 嵌入式系統(tǒng)工程化開發(fā)方法
在嵌入式系統(tǒng)的工程化開發(fā)過程中,需要采取上述工程化開發(fā)流程,并根據(jù)嵌入式系統(tǒng)自身的特點,采取有效的技術手段完成系統(tǒng)的開發(fā)。具體開發(fā)流程如下。
2.2.1 立項與調(diào)研
嵌入式系統(tǒng)開發(fā)項目的立項與調(diào)研階段,需要重點解決以下兩方面的問題,一方面要充分考慮市場因素,全面了解用戶的需求,同時對生產(chǎn)成本加以最大程度的控制,從而提升經(jīng)濟效益。另一方面需要全面考慮產(chǎn)品開發(fā)過程的可行性,在開發(fā)過程中選擇合適的技術手段,確保產(chǎn)品運行的穩(wěn)定性。針對于以上兩方面問題,需要采取調(diào)研的方式進行詳細研究,使得上述問題得到合理解決。在此階段還需要制作相應的書面材料對調(diào)研結果加以落實,其中包括《市場需求調(diào)研報告》以及《可行性分析報告》等[5]。
2.2.2 系統(tǒng)需求分析
在項目立項完成后,需要開展相關的分析工作。其中需要將用戶對于產(chǎn)品的需求作出歸納總結,而后制作成《用戶需求說明書》,對系統(tǒng)的功能等相關要求進行描述。在制作過程中,需要最終用戶提出意見并進行修改。最后由系統(tǒng)分析員根據(jù)用戶需求,為產(chǎn)品開發(fā)設計人員編寫《系統(tǒng)需求說明書》。
系統(tǒng)需求的分析過程中,由于嵌入式系統(tǒng)常具有某些特殊要求,因此需要重點考慮以下幾方面內(nèi)容。第一是系統(tǒng)是否能夠滿足應用環(huán)境對溫度、濕度以及相關安全標準等的要求,在此基礎上對設備的體積、功耗、成本與開發(fā)周期作出合理安排。第二是對系統(tǒng)的規(guī)模極其復雜程度作出合理評估,從而為系統(tǒng)開發(fā)工作量以及開發(fā)進度的判斷提供依據(jù)。其中可以從系統(tǒng)能夠提供的功能以及系統(tǒng)的技術規(guī)模兩方面進行有效評價。在上述工作的基礎上制定系統(tǒng)需求規(guī)格表,對系統(tǒng)需求作出詳細記錄。
2.2.3 系統(tǒng)設計與實現(xiàn)
嵌入式系統(tǒng)的設計方面,具體包括軟件設計、硬件設計、協(xié)調(diào)設計等方面。在具體開展設計工作時,需要依據(jù)相應的說明書,比如《軟件設計說明書》、《硬件設計說明書》、《軟硬件協(xié)同設計說明書》、系統(tǒng)架構設計方案圖等[6]。在對嵌入式系統(tǒng)進行合理設計的基礎上,需要由軟硬件工程師進行系統(tǒng)的實現(xiàn),按照統(tǒng)一的設計規(guī)范進行應用軟件開發(fā)及測試、硬件電路板制作以及協(xié)同設計等工作。并確保系統(tǒng)能夠穩(wěn)定運行。
在傳統(tǒng)的嵌入式軟件開發(fā)過程中,主要采取結構化開發(fā)方法,根據(jù)硬件設備進行軟件的開發(fā)工作。此種方式存在代碼重用性較差、軟件適應性、維護水平不高等問題。通過有效應用分層技術,能夠顯著提升軟件開發(fā)與維護效率。其開發(fā)過程主要依據(jù)高內(nèi)聚、低耦合原則,具體可以分為應用管理層、算法協(xié)議層、功能拓展層與硬件驅(qū)動層四部分。此種設計方式通過合理分層,增強其對硬件環(huán)境的適應性,因此能夠提高軟件的可復用性,并顯著簡化項目開發(fā)過程。在后期維護過程中對應用管理層以及功能拓展層進行修改即可。嵌入式軟件分層開發(fā)模型如圖2所示。
2.2.4 調(diào)試、運行與維護
在完成嵌入式系統(tǒng)的設計后,需要開展調(diào)試工作,從而判斷系統(tǒng)設計能否實現(xiàn)此前預想的功能。具體需要由專業(yè)人員進行系統(tǒng)的測試。進行系統(tǒng)測試工作過程中,需要依據(jù)《用戶需求說明書》,重點開展集成測試與可靠性測試。同時還需要對三個月內(nèi)的不間斷運行數(shù)據(jù)作出統(tǒng)計。如果發(fā)現(xiàn)在測試中存在問題,需要準確查找原因并加以解決。其中主要包括硬件調(diào)試與軟件調(diào)試。硬件調(diào)試的具體內(nèi)容包括線路檢查、存儲器測試、通信時序確認等方面,上述調(diào)試過程有利于解決常見的硬件問題。軟件調(diào)試的過程相對比較復雜,其內(nèi)容主要在于對驅(qū)動程序的調(diào)試,也是嵌入式系統(tǒng)開發(fā)過程中的重點部分之一。調(diào)試過程中對于軟件以及硬件的相關問題都會有所涉及。調(diào)試完成后還需要進行系統(tǒng)測試,測試步驟分為單元測試、集成測試、系統(tǒng)測試與環(huán)境測試四個步驟。單元測試主要針對系統(tǒng)中的單元模塊,比如在軟件單元測試上可以應用黑盒子、白盒子測試方法。單元測試完成后,需要開展針對于不同功能模塊組合的集成測試,主要明確模塊之間的接口問題。而后開展系統(tǒng)測試,判斷系統(tǒng)能否實現(xiàn)系統(tǒng)規(guī)格的標準。最后需要進行環(huán)境測試,依據(jù)真實操作環(huán)境全面判斷系統(tǒng)的功能及其穩(wěn)定性,確保其能夠滿足使用需求。設備通過測試之后,需要對用戶進行長期的追蹤,從而對設備及系統(tǒng)相關信息作出進一步豐富,更有利于進行設備后續(xù)的升級與維護工作。
3? 結語
嵌入式系統(tǒng)在目前得到了十分普遍的應用,在嵌入式系統(tǒng)的開發(fā)過程中,運用工程化的開發(fā)流程,有利于更好滿足系統(tǒng)的使用需求,并能夠有效提高系統(tǒng)開發(fā)效率。因此在今后也應加強工程化開發(fā)流程在嵌入式系統(tǒng)開發(fā)中的應用。
參考文獻
[1] 孫伯文,蔡陸迪.淺談嵌入式操作系統(tǒng)[J].移動信息,2017(10):45.
[2] 陸天波,楊金翠,孫藝,等.基于工程化的軟件工程教學案例研究[J].軟件,2019(3):78-87.
[3] 張智慧.多層模型在嵌入式軟件開發(fā)中的應用研究[J].計算機時代,2017(4):17-20.
[4] 陳妍茹.嵌入式系統(tǒng)的應用領域及發(fā)展趨勢[J].中外企業(yè)家,2020(1):82.
[5] 何曉亮,李剛.探究嵌入式系統(tǒng)在電子信息技術中的應用[J].中國新技術新產(chǎn)品,2019(24):13-14.
[6] 何祖恩.基于嵌入式系統(tǒng)的電梯導軌支架間距自動測量儀[J].自動化與儀表,2019,34(12):57-60.
[7] 黃澤輝,陳伯亨.基于嵌入式系統(tǒng)應用的研究及趨勢分析[J].農(nóng)家參謀,2019(23):149.