第04讲第3章嵌入式调试技术习题253张课件2

PPT
  • 阅读 80 次
  • 下载 0 次
  • 页数 54 页
  • 大小 629.000 KB
  • 2022-12-05 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
第04讲第3章嵌入式调试技术习题253张课件2
可在后台配置第一页与第二页中间广告代码
第04讲第3章嵌入式调试技术习题253张课件2
可在后台配置第二页与第三页中间广告代码
第04讲第3章嵌入式调试技术习题253张课件2
可在后台配置第三页与第四页中间广告代码
第04讲第3章嵌入式调试技术习题253张课件2
第04讲第3章嵌入式调试技术习题253张课件2
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 54
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】第04讲第3章嵌入式调试技术习题253张课件2.ppt,共(54)页,629.000 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-92613.html

以下为本文档部分文字说明:

嵌入式系统结构与设计基础第4讲合肥工业大学计算机与信息学院史久根2022/12/5合肥工业大学计算机与信息学院2第3章嵌入式微处理器技术基础本章主要介绍以下内容:嵌入式微处理器典型技术主流嵌入式微处理器嵌入式处理器的调试技术边界扫描测试技术JTA

G2022/12/5合肥工业大学计算机与信息学院33.3嵌入式系统调试技术指令集模拟器ROM仿真器实时在线仿真片上调试器与背景调试模式基于Angle的调试方案边界扫描测试技术和JTAG接口概述跟踪接口E

TMNexus调试标准半主机调试方式2022/12/5合肥工业大学计算机与信息学院4嵌入式系统调试技术概貌嵌入式计算机调试基本结构主机—目标机结构主机常常是PC平台原因:运算能力相对较弱存储能力和显示能力较小数据吞吐率较小很难在目标程序运行的计算设备上直接

进行硬件软件调试。2022/12/5合肥工业大学计算机与信息学院5主机和目标机之间调试信道主机往往和目标机的体系结构不同。因此,需要有通信转换器对调试信息进行转换。(a)一般嵌入式系统的调试结构(b)ARM体系的调试结构运行在主机上的调试器(调试工具)通信信道ARM集成开发环境ADS或

SDT的调试器通信信道主机主机目标机运行在目标机上的被调试程序(嵌入式软件)调试代理目标机运行在目标机上的被调试程序(嵌入式软件)2022/12/5合肥工业大学计算机与信息学院63.3.1指令集模拟器指令集模拟器ISS,InstructionSetSim

ulator在一台计算机上模拟另外一台计算机上目标程序(机器指令)运行过程的软件工具有时也叫做软仿真器嵌入式系统开发的不可或缺工具2022/12/5合肥工业大学计算机与信息学院7指令集模拟器的结构指令集模拟器是一个纯软件系统内部

有一个反映目标处理器硬件的数据结构以时序状态机的方式工作可以根据目标机指令集定义执行目标指令按照实现方法的不同指令集模拟器分为解释型编译型2022/12/5合肥工业大学计算机与信息学院8指令集模拟器的运行指

令集模拟器的操作界面与IDE类似模仿目标机的取指、译码和执行操作将中间执行结果或者最终执行结果存入目标机映像数据结构调试人员可以观察目标机映像寄存器或者映像存储器的单元,了解目标代码的执行结果2022/12/5合肥工业大学计算机与信息学院9指

令集模拟器主要用途指令集模拟器主要用在以下几种场合:没有目标机开发板有目标机开发板,但使用目标机开发板成本较高调试的程序模块不需要在实际开发板上执行,例如学习ARM汇编语言程序模块代码的先行调试,以加快调试速度202

2/12/5合肥工业大学计算机与信息学院10流行的ARM指令集模拟器有两种比较流行的指令集模拟器:ARMulatorSkyEye还有一些研究中的ARM指令集模拟器2022/12/5合肥工业大学计算机与信息学院11ARM公司推出的ARMula

torARMulator是业界著名的指令集仿真器运行在PC平台上ARM体系结构的指令集模拟器集成在SDT2.51和ADS1.2上的插件由四个部分组成:处理器核模型、存储器接口、处理器接口、操作系统接口。2022/12/5合肥工业大学计算机与信息学院12指令模拟精度的级

别指令模拟精度有三个级别指令级周期级时序(节拍)级ARMulator完全实现了指令级和周期级模拟精度,但是没有完全实现时序级精度。2022/12/5合肥工业大学计算机与信息学院13指令集模拟器

ARMulator对ARM程序运行进行指令周期数统计的结果快照2022/12/5合肥工业大学计算机与信息学院14Armulator的指令周期统计结果说明2022/12/5合肥工业大学计算机与信息学院15SkyEye一个ARM体系结构的嵌入式仿真和集成开发环境国内开放

