嵌入式系統底層軟件結構模型建構與協同性分析
摘 要:從探討嵌入式系統結構和協同性角度出發,分析了嵌入式系統是否采用操作系統的原因以及與硬件層密切相關的嵌入式系統底層啟動加載軟件 Bootloader 和板級支持包軟件BSP 的特性分析,給出相關模型、協同性設計流程、Bootloader 以及BSP 主要過程。為嵌入式系統的設計與應用提供有益的幫助。
0.引言
嵌入式技術被廣泛應用于信息家器、消費電子、交換機以及機器人等產品中,與通用計算機技術不同,嵌入式系統中計算機被置于應用環境內部特征不明顯。系統對性能、體積、以及時間等有較高的要求。復雜的嵌入式系統面向特定應用環境,必須支持硬、軟件裁減,適應系統對功能、成本以及功耗等要求。
0.1 嵌入式系統與協同性
從信息傳遞的電特性過程分析,嵌入式系統特征表現為,計算機技術與電子技術緊密結合,難以分清特定的物理外觀和功能,處理器與外設、存儲器等之間的信息交換主要以電平信號的形式在IC 間直接進行。
從嵌入深度ED來看,信息交換在IC 間越直接、越多,嵌入深度就越大。
在設計實驗系統模型(圖1)時,充分考慮到軟硬協同性,使其成為一個實驗與研究完備平臺。軟硬件協同性問題涉及到協同性劃分技術和協同性設計技術。協同性核心問題之一將涉及啟動加載軟件Bootloader、系統板級支持包BSP 以及嵌入式OS 之間融合和移植。協同性設計技術與系統功能、性能以及開發人員等因素相關,其核心內容為軟硬件的協同描述、驗證和綜合提供一種集成環境。
嵌入式系統結構模型
圖 1. 嵌入式系統結構模型
0.2 沒有操作系統OS 的嵌入式系統
0.2.1 系統特點
由于系統的性質、任務、成本等原因,沒有操作系統支持的嵌入式系統將繼續大量存在。這樣的系統使用專用開發工具(如:仿真在線調試器ICE 等)。通過串口或并口在PC機上聯機調試程序,具有源代碼調試功能。
0.2.2 局限性分析
沒有OS 的系統按照“指令順序執行+中斷”的模式運行。在作者參與的早期程控交換機系統設計中,需要對不同端口量級(從10 到1000 等)的分機進行實時處理。通過建立交換系統核心硬件層(存儲體、第一層I/O 等)以及用戶口地址等程序;然后建立定時和非定時事件、過程以及任務中斷鏈和任務表,應用中斷對任務以及過程調度。設計人員要完成相當于部分操作系統功能的編寫,導致軟件結構復雜、工作量大尤其是重復勞動。
0.3 具有OS 的嵌入式系統
圖1 的2 嵌入式系統就是具有嵌入式OS 的一種結構模型。引入嵌入式OS 可以面對多種嵌入式處理器環境(如:MPU、DSP、SOC 等)提供類同的API 接口,使基于OS 上的程序具有較好的移植性。從協同劃分與設計技術出發,通過嵌入式軟件的函數化、產品化能夠促進分工專業化,減少重復勞動。
評論