嵌入式系統設計方法



《嵌入式系統設計方法》由會員分享,可在線閱讀,更多相關《嵌入式系統設計方法(73頁珍藏版)》請在裝配圖網上搜索。
1、,,,,,,,單擊此處編輯母版標題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,,*,,,,,,,,單擊此處編輯母版標題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,,*,—,嵌入式系統設計方法,,2006年4月21日,,嵌入式系統,,,主要內容,嵌入式系統面臨的挑戰(zhàn),,嵌入式系統的設計,,嵌入式系統軟硬件協同設計,,嵌入式系統節(jié)能設計,,CC1991(9+2個主領域),CC2001(14個主領域),,離散數學(預備知識),離散結構,(DS),程序設計語言引論,程序設計基礎(PF),算法與數據結構,算法與復雜性(AL),計算機系統結構
2、,系統結構(AR),操作系統,操作系統(OS),,網絡計算(NC),程序設計語言,程序設計語言(PL),人-機通信,人機交互(HC),,圖形學和可視化計算(GV),人工智能與機器人學,智能系統(IS),數據庫與信息檢索,信息管理(IM),軟件方法學與工程,軟件工程(SE),社會、道德和職業(yè)的問題,社會和職業(yè)的問題(SP),數值與符號計算,科學計算(SC),IEEE/ACM 課程大綱關于計算機學科主領域的劃分,,,,嵌入式系統,嵌入式系統:,,,以應用為中心,以計算機技術為基礎,軟件硬件可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗諸方面嚴格要求的專用計算機系統。,,,嵌入式系統特點,,嵌
3、入式系統特點:,,,軟件硬件協同并行開發(fā),,,多種多樣的微處理器,,,實時操作系統的多樣性 (RTOS),,,與臺式機相比,可利用系統資源不足,,,應用支持很少,,,要求特殊的開發(fā)工具,,,調試很困難,,,軟件硬件的魯棒性(健壯性,Robust),,,嵌入式系統要解決的主要問題,,需要用什么樣的系統結構來實現?,,如何滿足時限要求,如何處理多項功能在時間上的協調一致關系?,,如何保證系統可靠地工作?,,如何滿足系統接口要求,嵌入式應用直接和系統接口輸入輸出信息?,,如何降低系統的功耗?,,如何使系統可升級?,,嵌入式系統設計的挑戰(zhàn)性問題,,軟硬件協同設計,,功耗的優(yōu)化設計,,嵌入式操作系統,,
4、開發(fā)環(huán)境,,成本和開發(fā)周期,,代碼優(yōu)化,,高效的輸入和輸出,,測試環(huán)境,,嵌入式系統軟件技術面臨的幾大問題,嵌入式軟件全生命周期開發(fā)工具鏈,,硬件與軟件的Co-Design: Verilog + C = ?,,驅動程序的設計和生成技術(嵌入式軟件開發(fā)中最令人頭疼的問題),,嵌入式軟件的可靠性問題: 正確性驗證技術、測試技術、調試技術等(可靠性問題是嵌入式軟件開發(fā)的基本問題),,可重構計算(Reconfigurable Computing)技術,,可構件化的嵌入式實時操作系統及其開發(fā)環(huán)境,,問題,:,,功能、性能要求,,價格、開發(fā)周期等約束,設計:,,,選擇,,折衷,,分析比較,,計算,,評價,
5、嵌入式系統,嵌入式系統的設計,方法,工具,,設計流程—自頂向下或自底向上設計,需求,設計說明,體系結構,構件設計,系統集成,自頂向下設計,自底向上設計,,需求分析,作用,,使用戶和設計者有效交流、溝通,明確設計目標,,設計者 - 設計什么?有哪些要求?,,用戶 - 將得到的系統是什么樣的?,,目標,,形成需求文檔,,內容,,功能性需求,做什么?,,輸入,輸出,功能,……,,非功能性需求,其他屬性,,可靠性,速度,功耗,……,,成本,大小,重量,設計時間, ……,,評價標準,正確性,,無二義性,,完整性,,可檢驗性,,一致性,,可修改性,,可追蹤性,,需求分析的描述,自然語言,,需求說明書,
6、,需求分析表,,,形式化描述,,用例圖等,,DOORS,,,例:,GPS移動地圖的需求,,規(guī)格說明,規(guī)格說明與需求的比較,,需求的提煉,,是可用來創(chuàng)建體系結構的關于系統的更詳盡、更精確、更一致的描述,,目標,,形成規(guī)格說明書,,內容,,包含系統體系結構設計的足夠信息,,,,規(guī)格說明書的描述,自然語言,,,形式化描述,,UML,,RSML,,SDL,,規(guī)格,說明,,需求的精確描述,,,描述明確,可理解,,,UML (Unified Modeling Language),,統一建模語言是可視化的設計說明語言,,統一描述系統的硬件和軟件,,,UML 可對系統的功能建模,,,可自動產生實際設計的HDL
7、 或C++ 代碼,,,UML的應用,I-Logix公司的Rhapsody系列產品,,基于統一建模語言UML的可視化編程環(huán)境,,把UML各類視圖映射為具體目標機程序語言,,用于復雜實時嵌入式應用軟件從分析、設計一直到代碼實現和軟件測試的開發(fā)過程,,NASA的火星探路者航天器就是運用Rhapsody在VxWorks上開發(fā)應用程序。,,系統結構設計,,,系統如何實現設計說明書描述的功能,,,基于組件的系統結構,,,軟件/硬件劃分,,,嵌入式系統中軟件和硬件協同完成系統的功能,,軟件硬件劃分通常由速度、靈活性以及開銷來決策,,,,,,硬件,,單片機, X86, PowerPC, ARM, MIPS,…
8、…,板級支持程序,嵌入式操作系統,應用軟件,監(jiān)控程序,嵌入式計算機系統基本結構,,嵌入式系統組成,,,,系統結構設計,,,系統結構設計,作用,,實現系統的藍圖,系統整體結構的一個計劃,,目標,,形成結構設計文檔,,內容,,系統分析,,系統軟硬件整體結構的設計,,軟硬件劃分,,標準構件和自行設計構件的確定,,評價標準,,有彈性,,簡單,,可實現,,層次清晰,,功能分布平衡,,平衡技術和經濟約束,,滿足功能需求和非功能需求,,可重用,,系統結構的描述,,非形式化方式,,自然語言,,結構框圖,,形式化方法,,UML建模,,,系統結構的設計過程及方法,,結構化設計方法,以算法為中心,從處理到處理的數據
9、流,,從輸入、輸出入手,根據操作和數據流,形成比較粗的系統大框架;,,然后逐步細化框架內的每個部分,進一步確定內部模塊的及模塊之間的關系,,設計過程應該是逐步細化和逐步完善的過程,,面向對象的方法,以類及交互模式為中心,,系統軟件結構的設計,,結構化方法(SA/SD),,面向對象的方法(OOA/OOD),,UML建模,,結構設計的驗證,,結構設計的正確性非常關鍵,,詳細設計和實現的基礎,對開發(fā)周期、成本有很大影響,,驗證所關心的問題,,結構設計是否滿足功能、性能要求,,能否實現,,驗證方法,,形式化方法,,仿真,,系統結構,,軟件結構,,硬件結構,,其他方法,,如基于開發(fā)板的原型系統,,系統引
10、入錯誤和修改錯誤開銷分布,,引入錯誤數目,修改錯誤開銷,開發(fā)周期,系統結構,,設計,軟硬件,,詳細設計,軟硬件,,實現,,軟硬件的劃分,,,嵌入式系統的設計涉及硬件與軟件部件,設計中必須決定什么功能由硬件實現,什么功能由軟件實現。,,硬件和軟件具有雙重性,,軟硬件變動對系統的決策造成影響,,劃分和選擇需要考慮多種因素,,硬件和軟件的雙重性是劃分決策的前提,,通常由軟件實現的部分,,,操作系統功能,,任務調度,,資源管理,,設備驅動,,協議棧,,TCP/IP,,應用軟件框架,,除基本系統、物理接口、基本邏輯電路,許多由硬件實現的功能都可以由軟件實現。,,,雙重性部分,,,算法,,加密/解密,,編
11、碼/解碼,,壓縮/解壓,,……,,數學運算,,浮點運算, FFT, ……,,……,,,標準構件和自行設計構件,,構件的實現,,選擇標準,,自行設計,,標準構件 = ?現成構件,,已經產品化,,形成規(guī)模生產,,標準構件 + 自行設計構件 = 用戶系統,,構件包括了硬件構件和軟件構件,,構件本身可以是層次性的,可以由子構件組成,,標準硬構件,,硬構件的形式:,,IC,:集成電路,,PCB,:印刷電路板,,IP,:Intellectual Property,,,標準,IC,,CPU, DSP, ……,,RAM, ROM, 接口控制器,……,,ASIC,……,,標準,IP,,CPU核,……,,標準模塊
12、,,GPRS模塊,GSM模塊,藍牙模塊, ……,,顯示模塊,……,,標準計算平臺,,基于PC104的嵌入式計算機,,基于Compact PCI的嵌入式計算機,,SOC,……,,標準軟構件,,OS / RTOS,,協議棧,,TCP/IP,,路由協議,,H.323,,……,,圖形開發(fā)包,,VxWorks的ZINK,,……,,驅動程序,,,自研硬構件,,內容,,邏輯電路,專用加速器,……,,實現方式,,PCB:,,IC:PLD FPGA ASIC,……,,EDA設計工具,,板級:,,原理圖設計工具,,PCB設計工具,,IC,,硬件描述語言: VHDL,Verilog,,原理圖描述工具,,綜合仿真
13、工具,,布線器, …………,,自研軟構件,,BSP,,驅動程序,,應用程序,,……,,,軟硬件技術對系統結構的影響,,硬軟件設計的趨勢——融合、滲透,,硬件設計的軟件化,,VHDL, Verilog,,HANDL-C,,軟件實現的硬件化,,各種算法的ASIC,,對系統設計的影響——協同設計,,增加靈活性,,增加了風險,,嵌入式系統設計者要求,,,懂得系統的整個構架,,,詳細了解硬件的細節(jié),,,軟件設計滿足:,,,實時要求,,,低功耗,,,代碼量小,,,詳細了解領域知識,,,嵌入式系統軟硬件協同設計,,,,,軟硬件協同設計,,軟硬件協同設計,硬件設計工具(EDA工具),,系統級設計工具,,Cad
14、ence的SPW,,System View,,模擬電路系統仿真工具,,Pspice,,EWB,,PCB設計工具,,Protel,,PADs 的Power PCB & Tool Kit,,Mentor的Expedition & Tool Kit,,可編程邏輯器件設計工具,,Mentor FPGA Advantage & ModelSim,,Xilinx Foundation ISE & Tool Kit,,各種綜合和仿真第三方工具,,軟硬件協同設計定義與主要概念,軟硬件協同設計定義,,The meeting of system-level objectives by exploiting the
15、 trade-offs between hardware and software in a system through their concurrent design,,主要概念,,Concurrent,(并發(fā)),: hardware and software developed at the same time on parallel paths,,Integrated,(一體化),: interaction between hardware and software developments to produce designs that meet performance crit
16、eria,,and functional specifications,,嵌入式系統,快速原型,設計過程,SYSTEM,DEF.,SW,DESIGN,VIRTUAL PROTOTYPE,REUSE DESIGN LIBRARIES AND DATABASE,Primarily,software,Primarily,hardware,SW,CODE,FUNCTION,DESIGN,HW &,SW,PART.,HW,DESIGN,HW,FAB,INTEG.,&,TEST,HW & SW,CODESIGN,HW & SW Partitioning & Codesign,,,嵌入式系統快速原型開發(fā)的基
17、本要素,系統定義(需求分析),,軟硬件劃分,,結構規(guī)劃,–,處理器類型,,,軟硬件之間的接口類型,,,等,.,,劃分目的,–,滿足系統速度,,,延遲,,,體積,,,成本等方面的要求,.,,劃分策略,- high level partitioning by hand, automated partitioning using various techniques, etc.,,調度,,Operation scheduling in hardware,,Instruction scheduling in compilers,,Process scheduling in operating syst
18、ems,,軟硬件設計過程中的建模,,傳統的嵌入式系統設計模型,System,,Concepts,Sys/HW,,Require.,,Analysis,Sys/SW,,Require.,,Analysis,Operation.,,Testing and,,Eval.,Software,,Require.,,Analysis,Prelim.,,Design,Detailed,,Design,Coding,,,Unit test.,,,Integ. test,SW Development,HWCI,,Testing,CSCI,,Testing,System,,Integ. and,,test,Har
19、dware,,Require.,,Analysis,Prelim.,,Design,Detailed,,Design,Fabric.,HW Development,DOD-STD-2167A,,傳統的嵌入式系統設計過程,傳統軟硬件設計過程的基本特征,:,,系統在一開始就被劃分為軟件和硬件兩大部分,,軟件和硬件獨立進行開發(fā)設計,,“Hardware first” approach often adopted,,隱含的一些問題,:,,軟硬件之間的交互受到很大限制,,軟硬件之間的相互性能影響很難評估,,系統集成相對滯后,NRE較大,,因此,:,,Poor quality designs,(設計質量差
20、),,Costly modifications,(設計修改難),,Schedule slippages,(研制周期不能有效保障),,傳統設計過程中的尖銳矛盾,,隨著設計復雜程度的提高,軟硬件設計中的一些錯誤將使開發(fā)過程付出昂貴的代價,,,“,Hardware first,” approach often compounds,(混合),software cost because software must compensate for,(補償),hardware inadequacies,(不充分),,軟硬件設計過程發(fā)展方向-協同設計,System,,Concepts,Sys/HW,,Requi
21、re.,,Analysis,Sys/SW,,Require.,,Analysis,Hardware,,Require.,,Analysis,Software,,Require.,,Analysis,Operation.,,Testing and,,Evaluation,SW Development,HW Development,System,,Integ. and,,test,HWCI,,Testing,CSCI,,Testing,[,Franke91],,Integrated Modeling Substrate,Integrated Modeling Substrate,(一體化建模底
22、層),Prelim.,,Design,Prelim.,,Design,Detailed,,Design,Detailed,,Design,Fabric.,Coding,,,Unit test.,,,Integ. test,?,IEEE 1991,,嵌入式軟件的開發(fā)過程(瀑布模型),Requirement Analysis,Software Design,Coding,Testing,Release,,軟硬件協同設計的基本需求,統一的軟硬件描述方式,,軟硬件支持統一的設計和分析工具(技術),,允許在一個集成環(huán)境中仿真(評估)系統軟硬件設計,,支持系統任務在軟件和硬件設計之間的相互移植,,交互式軟
23、硬件劃分技術,,允許多個不同的軟硬件劃分設計進行仿真和比較,,輔助最優(yōu)系統實現方式決策,,將軟硬件劃分應用到模塊設計,以便最佳地實現系統的設計指標。,Partitioning applied to modules to best meet design criteria (,功能和性能目標,),,軟硬件協同設計的基本需求,(,續(xù),),完整的軟硬件模型基礎,,支持在設計過程中的幾個階段的綜合評價,,支持軟硬件逐步的開發(fā)和集成,,正確的驗證方法,,確保系統設計達到的目標要求,,典型的軟硬件協同設計過程,,,System,,Integration,Instruction set level,,HW/
24、SW evaluation,Unified representation,,(Data/control flow),,HW/SW,,Partitioning,,,Interface,,Synthesis,,Software,,Synthesis,SW,Hardware,,Synthesis,HW,,System,,Description,,(Functional),Concurrent processes,,Programming languages,,FSM-,,directed graphs,,Another,,HW/SW,,partition,,經典的軟硬件協同設計方法,Analysis
25、 of Constraints,,and Requirements,System Specs..,HW/SW,,Partitioning,Hardware Descript.,Software Descript.,HW Synth. and,,Configuration,Interface Synthesis,Software Gen.,,& Parameterization,Configuration,,Modules,Hardware,,Components,HW/SW,,Interfaces,Software,,Modules,HW/SW Integration,,and Cosimul
26、ation,Integrated,,System,System Evaluation,Design Verification,[,Rozenblit94],?,IEEE 1994,,軟硬件協同設計的優(yōu)勢,在設計初始階段就可進行軟硬件交互設計和調整,,Provides continual verification throughout the design cycle,(貫穿整個設計周期),,Separate HW/SW development paths,(開發(fā)路線),can lead to costly modifications and schedule slippages,(導致代價昂貴
27、的糾錯成本和開發(fā)進度的下降),,關鍵技術(如可編程邏輯綜合技術、器件接口和功能模型描述)的進步使得軟硬件交互設計變得簡單起來,,軟硬件協同設計技術的現狀,主要問題,:,,缺乏標準化的表示方法,,缺乏好的驗證和評價方法,,可能的解決方案,:,,擴展已有的硬件/軟件語言工具并應用到不同種類情況,,擴展形式驗證技術并應用到硬件/軟件領域,,基于FPGA的嵌入式系統設計--SOPC設計,,軟硬件協同設計基本步驟,HW-SW system involves,,Specification(設計描述),,modeling (設計建模),,design space exploration and partit
28、ioning,,synthesis and optimization(綜合與優(yōu)化),,Validation(設計驗證),,implementation (設計實現),,軟硬件協同設計基本步驟,Specification(設計描述),,List the functions of a system that describe the behavior of an abstraction clearly with out ambiguity.,,Modeling,(設計建模),,Process of conceptualizing and refining the specifications, a
29、nd producing a hardware and software model.,,軟硬件協同設計基本步驟,Validation:,,Process of achieving a reasonable level of confidence(置信度) that the system will work as designed.,,Takes different flavors per application domain(根據應用領域而不同): cosimulation for performance and correctness(性能與功能的協同仿真),,軟硬件協同設計基本步驟,Im
30、plementation:,,Physical realization of the hardware (through synthesis),,and of executable software (through compilation).,,協同設計中的軟硬件劃分與調度,(where and when),A hardware/software,partitioning,represents a physical partition of system functionality into application-specific hardware and software.,,Sched
31、uling,is to assign an execution start time to each task in a set, where tasks are linked by some relations.,,,嵌入式系統的節(jié)能設計,(硬件節(jié)能、軟件節(jié)能),,,,嵌入式系統的節(jié)能設計,節(jié)能計算成為嵌入式系統設計、系統軟件重點考慮的基本方面:,,節(jié)能計算包括:,,硬件體系結構支持,,在小巧外形尺寸下,如何實現所需電源性能的工藝和技術,,熱管理、降噪、電池管理和功能整合,,軟件支持,,節(jié)能編譯,,操作系統,,節(jié)能策略,,現狀,電源管理策略,,面向PC、筆記本電腦、服務器、通信設備的刀片服務
32、器,,APM:高級電源管理方案,,ACPI:高級配置和電源接口,,根據嵌入式系統模型定制節(jié)能技術非常缺乏,甚至在某些方面是空白,,手持設備電源管理,電池壽命不等同于電源管理的成效,,性能、多媒體系統、數碼攝像,,新增功能增加系統的耗電量,,縮短電池壽命,,影響因素,,CPU 功能,,系統軟件,,中間件,,管理策略,,傳統手持設備管理策略,處理器時鐘變慢,,操作系統轉入待機、睡眠狀態(tài),,動態(tài)電源管理 (DPM),,調整內核電壓和頻率,,高性能存儲器,,彩色顯示器,,無線接口,,固化為通用電源管理IC,,軟件節(jié)能策略,預測什么時候設備的未來使用狀況或者使用率,,“time-out”策略預測特定的時
33、間長度,,基于GSPN網絡和HMM的技術,,Montavista,,基于linux,,通用性強,但是嵌入式系統定制性強,效果不佳,,能耗測試,測試出每條指令的能耗,估計測試程序運行完的總能耗,,測試出每個函數的能耗,然后利用這些函數作為標準去估計其他函數運行的能耗,,節(jié)能操作系統,目的,,保證操作系統實時性的前提下,完成能耗計算,,調度算法的節(jié)能優(yōu)化,,中斷處理優(yōu)化,,低功耗文件系統,,CPU 電壓和頻率調節(jié)會給實時性能帶來了嚴峻挑戰(zhàn),,可能造成不穩(wěn)定,,“重新鎖定”鎖相環(huán)路和其它動態(tài)時鐘機制需要時間,造成了很長的等待時間(有時是毫秒級別),,鎖定期間 CPU 既不能執(zhí)行計算操作,又不能響應外
34、部事件(中斷),,每一軟件,,相應的手機最低電壓,,CPU頻率,,相應設備,,通過動態(tài)的調節(jié)CPU的內核頻率與內核電壓,以及動態(tài)的關閉系統的某些設備和調整某些設備的狀態(tài),,外設驅動,針對不同功能部件的能耗,進行合理的功耗優(yōu)化,,從電池開始,嚴格和精確地電量測量,,根據外設特征研究不同的電源管理策略下的驅動,,現有情況,,硬件產品有幾種狀態(tài)定義,,狀態(tài)提供不同的服務質量和消耗的能量,,提供各種狀態(tài)之間的轉換接口,,算法目標,,實現狀態(tài)轉換的節(jié)能策略,,減少待機能耗,,人工智能技術的應用,,通過軟件來動態(tài)的預測和控制某些部件的開關,,節(jié)能通訊協議棧,連接干預,,節(jié)能的傳輸調度算法,,緩沖區(qū)技術,,局部性原理與預取,,低功耗壓縮算法,,節(jié)能編譯,對每條指令的能耗進行測試,,對函數編譯結果的能耗進行估計,,錯誤處理代碼的能耗設計,,基于ICE進行函數執(zhí)行代碼統計,,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年作風建設學習教育開展情況的報告范文
- 在2025年民營企業(yè)座談會上的主持講話范文
- 在2025年全縣教育領域群眾身邊不正之風和腐敗問題集中整治調度會上的講話范文
- 工委副書記在2025年機關DeepSeek應用專題輔導培訓班開班儀式上的講話范文
- 在2025年DeepSeek大模型政務應用培訓會上的講話范文
- 在青年干部培訓結業(yè)典禮上的講話文稿
- 2025年副書記防汛工作會議上的講話范文
- 2025年主管商務部門黨組書記在理論學習中心組會上研討發(fā)言文稿
- 2025年國企黨委關于干部職工思想政治工作情況的報告范文
- 在機關單位作風建設學習教育突出問題專項整治工作部署會議上的講話范文
- 醫(yī)院領導2025年黨風廉政建設推進會上的講話范文
- 2025年關于開展“以案促改”工作實施方案供參考
- 在2025年安全生產專項整治暨化工行業(yè)風險防控部署會上的講話范文
- 領導干部在“十五五”發(fā)展規(guī)劃編制啟動會上的講話文稿
- 2025年書記在慰問老干部暨情況通報會上的主持講話提綱范文