嵌入式调试技术习题.ppt
《嵌入式调试技术习题.ppt》由会员分享,可在线阅读,更多相关《嵌入式调试技术习题.ppt(54页珍藏版)》请在三一办公上搜索。
1、嵌入式系统原理与开发,第4讲南京大学计算机系 俞建新主讲,2008年春季,2008年9月18日,南京大学计算机系,2,第3章 嵌入式微处理器技术基础,本章主要介绍以下内容:嵌入式微处理器典型技术主流嵌入式微处理器嵌入式处理器的调试技术边界扫描测试技术JTAG,2008年9月18日,南京大学计算机系,3,3.3 嵌入式系统调试技术,指令集模拟器ROM仿真器实时在线仿真片上调试器与背景调试模式,基于Angle的调试方案边界扫描测试技术和JTAG接口概述跟踪接口ETMNexus调试标准半主机调试方式,2008年9月18日,南京大学计算机系,4,嵌入式系统调试技术概貌,嵌入式计算机调试基本结构主机目标
2、机结构主机常常是PC平台原因:运算能力相对较弱存储能力和显示能力较小数据吞吐率较小很难在目标程序运行的计算设备上直接进行硬件软件调试。,2008年9月18日,南京大学计算机系,5,主机和目标机之间调试信道,主机往往和目标机的体系结构不同。因此,需要有通信转换器对调试信息进行转换。,2008年9月18日,南京大学计算机系,6,3.3.1 指令集模拟器,指令集模拟器ISS,Instruction Set Simulator在一台计算机上模拟另外一台计算机上目标程序(机器指令)运行过程的软件工具有时也叫做软仿真器嵌入式系统开发的不可或缺工具,2008年9月18日,南京大学计算机系,7,指令集模拟器的
3、结构,指令集模拟器是一个纯软件系统内部有一个反映目标处理器硬件的数据结构以时序状态机的方式工作可以根据目标机指令集定义执行目标指令按照实现方法的不同指令集模拟器分为解释型编译型,2008年9月18日,南京大学计算机系,8,指令集模拟器的运行,指令集模拟器的操作界面与IDE类似模仿目标机的取指、译码和执行操作将中间执行结果或者最终执行结果存入目标机映像数据结构调试人员可以观察目标机映像寄存器或者映像存储器的单元,了解目标代码的执行结果,2008年9月18日,南京大学计算机系,9,指令集模拟器主要用途,指令集模拟器主要用在以下几种场合:没有目标机开发板有目标机开发板,但使用目标机开发板成本较高调试
4、的程序模块不需要在实际开发板上执行,例如学习ARM汇编语言程序模块代码的先行调试,以加快调试速度,2008年9月18日,南京大学计算机系,10,流行的ARM指令集模拟器,有两种比较流行的指令集模拟器:ARMulatorSkyEye还有一些研究中的ARM指令集模拟器,2008年9月18日,南京大学计算机系,11,ARM公司推出的ARMulator,ARMulator是业界著名的指令集仿真器运行在PC平台上ARM体系结构的指令集模拟器集成在SDT 2.51和ADS 1.2上的插件由四个部分组成:处理器核模型、存储器接口、处理器接口、操作系统接口。,2008年9月18日,南京大学计算机系,12,指令
5、模拟精度的级别,指令模拟精度有三个级别指令级周期级时序(节拍)级ARMulator完全实现了指令级和周期级模拟精度,但是没有完全实现时序级精度。,2008年9月18日,南京大学计算机系,13,指令集模拟器ARMulator对ARM程序运行进行指令周期数统计的结果快照,2008年9月18日,南京大学计算机系,14,Armulator的指令周期统计结果说明,2008年9月18日,南京大学计算机系,15,SkyEye,一个ARM体系结构的嵌入式仿真和集成开发环境国内开放源码的自由软件项目运行环境:Linux平台和Windows的Cygwin能够仿真的CPU包括:不带MMU的Atmel 91x40带M
6、MU的ARM720T等基于ARM7TDMI的内核SkyEye还能够模拟其它一些硬件外设,如串口、网络芯片、内存、时钟等,2008年9月18日,南京大学计算机系,16,3.3.2 ROM仿真器,嵌入式系统的程序存储器为ROM时,如果调试需要修改代码、设置断点及更新程序代码,就需要进行离线编程。离线编程是一个费时间的工作,用RAM替代ROM可以解决这个问题ROM仿真器用RAM以及附加电路制成的替代ROM进行离线编程的工具MCS-51单片机研发过程中常常使用ROM仿真工具,2008年9月18日,南京大学计算机系,17,ROM仿真器照片,支持各种51系列芯片的JY-E2300仿真器照片,2008年9月
7、18日,南京大学计算机系,18,3.3.3 实时在线仿真,实时在线仿真ICE,In-Circuit Emulator目前最为有效的调试嵌入式系统的手段通过ICE的实际执行,开发者可以排除人们难以发现的隐藏在设计方案中的逻辑错误。ICE的另外一个主要功能是在应用系统中仿真微控制器的实际执行优点是功能强大,软硬件均可以做到完全实时在线调试;缺点是价格昂贵。,2008年9月18日,南京大学计算机系,19,3.3.4 片上调试技术,片上调试技术OCD,On-Chip Debugging嵌入式调试技术中运用最广泛的一种片上调试是在CPU的内部嵌入额外的控制模块,即片上调试器;使得CPU的工作模式分为正常
8、模式和调试模式。,2008年9月18日,南京大学计算机系,20,常用的片上调试技术,目前常用的片上调试技术主要有三种:背景调试模式BDM,Background Debug ModeJTAGIEEE 1149.1NexusIEEE-5001 ISTO,2008年9月18日,南京大学计算机系,21,背景调试模式,背景调试模式Motorola公司专有的片上调试器。Motorola公司是第一个把片上调试器集成在处理器内核中的嵌入式微处理器厂商。BDM首先在68300系列处理器上实现现在在其他微控制器上得到应用,2008年9月18日,南京大学计算机系,22,BDM与ICE的区别,传统ICE调试时,使用I
9、CE中的CPU来取代目标板中的CPU,目标板和ICE之间使用多芯扁平电缆连接。而ICE在使用时一般还需要与主机(一般是PC)连接。在BDM调试方式下嵌入式处理器被停机,各种调试命令可以被发送到处理器中访问内存和寄存器。因此,满足BDM调试的微处理器内部已经包含了用于调试的微码,调试时仿真器软件和目标板上CPU的调试微码通信,目标板上的CPU无需取出。,2008年9月18日,南京大学计算机系,23,BDM调试器与主机和目标开发板之间的连接,2008年9月18日,南京大学计算机系,24,3.3.5 基于Angel的调试方案,Angel是ARM公司的调试监控程序也称为调试代理由多个程序部件组成与传统
10、调试监控程序相类似驻留在目标机上Angel接收主机上发送过来的调试命令,执行指定的调试操作,并将调试结果反馈回主机。适用于各种ARM硬件平台。,2008年9月18日,南京大学计算机系,25,Angel的功能,Debug capability,including memory inspection,image download and execution,breakpointing and single stepCPU and board startup and basic exception handlingAfull ANSI C library,usingsemihostingto pro
11、vide services from the host which are not available on the targetAfull source distribution,allowing developers a kickstart in developing standalone applications,2008年9月18日,南京大学计算机系,26,有关Angel的主要技术文档,DocumentationThe main documentation on Angel is provided in the manuals shipped with the ARM SDT 2.50
12、.Communication between the debugger and the target,over serial/parallel or Ethernet links,uses a protocol called the Angel Debug Protocol(ADP)defined in the following 2 documents supplied with SDT 2.50 in PDF form:Angel Debug Protocol Specification(DUI 0052C)Angel Debug Protocol Messages Specificati
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 调试 技术 习题
链接地址:https://www.31ppt.com/p-6415044.html