第2章 嵌入式系统设计方法学课件_第1页
第2章 嵌入式系统设计方法学课件_第2页
第2章 嵌入式系统设计方法学课件_第3页
第2章 嵌入式系统设计方法学课件_第4页
第2章 嵌入式系统设计方法学课件_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式系统设计方法学第2章嵌入式系统设计方法学

主要内容嵌入式系统面临的挑战嵌入式系统的设计嵌入式系统软硬件协同设计嵌入式系统节能设计第2章嵌入式系统设计方法学嵌入式系统嵌入式系统:

以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗诸方面严格要求的专用计算机系统。第2章嵌入式系统设计方法学嵌入式系统特点嵌入式系统特点:

软件硬件协同并行开发

多种多样的微处理器

实时操作系统的多样性(RTOS)

与台式机相比,可利用系统资源不足

应用支持很少

要求特殊的开发工具

调试很困难

软件硬件的鲁棒性(健壮性,Robust)第2章嵌入式系统设计方法学嵌入式系统要解决的主要问题

需要用什么样的系统结构来实现?如何满足时限要求,如何处理多项功能在时间上的协调一致关系?如何保证系统可靠地工作?如何满足系统接口要求,嵌入式应用直接和系统接口输入输出信息?如何降低系统的功耗?如何使系统可升级?第2章嵌入式系统设计方法学嵌入式系统设计的挑战性问题

软硬件协同设计功耗的优化设计嵌入式操作系统开发环境成本和开发周期代码优化高效的输入和输出测试环境第2章嵌入式系统设计方法学嵌入式系统软件技术面临的几大问题嵌入式软件全生命周期开发工具链硬件与软件的Co-Design:Verilog+C=?驱动程序的设计和生成技术(嵌入式软件开发中最令人头疼的问题)嵌入式软件的可靠性问题:正确性验证技术、测试技术、调试技术等(可靠性问题是嵌入式软件开发的基本问题)可重构计算(ReconfigurableComputing)技术可构件化的嵌入式实时操作系统及其开发环境第2章嵌入式系统设计方法学问题:功能、性能要求价格、开发周期等约束设计:

选择折衷分析比较计算评价嵌入式系统嵌入式系统的设计方法工具第2章嵌入式系统设计方法学设计流程—自顶向下或自底向上设计需求设计说明体系结构构件设计系统集成自顶向下设计自底向上设计第2章嵌入式系统设计方法学需求分析作用使用户和设计者有效交流、沟通,明确设计目标设计者-设计什么?有哪些要求?用户-将得到的系统是什么样的?目标形成需求文档内容功能性需求做什么?输入,输出,功能,……非功能性需求其他属性可靠性,速度,功耗,……成本,大小,重量,设计时间,……第2章嵌入式系统设计方法学评价标准正确性无二义性完整性可检验性一致性可修改性可追踪性第2章嵌入式系统设计方法学需求分析的描述自然语言需求说明书需求分析表形式化描述用例图等DOORS第2章嵌入式系统设计方法学例:GPS移动地图的需求第2章嵌入式系统设计方法学

规格说明规格说明与需求的比较需求的提炼是可用来创建体系结构的关于系统的更详尽、更精确、更一致的描述目标形成规格说明书内容包含系统体系结构设计的足够信息第2章嵌入式系统设计方法学规格说明书的描述自然语言形式化描述UMLRSMLSDL第2章嵌入式系统设计方法学规格说明需求的精确描述

描述明确,可理解

UML(UnifiedModelingLanguage)统一建模语言是可视化的设计说明语言统一描述系统的硬件和软件

UML可对系统的功能建模

可自动产生实际设计的HDL或C++代码第2章嵌入式系统设计方法学UML的应用I-Logix公司的Rhapsody系列产品基于统一建模语言UML的可视化编程环境把UML各类视图映射为具体目标机程序语言用于复杂实时嵌入式应用软件从分析、设计一直到代码实现和软件测试的开发过程NASA的火星探路者航天器就是运用Rhapsody在VxWorks上开发应用程序。第2章嵌入式系统设计方法学系统结构设计

系统如何实现设计说明书描述的功能

