技术教程嵌入式系统.pptVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
技术教程嵌入式系统.ppt

《嵌入式系统》 硕士研究生课程 第 2 章 南京邮电大学计算机学院 * 第2章 嵌入式系统开发过程 本章主要介绍以下内容: 需求分析 系统设计 系统实现 系统测试 * 2.1 需求分析 分析用户的需求 产品的功能、性能、价格、体积、功耗等 确认用户需求 制订需求文档,对需求进行评估,与用户反复交流之后,最终确认用户的需求 确定硬件和软件 处理器 处理器的MIPS=? 总线吞吐量,处理大量数据时需要考虑 操作系统 实时?非实时?还是Monitor? 商用操作系统?还是免费操作系统? * 编程语言 C、汇编、Java、嵌入式C++ 第三方软件或函数 编译器选择商用产品(优化好、效率高、但价格贵);免费工具(如GNU系列工具)编译效率不高 第三方硬件的选择 选择商品化的硬件模块可缩短开发周期(但成本较高);数量较大的产品,尽量自行设计 开发板、评估板的选择可加快研发进度 确定项目的约束条件 如工期限制、经费预算、硬件软件使用限制等 * 2.2 系统设计 审查分析资料 体系结构设计 需考虑系统的实时性、性能、成本、尺寸、功耗等因素 单处理器?多处理器?DSP? 硬件软件划分(HardwareSoftware partitioning) 决定哪些功能用硬件实现、哪些功能用软件实现 设计次序 先设计硬件 软硬件同时设计 先设计软件 * 硬件设计 采用Top-Down方法。将硬件系统分成各个模块分别设计(如CPU模块、存储器模块、以太网模块、串行并行通信模块、DSP模块等)。并进行各个模块I/O端口地址、存储器单元分配、中断和DMA等资源的统一分配 软件设计 采用Top-Down设计方法。将软件分解成子系统或模块(如LCD模块、UART模块、文件系统、网络等) 定义软件接口(API函数调用格式) 规定出错处理方案 设计看门狗(WatchDog)程序,以提高系统可靠性 * 典型的嵌入式系统设计工具 协同设计工具 POLIS:交互式嵌入式系统的软硬件设计框架,适合于小型控制系统的设计 COSYMA:优化软硬件划分的平台 Chinook:支持以控制为主的多处理器/多专用集成电路结构的嵌入式系统设计。系统描述是用Verilog语言来完成,包括系统的行为描述和系统目标架构的形成 协同模拟工具 PTOLEMY:混合使用面向对象内核的计算模型;可用于模拟多种不同的系统 TSS:模拟复杂硬件系统的工具,模块用C语言编写 * 2.3 系统实现 选择开发平台 选择具体的处理器产品 考虑因素:处理器速度(用MIPS衡量);熟悉程度;片上I/O资源是否满足要求;操作系统是否支持;是否内置调试功能;支持服务信任度等 选择硬件部件 自己设计还是选择第三方的产品(如PC104总线的各种板卡、嵌入式模块等) 选择一般原则:数量大的产品自行研制、数量少的产品可考虑购买现成的板卡 * 选择操作系统 实时系统?非实时系统?有无人机界面要求?无需操作系统? 操作系统的移植难度 对内存的要求 操作系统提供的服务是否满足要求?(TCP/IP协议栈、文件系统、CDROM、存储卡支持等) 是否包括目标硬件设备驱动程序 是否具有可裁剪性 选择编程语言 大部分系统使用C、C++、Java 有严格时间要求和访问硬件部分使用汇编语言 可视化应用使用Embedded Visual Tools * 评估板的选择 具有设计参考价值,使系统的硬件、软件开发同时进行,可 加快开发进度,降低开发风险。 编写板级支持包BSP代码 与硬件结构有关。不同操作系统供应商会提供BSP的开发方 法和开发模板。 软件开发过程 开发过程 建立交叉开发环境(如gcc、ARM SDT、Tornado等) 交叉编译和链接 重定位和下载 联机调试 * 在主机系统上对软件进行仿真验证 在目标系统上运行,测试软件功能 代码优化 清除无用代码 清除调试代码 浮点运算尽量使用浮点处理器 访问最频繁的变量使用寄存器型或自动变量 耗时大的函数使用汇编语言编写 编译时设置较高的优先级(通常0~3级,3级最高) * 2.4 系统测试 硬件测试 部件功能测试、可靠性测试、电磁兼容性测试、性能指标测试(如通信系统的误码率)等 软件测试 功能测试(黑盒测试) 输入测试数据,观察输出是否为预期结果。 极限情况测试(如使输入通道、内存缓冲区、磁盘控制器等超载) 边界测试(输入特定输入范围边界的值) 异常测试(测试触发异常模式) 随机测试(如测试用户界面代码的健壮性) * 覆盖测试(白盒测试) 尽可能使每条代码语句、判定点或判定路径都最少被执行一次 语句测试:选择的测试实例至少执行一次程序中的每条语句 判定或分支覆盖:选择的测试实例使每个分支(包括真与假分支)至少运行一次 条件覆盖:选

您可能关注的文档

文档评论(0)

zhangningclb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档