书签 分享 收藏 举报 版权申诉 / 64
上传文档赚钱

类型第05讲第3章JTAG技术课件.ppt

  • 上传人(卖家):ziliao2023
  • 文档编号:5873434
  • 上传时间:2023-05-13
  • 格式:PPT
  • 页数:64
  • 大小:1.63MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《第05讲第3章JTAG技术课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    05 JTAG 技术 课件
    资源描述:

    1、嵌入式系统结构与设计基础嵌入式系统结构与设计基础第第5讲讲合肥工业大学计算机与信息学院史久根2023-5-13合肥工业大学计算机与信息学院2第第3章章 嵌入式微处理器技术基础嵌入式微处理器技术基础l本章主要介绍以下内容:l嵌入式微处理器典型技术l主流嵌入式微处理器l嵌入式处理器的调试技术l边界扫描测试技术JTAG2023-5-13合肥工业大学计算机与信息学院33.4 边界扫描测试接口边界扫描测试接口JTAGlJTAG是一种片上调试接口,即OCD接口。lOCD英文原文:lOn-Chip Debugging InterfacelJTAG的建立使得集成电路固定在PCB(Printed Circuit

    2、 Board,印刷电路板)上,只通过边界扫描便可以被测试。l含有JTAG口的芯片种类较多,如CPU、DSP、CPLD/FPGA等,广泛得到应用。2023-5-13合肥工业大学计算机与信息学院43.4.1 测试摩尔定律测试摩尔定律l1999年英特尔公司的副总裁Patrick Celsinger先生在美国大西洋城举行的国际测试会议上提出了测试摩尔定律,并就此了讲演。l该定律预测未来几年,每一晶体管的硅投资成本将低于其测试成本。lPatrick Celsinger先生指出,硅成本已迅速下降,硅成本已迅速下降,测试成本却基本保持不变测试成本却基本保持不变。并且,被测器件的速度常常比测试设备能测的速度高

    3、。也就是说,测试设备的发展速度已跟不上测试对象的发展。同时,测试成本在制造成本中所占比例过大。2023-5-13合肥工业大学计算机与信息学院5代码出错案例:代码出错案例:阿利亚娜阿利亚娜5 5型火箭发射失败型火箭发射失败2023-5-13合肥工业大学计算机与信息学院63.4.2 JTAG基本概念基本概念lJTAG是Joint Test Action Group(联合测试行动组)的缩写,联合测试行动组是IEEE的一个下属组织l该组织研究标准测试访问接口和边界扫描结构(Standard Test Access Port and Boundary-Scan Architecture)lJTAG的研究

    4、成果被接纳为IEEE1149.1-1990规范lJTAG成为电子行业的一种国际测试标准l现在,人们通常用JTAG来表示IEEE1149.1-1990规范,或者满足IEEE1149规范的接口或者测试方法。2023-5-13合肥工业大学计算机与信息学院7JTAG扫描循环示意图扫描循环示意图每个JTAG单元监听相应IC引脚输出位状态PC板JTAG连接器JTAG位流输入JTAG位流输出二进制位流形成一个移位寄存器2023-5-13合肥工业大学计算机与信息学院8边界扫描单元边界扫描单元lJTAG标准定义了一个串行的移位寄存器l寄存器的每一个单元分配给IC芯片的相应引脚l每一个独立的单元称为BSC(Bou

    5、ndary-Scan Cell)边界扫描单元l这个串联的BSC在IC内部构成JTAG回路l所有的BSR(Boundary-Scan Register)边界扫描寄存器通过JTAG测试激活2023-5-13合肥工业大学计算机与信息学院9ARM的的JTAG调试结构调试结构主控协议主控协议调试目标机调试目标机协议转换器协议转换器运行有ARM公司或者第三方提供的调试软件的PC机负责与Debug主控端发出的高级ARM调试命令以及底层的和ARM内核JTAG命令进行通讯。以ARM7TDMI为处理器的开发系统2023-5-13合肥工业大学计算机与信息学院10ARM调试系统说明调试系统说明l调试系统一般包括3部分

    6、:l调试主机调试主机是运行软件调试器的计算机l例如ADW,ARM Debugger for Windowsl调试主机允许发出高级命令,如设置断点或检查存储器内容。l协议转换器协议转换器处理调试主机调试主机和ARM7TDMI处理器JTAG接口接口之间的通讯l包括调试主机发出的高级命令以及JTAG接口的低级命令。l一般通过增强型并行口进行连接。2023-5-13合肥工业大学计算机与信息学院11ARM调试系统说明(续)调试系统说明(续)l调试目标调试目标lARM CPU主处理器逻辑:对调试有硬件支持。l嵌入式ICE-RT逻辑:这是用于产生调试异常(如断点)的寄存器和比较器的集合。lTAP控制器:用J

    7、TAG串行接口控制扫描链的动作。2023-5-13合肥工业大学计算机与信息学院12协议转换器的调试扩充功能协议转换器的调试扩充功能lARM7TDMI具有易于在最低层调试的硬件扩充,其调试扩充功能如下列出:l允许暂停程序的执行;l检查和修改内核的内部状态;l查看和修改存储器系统的状态;l执行中止异常,允许实时的内核监控;l重新开始程序执行。2023-5-13合肥工业大学计算机与信息学院133.4.3 ARM7TDMI扫描链布局扫描链布局2023-5-13合肥工业大学计算机与信息学院14ARM7TDMI内核扫描链结构内核扫描链结构113位38位33位2023-5-13合肥工业大学计算机与信息学院1

    8、5JTAG接口的接口的IC内部结构内部结构含含JTAG接口接口的IC的IC芯片芯片内核逻辑内核逻辑数据寄存器指令寄存器旁路寄存器测试访问端口(TAP)控制器TDITMSTDOTCKGndVcc芯片引脚边界扫描寄存器(扫描单元)2023-5-13合肥工业大学计算机与信息学院16JTAG状态转换图状态转换图15=Test LogicReset12=Run-Test orIdle7=Select-DRScan6=Capture-DR2=Shift-DR1=Exit1-DR3=Pause-DR0=Exit2-DR5=Update-DR4=Select-IRScan14=Capture-IR10=Shi

    9、ft-IR9=Exit1-IR11=Pause-IR8=Exit2-IR13=Update-IRtms=1tms=0tms=0tms=1tms=0tms=1tms=1tms=0tms=0tms=0tms=1tms=1tms=0tms=1tms=1tms=0tms=1tms=0tms=1tms=0tms=0tms=1tms=0tms=1tms=0tms=1tms=0tms=1tms=0tms=1tms=0tms=12023-5-13合肥工业大学计算机与信息学院17JTAG信号信号lTMS:测试模式选择(Test Mode Select)l通过TMS信号控制JTAG状态机的状态。lTCK:JTAG

    10、的时钟信号lTDI:数据输入信号lTDO:数据输出信号lnTRST:JTAG复位信号,复位JTAG的状态机和内部的宏单元(Macrocell)。2023-5-13合肥工业大学计算机与信息学院183.4.4 TAP控制器控制器lTAP控制器内部有多个寄存器l测试数据寄存器lJTAG控制指令寄存器l旁路寄存器lARM7TDMI器件识别码(ID)寄存器l扫描路径选择寄存器2023-5-13合肥工业大学计算机与信息学院19JTAG的的TAP控制器结构控制器结构扫描链3JTAG状态机TDITCKTMSTDO指令寄存器 4bitID寄存器 32bit扫描路径选择寄存器 4bit旁路寄存器 1bit选择器扫

    11、描链3选择器选择器扫描链控制信号2023-5-13合肥工业大学计算机与信息学院20测试数据寄存器测试数据寄存器l在TDI和TDO之间可以连接的测试数据寄存器有如下8个:l指令寄存器;l旁路寄存器;lARM7TDMI的器件识别(ID)码寄存器;l扫描路径选择寄存器;l扫描链0、1、2和3。2023-5-13合肥工业大学计算机与信息学院21JTAG控制指令寄存器控制指令寄存器lJTAG接口中指令寄存器长度是4位l在指令寄存器共安排10条控制指令,见下表。指令二进制指令二进制EXTEST0000HIGHZ0111SCAN_N0010CLAMPZ1001SAMPLE/PRELOAD0011INTEST

    12、1100RESTART0100IDCODE1110CLAMP0101BYPASS11112023-5-13合肥工业大学计算机与信息学院22JTAG的指令寄存器的指令寄存器l在SHIFT-IR态,将指令寄存器选做TDI和TDO之间串行路径。见(a)l在UPDATE-IR态,指令寄存器的值成为当前指令。见(b)l在CAPTURE-IR态,将b0001加载到该寄存器。该值在SHIFT-IR态移位输出。见(c)l复位时,IDCODE(b1110)成为当前指令。见(d)l指令寄存器的最低有效位首先被扫描输入和输出。指令寄存器TDITDOSHIFT-IR状态状态(a)指令寄存器值=0001CAPTURE-

    13、IR状态状态(c)TDITDO当前指令寄存器TDITDOUPDATE-IR状态状态(b)当前指令寄存器IDCODE=0001IDCODE-IR状态状态(d)TDITDO2023-5-13合肥工业大学计算机与信息学院23旁路寄存器旁路寄存器l功能:l通过提供TDI和TDO之间的路径,在扫描测试期间对器件旁路。l长度:l1位l操作方式:l当BYPASS指令是指令寄存器中的当前指令时,串行数据在SHIFT-DR态以1个TCK周期的延迟从TDI传到TDO。旁路寄存器没有并行输出。l在CAPTURE-DR态,从旁路寄存器的并行输入端装入“0”。2023-5-13合肥工业大学计算机与信息学院24ARM7T

    14、DMI器件器件识别码识别码(ID)寄存器寄存器l识别码用途:读32位器件识别码。不提供可编程的识别码。l长度:32位。寄存器的格式如下图所示。l操作方式l当IDCODE指令是当前指令时,将ID寄存器选做TDI和TDO之间的串行路径。ID寄存器没有并行输出。在CAPTURE-DR态,32位器件识别码从其并行输入端加载到ID寄存器。寄存器的最低有效位首先被扫描输出。版本 4位部件编号 16位制造者标识 12位03111282023-5-13合肥工业大学计算机与信息学院25扫描路径选择寄存器扫描路径选择寄存器l用途和长度l变换当前活动的扫描链,4位。l操作方式l仅当执行了一条SCAN_N指令或当发生

    15、复位时,当前所选的扫描链改变。复位时,将扫描链0选做活动的扫描链。l在SHIFT-DR态,SCAN_N指令把扫描路径选择寄存器作为TDI和TDO之间的串行数据移位路径。l在CAPTURE-DR态,将b1000加载到该寄存器。这个值在SHIFT-DR态加载输出,同时装入新值。l在UPDATE-DR态,由寄存器中的值选择一个扫描链成为当前活动的扫描链。所有进一步的指令(如INTEST)都应用到该扫描链上。2023-5-13合肥工业大学计算机与信息学院26扫描链编号分配扫描链编号分配扫描链编号功能0宏单元扫描测试1调试2嵌入式ICE-RT逻辑编程3外部边界扫描(由ASIC设计者实现)4保留8保留20

    16、23-5-13合肥工业大学计算机与信息学院273.4.5 JTAG扫描链工作原理扫描链工作原理lJTAG扫描链由扫描单元组成l每一个被测试逻辑电路引出信号线同它的引脚之间配置一个扫描单元l每一个扫描单元的内部由两个D触发器和两个多路选择器组成l分别把逻辑电路输入输出线同引脚之间的穿越扫描单元的电流方向成为横向,沿扫描单元串接线运动的电流方向成为纵向。lJTAG扫描链一共有四种操作:挂起、捕获、移位和更新。2023-5-13合肥工业大学计算机与信息学院28JTAG扫描单元构造扫描单元构造From logic or pinFrom last cellShift/loadTo next cellTo

    17、 logic or pin11G1ClockUpdateMode1DC11D C111G1纵向纵向横向横向横向四种操作四种操作:挂起,移挂起,移位,俘获,更新位,俘获,更新2023-5-13合肥工业大学计算机与信息学院29JTAG扫描链的组成扫描链的组成I1I2I3TCKO1O2O3TDI0 X 00 X 00 X 00 X 00 X 00 X 0 待测装置IIIOOO移位寄存器输出数据输入数据扫描前的输入数据扫描后的输出数据1 0 1 0 1 0TDOX X X X X XLogicPinPinPinPinLogicLogicLogicLogic纵向横向PinPinLogic2023-5-1

    18、3合肥工业大学计算机与信息学院30JTAG处于挂起状态处于挂起状态I1I2I3O1O2O3111 X 11 X 10 X 00 X 00 X 0DUT(测试器件)XTDI1 0 1 0 1 0TDOX X X X X X横向直行横向直行横向直行横向直行如同扫描链如同扫描链不存在不存在2023-5-13合肥工业大学计算机与信息学院31捕获捕获JTAG状态状态当前引脚当前引脚信号的快照信号的快照存入扫描链存入扫描链2023-5-13合肥工业大学计算机与信息学院32移位数据移位数据I1I2I3O1O2O3111 1 11 1 10 1 00 0 00 0 0DUT1TDI0 1 0 1 0 XTDO

    19、X X X X X 0纵纵向向直直行行此刻处理此刻处理器的工作器的工作脉冲暂停脉冲暂停2023-5-13合肥工业大学计算机与信息学院33移位结束移位结束I1I2I3O1O2O3111 1 11 0 10 1 00 0 00 1 0DUT0TDIXTDO0 0 0 1 1 1XXXXX纵纵向向直直行行此刻处理此刻处理器的工作器的工作脉冲暂停脉冲暂停2023-5-13合肥工业大学计算机与信息学院34数据更新数据更新JTAG扫描链取扫描链取代系统向处理器代系统向处理器输入信号,并且输入信号,并且替代处理器向系替代处理器向系统输出信号。统输出信号。2023-5-13合肥工业大学计算机与信息学院35扫描

    20、链扫描链0lScan Chain 0:有113个扫描单元,包括ARM核的所有的I/O、地址数据总线和输入输出控制信号。这条链上的信号复杂,不易控制,但是包含的信息丰富,可以通过这条链得到ARM7TDMI内核的所有信息。l从查询数据输入到输出,扫描链的顺序为:(1)数据总线位0-位31;(2)内核控制信号;(3)地址总线位31-位0;(4)嵌入式ICE-RT控制信号。l嵌入式ICE-RT控制信号(特别是DBGRQI)首先被扫描输出。2023-5-13合肥工业大学计算机与信息学院36扫描链扫描链0单元单元编号信号类型编号信号类型132D0D31输入/输出41BL0输入33BREAKPT输入42BL

    21、1输入34NENIN输入43BL2输入35NENOUT输出44BL3输入36LOCK输出45DCTL输出37BIGEND输入46nRW输出38DBE输入47DBGACK输出39MAS0输出48CGENDBGACK输出40MAS1输出49nFIQ输入2023-5-13合肥工业大学计算机与信息学院37扫描链扫描链0单元单元(续续1)编号信号类型编号信号类型50nIRQ输入59nMREQ输出51nRESET输入60SEQ输入52ISYNC输入61nTRANS输入53BRGRQ输入62CPB输入54ABORT输入63nM4输出55CPA输入64nM3输出56nOPC输出65nM2输出57IFEN输入6

    22、6nM1输出58nCPI输出67nM0输出2023-5-13合肥工业大学计算机与信息学院38扫描链扫描链0单元单元(续续2)编号信号类型编号信号类型68nEXEC输出69ALE输出70ABE输入71APE输入72TBIT输出73nWAIT输入74105A31A0输出106113ICE-RT信号2023-5-13合肥工业大学计算机与信息学院39扫描链扫描链1l扫描链1:有33个扫描单元,包括ARM核的数据总线和一个断点控制信号。这是一条很有用的链,通过控制这条链,可以控制ARM核执行指定的指令,从而实现对ARM的内部寄存器、协处理器以及外部存储器的读写操作。2023-5-13合肥工业大学计算机与

    23、信息学院40扫描链扫描链1(续)(续)l扫描链1的前32位用于数据值,加上在BREAKPT内核输入上的扫描单元。第33位有如下4个用途:l在正常INTEST测试条件下,允许将已知值扫描到BREAKPT的输入。l在EXTEST测试条件下,捕获从系统加到BREAKPT输入的值。l在调试期间,第33位的值决定在执行指令之前ARM7TDMI核是否同步回系统速度。lARM7TDMI核进入调试状态后,该位第一次被捕获并被扫描输出。其值告诉调试器内核是否由断点(位33清零)或由观察点(位33置位)进入调试状态。2023-5-13合肥工业大学计算机与信息学院41扫描链扫描链2lScan Chain 2共有38

    24、个扫描单元,通过控制EmbeddedICE宏单元,实现对ARM执行指令的断点、观察点的控制。l从TDI到TDO的扫描链次序如下:l读/写;l寄存器地址位4-位0;l数据值位31-位0。2023-5-13合肥工业大学计算机与信息学院423.4.6 嵌入式嵌入式ICE-RT逻辑逻辑l嵌入式ICE-RT逻辑也称为Embedded ICE或者Embedded ICE-RT,其主要功能是为ARM7TDMI核提供集成的在线调试支持。lARM公司的片上测试部件。l使用ARM7TDMI的TAP控制器来控制嵌入式ICE-RT逻辑的串行数据输入。l下图给出了内核、嵌入式ICE-RT逻辑和TAP控制器之间的关系。图

    25、中仅显示了有关的信号。2023-5-13合肥工业大学计算机与信息学院43嵌入式嵌入式ICE-RT连线结构图连线结构图DBGRQIDBGRQIA31:0D31:0nOPCnRWTBITMAS1:0nTRANSDBGACKIBREAKPTIIFENECLKnMREQSDOUTSDINCONTROLDBGENDBGRQBREAKPTDBGACKRANGEOUT1RANGEOUT0EXTERN0EXTERN1nTRSTTCKTMSTDITDOARM CPU主处理器逻辑主处理器逻辑嵌入式嵌入式ICE逻辑逻辑TAP2023-5-13合肥工业大学计算机与信息学院44嵌入式嵌入式ICE-RT逻辑的组成逻辑的组

    26、成l嵌入式ICE-RT逻辑的组成如下:l2个实时观察点单元;l3个独立的寄存器:调试控制寄存器、调试状态寄存器、中止状态寄存器;l调试通信通道DCC(Debug Communications Channel)。2023-5-13合肥工业大学计算机与信息学院45嵌入式嵌入式ICE-RT逻辑的组成(续)逻辑的组成(续)l调试控制寄存器和调试状态寄存器提供嵌入式ICE-RT操作的所有控制。在选择监控模式时使用中止状态寄存器。l可以编程1个或2个观察点单元来暂停内核程序的执行。当编程进入嵌入式ICE-RT的值与当前出现在地址总线、数据总线和各种控制信号的值匹配时,暂停执行。2023-5-13合肥工业大

    27、学计算机与信息学院46EmbeddedICE的数据结构的数据结构lEmbeddedICE是集成在ARM内核中的嵌入式ICE仿真器。其结构如下图所示。l通过对EmbeddedICE的控制,对EmbeddedICE中寄存器的读取,可以获得ARM内核的状态,为程序设置断点以及读取Debug通讯通道。lEmbeddedICE的串行数据长度是38位,包括:l32位数据l5位的访问EmbeddedICE中寄存器的地址l1个读写控制位2023-5-13合肥工业大学计算机与信息学院47EmbeddedICE结构结构r/w4地址031数据0TDOTDI+断点更新地址译码器ENABLECHAINEXTERNnOP

    28、CnBWnRWAv31:0Dv31:0CHAINEXTERNnOPCnBWnRWAm31:0Dm31:0比较器A31:0D31:0Control325EmbeddedICE扫描链共38位2023-5-13合肥工业大学计算机与信息学院48EmbeddedICE的寄存器的寄存器地址宽度功能地址宽度功能000006Debug control011009Watchpoint 0 control value000015Debug status011018Watchpoint 0 control mask000101Abort status1000032Watchpoint 1 address value

    29、001006Debug commands control register 1000132Watchpoint 1 address mask0010132Debug commands data register 100102Watchpoint 1 data value01000 32Watchpoint 0 address value 1001132Watchpoint 1 data mask0100132Watchpoint 0 address mask 101009Watchpoint 1 control value0101032Watchpoint 0 data value 10101

    30、8Watchpoint 1 control mask0101132Watchpoint 0 data mask 2023-5-13合肥工业大学计算机与信息学院49Watchpoint寄存器的使用寄存器的使用 lEmbeddedICE的一个主要作用就是可以在ARM的程序中设置软件或者硬件的断点。l在EmbeddedICE中,集成了一个比较器,比较器负责把ARM处理器取指的地址A31:0、数据D31:0以及一些控制信号与EmbeddedICE中Watchpoint寄存器中设置的数值相比较l具体的说应该是进行同或运算l比较的结果用来确定输出一个ARM的断点(Breakpoint)信号。l具体的运算关

    31、系如下公式所描述:l(Av31:0,Cv4:0 XNOR A31:0,C4:0)OR Am31:0,Cm4:0=0 x1FFFFFFFFF2023-5-13合肥工业大学计算机与信息学院50EmbeddedICE断点信号条件断点信号条件l当上述表达式为真的时候,断点信号有效,ARM的内核就进入了Debug模式。l在Debug模式下,ARM内核的时钟从系统的主时钟(MCLK)被替换成跟踪时钟(DCLK)。l跟踪时钟(DCLK)是通过在JTAG的状态机的Run-test/Idle状态的TCK来控制的。2023-5-13合肥工业大学计算机与信息学院51Watchpoint表达式的含义表达式的含义 信号

    32、说 明Av31:0Watchpoint中地址寄存器(Address register)的数据Am31:0Watchpoint中地址mask寄存器(address mask register)的数据A31:0从ARM7TDMI的核中得到的总线的地址,也就是当前处理器取址的地址Dv31:0Watchpoint中数据寄存器(data register)中的数据Dm31:0Watchpoint中数据mask寄存器(data mask register)的数据D31:0从ARM7TDMI的核中得到的总线的数据,也就是当前处理器取址所到的数据Cv8:0Watchpoint中控制寄存器(control re

    33、gister)中的数据Cm7:0Watchpoint中控制mask寄存器(control mask register)中的数据C9:0ARM7TDMI的控制总线2023-5-13合肥工业大学计算机与信息学院523.4.7 ARM7TDMI断点的设置断点的设置lARM中断点的设置主要是设置EmbeddedICE中的寄存器l主要包括:设置EmbeddedICE的两个watchpoint单元的地址、数据或控制信号寄存器。l当一个(或者两个)watchpoint寄存器满足条件的时候,ARM就从运行状态进入Debug状态。l也就是与ARM中的地址(也可以包括数据)和ARM所执行的当前的指令相同的时候20

    34、23-5-13合肥工业大学计算机与信息学院53硬件断点和软件断点硬件断点和软件断点l在ARM7TDMI处理器的内核中,有两种断点的设置方式:硬件断点和软件断点硬件断点和软件断点l硬件断点l通过设置EmbeddedICE中的Watchpoint寄存器中的地址相关的寄存器,来实现断点。l通过这种方式设置断点,断点数目受EmbeddedICE中的Watchpoint数目的限制(在ARM7TDMI处理器的内核中,只有两组Watchpoint寄存器,最多只能设置两个硬件断点)。l硬件断点可以在任何地方设置。不受存储器类型的限制。2023-5-13合肥工业大学计算机与信息学院54软件断点软件断点l软件断点

    35、的实现比较复杂,需要如下几个步骤:l通过设置EmbeddedICE中的Watchpoint寄存器中的数据相关寄存器(data value和data mask value)为一个特殊的32位数字ARM的未定义指令,比如:0 x06000010。l替换RAM中的指令为上面所设置的那个未定的指令0 x06000010,作为一个标志。l当系统运行到RAM中所设定的单元位置时候,那个事先设置的标志数字将被当作一个指令读入处理器的内核。2023-5-13合肥工业大学计算机与信息学院55软件断点(续)软件断点(续)l此时,系统所读入的指令的数据刚好和data value中的数字相吻合,系统就进入了Debug

    36、模式。这就是软件断点的工作过程。l软件断点的数目不受ARM内核的Watchpoint数目的限制,不管系统设置多少个软件断点,仅仅使用了ARM内核的一个Watchpoint资源。l软件断点是通过替换系统的断点地址的指令实现的,所以,软件断点只能在可写的存储器的地址中设置(比如:RAM),而不能在ROM(比如:Flash)中设置。2023-5-13合肥工业大学计算机与信息学院56断点设置小结断点设置小结l总之,在有两个Watchpoint资源的ARM7TDMI的内核中,断点可以有如下情况:l2个硬件断点,没有软件断点l1个硬件断点,任意多个软件断点l任意多个软件断点2023-5-13合肥工业大学计

    37、算机与信息学院573.4.8 ARM调试接口调试接口lARM7TDMI调试接口基于IEEE标准1149.1-1990以及标准测试访问口和边界扫描体系结构(Standard Test Access Port and Boundary-Scan Architecture)。l调试扩充可强迫内核进入下列模式之一:l暂停模式(调试模式):暂停模式(调试模式):在断点或观察点,内核进入调试状态。在调试状态,内核停止工作并与系统的其它部分隔离。当调试完成后,调试主机恢复内核和系统状态,程序重新开始执行。l监控模式:监控模式:在断点或观察点,形成指令中止或数据中止而不进入调试状态。内核仍正常接受和服务中断。

    38、2023-5-13合肥工业大学计算机与信息学院58调试阶段调试阶段l外部调试接口信号或嵌入式ICE-RT逻辑请求迫使ARM7TDMI进入调试状态。激活调试的事件如下:l断点断点(取指);l观察点观察点(数据访问);l外部调试请求外部调试请求。l使用JTAG格式的串行口检测ARM7TDMI的内部状态。在暂停模式下,这可确保不使用外部数据总线即可将指令串行插入进内核流水线。l例如,在调试状态,存储多个寄存器指令(STM)可以插入指令流水线,输出ARM7TDMI寄存器的内容。数据可以串行移出而不影响系统的其它部分。l在监控状态,JTAG接口用于在调试器与运行在ARM7TDMI核上简单的监控程序之间传

    39、送数据。2023-5-13合肥工业大学计算机与信息学院59时钟时钟 lARM7TDMI核有如下2个时钟:lMCLK是存储器时钟;lDCLK是内部调试时钟,由测试时钟TCK生成。l在正常工作期间,内核由MCLK时钟驱动,内部逻辑保持DCLK为低电平。l当ARM7TDMI在暂停模式时,在TAP状态机控制下,内核由DCLK供给时钟,MCLK自由运行。选择的时钟在信号线ECLK上输出以便由外部系统使用。2023-5-13合肥工业大学计算机与信息学院60调试接口信号调试接口信号l与调试接口有关的外部信号主要有如下3个:lBREAKPT和DBGRQ是处理器进入调试状态的系统请求信号;lDBGACK是指示内

    40、核处于调试状态的信号。l进入调试状态的入口(1)在断点进入调试状态在断点进入调试状态(2)在观察点进入调试状态在观察点进入调试状态(3)由调试请求进入调试状态由调试请求进入调试状态2023-5-13合肥工业大学计算机与信息学院61调试接口信号(续)调试接口信号(续)l调试状态下ARM7TDMI的动作l在暂停模式下,除nMREQ和SEQ外,所有存储器接口输出发生与存储器系统异步的改变。l在监控模式下,ARM7TDMI继续执行指令,存储器接口的行为正常。2023-5-13合肥工业大学计算机与信息学院62ARM处理器的处理器的实时实时JTAG仿真器仿真器与开发板的连线图与开发板的连线图2023-5-

    41、13合肥工业大学计算机与信息学院63第第5讲重点讲重点l测试摩尔定律l边界扫描单元和JTAG扫描链lARM的JTAG调试结构lARM7TDMI的JTAG扫描链结构lJTAG状态机的状态转换图lJTAG标准信号和JTAG工作原理lARM公司的嵌入式ICE-RT功能和结构l硬件断点和软件断点lARM处理器的JTAG仿真器接线2023-5-13合肥工业大学计算机与信息学院64第第5讲讲 复习题和思考题复习题和思考题l哪些类型的半导体集成电路芯片内嵌了JTAG扫描电路?l测试摩尔定律的主要观点是什么?l试阐述JTAG标准的基本概念。lARM处理器的JTAG调试结构对于其他含有JTAG接口的嵌入式处理器或者芯片也适用吗?lJTAG协议转换器有哪些功能?lJTAG扫描链能够完成哪几种基本操作?l嵌入式ICE-RT逻辑可以设置几个调试断点?l硬件断点和软件断点有什么区别?l试在因特网上检索几种ARM仿真器,并指出各自的技术特点?

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第05讲第3章JTAG技术课件.ppt
    链接地址:https://www.163wenku.com/p-5873434.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库