源码的自由软件项目运行环境:Linux平台和Windows的Cygwin能够仿真的CPU包括:不带MMU的Atmel91x40带MMU的ARM720T等基于ARM7TDMI的内核SkyEye还能够模拟其它一些硬件外设,如串口、网络芯片、内存、时钟等2

022/12/5合肥工业大学计算机与信息学院163.3.2ROM仿真器嵌入式系统的程序存储器为ROM时,如果调试需要修改代码、设置断点及更新程序代码,就需要进行离线编程。离线编程是一个费时间的工作,用RAM替代ROM可以解决这个问题ROM仿真器用RAM以及附加电路制成的替代ROM进行

离线编程的工具MCS-51单片机研发过程中常常使用ROM仿真工具2022/12/5合肥工业大学计算机与信息学院17ROM仿真器照片支持各种51系列芯片的JY-E2300仿真器照片2022/12/5合肥工

业大学计算机与信息学院183.3.3实时在线仿真实时在线仿真ICE,In-CircuitEmulator目前最为有效的调试嵌入式系统的手段通过ICE的实际执行,开发者可以排除人们难以发现的隐藏在设计方案中的逻

辑错误。ICE的另外一个主要功能是在应用系统中仿真微控制器的实际执行优点是功能强大,软硬件均可以做到完全实时在线调试;缺点是价格昂贵。2022/12/5合肥工业大学计算机与信息学院193.3.4片上调试技术片上调

试技术OCD,On-ChipDebugging嵌入式调试技术中运用最广泛的一种片上调试是在CPU的内部嵌入额外的控制模块,即片上调试器;使得CPU的工作模式分为正常模式和调试模式。2022/12/5合肥工业大学计算机与信息学院20常用的片上调试技术目前常

用的片上调试技术主要有三种:背景调试模式BDM,BackgroundDebugModeJTAGIEEE1149.1NexusIEEE-5001ISTO2022/12/5合肥工业大学计算机与信息学院21背景调试模式背景调试模式Motorola公

司专有的片上调试器。Motorola公司是第一个把片上调试器集成在处理器内核中的嵌入式微处理器厂商。BDM首先在68300系列处理器上实现现在在其他微控制器上得到应用2022/12/5合肥工业大学计算机与信息学院22BDM与ICE的区别传统ICE调试时,使

用ICE中的CPU来取代目标板中的CPU,目标板和ICE之间使用多芯扁平电缆连接。而ICE在使用时一般还需要与主机(一般是PC)连接。在BDM调试方式下嵌入式处理器被停机,各种调试命令可以被发送到处理器中访问内

存和寄存器。因此,满足BDM调试的微处理器内部已经包含了用于调试的微码,调试时仿真器软件和目标板上CPU的调试微码通信,目标板上的CPU无需取出。2022/12/5合肥工业大学计算机与信息学院23BDM调试器与主机和目标

开发板之间的连接(a)通过串口线连接的BDM调试器BDM调试器RS2326芯BDM电缆6针BDM插座目标开发板主机主机USB串口USBBDM调试器6针BDM插座目标开发板串口USB6芯BDM电缆(b)通过USB连接的BDM调试器2022/12/5合肥工业大学计算机与信息学院24

3.3.5基于Angel的调试方案Angel是ARM公司的调试监控程序也称为调试代理由多个程序部件组成与传统调试监控程序相类似驻留在目标机上Angel接收主机上发送过来的调试命令,执行指定的调试操作,并将调试结果反馈回主机。适用于各种ARM硬件平台。202

2/12/5合肥工业大学计算机与信息学院25Angel的功能Debugcapability,includingmemoryinspection,imagedownloadandexecution,breakpointingandsin

glestepCPUandboardstartupandbasicexceptionhandlingAfullANSIClibrary,usingsemihostingtoprovideservicesfromthehostwhicharenotavailab

leonthetargetAfullsourcedistribution,allowingdevelopersakickstartindevelopingstandaloneapplications2022/12/5合肥工业大学计算机与信息学院26有关Angel的主要技术

文档DocumentationThemaindocumentationonAngelisprovidedinthemanualsshippedwiththeARMSDT2.50.Communicationbetweenthedebuggerandthetarget,overse

rial/parallelorEthernetlinks,usesaprotocolcalledtheAngelDebugProtocol(ADP)definedinthefollowing2documentssuppliedwit

hSDT2.50inPDFform:AngelDebugProtocolSpecification(DUI0052C)AngelDebugProtocolMessagesSpecification(DUI0053D)2022/12/5合肥工业

大学计算机与信息学院27Angel调试协议的主机端组件2022/12/5合肥工业大学计算机与信息学院28Angel调试协议的目标端组件2022/12/5合肥工业大学计算机与信息学院293.3.6边界扫描测试技术边界扫描测试技术和JTAG接口是嵌入式系统最具特色的技术

