淺談嵌入式軟件系統(tǒng)設計中的正交性
2.2 正交嵌入式系統(tǒng)的好處
本文引用地址:http://butianyuan.cn/article/87715.htm正交思想幾乎觸及到自然科學的各個領域,利用該思想來進行嵌入式軟件系統(tǒng)設計同樣存在諸多優(yōu)點。
圖5 FaultSPI任務調(diào)用方式
(1) 方便單元測試
在整個軟件開發(fā)周期中,軟件的測試工作占據(jù)著相當重要的比例,甚至會超過整個周期的50%。倘若等到所有代碼都編寫完成之后才開始測試工作,那么,軟件系統(tǒng)不同層面以及各個任務模塊中的眾多Bug,常常會使程序員無法理清思路,從而不能判斷問題的根源。所以在進行系統(tǒng)集成測試之前,應該將各個模塊的Bug減少到最低,這也就需要在編寫各個模塊時,進行有效的單元測試。而保證單元測試順利有效進行的前提是,該模塊有很高的獨立性,這也正是正交性解決的問題。圖6所示為嵌入式軟件系統(tǒng)的測試流程。
圖6 嵌入式軟件系統(tǒng)測試流程
(2) 更易于維護
常常有軟件系統(tǒng)維護的人員發(fā)現(xiàn)了系統(tǒng)存在的問題,卻不敢輕易改動,特別是系統(tǒng)底層部分。原因很簡單:系統(tǒng)一直運行良好,沒有出錯,而且由于沒有完整的文檔說明,擔心改動之后會出現(xiàn)新的問題。這種憂慮折射出的是:程序員對眼前軟件系統(tǒng)是否具備較好正交性的疑慮。所以一個具有較好正交性的嵌入式軟件系統(tǒng),能夠讓軟件維護人員更快、更順利地接手,提高維護效率的同時保證很高的正確性。
(3) 便于移植
硬件的更新速度相當之快,要降低產(chǎn)品升級成本、加快升級速度,必須讓軟件系統(tǒng)具備很好的可移植性,特別是嵌入式軟件系統(tǒng)中與硬件沒有直接關聯(lián)的應用層部分。一個正交嵌入式系統(tǒng)正好從垂直方向保證了系統(tǒng)各層之間的獨立性,很好地將應用層與物理層分離開來。
(4) 便于協(xié)同開發(fā)
DSP與ARM較傳統(tǒng)MCU的優(yōu)勢之一,是使用了流水線技術,使指令能并行執(zhí)行。對于軟件,同樣希望能并行協(xié)同開發(fā)。正交嵌入式系統(tǒng)各個模塊相互獨立,只要定義好各模塊的接口,軟件開發(fā)人員并不需要等待其他模塊完成就能開展工作。圖7所示為正交嵌入式軟件系統(tǒng)的開發(fā)模式。
正交的嵌入式軟件系統(tǒng),能夠非常方便地將系統(tǒng)分為互不干擾的獨立模塊。每個軟件開發(fā)人員或開發(fā)團隊負責不同的模塊,并行地開展工作。開發(fā)人員在開發(fā)過程中能夠互相溝通(如圖7中虛線箭頭所示),甚至可以隨時協(xié)助同伴攻克難題。
圖7 正交軟件系統(tǒng)開發(fā)模式
3 小結
在眾多研究領域,人們很早就開始借助正交性思想來幫助解決種種問題。從歐氏空間線性變換到經(jīng)典力學中物體受力分析,從傅里葉變換到信號處理,從小波分析到地震勘探、量子場論、信號處理(包括圖像和語音)、機械故障診斷以及JPEG2000標準的制定。這些都是借助正交性思想,將對象分成多個相對獨立的部分,進而對各部分單獨進行研究,從而化繁為簡。在嵌入式軟件設計中,也存在類似的思想,正交的嵌入式軟件系統(tǒng)能夠降低系統(tǒng)各模塊間的依賴性,從而使系統(tǒng)更易于維護、方便測試,也更加容易實現(xiàn)系統(tǒng)的移植。從軟件開發(fā)過程的角度來看,正交性思想還能夠幫助研發(fā)團隊并行作業(yè)、協(xié)同開發(fā),減少了等待時間,大大提高開發(fā)效率,因此該思想值得軟件設計人員探討和利用。
李興鶴(碩士),主要研究領域為嵌入式系統(tǒng)、RFID技術、變頻技術、電梯控制系統(tǒng);
古俊銀(博士、高級工程師),主要研究領域為變頻驅動技術、新能源技術、嵌入式系統(tǒng);
宋吉波(工程師),主要研究領域為變頻驅動技術、嵌入式系統(tǒng)、電梯控制系統(tǒng);
馬艷玲(碩士、軟件工程師)、
吳蕓(軟件工程師),主要研究領域為嵌入式系統(tǒng),變頻技術。
評論