版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1http:/第第2 2章章 嵌入式系统设计嵌入式系统设计 主讲:本章内容2.1 嵌入式系统的系统级设计方法概述2.2 嵌入式设计流程嵌入式系统设计特点嵌入式系统设计特点l 嵌入式系统特点需要软件和硬件的共同支持 其软件是针对相应的嵌入式硬件开发的,是专用的这使得嵌入式系统设计有别于传统的软件工程方法,在设计时要将硬件和软件综合考虑。2.1 系统设计方法概述系统设计方法概述l 设计方法影响最终的产品,影响产品的上市时间l 对于产品,时间就是金钱,好的设计方法能节省上市时间l 两者常见的设计方法先硬件后软件的设计方法软硬件协同设计 2.1.1先硬件后软件设计方法先硬件后软件设计方法 l 早期的设
2、计方法l 根据复杂程度可分为:针对单片机针对嵌入式处理器l前者相对简单,后者在接口和外围电路上相对复杂些基于先硬件后软件的单片机开发流程流程描述l 包括用户需求分析、选择处理器设计硬件平台、按照设计的硬件平台编写软件、软件测试、系统测试几个阶段。l 串行操作,如果前面过程中出现了问题,可能会导致系统重新设计基于先硬件后软件的处理器开发流程流程描述l 软件一般包含有操作系统,用来管理整个系统的硬件资源,在操作系统之上还有接口驱动及应用程序,用来完成特定的应用需求。 l 选择处理器及硬件平台是非常关键的一步。 先硬件后软件设计方法评价l 优点:简单直观,开发相对容易l 缺点:设计模式需要反复修改、
3、反复试验,设计过程在很大程度上依赖于设计者的经验,设计周期长,在反复修改过程中,常常会在某些方面背离原始设计要求。 软硬件协同设计软硬件协同设计方法l 通过综合分析系统软硬件功能及现有资源,最大限度地挖掘系统软硬件之间的并发性,协同设计软硬件体系结构,以便系统能工作在最佳工作状态。 l 在系统设计的每一步都将硬件与软件一起协同考虑 软硬件协同设计流程流程描述l 系统描述是用一种或多种系统级描述语言对所要设计的嵌入式系统的功能和性能进行全面的描述,建立系统的软硬件模型的过程。l 通过软硬件划分和集成测试,最终形成所需的产品。l 设计过程中软硬件紧密配合。 开发流程的生命周期l 为便于理解从系统的
4、生命周期来讲解嵌入式系统的协同开发过程。l 它与前面给出的协同设计的内容是一致的,只是严格按照嵌入式产品的生命流程来对设计进行划分,整个划分过程显得更加详细具体。从生命周期来看嵌入式系统开发流程 流程描述l 具体可分为系统需求分析、软件与硬件划分、迭代与实现、详细的硬件与软件设计、系统集成、系统测试与发布以及产品维护与升级七个阶段 l 实际的设计过程会需要大量的迭代与优化。2.2嵌入式设计流程嵌入式设计流程 l 按照嵌入式系统的七个生命周期来介绍嵌入式系统的设计流程 l 介绍每个阶段所需完成的工作以及经常使用的工具, 2.2.1系统需求分析系统需求分析 l 需要明确的产品定义,所有与产品相关的
5、人员对产品的认识应该完全一致 l 系统需求分析越明确、大家对产品的认知越统一,就越有利于以后的开发 l 需求定义时应考虑诸多细节问题,越详细越好如何进行l 需要组建系统需求分析小组l 理想小组组成:工程师、客户、市场销售人员l 最好能对产品的各个环节进行详细定义,包括开发工具等。需求分析结果l 形成需求分析表格l 统一产品认识,解决开发中遇到的矛盾l 明确的需求分析是成功产品的保障2.2.2 软硬件划分l 决定问题的哪一部分在硬件中解决,哪一部分放在软件中解决。 l 需要考虑到许多因素,如:价格、性能、标准、市场竞争、所有权等 。l 不能达到理论上最优,寻求折衷的划分方法 。软硬件协同划分工具
6、 l Ptolemy :Berkeley大学开发的异构的模拟环境 在其基础上,研究者们开发了多个软硬件协同设计工具。 l VULCAN:Stanford大学的Gupta和De Micheli等研究者开发。采用贪心算法将可变更为软件实现的部分从硬件描述中划分出来。 软硬件协同划分工具(续)l COSYMA (Co-synthesisforEmbeddedArchitectures) :德国不伦瑞克大学不伦瑞克大学开发的软/硬件协同综合工具,它是针对自己的架构开发,局限性大。l CASTLE(Co-design and Synthesis Tool Environment)德国信息技术国家研究中心
7、系统设计研究所开发,支持软硬件协同设计流程和嵌入式系统的快速模板制作 。软硬件协同划分工具(续)l 还有CodeSign 、Cadence 、SeamlessCVE 、Eagle、Comet2.0 l 协同划分工具是将来设计的一个趋势,但距离普及化还有一定的距离,很多还停留在研究阶段。l 大部分系统只是根据小组以往设计经验,用纸笔、或者填了表格就匆匆完成了划分过程。 实践中的开发方法l 实际项目中,软硬件划分就是找到合适的硬件和软件部分 l 需要一定的开发经验l 按阶段进行介绍硬件平台选择 l 处理器的选型是关键 l 需要考虑处理性能 、技术指标、功耗、成本、软件支持工具 、是否内置调试工具
8、、是否内置调试工具 、相关支持等。l 综合考虑:生产规模 、市场目标 、 软件对硬件的依赖性 、体系结构通用性2软件平台的选择l 软件流程涉及代码编写、交叉编译、交叉链接、下载到目标板和调试等步骤, l 软件平台的选择也涉及操作系统、程序设计语言和集成开发环境三个方面。 操作系统的选择l 实时性 l 内存要求 l 移植的难度 l 提供的开发工具 l 可剪裁性 l 相关支持l 熟悉度程序设计语言的选择 l 通用性 l 可移植性 l 执行效率 l 可维护性 l 其他方面集成开发环境选择 l Keil:最流行开发单片机的软件,现也可用于开发ARM系列处理器l RealView MDK :ARM公司目
9、前最新推出的针对各种嵌入式处理器的软件开发工具。l MPLAB:PIC系列单片机产品的集成开发工具软件 集成开发环境选择(续)l VisualDSP+:针对ADI Blackfin、SHARC和TigerSHARC等处理器易安装易使用的软件开发和调试集成环境。l Xilinx Platform Studio (XPS):支持 PowerPC 硬处理器核与 MicroBlaze 软处理器核设计。l Nios II IDE:Nios II系列嵌入式处理器的基本软件开发工具。 集成开发环境选择(续)l Workbench:采用先进的Eclipse软件框架结构, 使整个系统更加开放和易于扩展。 l I
10、AR EWARM:针对ARM 处理器的集成开发环境。l 各种新兴的集成开发环境软硬件划分总结 l 软硬件划分是一个很难把握的问题 l 协同设计工具是趋势,目前还在实验室阶段,了解其系统划分方法思想很重要。l 实际操作:认真分析系统需求和软硬件的实际情况,给出若干个可供选择的组合,形成一致认同的方案。 2.2.3 迭代与实现l 迭代与实现过程是软硬件划分的最终确定, 是软硬件小组分别独立设计的前一站,它的决定将影响到后续各部分的开发l 目的是把软硬件之间的某些模糊区域清晰化。l 使用的主要工具是体系结构仿真器 体系结构仿真器l 在宿主机上运行并能模拟目标体系结构机器为的一种软件系统。l 可以解释
11、并执行目标体系结构机器上可执行的程序,同时可提供运行时的指令和事件相关记录,以及目标体系结构机器的性能统计参数。l 包括接口仿真,对于系统整体性能研究有重要的意义 常见系统级仿真软件l SimOS仿真器 、PSIM仿真器 、xcopilot仿真器、vmware、virtualPC 、Virtutech Simics 、SkyEye l SkyEye是一个指令级仿真器,可以模拟多种嵌入式开发板,可支持多种CPU指令集,它是一个开源项目。 2.2.4 详细的硬件与软件实现l 软硬件划分及迭代与实现 之后进行的真正设计阶段l 包括:硬件设计软件设计及软硬件的接口设计 硬件设计 l 可选与此处理器芯片
12、相同或接近的成功设计作参考 l 使用数据手册和勘误表 l 使用专业开发工具常见硬件开发工具l PROTEL:20世纪80年代末推出的电路行业的CAD软件,国内普及率很高。l ORCAD :世界上使用最广的EDA软件,由ORCAD公司推出,功能非常强大。l PSPICE:1985年由MICROSIM公司推出。在电路仿真方面功能最为强大,在国内被普遍使用。 常见硬件开发工具(续)l EWB:被称为电子工作平台,是一种广为应用的优秀计算机仿真设计软件。 l WINDRAFT 、 WINBOARD :IVEX公司于1994年推出的电原理图绘制与印制电路板设计软件。 硬件设计流程l 前期准备工作: 数据
13、手册参考电路图接口连接方式l 电路原理图设计 设计方法 设计原则 硬件设计流程(续)l 元器件选型 普遍性原则 高性价比原则 采购方便原则 持续发展原则 可替代原则 向上兼容原则 资源节约原则 硬件设计流程(续)l PCB设计元器件封装制作 l注意封装类型:SMD、BGAl可以从库文件里找PCB布局l 整体美观、空间不重叠l其它指标 硬件设计流程(续)PCB布线 l电源、地线的处理 l数字电路与模拟电路的共地处理 l信号线布在电(地)层上 l大面积导体中连接腿的处理l布线中网络系统的作用 l设计规则检查 l高速电路设计: 传输线效应及其处理办法电路焊接 l选用焊剂l元器件引脚的清洁l合理使用电
14、烙铁 l焊接组件 lBGA等复杂元件焊接方法补充: 传输线效应是由于高速走线所产生的一种现象,会产生反射信号 、延时和时序错误、多次跨越逻辑电平门限错误 、过冲与下冲、串扰 、电磁辐射 等影响电路正常工作的状况。 避免传输线效应的方法包括严格控制关键网线的走线长度、合理规划走线的拓扑结构、抑止电磁干扰 等软件设计 嵌入式软件就是基于嵌入式系统设计的特定软件。可细分成系统软件、支撑软件、应用软件三类,是嵌入式系统的重要组成部分。 呈现明显的层次化 嵌入式软件结构 嵌入式软件结构 l 板级支持包层:主要用来完成底层硬件相关的信息,如驱动程序,加载实时操作系统等功能; l 实时操作系统层:根据特定的
15、需要来设计移植操作系统,添加删除部分组件,添加相应的硬件驱动程序,为上层应用提供系统调用;l 文件系统、GUI以及系统管理层:为应用程序员开发应用程序提供更多更便捷更丰富的API接口;l 应用软件层:用户设计的针对特定应用的应用软件,可以使用底层提供的大量函数。软件设计l 采用分层结构的软件设计使系统清晰明了,使得各层可以独立开展工作。l 各个产品对各部分的侧重应有所不同。l 可以在类似的评估系统上先进行软件开发,使其与硬件开发同步。l 更多考虑系统资源和效率,转变设计观念软硬件接口设计 l 将软件硬件两部分衔接起来,使两部分协调工作。 l 是软件与硬件设计两部分之间的桥梁 ,最重要的工作是沟
16、通软件和硬件, l 不在于实际代码或硬件设计,而是在于硬件与软件两部分之间接口协议的定义及两部分之间参数的传递。 l 这部分工作量是隐性的,在系统设计过程中有时把它归并到了软件设计中, 详细设计过程小结 l 详细设计过程是在软硬件划分及迭代之后开始的全面的硬件及软件设计过程,在此阶段,完成了整个系统的实际设计工作,硬件和软件在此阶段后已经准备完成,接下来就是要进行系统的集成了。 2.2.5 系统集成l 系统集成是个复杂的过程,必须使用特殊的工具和方法来管理其复杂性。 l 嵌入式硬件和软件的集成过程其实也是系统调试与探索的过程 l 现实中却很难达到这样的理想状态,诸多硬件小组及软件小组没考虑到或
17、考虑不周的问题在此阶段都会凸显出来 最小系统测试法l 首先是搭建一个能够运行的最小系统,使用硬件仿真器对最小此系统进行检测,再在确定的系统上一步一步测试外设接口模块。l 目的是把各阶段的不确定因素减少到最小,从而能最快地完成整个集成过程。 集成阶段的问题l 由于系统的复杂性和实时性,各种复杂的问题在集成阶段都有可能出现。l 有些问题没有很好的重复性l 有些问题在特定情况下才会出现l 可以使用建模仿真工具来精准模拟,但软件仿真不是真正地运行系统,不能准确反应真实情况2.2.6 产品测试和发布l 嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失
18、。 l 需要对嵌入式系统进行严格的测试、确认和验证。 嵌入式系统测试l 嵌入式系统测试也叫交叉测试,它与PC机的软件测试有相同之处。 l 需要使用更好的测试方法和工具进行嵌入式和实时软件的测试。嵌入式软件的测试l 嵌入式软件测试分四个阶段上进行:模块测试、集成测试、系统测试、硬件/软件集成测试。 l 两种测试方法:白盒测试与黑盒测试 白盒测试检查程序的内部设计,一般选择最重要的代码进行白盒测试 黑盒测试也称为功能测试,根据软件的用途和外部特征查找软件缺陷,不需要了解程序的内部结构。 嵌入式软件的测试l 目标环境测试和宿主环境测试 l 基于目标的测试消耗较多的经费和时间,而基于宿主的测试代价较小
19、,但毕竟是在模拟环境中进行的。l 两个环境中可以出现不同的软件缺陷,重要的是目标环境和宿主环境的测试内容有所选择。 嵌入式软件的测试工具 l 内存分析工具:软件分析工具硬件分析工具l 性能分析工具:确定哪些例程消耗大部分运行时间,从而可以决定如何优化软件,获得更好的时间性能 引导开发人员查看需要优化的特定函数, 嵌入式软件的测试工具(续)l GUI测试工具:可以作为脚本工具在开发环境中运行测试用例,其功能包括对操作的记录和回放、抓取屏幕显示供以后分析和比较、设置和管理测试过程 l 覆盖分析工具:可以使用代码覆盖分析工具追踪哪些代码被执行过,测试人员对结果数据加以总结,确定哪些代码被执行过,哪些代码被遗漏了。 嵌入式系统测试策略 l 单元测试 :基本都可以在主机环境上进行l 集成测试:可在主机环境上完成,在主机平台上模拟目标环境运行,当然在目标环境上重复测试也是必须的,在此级别上的确认测试将确定一些环境上的问题。l 系统测试和确认测试:所有的系统测试和确认测试必须在目标环境下执行,这关系到嵌入式软件的最终使用。 2.2.7 产品
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届北京市海淀区首都师大附中初三下学期语文试题周测题三含解析
- 浙江省金华市金东区重点达标名校2026年初三年级模拟考试(一)语文试题含解析
- 标准化运营管理制度建设模板全面兼容
- 特色自然景观维护承诺函3篇
- 乡村振兴项目质量保障承诺书4篇范文
- 2026年广东省韶关市名校初三下学期第二次阶段性反馈英语试题含解析
- 供应商资质升级申请确认函(6篇范文)
- 信息资料完备与可靠公开承诺书(7篇)
- 绿色农业智能供应链优化方案
- 企业财务核算标准流程指南
- 醛-亚胺-壳聚糖水凝胶的构筑及性能研究进展
- 无人机行业信息安全培训
- 管理会计学 第10版 课件 第4章 经营预测
- HACCP计划年度评审报告
- 2023年华南师范大学教师招聘考试历年真题库
- 长春版小学一年级语文上册写字表虚宫格写法教学提纲教学课件
- 2023年新改版教科版五年级下册科学全册练习题(一课一练)
- 耳尖放血课件完整版
- GB/T 3292.1-2008纺织品纱线条干不匀试验方法第1部分:电容法
- GB/T 16177-2007公共航空运输服务质量
- GB/T 12149-2017工业循环冷却水和锅炉用水中硅的测定
评论
0/150
提交评论