集成电路研制时的内部电路测试嵌入式软件开发时的程序调试将在后续课程中详细介绍2022/12/5合肥工业大学计算机与信息学院30ARM处理器的JTAG调试结构主控协议调试目标机实时在线协议转换器运行有ARM公司或者第三方

提供的调试软件的PC机负责与Debug主控端发出的高级ARM调试命令以及底层的和ARM内核JTAG命令进行通讯。以ARM7TDMI为处理器的开发系统2022/12/5合肥工业大学计算机与信息学院31英蓓特公司的ARM仿真器照片JTAG实时在线协议转换器通常称为JTAG调试器(或JTAG

仿真器),由于ARM处理器广泛使用,通常也把ARM处理器的JTAG实时在线协议转换器称为ARM仿真器。右面给出了深圳市英蓓特公司的ARM仿真器照片。2022/12/5合肥工业大学计算机与信息学院32JTAG仿

真器连接JTAG仿真器连接比较方便,通过现有的JTAG边界扫描口与ARMCPU核通信,属于完全非插入式(即不使用片上资源)调试,它无需目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。另外,由于JTAG调试的目标程序是在目标板上执行

,仿真更接近于目标硬件,因此,许多接口问题,如高频操作限制、AC和DC参数不匹配,电线长度的限制等被最小化了。使用集成开发环境配合JTAG仿真器进行开发是目前采用最多的一种调试方式。可用于开发和调试包含JTAG接口的ARM电路板。2022/12/5合肥工业大学计算机与信息学院33A

RM处理器的实时JTAG仿真器与开发板的连线图闪存指令寄存器边界扫描寄存器测试访问端口地址数据控制TCKTDITDOTMS系统PCB板ARM处理器的实时JTAG协议转换器嵌入式处理器2022/12/5合肥工业大学计算机与信息学院34实

时在线仿真(ICE)与JTAG的区别实时在线仿真系统的硬件主体是在线仿真器(ICE)。在8位单片机调试过程中,可以用这种ICE仿真器完全取代目标板上的MCU。因而目标系统对开发者来说完全是透明的、可控的。对16和32位的单片机还不能做到完全取代。JTAG调试在内嵌了IEEE1

149标准电路的CPU上进行,调试时不需要更换CPU。适用于8、16、32位的CPU。2022/12/5合肥工业大学计算机与信息学院35Angel与JTAG的关系JTAG调试:协议转换器解释上位机传送过来的命令,通过JTAG控制ARM执行。Angel调试:协议转换器可以直接作为目

标板的Firmware的一部分,直接执行从宿主机传送过来的调试命令;并回送相应的数据。Angel可以节省专门的JTAG仿真器,但是,它需要软件,或者是嵌入式操作系统的支持,做不到完全的实时仿真,而JTAG仿真是通过硬件和控制ARM的EmbeddedICE实现的,可以做到实时仿真。2022/12/

5合肥工业大学计算机与信息学院36英蓓特ARM仿真器的主要特征下载速度达25KB/S;支持主流开发环境ADS、EmbestIDE、SDT;支持各种ARM系列处理器;支持标准的14/20针JTAG接口;支持最多两个硬件断点

/两个数据断点/不限数目的软件断点;支持汇编级调试,支持ARM、THUMB及指令集交叉调试;支持标准C语言程序调试;支持Flash在线编程;通过软件升级方式支持更高版本的ARM核处理器。2022/12/5合肥工业大学计算机与信息学院373.3.7嵌

入追踪宏单元ETM跟踪追踪宏单元ETM也称为跟踪调试接口ARM公司开发的一种高级实时软件开发调试工具,是ARM片上系统的一个组件。在CPU运行过程中把现场信息捕捉压缩后输出,然后在PC端就可以对这些数据进行解压分析。20

22/12/5合肥工业大学计算机与信息学院38ETM—嵌入跟踪宏单元本质上ETM相当于一个嵌入芯片的逻辑分析仪2022/12/5合肥工业大学计算机与信息学院39JTAG仿真器和ETM的功能区别基于JTAG的仿真器debug方法是利用芯片内部的EmbeddedI

CE模块来控制内核,达到单步/断点等调试目的,这种方法的特点是需要把目标CPU停住后才能观察现场情况。在真正的实时系统中,停止CPU运行往往导致现场失真,ETM就能够在CPU运行过程中把现场信息捕捉压缩进行输出,然后在PC端就

可以对这些数据进行解压分析;用户还可以对ETM设置很多过滤及触发条件,对一些随即出现的异常进行捕捉(还能得到异常前后一段时间内的系统信息)。本质上ETM相当于一个嵌入芯片内部的逻辑分析仪。2022/12/5合肥工业大学计算机与信息学院403.3.8Nexus调试标准

