嵌入式技術是計算機發展的趨勢之一,被廣泛應用于工業和軍事領域。SCADE(高安全性的應用程序開發環境)為嵌入式軟件提供了一套基于模型的開發方式。從嵌入式軟件的特點入手,對基于模型的嵌入式系統軟件開發技術進行了深入剖析,并給出了一個基于SCADE的開發實例。
1引言
隨著嵌入式應用技術的發展,嵌入式系統被廣泛應用于人們生活的各個方面。大量功能強大而價格便宜的通用嵌入式硬件隨之出現在市場上。而如何能夠在通用硬件平臺上,高效的開發出滿足安全性與可靠性需要的專用嵌入式軟件成為了制約嵌入式技術應用的瓶頸。在計算機領域,如何為軟件的工業化大生產創造必要的技術條件和設計模式一直是軟件工程研究的首要問題。無論是軟件工程領域出現過的計算機輔助軟件工程的熱潮,還是,基于面向對象技術和組件技珠海電感廠術的“裝配重用”軟件思路,都有一些根本性的問題沒有得到解決,因此大規模的“裝配&rdquo電感生產廠家;軟件生產還處在一個理想階段。
隨著研究的深入,用模型化。組件化的方法定義并開發軟件及其系統的思想引起了人們的興趣,也提供了一種新的軟件工業化大生產的可能性。在這方面,嵌入式軟件由于其本身的特殊性走在了通用軟件(PC機用軟件)的前面。
2 SCADE軟件開發環境簡介
SCADE(Safety-Critical Application Develop-ment Environment)高安全性的應用程序開發環境,是法國Esterel Technologies公司研制的一個用于開發達到歐洲航空業DO一178B標準的嵌入式軟件的完整工具包。它針對嵌入式軟件的特點,運用了正確構建(Correct by Construction)的概念,提出了一種基于模型的圖形化開發方式,覆蓋了從需求分析到代碼實現的整個軟件開發流程。
SCADE開發環境提供的一系列開發工具,實現了直觀的圖形化需求建模功能,基于模型的仿真驗證和軟件測試功能,以及基于模型的標準C代碼和開發文檔的自動生成功能。其嚴謹的建模理論和經過高安全性驗證的代碼生成器KCG,保證了軟件需求和代碼產品的高度同步塑封電感器。
SCADE開發環境的出現,使軟件設計工作可以集中在需求建模的層面,為基于模型電感廠家的軟件開發方法提供了載體。
3基于SCADE的嵌入式軟件開發理論基礎
根據嵌入式系統的特點,SCADE提出了反應式系統。確定性。同步假設。并發性四個關鍵概念,從嵌入式系統的本質特征出發,極大的簡化了系統設計的考慮,為基于模型的開發方式提供了理論基礎。
3.1反應式系統
反應式(Reactive system)系統是指在運行過程中,不停的和外部環境交換信息,以外部環境的輸入信息為主導,進行特定的計算和輸出的嵌人式系統。
反應式系統的工作方式是一個“輸入一計算一輸出”的連續循環過程。反應式系統一般還兼具實時性和周期大電流電感性,廣泛應用于工業領域的嵌入式系統大都屬于這種系統。反應式系統的工作方式如圖1所示。
反應式系統的概念,把嵌入式系統簡化為一個能不斷接收輸入,并計算輸出的黑盒,為嵌人式系統的需求建模提供了基本模型。
3.2確定性
一個系統,如果使用相同的一組輸入序列,在相同的時間調度下,其反應情況相同,始終產生相同的一組輸出,那么它就是確定的。確定性提高了系統的安全性,是大多數嵌入式軟件的重要需求,在航空航天等高科技領域,這也是一個必要條件。‘確定性的要求降低了系統設計的復雜度,簡化了系統建模和仿真驗證的考慮。SCADE開發環境提供的各種機制確保了系統的確定性,開發者不能引入不確定性。
3.3同步假設
同步假設(synchrony hypothesis)是假設反應式系統的處理速度無限快,即系統在一個可以忽略不計的瞬間響應輸入,并產生輸出。這樣,任何兩次響應之間都不會重疊,每一次輸出都會在下一次輸人前完成。
相對于通用軟件的設計,時間是嵌入式系統設計必須考慮的一個因素,而嵌入式軟件的運行時間又是與硬件環境息息相關的。為了簡化系統設計,SCADE提出了同步假設概念,把物理時間從系統設計中剝離出來。一方面確保了系統的實時性,另一方面也體現了設計的平臺無關性。 大功率電感廠家 |大電流電感工廠