嵌入式调试技术习题.ppt
《嵌入式调试技术习题.ppt》由会员分享,可在线阅读,更多相关《嵌入式调试技术习题.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统原理与开发嵌入式系统原理与开发第第4讲讲南京大学计算机系 俞建新主讲2008年春季2008年9月18日1第第3章章 嵌入式微处理器技术基础嵌入式微处理器技术基础l本章主要介绍以下内容:l嵌入式微处理器典型技术l主流嵌入式微处理器l嵌入式处理器的调试技术l边界扫描测试技术JTAG2008年9月18日23.3 嵌入式系统调试技术嵌入式系统调试技术l指令集模拟器lROM仿真器l实时在线仿真l片上调试器与背景调试模式l基于Angle的调试方案l边界扫描测试技术和JTAG接口概述l跟踪接口ETMlNexus调试标准l半主机调试方式2008年9月18日3嵌入式系统调试技术概貌嵌入式系统调试技术概
2、貌l嵌入式计算机调试基本结构l主机目标机结构l主机常常是PC平台l原因:l运算能力相对较弱l存储能力和显示能力较小l数据吞吐率较小l很难在目标程序运行的计算设备上直接进行硬件软件调试。2008年9月18日4主机和目标机之间调试信道主机和目标机之间调试信道l主机往往和目标机的体系结构不同。因此,需要有通信转换器对调试信息进行转换。2008年9月18日53.3.1 指令集模拟器指令集模拟器l指令集模拟器lISS,InstructionSetSimulatorl在一台计算机上模拟另外一台计算机上目标程序(机器指令)运行过程的软件工具l有时也叫做软仿真器l嵌入式系统开发的不可或缺工具2008年9月18
3、日6指令集模拟器的结构指令集模拟器的结构l指令集模拟器是一个纯软件系统l内部有一个反映目标处理器硬件的数据结构l以时序状态机的方式工作l可以根据目标机指令集定义执行目标指令l按照实现方法的不同指令集模拟器分为l解释型l编译型2008年9月18日7指令集模拟器的运行指令集模拟器的运行l指令集模拟器的操作界面与IDE类似l模仿目标机的取指、译码和执行操作l将中间执行结果或者最终执行结果存入目标机映像数据结构l调试人员可以观察目标机映像寄存器或者映像存储器的单元,了解目标代码的执行结果2008年9月18日8指令集模拟器主要用途指令集模拟器主要用途l指令集模拟器主要用在以下几种场合:l没有目标机开发板
4、l有目标机开发板,但使用目标机开发板成本较高l调试的程序模块不需要在实际开发板上执行,例如学习ARM汇编语言程序l模块代码的先行调试,以加快调试速度2008年9月18日9流行的流行的ARM指令集模拟器指令集模拟器l有两种比较流行的指令集模拟器:lARMulatorlSkyEyel还有一些研究中的ARM指令集模拟器2008年9月18日10ARM公司推出的公司推出的ARMulatorlARMulator是业界著名的指令集仿真器l运行在PC平台上lARM体系结构的指令集模拟器l集成在和上的插件l由四个部分组成:处理器核模型、存储器接口、处理器接口、操作系统接口。2008年9月18日11指令模拟精度的
5、级别指令模拟精度的级别l指令模拟精度有三个级别l指令级l周期级l时序(节拍)级lARMulator完全实现了指令级和周期级模拟精度,但是没有完全实现时序级精度。2008年9月18日12指令集模拟器指令集模拟器ARMulator对对ARM程序运行程序运行进行指令周期数统计的结果快照进行指令周期数统计的结果快照2008年9月18日13Armulator的指令周期统计结果说明的指令周期统计结果说明2008年9月18日14SkyEyel一个ARM体系结构的嵌入式仿真和集成开发环境l国内开放源码的自由软件项目l运行环境:Linux平台和Windows的Cygwinl能够仿真的CPU包括:l不带MMU的A
6、tmel91x40l带MMU的ARM720T等基于ARM7TDMI的内核lSkyEye还能够模拟其它一些硬件外设,如串口、网络芯片、内存、时钟等2008年9月18日153.3.2 ROM仿真器仿真器l嵌入式系统的程序存储器为ROM时,如果调试需要修改代码、设置断点及更新程序代码,就需要进行离线编程。l离线编程是一个费时间的工作,用RAM替代ROM可以解决这个问题lROM仿真器l用RAM以及附加电路制成的替代ROM进行离线编程的工具lMCS-51单片机研发过程中常常使用ROM仿真工具2008年9月18日16ROM仿真器照片仿真器照片l支持各种51系列芯片的JY-E2300仿真器照片2008年9月
7、18日173.3.3 实时在线仿真实时在线仿真l实时在线仿真lICE,In-CircuitEmulatorl目前最为有效的调试嵌入式系统的手段l通过ICE的实际执行,开发者可以排除人们难以发现的隐藏在设计方案中的逻辑错误。lICE的另外一个主要功能是在应用系统中仿真微控制器的实际执行l优点是功能强大,软硬件均可以做到完全实时在线调试;缺点是价格昂贵。2008年9月18日183.3.4 片上调试技术片上调试技术l片上调试技术lOCD,On-ChipDebuggingl嵌入式调试技术中运用最广泛的一种l片上调试是在CPU的内部嵌入额外的控制模块,即片上调试器;使得CPU的工作模式分为正常模式和调试
8、模式。2008年9月18日19常用的片上调试技术常用的片上调试技术l目前常用的片上调试技术主要有三种:l背景调试模式lBDM,BackgroundDebugModelJTAGlNexuslIEEE-5001ISTO2008年9月18日20背景调试模式背景调试模式l背景调试模式lMotorola公司专有的片上调试器。lMotorola公司是第一个把片上调试器集成在处理器内核中的嵌入式微处理器厂商。lBDM首先在68300系列处理器上实现l现在在其他微控制器上得到应用2008年9月18日21BDM与与ICE的区别的区别l传统ICE调试时,使用ICE中的CPU来取代目标板中的CPU,目标板和ICE之
9、间使用多芯扁平电缆连接。而ICE在使用时一般还需要与主机(一般是PC)连接。l在BDM调试方式下嵌入式处理器被停机,各种调试命令可以被发送到处理器中访问内存和寄存器。因此,满足BDM调试的微处理器内部已经包含了用于调试的微码,调试时仿真器软件和目标板上CPU的调试微码通信,目标板上的CPU无需取出。2008年9月18日22BDM调试器与主机和目标开发板调试器与主机和目标开发板之间的连接之间的连接 2008年9月18日233.3.5 基于基于Angel的调试方案的调试方案lAngel是ARM公司的调试监控程序l也称为调试代理l由多个程序部件组成l与传统调试监控程序相类似l驻留在目标机上lAnge
10、l接收主机上发送过来的调试命令,执行指定的调试操作,并将调试结果反馈回主机。l适用于各种ARM硬件平台。2008年9月18日24Angel的功能的功能lDebugcapability,includingmemoryinspection,imagedownloadandexecution,breakpointingandsinglesteplCPUandboardstartupandbasicexceptionhandlinglAfullANSIClibrary,usingsemihostingtoprovideservicesfromthehostwhicharenotavailableont
11、hetargetlAfullsourcedistribution,allowingdevelopersakickstartindevelopingstandaloneapplications2008年9月18日25有关有关Angel的主要技术文档的主要技术文档lDocumentationThemaindocumentationonAngelisprovidedinthemanualsshippedwiththeARMSDT2.50.Communicationbetweenthedebuggerandthetarget,overserial/parallelorEthernetlinks,use
12、saprotocolcalledtheAngelDebugProtocol(ADP)definedinthefollowing2documentssuppliedwithSDT2.50inPDFform:lAngelDebugProtocolSpecification(DUI0052C)lAngelDebugProtocolMessagesSpecification(DUI0053D)2008年9月18日26Angel调试协议的主机端组件调试协议的主机端组件2008年9月18日27Angel调试协议的目标端组件调试协议的目标端组件2008年9月18日283.3.6 边界扫描测试技术边界扫描测试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 调试 技术 习题
限制150内