基于组件的系统结构

软件/硬件划分

嵌入式系统中软件和硬件协同完成系统的功能软件硬件划分通常由速度、灵活性以及开销来决策第2章嵌入式系统设计方法学

硬件单片机,X86,PowerPC,ARM,MIPS,……板级支持程序嵌入式操作系统应用软件监控程序嵌入式计算机系统基本结构第2章嵌入式系统设计方法学嵌入式系统组成第2章嵌入式系统设计方法学第2章嵌入式系统设计方法学系统结构设计第2章嵌入式系统设计方法学系统结构设计作用实现系统的蓝图,系统整体结构的一个计划目标形成结构设计文档内容系统分析系统软硬件整体结构的设计软硬件划分标准构件和自行设计构件的确定第2章嵌入式系统设计方法学

评价标准有弹性简单可实现层次清晰功能分布平衡平衡技术和经济约束满足功能需求和非功能需求可重用第2章嵌入式系统设计方法学系统结构的描述非形式化方式自然语言结构框图形式化方法UML建模第2章嵌入式系统设计方法学系统结构的设计过程及方法结构化设计方法以算法为中心,从处理到处理的数据流从输入、输出入手,根据操作和数据流,形成比较粗的系统大框架;然后逐步细化框架内的每个部分,进一步确定内部模块的及模块之间的关系设计过程应该是逐步细化和逐步完善的过程面向对象的方法以类及交互模式为中心第2章嵌入式系统设计方法学系统软件结构的设计结构化方法(SA/SD)面向对象的方法(OOA/OOD)UML建模第2章嵌入式系统设计方法学结构设计的验证结构设计的正确性非常关键详细设计和实现的基础,对开发周期、成本有很大影响验证所关心的问题结构设计是否满足功能、性能要求能否实现验证方法形式化方法仿真系统结构软件结构硬件结构其他方法如基于开发板的原型系统第2章嵌入式系统设计方法学系统引入错误和修改错误开销分布引入错误数目修改错误开销开发周期系统结构设计软硬件详细设计软硬件实现第2章嵌入式系统设计方法学软硬件的划分

嵌入式系统的设计涉及硬件与软件部件,设计中必须决定什么功能由硬件实现,什么功能由软件实现。硬件和软件具有双重性软硬件变动对系统的决策造成影响划分和选择需要考虑多种因素硬件和软件的双重性是划分决策的前提第2章嵌入式系统设计方法学通常由软件实现的部分操作系统功能任务调度资源管理设备驱动协议栈TCP/IP应用软件框架除基本系统、物理接口、基本逻辑电路,许多由硬件实现的功能都可以由软件实现。第2章嵌入式系统设计方法学双重性部分算法加密/解密编码/解码压缩/解压……数学运算浮点运算,FFT,…………第2章嵌入式系统设计方法学标准构件和自行设计构件构件的实现选择标准自行设计标准构件=?现成构件已经产品化形成规模生产标准构件+自行设计构件=用户系统构件包括了硬件构件和软件构件构件本身可以是层次性的,可以由子构件组成第2章嵌入式系统设计方法学标准硬构件硬构件的形式:IC:集成电路PCB:印刷电路板IP:IntellectualProperty标准ICCPU,DSP,……RAM,ROM,接口控制器,……ASIC,……标准IPCPU核,……标准模块GPRS模块,GSM模块,蓝牙模块,……显示模块,……标准计算平台基于PC104的嵌入式计算机基于CompactPCI的嵌入式计算机SOC,……第2章嵌入式系统设计方法学标准软构件OS/RTOS协议栈TCP/IP路由协议H.323……图形开发包VxWorks的ZINK……驱动程序第2章嵌入式系统设计方法学自研硬构件内容逻辑电路,专用加速器,……实现方式PCB:IC:PLDFPGAASIC,……EDA设计工具板级:原理图设计工具PCB设计工具IC硬件描述语言:VHDL,Verilog原理图描述工具综合仿真工具布线器,…………第2章嵌入式系统设计方法学自研软构件BSP驱动程序应用程序……第2章嵌入式系统设计方法学

