第9讲 嵌入式系统的测试与调试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ICE)是嵌入式系统领域使用得最 多的调试器之一。个人认为对ICE 最恰当的定义就是:在线仿真器是 一个用来设计其他计算机系统的计
算机,它代替了物理目标机上的处 理器或MCU,其表现与被代替的目 标机处理器完全一样,但是它允许 用户查看处理器内部的数据或代码
并控制CPU的运行。 比较常见于单片机调试中
内存分析工具 性能分析工具 GUI测试工具 覆盖分析工具
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(2)
嵌入式软件调试工具工具和种类很多,开发过程 不可能一帆风顺,难免进行“返工”,严格意义上 讲:硬件调、测工具和软件调、测工具是没有明 显的界限的。
双实科技
9.3.1 基于硬件的测、调试工具(3)
LED 除了看到LED在代码某个点
处开始发光或者闪烁所带来 的提示之外,你还可以使用 长或者短闪烁来表示大量的 错误和状态报告 。
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.1 基于硬件的测、调试工具(4)
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
第9讲 嵌入式系统的测试与调试
9.1 引言 9.2 嵌入式系统测试和调试的特点 9.3 测试与调试工具 9.4 测试与调试方法 9.5 小结 9.6 实验
Copyright © 2003-2007 SinoSys. All Rights Reserved
嵌入式软件调试工具
在线仿真器 片上调试器 ROM监视器 JTAG
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(3)
嵌入式软件调试工具 在线仿真器 在线仿真器(In-Circuit Emulators,
由于主机和目标机往往运行着不同的操作系统,而且处理器的体系 结构也彼此不同,这就提高了嵌入式开发的复杂性。 总的来说,嵌 入式开发所面临的问题主要表现在以下几个方面: 涉及多种CPU及多种OS 开发工具种类繁多 对目标系统的观察和控制
Copyright © 2003-2007 SinoSys. All Rights Reserved
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(5)
嵌入式软件调试工具 ROM监视器 所谓ROM监视器就是指一段驻留在目标机的ROM或Flash
中的小程序,它可以在开发过程中辅助用户测试与调试所 编写的嵌入式程序。 它可以完成以下功能
模拟式
双实科技
9.3.1 基于硬件的测、调试工具(5)
示波器 在嵌入式系统的板级硬件设
计过程中,功能最多但也是 最原始的工具就是示波器 (Oscil-loscope)。它几乎可以 做任何事情。
例如:查看目标机与外部世 界的交互过程,监视目标板 内部电路上的信号,查看总 线上的时序关系等等。
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(1)
嵌入式软件调试工具
在线仿真器 片上调试器 ROM监视器 JTAG
ARM处理器体系的调试方法
JTAG调试 GDB调试
嵌入式软件的调、测试工具
数字式
Copyright © 2003-2007 SinoSys. All Rights Reserved双实科技ຫໍສະໝຸດ .3.1 基于硬件的测、调试工具(6)
逻辑分析仪 逻辑分析仪是一种类似于示波
器的波形测试设备,它可以监 测硬件电路工作时的逻辑电平 (高或低),并加以存储,用图 形的方式直观地表达出来,便 于用户检测,分析电路设计(硬件 设计和软件设计) 中的错误,逻 辑分析仪是设计中不可缺少的 设备,通过它,可以迅速地定 位错误,解决问题,达到事半 功倍的效果。
Copyright © 2003-2007 SinoSys. All Rights Reserved
JTAG
双实科技
9.3.2 基于软件的测、调试工具(7)
ARM处理器体系的调试方法 JTAG调试连接方法
JTAG连接示意图
Copyright © 2003-2007 SinoSys. All Rights Reserved
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.1 基于硬件的测、调试工具(7)
原则,不要节约 不要在高质量的调试工具上节约。尽管这些基本
的工具都是极其有用的,但是更加昂贵和综合的 工具如果能够节省你数周昂贵的调试和工程努 力,那么它们就总是物有所值的。
嵌入式软件调试工具 JTAG JATG和BDM比较类似,也是片上仿真调试手段之一,但是它是由早期的检
测标准发展而来。IEEE149.1标准中规定对应于数字集成电路的每个引脚都 设有一个移位寄存单元,称为边界扫描单元BSC(Boundary Sean Cell), 它 将JTAG电路与内核逻辑电路联系起来,同时隔离内核逻辑电路和芯片引脚。 属于片上调试器 的一种,但是比 较特殊,所以单 独拿出来讲解。
用于辅助嵌入式软件测试的工具很多,下面对几类比较有 用的有关嵌入式软件的测试工具加以介绍和分析。
内存分析工具
性能分析工具
GUI测试工具
覆盖分析工具
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(9)
嵌入式软件的调、测试工具
软件测试的目的是保证软件满足需求规格说明。系统失效 是系统没有满足一个或多个正式需求规范中所要求的需求 项。嵌入式软件有其特殊的失效判定准则,但是,嵌入式 软件测试的目的与非嵌入式软件是相同的。
显示和修改系统内存中的当前内容。 显示和修改系统微处理器的寄存器内容。 具有简单的软件断点功能,包括在用户程序中设置断点并运行
用户程序直到断点处也能单步运行用户应用程序。
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(6)
基于ARM的嵌入式系统 设计与实现
Design and Implementation of ARM Based Embedded Systems
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
基于ARM的嵌入式系统设计与实现
第1讲 嵌入式系统基础 第2讲 基于ARM的板级嵌入式系统硬件平台 第3讲 从软件开发的角度看ARM硬件平台 第4讲 板级嵌入式软件开发与运行环境 第5讲 基于ARM的硬件系统的启动及初始化 第6讲 嵌入式操作系统移植和使用 第7讲 板级嵌入式设备驱动程序 第8讲 嵌入式实时多任务应用软件 第9讲 嵌入式系统的测试与调试 第10讲 嵌入式系统的优化
双实科技
9.1 引言
通常嵌入式系统对可靠性的要求比较高 嵌入式系统失效可能会导致灾难性的后果 嵌入式系统应进行严格的测试、确认和验证
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.2 嵌入式系统测试和调试的特点(1)
嵌入式软件开发有别于桌面软件系统开发的一个显著的特点,是它 一般需要一个交叉编译和调试环境,即编辑和编译软件在主机上进 行(如在PC机的Windows操作系统下),编译好的软件需要下载到目 标机上运行,主机和目标机建立起通讯连接,并传输调试命令和数 据。
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.1 基于硬件的测、调试工具(2)
万用表 据不完全统计,在嵌入式
硬件设计初期,有一半以 上的错误竟然是用小小的 万用表检测出来的 。
Copyright © 2003-2007 SinoSys. All Rights Reserved
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.1 基于硬件的测、调试工具(1)
嵌入式系统的开发过程是:先硬件,后软件;测试和调试 的顺序也应该是先硬件,后软件。所以我们的讲解就按照 这个顺序展开。
基于硬件的测、调试工具 万用表 发光二极管 示波器 逻辑分析仪 原则,不要节约
双实科技
9.3.2 基于软件的测、调试工具(8)
ARM处理器体系的调试方法 GDB调试 在Linux开发环境下开发嵌入式系统具有一定的优势,但是毕竟Linux和
windows是不同的操作平台,嵌入式开发中,宿主机的操作系统就非常重 要。 以下是 gdb 所提供的一些功能: 它使你能监视程序中变量的值。 它使你设置断点以使程序在指定的代码行上停止执行。 它使你能一行行的执行你的代码。 当gdb被适当的集成到某个嵌入式系统中的时候,它的远程调试功能允许设计 人员一步一步的调试程序代码、设置断点、检验内存,并且同目标交换信 息。 gdb在嵌入式领域的功能的具体实现过程如下:当调试一个远端目标设备时, gdb依靠了一个调试stub来完成其功能。调试stub即是嵌入式系统中一小段代 码,它提供了运行gdb的宿主机和所调试的应用程序间的一个媒介。
示波器 示波器可能是基本调试
辅助工具中最强大的一个, 而且它不仅仅只能够用于 调试硬件。一个基本的模拟 示波器就足够了,但是有数 字示波器会更好。 示波器能够让你看到你的程 序对外部端口和外设的访问, 并能够监测软件的活动。
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.2 嵌入式系统测试和调试的特点(2)
有嵌入式系统开发经验的工作人员都知道,嵌入式系统中 调试和测试这两个概念其实没有什么严格的界限,有时候 调试和测试过程是同时进行的。如果测试出现问题,又立 即进入了调试。
现在许多大型的嵌入式厂商都开始将软件调试测试工具集 成到一起。更有甚者可能将软件和硬件的调试和测试工具 都集成到了一起。
从交叉调试的技术实现途径以及它的应用情景两个角度 看,它通常可以分为“硬件级调试工具及技术”和“源码级软 件调试工具技术”两大类
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3 测试与调试工具
9.3.1 基于硬件的测、调试工具 9.3.2 基于软件的侧、调试工具
在线仿真器
Copyright © 2003-2007 SinoSys. All Rights Reserved
双实科技
9.3.2 基于软件的测、调试工具(4)
嵌入式软件调试工具 片上调试器 随着现代的微处理器封装越来
越表贴化,仿真器探头的实现 也就越来越困难。 为了实现主机与目标机处理器 的片上调试逻辑之间的连接, 可以用一块简单的信号转换电 路板来匹配主机通信接口(例如 RS—232串口和并口)与目标机 CPU的串行调试接口。 与ICE或逻辑分析仪相比,片上 调试器不存在任何因CPU封装或 CPU速度而带来的问题。CPU与 调试器之间的连接问题也不存在,因为调试器只占用几根专用的CPU引脚。通过片上调 试逻辑实现的运行控制,可以对目标机CPU进行设置断点、单步执行以及资源读/写访 问等绝大多数的基本调试活动。
相关文档
最新文档