Nexus5001论坛飞思卡尔公司、福特汽车公司和风河公司等世界领先的嵌入式系统开发厂商于1998年成立了该论坛。官方网址是:http://www.nexus5001.org属于IEEE工业标准和技术组织(IEEE-ISTO)的一个项目目前已经有24个

团体会员该论坛提出的调试标准称为Nexus调试标准2022/12/5合肥工业大学计算机与信息学院41Nexus5001论坛目标Nexus5001论坛追求提高实时可视性和多嵌入式处理器内核的可控性致力于提出一个在JTAG之上的全球范围适用的开放性嵌入式处理器调试标准该技术标准被称为Nexu

s5001标准,简称为Nexus标准2022/12/5合肥工业大学计算机与信息学院423.3.9半主机调试方式半主机的英文原文是“semihosting”也称为半主机机制、半主机方式、半主机调试或者半主机调试方式。目前的几

种ARM调试器都支持的半主机调试功能。半主机的实质是让不支持ANSIC函数库功能的目标系统使用调试主机提供的C函数库功能。以下给出ADS集成开发环境的调试界面举例2022/12/5合肥工业大学计算机与信息学院43ADS1.2IDE的半主机方式界面2022/12/5合肥

工业大学计算机与信息学院44ADS1.2IDE的主要工具窗口2022/12/5合肥工业大学计算机与信息学院45ARM公司的ARM开发工具简介ARM公司的ARM开发工具路线图SDT→ADS→RealViewADS包括了四个模块分别是:模拟器;C编译器;实时调试器;应用函数

库。ADS1.2提供完整的Windows界面开发环境。C编译器效率极高,支持C以及C++,提供软件模拟仿真功能,使没有开发板的学习者也能够熟悉ARM指令系统。配合ARMJtag仿真器使用,可细察ARM板运行情况。ADS1.2需要硬件支持才能调试目标板。目前支持

的硬件调试器有Multi-ICE以及兼容Multi-ICE的调试工具。而简易下载电缆不能支持ADS1.22022/12/5合肥工业大学计算机与信息学院46ADS调试工具AXD的两种调试方式ADPAngelDebuggingProtocalARM公司的Angel调试协议,建立主

机和目标机之间的可靠的通信连接ARM公司研发的基于ADP通信协议的调试器称为Angel调试内核信号的采集和预设使用了JTAG标准,针对开发板进行调试ArmulatorARM公司的模拟器对ARM处理器的代码进行模拟运行,无须开发板2022/12/5合肥工业大学计算机与信

息学院47AXD的两种调试方式的选择对话框下面是AXD的TargetConfig操作对话框截图2022/12/5合肥工业大学计算机与信息学院48AXD的ADP调试方式选择AXD的TargetConfi

g操作对话框截图之二2022/12/5合肥工业大学计算机与信息学院49基于ADS的应用程序调试需要掌握的调试技术基于模拟器的半主机调试无操作系统的驱动程序与应用程序含操作系统uCOS-II的驱动程序与应用程序进一步提高的

调试技术基于行命令的ADS工程文件建立、编译和调试uCOS-II的库函数文件编译和调试BIOS的编译和调试2022/12/5合肥工业大学计算机与信息学院50第4讲重点指令集模拟器ISS实时在线仿真ICE片上调试器O

CD背景调试模式BDM、JTAG、Nexus基于Angle的调试方案边界扫描测试技术和JTAG接口概述跟踪接口ETM半主机调试方式2022/12/5合肥工业大学计算机与信息学院51第4讲复习题与思考题PC和嵌入式系统的调试技术有什么主要

不同之处?什么是背景调试?指令集模拟器SkyEye和ARMulator各有什么特点?请简单地概述JTAG测试技术。基于Angel的调试方案是怎么一回事?试描述ETM与JTAG的异同点。ARM仿真器的作用是什么?能够完

全取代目标板的ICE仿真器是什么样的仿真器。Nexus调试标准的用途是什么?何谓半主机方式?2022/12/5合肥工业大学计算机与信息学院52第4讲复习题和思考题(续)基于ADS1.2的半主机方式的调试技术体验1)编写C程序或者ARM汇编程序,完成一个求整数平方根的代码。

该整数从主机键盘输入,结果在ADS的控制台窗口上输出。2)编写一个ARM汇编程序调用C程序的代码。它将两个二维矩阵A和B的相加,输出和矩阵C=A+B。用半主机方式输入A矩阵和B矩阵的整数元素,然后调用C语言程序,计算矩阵C并输出之。2022/12/5合肥

工业大学计算机与信息学院53第2次习题布置题1,试说明嵌入式系统有哪几种主要的调试手段。题2,半主机方式是否是一种通用的调试方式?2022/12/5合肥工业大学计算机与信息学院54第4讲结束谢谢!

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?