软硬件技术对系统结构的影响硬软件设计的趋势——融合、渗透硬件设计的软件化VHDL,VerilogHANDL-C软件实现的硬件化各种算法的ASIC对系统设计的影响——协同设计增加灵活性增加了风险第2章嵌入式系统设计方法学嵌入式系统设计者要求

懂得系统的整个构架

详细了解硬件的细节

软件设计满足:

实时要求

低功耗

代码量小

详细了解领域知识第2章嵌入式系统设计方法学嵌入式系统软硬件协同设计第2章嵌入式系统设计方法学

软硬件协同设计第2章嵌入式系统设计方法学软硬件协同设计硬件设计工具(EDA工具)系统级设计工具Cadence的SPWSystemView模拟电路系统仿真工具PspiceEWBPCB设计工具ProtelPADs的PowerPCB&ToolKitMentor的Expedition&ToolKit可编程逻辑器件设计工具MentorFPGAAdvantage&ModelSimXilinxFoundationISE&ToolKit各种综合和仿真第三方工具第2章嵌入式系统设计方法学软硬件协同设计定义与主要概念软硬件协同设计定义Themeetingofsystem-levelobjectivesbyexploitingthetrade-offsbetweenhardwareandsoftwareinasystemthroughtheirconcurrentdesign主要概念Concurrent(并发):hardwareandsoftwaredevelopedatthesametimeonparallelpathsIntegrated(一体化):interactionbetweenhardwareandsoftwaredevelopmentstoproducedesignsthatmeetperformancecriteria

andfunctionalspecifications第2章嵌入式系统设计方法学嵌入式系统快速原型设计过程SYSTEMDEF.SWDESIGNVIRTUALPROTOTYPEREUSEDESIGNLIBRARIESANDDATABASEPrimarilysoftwarePrimarilyhardwareSWCODEFUNCTIONDESIGNHW&SWPART.HWDESIGNHWFABINTEG.&TESTHW&SWCODESIGNHW&SWPartitioning&

Codesign第2章嵌入式系统设计方法学嵌入式系统快速原型开发的基本要素系统定义(需求分析)软硬件划分结构规划

–处理器类型,软硬件之间的接口类型,等.划分目的

–满足系统速度,延迟,体积,成本等方面的要求.划分策略

-highlevelpartitioningbyhand,automatedpartitioningusingvarioustechniques,etc.调度OperationschedulinginhardwareInstructionschedulingincompilersProcessschedulinginoperatingsystems软硬件设计过程中的建模第2章嵌入式系统设计方法学传统的嵌入式系统设计模型SystemConceptsSys/HWRequire.AnalysisSys/SWRequire.AnalysisOperation.TestingandEval.SoftwareRequire.AnalysisPrelim.DesignDetailedDesignCoding,Unittest.,Integ.testSWDevelopmentHWCITestingCSCITestingSystemInteg.andtestHardwareRequire.AnalysisPrelim.DesignDetailedDesignFabric.HWDevelopmentDOD-STD-2167A第2章嵌入式系统设计方法学传统的嵌入式系统设计过程传统软硬件设计过程的基本特征:系统在一开始就被划分为软件和硬件两大部分软件和硬件独立进行开发设计“Hardwarefirst”approachoftenadopted隐含的一些问题:软硬件之间的交互受到很大限制软硬件之间的相互性能影响很难评估系统集成相对滞后,NRE较大因此:Poorqualitydesigns(设计质量差)Costlymodifications(设计修改难)Scheduleslippages(研制周期不能有效保障)第2章嵌入式系统设计方法学传统设计过程中的尖锐矛盾随着设计复杂程度的提高,软硬件设计中的一些错误将使开发过程付出昂贵的代价

“Hardwarefirst”approachoftencompounds(混合)

softwarecostbecausesoftwaremustcompensatefor(补偿)

