版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 嵌入式系统设计方法,2006年4月21日,嵌入式系统,主要内容,嵌入式系统面临的挑战 嵌入式系统的设计 嵌入式系统软硬件协同设计 嵌入式系统节能设计,IEEE/ACM 课程大纲关于计算机学科主领域的划分,嵌入式系统,嵌入式系统: 以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗诸方面严格要求的专用计算机系统。,嵌入式系统特点,嵌入式系统特点: 软件硬件协同并行开发 多种多样的微处理器 实时操作系统的多样性 (RTOS) 与台式机相比,可利用系统资源不足 应用支持很少 要求特殊的开发工具 调试很困难 软件硬件的鲁棒性(健壮性,Robust),嵌入式
2、系统要解决的主要问题,需要用什么样的系统结构来实现? 如何满足时限要求,如何处理多项功能在时间上的协调一致关系? 如何保证系统可靠地工作? 如何满足系统接口要求,嵌入式应用直接和系统接口输入输出信息? 如何降低系统的功耗? 如何使系统可升级?,嵌入式系统设计的挑战性问题,软硬件协同设计 功耗的优化设计 嵌入式操作系统 开发环境 成本和开发周期 代码优化 高效的输入和输出 测试环境,嵌入式系统软件技术面临的几大问题,嵌入式软件全生命周期开发工具链 硬件与软件的Co-Design: Verilog + C = ? 驱动程序的设计和生成技术(嵌入式软件开发中最令人头疼的问题) 嵌入式软件的可靠性问题
3、: 正确性验证技术、测试技术、调试技术等(可靠性问题是嵌入式软件开发的基本问题) 可重构计算(Reconfigurable Computing)技术 可构件化的嵌入式实时操作系统及其开发环境,嵌入式系统的设计,方法,工具,设计流程自顶向下或自底向上设计,自顶向下设计,自底向上设计,需求分析,作用 使用户和设计者有效交流、沟通,明确设计目标 设计者 设计什么?有哪些要求? 用户 将得到的系统是什么样的? 目标 形成需求文档 内容 功能性需求 做什么? 输入,输出,功能, 非功能性需求 其他属性 可靠性,速度,功耗, 成本,大小,重量,设计时间, ,评价标准,正确性 无二义性 完整性 可检验性 一
4、致性 可修改性 可追踪性,需求分析的描述,自然语言 需求说明书 需求分析表 形式化描述 用例图等 DOORS,例:GPS移动地图的需求,规格说明,规格说明与需求的比较 需求的提炼 是可用来创建体系结构的关于系统的更详尽、更精确、更一致的描述 目标 形成规格说明书 内容 包含系统体系结构设计的足够信息,规格说明书的描述,自然语言 形式化描述 UML RSML SDL,规格说明,需求的精确描述 描述明确,可理解 UML (Unified Modeling Language) 统一建模语言是可视化的设计说明语言 统一描述系统的硬件和软件 UML 可对系统的功能建模 可自动产生实际设计的HDL 或C+
5、 代码,UML的应用,I-Logix公司的Rhapsody系列产品 基于统一建模语言UML的可视化编程环境 把UML各类视图映射为具体目标机程序语言 用于复杂实时嵌入式应用软件从分析、设计一直到代码实现和软件测试的开发过程 NASA的火星探路者航天器就是运用Rhapsody在VxWorks上开发应用程序。,系统结构设计,系统如何实现设计说明书描述的功能 基于组件的系统结构 软件/硬件划分 嵌入式系统中软件和硬件协同完成系统的功能 软件硬件划分通常由速度、灵活性以及开销来决策,硬件 单片机, X86, PowerPC, ARM, MIPS,板级支持程序,嵌入式操作系统,应用软件,监控程序,嵌入式
6、计算机系统基本结构,嵌入式系统组成,系统结构设计,系统结构设计,作用 实现系统的蓝图,系统整体结构的一个计划 目标 形成结构设计文档 内容 系统分析 系统软硬件整体结构的设计 软硬件划分 标准构件和自行设计构件的确定,评价标准,有弹性 简单 可实现 层次清晰 功能分布平衡 平衡技术和经济约束 满足功能需求和非功能需求 可重用,系统结构的描述,非形式化方式 自然语言 结构框图 形式化方法 UML建模,系统结构的设计过程及方法,结构化设计方法 以算法为中心,从处理到处理的数据流 从输入、输出入手,根据操作和数据流,形成比较粗的系统大框架; 然后逐步细化框架内的每个部分,进一步确定内部模块的及模块之
7、间的关系 设计过程应该是逐步细化和逐步完善的过程 面向对象的方法 以类及交互模式为中心,系统软件结构的设计,结构化方法(SA/SD) 面向对象的方法(OOA/OOD) UML建模,结构设计的验证,结构设计的正确性非常关键 详细设计和实现的基础,对开发周期、成本有很大影响 验证所关心的问题 结构设计是否满足功能、性能要求 能否实现 验证方法 形式化方法 仿真 系统结构 软件结构 硬件结构 其他方法 如基于开发板的原型系统,系统引入错误和修改错误开销分布,引入错误数目,修改错误开销,开发周期,系统结构 设计,软硬件 详细设计,软硬件 实现,软硬件的划分,嵌入式系统的设计涉及硬件与软件部件,设计中必
8、须决定什么功能由硬件实现,什么功能由软件实现。 硬件和软件具有双重性 软硬件变动对系统的决策造成影响 划分和选择需要考虑多种因素 硬件和软件的双重性是划分决策的前提,通常由软件实现的部分,操作系统功能 任务调度 资源管理 设备驱动 协议栈 TCPIP 应用软件框架 除基本系统、物理接口、基本逻辑电路,许多由硬件实现的功能都可以由软件实现。,双重性部分,算法 加密解密 编码解码 压缩解压 数学运算 浮点运算, FFT, ,标准构件和自行设计构件,构件的实现 选择标准 自行设计 标准构件 ?现成构件 已经产品化 形成规模生产 标准构件 自行设计构件 用户系统 构件包括了硬件构件和软件构件 构件本身
9、可以是层次性的,可以由子构件组成,标准硬构件,硬构件的形式: IC:集成电路 PCB:印刷电路板 IP:Intellectual Property 标准 IC CPU, DSP, RAM, ROM, 接口控制器, ASIC, 标准 IP CPU核, 标准模块 GPRS模块,GSM模块,蓝牙模块, 显示模块, 标准计算平台 基于PC104的嵌入式计算机 基于Compact PCI的嵌入式计算机 SOC,标准软构件,OS / RTOS 协议栈 TCP/IP 路由协议 H.323 图形开发包 VxWorks的ZINK 驱动程序,自研硬构件,内容 逻辑电路,专用加速器, 实现方式 PCB: IC:PL
10、D FPGA ASIC, EDA设计工具 板级: 原理图设计工具 PCB设计工具 IC 硬件描述语言: VHDL,Verilog 原理图描述工具 综合仿真工具 布线器, ,自研软构件,BSP 驱动程序 应用程序 ,软硬件技术对系统结构的影响,硬软件设计的趋势融合、渗透 硬件设计的软件化 VHDL, Verilog HANDL-C 软件实现的硬件化 各种算法的ASIC 对系统设计的影响协同设计 增加灵活性 增加了风险,嵌入式系统设计者要求,懂得系统的整个构架 详细了解硬件的细节 软件设计满足: 实时要求 低功耗 代码量小 详细了解领域知识,嵌入式系统软硬件协同设计,软硬件协同设计,软硬件协同设计
11、,硬件设计工具(EDA工具) 系统级设计工具 Cadence的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 ex
12、ploiting the trade-offs between hardware and software in a system through their concurrent design 主要概念 Concurrent(并发): hardware and software developed at the same time on parallel paths Integrated(一体化): interaction between hardware and software developments to produce designs that meet performance c
13、riteria and functional specifications,嵌入式系统快速原型设计过程,嵌入式系统快速原型开发的基本要素,系统定义(需求分析) 软硬件划分 结构规划 处理器类型, 软硬件之间的接口类型, 等. 划分目的 满足系统速度,延迟, 体积,成本等方面的要求. 划分策略 - high level partitioning by hand, automated partitioning using various techniques, etc. 调度 Operation scheduling in hardware Instruction scheduling in co
14、mpilers Process scheduling in operating systems 软硬件设计过程中的建模,传统的嵌入式系统设计模型,传统的嵌入式系统设计过程,传统软硬件设计过程的基本特征: 系统在一开始就被划分为软件和硬件两大部分 软件和硬件独立进行开发设计 “Hardware first” approach often adopted 隐含的一些问题: 软硬件之间的交互受到很大限制 软硬件之间的相互性能影响很难评估 系统集成相对滞后,NRE较大 因此: Poor quality designs(设计质量差) Costly modifications(设计修改难) Schedul
15、e slippages(研制周期不能有效保障),传统设计过程中的尖锐矛盾,随着设计复杂程度的提高,软硬件设计中的一些错误将使开发过程付出昂贵的代价 “Hardware first” approach often compounds(混合) software cost because software must compensate for(补偿) hardware inadequacies(不充分),软硬件设计过程发展方向协同设计,Franke91,Integrated Modeling Substrate(一体化建模底层), IEEE 1991,嵌入式软件的开发过程(瀑布模型),Requir
16、ement Analysis,Software Design,Coding,Testing,Release,软硬件协同设计的基本需求,统一的软硬件描述方式 软硬件支持统一的设计和分析工具(技术) 允许在一个集成环境中仿真(评估)系统软硬件设计 支持系统任务在软件和硬件设计之间的相互移植 交互式软硬件划分技术 允许多个不同的软硬件划分设计进行仿真和比较 辅助最优系统实现方式决策 将软硬件划分应用到模块设计,以便最佳地实现系统的设计指标。Partitioning applied to modules to best meet design criteria (功能和性能目标),软硬件协同设计的基本
17、需求 (续),完整的软硬件模型基础 支持在设计过程中的几个阶段的综合评价 支持软硬件逐步的开发和集成 正确的验证方法 确保系统设计达到的目标要求,典型的软硬件协同设计过程,经典的软硬件协同设计方法,Analysis of Constraints and Requirements,System Specs.,HW/SW Partitioning,Hardware Descript.,Software Descript.,HW Synth. and Configuration,Interface Synthesis,Software Gen. & Parameterization,Configur
18、ation Modules,Hardware Components,HW/SW Interfaces,Software Modules,HW/SW Integration and Cosimulation,Integrated System,System Evaluation,Design Verification,Rozenblit94, IEEE 1994,软硬件协同设计的优势,在设计初始阶段就可进行软硬件交互设计和调整 Provides continual verification throughout the design cycle(贯穿整个设计周期) Separate HW/SW
19、development paths(开发路线) can lead to costly modifications and schedule slippages(导致代价昂贵的纠错成本和开发进度的下降) 关键技术(如可编程逻辑综合技术、器件接口和功能模型描述)的进步使得软硬件交互设计变得简单起来,软硬件协同设计技术的现状,主要问题: 缺乏标准化的表示方法 缺乏好的验证和评价方法 可能的解决方案: 扩展已有的硬件/软件语言工具并应用到不同种类情况 扩展形式验证技术并应用到硬件/软件领域 基于FPGA的嵌入式系统设计SOPC设计,软硬件协同设计基本步骤,HW-SW system involves S
20、pecification(设计描述) modeling (设计建模) design space exploration and partitioning synthesis and optimization(综合与优化) Validation(设计验证) implementation (设计实现),软硬件协同设计基本步骤,Specification(设计描述) List the functions of a system that describe the behavior of an abstraction clearly with out ambiguity. Modeling(设计建模)
21、 Process of conceptualizing and refining the specifications, and 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
22、for performance and correctness(性能与功能的协同仿真),软硬件协同设计基本步骤,Implementation: 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
23、into application-specific hardware and software. Scheduling is to assign an execution start time to each task in a set, where tasks are linked by some relations.,嵌入式系统的节能设计 (硬件节能、软件节能),嵌入式系统的节能设计,节能计算成为嵌入式系统设计、系统软件重点考虑的基本方面: 节能计算包括: 硬件体系结构支持 在小巧外形尺寸下,如何实现所需电源性能的工艺和技术 热管理、降噪、电池管理和功能整合 软件支持 节能编译 操作系统 节能策略,现状,电源管理策略 面向PC、笔记本电脑、服务器、通信设备的刀片服务器 APM:高级电源管理方案 ACPI:高级配置和电源接口 根据嵌入式系统模型定制节能技术非常缺乏,甚至在某些方面是空白,手持设备电源管理,电池寿命不等同于电源管理的成效 性能、多媒体系统、数码摄像 新增功能增加系统的耗电量 缩短电池寿命 影响因素 CPU 功能 系统软
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026河南郑州巩义市产业投资发展有限公司招聘副总经理1人备考题库及答案详解一套
- 2026新疆克州柔性引进紧缺人才招募82人备考题库带答案详解(达标题)
- 2026山东济南市中心医院招聘卫生高级人才(控制总量)10人备考题库及完整答案详解
- 2026清华大学出版社校园招聘备考题库带答案详解(轻巧夺冠)
- 2026中共北京市丰台区委党校面向应届毕业生招聘2人备考题库附答案详解(精练)
- 2026安徽合肥热电集团春季招聘25人备考题库及参考答案详解(研优卷)
- 2026海南海口市北京师范大学海口附属学校招聘42人备考题库带答案详解(综合卷)
- 2026湖南长沙市雨花区育新第三小学春季实习教师招聘备考题库含答案详解ab卷
- 项目六:机器视觉
- 麻纺企业环保处理细则
- 2025年体育教师专业知识考试试题及答案
- 自治区审读工作制度
- 2026湖南省博物馆编外工作人员公开招聘笔试模拟试题及答案解析
- 2026年潍坊市招商发展集团有限公司公开招聘(12名)考试参考试题及答案解析
- DB44-T 2814-2026 城镇燃气用户端设施安全技术标准
- 河南省高职单招职业适应性测试考试试题及答案解析
- 水电管线集成暗槽明装施工工法
- 2026清远鸡行业分析报告
- 四川乐山峨边彝族自治县县属国企招聘笔试题库2026
- 湖南省医疗保险“双通道”单行支付管理药品使用申请表2026
- 矿山井下安全培训考试题及答案
评论
0/150
提交评论