hardwareinadequacies(不充分)第2章嵌入式系统设计方法学软硬件设计过程发展方向-协同设计SystemConceptsSys/HWRequire.AnalysisSys/SWRequire.AnalysisHardwareRequire.AnalysisSoftwareRequire.AnalysisOperation.TestingandEvaluationSWDevelopmentHWDevelopmentSystemInteg.andtestHWCITestingCSCITesting[Franke91]IntegratedModelingSubstrateIntegratedModelingSubstrate(一体化建模底层)Prelim.DesignPrelim.DesignDetailedDesignDetailedDesignFabric.Coding,Unittest.,Integ.test©IEEE1991第2章嵌入式系统设计方法学嵌入式软件的开发过程(瀑布模型)RequirementAnalysisSoftwareDesignCodingTestingRelease第2章嵌入式系统设计方法学软硬件协同设计的基本需求统一的软硬件描述方式软硬件支持统一的设计和分析工具(技术)允许在一个集成环境中仿真(评估)系统软硬件设计支持系统任务在软件和硬件设计之间的相互移植交互式软硬件划分技术允许多个不同的软硬件划分设计进行仿真和比较辅助最优系统实现方式决策将软硬件划分应用到模块设计,以便最佳地实现系统的设计指标。Partitioningappliedtomodulestobestmeetdesigncriteria(功能和性能目标)第2章嵌入式系统设计方法学软硬件协同设计的基本需求

(续)完整的软硬件模型基础支持在设计过程中的几个阶段的综合评价支持软硬件逐步的开发和集成正确的验证方法确保系统设计达到的目标要求第2章嵌入式系统设计方法学典型的软硬件协同设计过程

SystemIntegrationInstructionsetlevelHW/SWevaluationUnifiedrepresentation(Data/controlflow)

HW/SWPartitioning

InterfaceSynthesis

SoftwareSynthesisSWHardwareSynthesisHW

SystemDescription(Functional)ConcurrentprocessesProgramminglanguages

FSM-directedgraphs

AnotherHW/SWpartition第2章嵌入式系统设计方法学经典的软硬件协同设计方法AnalysisofConstraintsandRequirementsSystemSpecs..HW/SWPartitioningHardwareDescript.SoftwareDescript.HWSynth.andConfigurationInterfaceSynthesisSoftwareGen.&ParameterizationConfigurationModulesHardwareComponentsHW/SWInterfacesSoftwareModulesHW/SWIntegrationandCosimulationIntegratedSystemSystemEvaluationDesignVerification[Rozenblit94]©IEEE1994第2章嵌入式系统设计方法学软硬件协同设计的优势在设计初始阶段就可进行软硬件交互设计和调整Providescontinualverificationthroughoutthedesigncycle(贯穿整个设计周期)SeparateHW/SWdevelopmentpaths(开发路线)

canleadtocostlymodificationsandscheduleslippages(导致代价昂贵的纠错成本和开发进度的下降)关键技术(如可编程逻辑综合技术、器件接口和功能模型描述)的进步使得软硬件交互设计变得简单起来第2章嵌入式系统设计方法学软硬件协同设计技术的现状主要问题:缺乏标准化的表示方法缺乏好的验证和评价方法可能的解决方案:扩展已有的硬件/软件语言工具并应用到不同种类情况扩展形式验证技术并应用到硬件/软件领域基于FPGA的嵌入式系统设计--SOPC设计第2章嵌入式系统设计方法学软硬件协同设计基本步骤HW-SWsysteminvolvesSpecification(设计描述)modeling(设计建模)designspaceexplorationandpartitioningsynthesisandoptimization(综合与优化)Validation(设计验证)implementation(设计实现)第2章嵌入式系统设计方法学软硬件协同设计基本步骤Specification(设计描述)Listthefunctionsofasystemthatdescribethebehaviorofanabstractionclearlywithoutambiguity.Modeling(设计建模)Processofconceptualizingandrefiningthespecifications,andproducingahardwareandsoftwaremodel.第2章嵌入式系统设计方法学软硬件协同设计基本步骤Validation: Processofachievingareasonablelevelofconfidence(置信度)thatthesystemwillworkasdesigned.Takesdifferentflavorsperapplicationdomain(根据应用领域而不同):cosimulationforperformanceandcorrectness(性能与功能的协同仿真)第2章嵌入式系统设计方法学软硬件协同设计基本步骤Implementation: Physicalrealizationofthehardware(throughsynthesis)andofexecutablesoftware(throughcompilation).第2章嵌入式系统设计方法学协同设计中的软硬件划分与调度

(whereandwhen)Ahardware/softwarepartitioningrepresentsaphysicalpartitionofsystemfunctionalityintoapplication-specifichardwareandsoftware.Schedulingistoassignanexecutionstarttimetoeachtaskinaset,wheretasksarelinkedbysomerelations.第2章嵌入式系统设计方法学

嵌入式系统的节能设计

(硬件节能、软件节能)第2章嵌入式系统设计方法学嵌入式系统的节能设计节能计算成为嵌入式系统设计、系统软件重点考虑的基本方面:节能计算包括:硬件体系结构支持在小巧外形尺寸下,如何实现所需电源性能的工艺和技术热管理、降噪、电池管理和功能整合软件支持节能编译操作系统节能策略第2章嵌入式系统设计方法学现状电源管理策略面向PC、笔记本电脑、服务器、通信设备的刀片服务器APM:高级电源管理方案ACPI:高级配置和电源接口根据嵌入式系统模型定制节能技术非常缺乏,甚至在某些方面是空白第2章嵌入式系统设计方法学手持设备电源管理电池寿命不等同于电源管理的成效性能、多媒体系统、数码摄像新增功能增加系统的耗电量缩短电池寿命影响因素CPU功能系统软件中间件管理策略第2章嵌入式系统设计方法学传统手持设备管理策略处理器时钟变慢操作系统转入待机、睡眠状态动态电源管理(DPM)调整内核电压和频率高性能存储器彩色显示器无线接口固化为通用电源管理IC第2章嵌入式系统设计方法学软件节能策略预测什么时候设备的未来使用状况或者使用率“time-out”策略预测特定的时间长度基于GSPN网络和HMM的技术Montavista基于linux通用性强,但是嵌入式系统定制性强,效果不佳第2章嵌入式系统设计方法学能耗测试测试出每条指令的能耗,估计测试程序运行完的总能耗测试出每个函数的能耗,然后利用这些函数作为标准去估计其他函数运行的能耗第2章嵌入式系统设计方法学节能操作系统目的保证操作系统实时性的前提下,完成能耗计算调度算法的节能优化中断处理优化低功耗文件系统CPU电压和频率调节会给实时性能带来了严峻挑战可能造成不稳定“重新锁定”锁相环路和其它动态时钟机制需要时间,造成了很长的等待时间(有时是毫秒级别)锁定期间CPU既不能执行计算操作,又不能响应外部事件(中断)每一软件相应的手机最低电压CPU频率相应设备通过动态的调节CPU的内核频率与内核电压,以及动态的关闭系统的某些设备和调整某些设备的状态第2章嵌入式系统设计方法学外设驱动针对不同功能部件的能耗,进行合理的功耗优化从电池开始,严格和精确地电量测量根据外设特征研究不同的电源管理策略下的驱动现有情况硬件产品有几种状态定义状态提供不同的服务质量和消耗的能量提供各种状态之间的转换接口算法目标实现状态转换的节能策略减少待机能耗人工智能技术的应用通过软件来动态的预测和控制某些部件的开关第2章嵌入式系统设计方法学节能通讯协议栈连接干预节能的传输调度算法缓冲区技术局部性原理与预取低功耗压缩算法第2章嵌入式系统设计方法学节能编译对每条指令的能耗进行测试对函数编译结果的能耗进行估计错误处理代码的能耗设计基于ICE进行函数执行代码统计第2章嵌入式系统设计方法学6车载GPS终端系统简介GPS是指全球定位系统(GlobalPositionSystem)。车载GPS终端是置于机动车内的实时定位装置,它的应用对象是需要定位、调度的车队。车辆可以通过终端和GPS卫星进行实时、准确的定位,并能够通过无线通讯网络上报远程的车辆控制中心系统第2章嵌入式系统设计方法学车载GPS终端系统的设计Ⅰ1.需求分析在对系统进行需求分析时,可以使用用例图进行功能上的需求分析。用例图分角色(Actor)和案例(Case)两部分。对于车载GPS终端系统来说,主要的角色有两个:车辆调度中心用户和车载终端用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论