嵌入式系统基础教程第05讲第3章JTAG技术

上传人:cl****1 文档编号:568227928 上传时间:2024-07-23 格式:PPT 页数:65 大小:1.50MB
返回 下载 相关 举报
嵌入式系统基础教程第05讲第3章JTAG技术_第1页
第1页 / 共65页
嵌入式系统基础教程第05讲第3章JTAG技术_第2页
第2页 / 共65页
嵌入式系统基础教程第05讲第3章JTAG技术_第3页
第3页 / 共65页
嵌入式系统基础教程第05讲第3章JTAG技术_第4页
第4页 / 共65页
嵌入式系统基础教程第05讲第3章JTAG技术_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《嵌入式系统基础教程第05讲第3章JTAG技术》由会员分享,可在线阅读,更多相关《嵌入式系统基础教程第05讲第3章JTAG技术(65页珍藏版)》请在金锄头文库上搜索。

1、酉翔抡奈斟侯撤逻刷浅店崇羚生妓端激父精摘蹲抬巍哨厂霹勤毛昆笺照段嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统原理与开发嵌入式系统原理与开发第第5讲讲南京大学计算机系 俞建新主讲祈磨倍甲澄闭尝稚储夜远意譬丫系敦蓝柠米邱嘻耀器逼蝉泅缩瓶诸鸣傀象嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术第第3章章 嵌入式微处理器技术基础嵌入式微处理器技术基础l本章主要介绍以下内容:l嵌入式微处理器典型技术l主流嵌入式微处理器l嵌入式处理器的调试技术l边界扫描测试技术JTAG捕椒阜苫冒匆庐魄韩蛊蕾锨缺堂于沽菜间空蜂拴手

2、卒娱荧辖薯蕴流龋幕吏嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日2南京大学计算机系3.4 边界扫描测试接口边界扫描测试接口JTAGlJTAG是一种片上调试接口,即OCD接口。lOCD英文原文:lOn-Chip Debugging InterfacelJTAG的建立使得集成电路固定在PCB(Printed Circuit Board,印刷电路板)上,只通过边界扫描便可以被测试。l含有JTAG口的芯片种类较多,如CPU、DSP、CPLD/FPGA等,广泛得到应用。挎敲邹窿凰爱阎忿稗巴扑傈契哲脯纶忠缎抵豺椒某吩渡济检铀谗假些戊习嵌入式系

3、统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日3南京大学计算机系3.4.1 测试摩尔定律测试摩尔定律l1999年英特尔公司的副总裁Patrick Celsinger先生在美国大西洋城举行的国际测试会议上提出了测试摩尔定律,并就此了讲演。l该定律预测未来几年,每一晶体管的硅投资成本将低于其测试成本。lPatrick Celsinger先生指出,硅成本已迅速下降,硅成本已迅速下降,测试成本却基本保持不变测试成本却基本保持不变。并且,被测器件的速度常常比测试设备能测的速度高。也就是说,测试设备的发展速度已跟不上测试对象的发展。同时,测试成本在制造

4、成本中所占比例过大。 咖玉镊蛊片揣郎徊榨计蛀景挠札采云猎沼肌戎把系倒证侈扰虾嗜隋近肮浆嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日4南京大学计算机系3.4.2 JTAG基本概念基本概念lJTAG是Joint Test Action Group(联合测试行动组)的缩写,联合测试行动组是IEEE的一个下属组织l该组织研究标准测试访问接口和边界扫描结构(Standard Test Access Port and Boundary-Scan Architecture)lJTAG的研究成果被接纳为IEEE1149.1-1990规范lJTAG

5、成为电子行业的一种国际测试标准l现在,人们通常用JTAG来表示IEEE1149.1-1990规范,或者满足IEEE1149规范的接口或者测试方法。块闸鲍椒事忆唆侩掸妇眯炽飞岗佯诈啄芬夏革盯缮捞掣恐几绅舔朔掩藻宽嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日5南京大学计算机系JTAG扫描循环示意图扫描循环示意图包廉栗苔说却笔奴惩受曹曙语耐箍恍毡撤吨曹润赃纵戌倪崔甚睹假赫慷新嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日6南京大学计算机系边界扫描单元边界扫描单元lJTAG标准

6、定义了一个串行的移位寄存器l寄存器的每一个单元分配给IC芯片的相应引脚l每一个独立的单元称为BSC(Boundary-Scan Cell)边界扫描单元l这个串联的BSC在IC内部构成JTAG回路l所有的BSR(Boundary-Scan Register)边界扫描寄存器通过JTAG测试激活摘后窘中溃辈烃汛扮肿杠窑颁照夹鼓舱王砾赖藤冠尹式桅跑憾导狗臆酒孵嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日7南京大学计算机系ARM的的JTAG调试结构调试结构着肪类乃黔稻盏稀拖硷羞托路芬锡丛亮搁抉陛佯哥兼砖徐竟名究诉寻摸粟嵌入式系统基础教程第0

7、5讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日8南京大学计算机系ARM7TDMI调试结构调试结构(英文英文)廖种砍姜教束愚课参尉昔焊字绝示壁见狡嘘赂夜勤辉模势线呐哉广齐腥沥嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日9南京大学计算机系ARM调试系统说明调试系统说明l调试系统一般包括3部分:l调试主机调试主机是运行软件调试器的计算机l例如ADW,ARM Debugger for Windowsl调试主机允许发出高级命令,如设置断点或检查存储器内容。l协议转换器协议转换器处理调试主机调试主机和A

8、RM7TDMI处理器JTAG接口接口之间的通讯l包括调试主机发出的高级命令以及JTAG接口的低级命令。l一般通过增强型并行口进行连接。撼轨柯纶渠腋壮捎袁擂朝桅隆橇沟铰原官滞朗舶煤仔等盆宏帧诗帘侥汐久嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日10南京大学计算机系ARM调试系统说明(续)调试系统说明(续)l调试目标调试目标lARM CPU主处理器逻辑:对调试有硬件支持。l嵌入式ICE-RT逻辑:这是用于产生调试异常(如断点)的寄存器和比较器的集合。lTAP控制器:用JTAG串行接口控制扫描链的动作。妓叼芒赵立您炬递采刽晒匝什稗耻妈俘

9、蝎尾驭榨逻口值笋欲熙攻袍肪凹蚂嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日11南京大学计算机系协议转换器的调试扩充功能协议转换器的调试扩充功能lARM7TDMI具有易于在最低层调试的硬件扩充,其调试扩充功能如下列出:l允许暂停程序的执行;l检查和修改内核的内部状态;l查看和修改存储器系统的状态;l执行中止异常,允许实时的内核监控;l重新开始程序执行。侄憾钾恿免霞淌毁加临纷熙筷峨鼠笺鲤阅决挚铆犊却耀煤粤礁侥旅延联僳嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日12南京大学

10、计算机系3.4.3 ARM7TDMI扫描链布局扫描链布局必邑埃沈锣做笼峰憨旺锐参罪斥膀恶蒂替遗酬断响酌鱼毛耘烘装呐乾怔亿嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日13南京大学计算机系ARM7TDMI内核扫描链结构内核扫描链结构113位38位33位项弟浦君怯献吾毁果桌违皂笛姿走拱副蚁郎师吧设闸醇聘掸蚁租岳氓求尊嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日14南京大学计算机系JTAG接口的接口的IC内部结构内部结构间型支猛苟捏摘欠巢汕怂喷屉詹铡乖陵题泞娜型咯肛烫沤召淤域

11、乏伪到诺嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日15南京大学计算机系JTAG状态转换图状态转换图默叙核因谤犀补馁芭铬骤乔仍肝宵汛杀获扦沥氦靠阵澈育丛旺疏徘广鼓玻嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日16南京大学计算机系JTAG信号信号lTMS:测试模式选择(Test Mode Select)l通过TMS信号控制JTAG状态机的状态。lTCK:JTAG的时钟信号lTDI:数据输入信号lTDO:数据输出信号lnTRST:JTAG复位信号,复位JTAG的状态机和内

12、部的宏单元(Macrocell)。壬州橱锄搭婉电铀睡新懈男触某完我捧泡星瘦辜厦浙掀挚景瞳幻允钮吏缚嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日17南京大学计算机系3.4.4 TAP控制器控制器lTAP控制器内部有多个寄存器l测试数据寄存器lJTAG控制指令寄存器l旁路寄存器lARM7TDMI器件识别码(ID)寄存器l扫描路径选择寄存器悬琅耸揪榔养跌咨圾帖胰岛正雀玄检淡电怒嘻唁肠隧霓烬当哟阅旬零熏那嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日18南京大学计算机系JTAG

13、的的TAP控制器结构控制器结构价抠鸯冯槛究蜡噎泪早瓢汇帆迁遮卢伶戮尚络部矽掂艰侣甚指籍洁冷公意嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日19南京大学计算机系测试数据寄存器测试数据寄存器l在TDI和TDO之间可以连接的测试数据寄存器有如下8个:l指令寄存器;l旁路寄存器;lARM7TDMI的器件识别(ID)码寄存器;l扫描路径选择寄存器;l扫描链0、1、2和3。辟进励黎留姓屹器拥舶靳阎洁金壕刘埋瞪磨毯淀户拄郝杀阁弓偏舞清侵默嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日

14、20南京大学计算机系JTAG控制指令寄存器控制指令寄存器lJTAG接口中指令寄存器长度是4位l在指令寄存器共安排10条控制指令,见下表。指令二进制指令二进制EXTEST0000HIGHZ0111SCAN_N0010CLAMPZ1001SAMPLE/PRELOAD0011INTEST1100RESTART0100IDCODE1110CLAMP0101BYPASS1111识狭抑磷淆幸囊亡辫弄鹊膀缀劳颂仰镊棒铝尔缀矮豢配瞧峻惨笆棍阶饵永嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日21南京大学计算机系JTAG的指令寄存器的指令寄存器l在S

15、HIFT-IR态,将指令寄存器选做TDI和TDO之间串行路径。见(a)l在UPDATE-IR态,指令寄存器的值成为当前指令。见(b)l在CAPTURE-IR态,将b0001加载到该寄存器。该值在SHIFT-IR态移位输出。见(c)l复位时,IDCODE(b1110)成为当前指令。见(d)l指令寄存器的最低有效位首先被扫描输入和输出。指令寄存器TDITDOSHIFT-IR状态状态(a)指令寄存器值=0001CAPTURE-IR状态状态(c)TDITDO当前指令寄存器TDITDOUPDATE-IR状态状态(b)当前指令寄存器IDCODE=0001IDCODE-IR状态状态(d)TDITDO墙垄傻轮

16、驭贬菌泥演想赦节都汾瘫捍沛窥拣补哎蛰颊驳陕赖诲求嘴崖瘪溢嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日22南京大学计算机系旁路寄存器旁路寄存器l功能:l通过提供TDI和TDO之间的路径,在扫描测试期间对器件旁路。l长度:l1位l操作方式:l当BYPASS指令是指令寄存器中的当前指令时,串行数据在SHIFT-DR态以1个TCK周期的延迟从TDI传到TDO。旁路寄存器没有并行输出。l在CAPTURE-DR态,从旁路寄存器的并行输入端装入“0”。流场颅鲤年毖设人傈辅粗世唬舒慢手急去懈有温舅搐隆懂价旧棒虹躺锣恳嵌入式系统基础教程第05讲第3

17、章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日23南京大学计算机系ARM7TDMI器件器件识别码识别码(ID)寄存器寄存器l识别码用途:读32位器件识别码。不提供可编程的识别码。l长度:32位。寄存器的格式如下图所示。l操作方式l当IDCODE指令是当前指令时,将ID寄存器选做TDI和TDO之间的串行路径。ID寄存器没有并行输出。在CAPTURE-DR态,32位器件识别码从其并行输入端加载到ID寄存器。寄存器的最低有效位首先被扫描输出。版本 4位部件编号 16位制造者标识 12位0311128吊柏鸟菱侵纯肤青外壹答妖灾视柏孝库峙贱告者牢玲豪竭烟促辜菠所扶塔嵌入式

18、系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日24南京大学计算机系扫描路径选择寄存器扫描路径选择寄存器l用途和长度l变换当前活动的扫描链,4位。l操作方式l仅当执行了一条SCAN_N指令或当发生复位时,当前所选的扫描链改变。复位时,将扫描链0选做活动的扫描链。l在SHIFT-DR态, SCAN_N指令把扫描路径选择寄存器作为TDI和TDO之间的串行数据移位路径。l在CAPTURE-DR态,将b1000加载到该寄存器。这个值在SHIFT-DR态加载输出,同时装入新值。l在UPDATE-DR态,由寄存器中的值选择一个扫描链成为当前活动的扫描链

19、。所有进一步的指令(如INTEST)都应用到该扫描链上。唯障猿娟铆绞谅频祭咐土躁箩胶汗皮秩塘午拉鸡贮弘意猛锐搪荷懂狈药亩嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日25南京大学计算机系扫描链编号分配扫描链编号分配扫描链编号功能0宏单元扫描测试1调试2嵌入式ICE-RT逻辑编程3外部边界扫描(由ASIC设计者实现)4保留8保留露余苏悯赴朔懒菩享茸子恫谰做崇霹娄明陷馋益穗屁妄傣郧煤挑层号朴型嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日26南京大学计算机系3.4.5 JTA

20、G扫描链工作原理扫描链工作原理lJTAG扫描链由扫描单元组成l每一个被测试逻辑电路引出信号线同它的引脚之间配置一个扫描单元l每一个扫描单元的内部由两个D触发器和两个多路选择器组成l分别把逻辑电路输入输出线同引脚之间的穿越扫描单元的电流方向成为横向,沿扫描单元串接线运动的电流方向成为纵向。lJTAG扫描链一共有四种操作:挂起、捕获、移位和更新。偿晓蟹辕剁弹建乾满皂询扎告阅甩点羔综毖雪猖隘茶茶瓶贵封气碉惜接陋嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日27南京大学计算机系JTAG扫描单元构造扫描单元构造纵向纵向横向横向横向四种操作四种

21、操作: 挂起,挂起,移位,俘获,更新移位,俘获,更新迟敏州秉毡树竞骆蛮琼医骡乓桨墟象致沽看桓之戎诲抗障杭瞎峨店舅简洞嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日28南京大学计算机系JTAG扫描链的组成扫描链的组成LogicPinPinPinPinLogicLogicLogicLogic纵向横向PinPinLogic黎徒蓑拌涯锻疫煎禁负培镰丝延刨杖阮稗碗叛普拦烁啊摘圾默荤假饶巴父嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日29南京大学计算机系JTAG处于挂起状态处于挂起

22、状态横向直行横向直行横向直行横向直行如同扫描链如同扫描链不存在不存在伶窑兽仔棱帖翰辽硷仁件韵殴江钒茅桨轩葵交寸捻谰卢挡膊诣运衙闷简靖嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日30南京大学计算机系捕获捕获JTAG状态状态当前引脚当前引脚信号的快照信号的快照存入扫描链存入扫描链杠全拘甭镁阶锚扯系座唇缸姑储蛮址亢乳寺洼碘嗽亮宙还醛用吊坤印溃釉嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日31南京大学计算机系移位数据移位数据纵纵向向直直行行此刻处理此刻处理器的工作器的工作脉冲

23、暂停脉冲暂停姜返每派铝仪揉遏磕偷紧劲点具面公挟咐剁国滩扔腻绘誉龋贿柑桶畴煮斟嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日32南京大学计算机系移位结束移位结束纵纵向向直直行行此刻处理此刻处理器的工作器的工作脉冲暂停脉冲暂停存翘骂洼店铆侯钠累舷创携真渠适嘴呼狸殿亥狐有珐扶梳苛呈弱陨佩瑰轴嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日33南京大学计算机系数据更新数据更新JTAG扫描链取扫描链取代系统向处理器代系统向处理器输入信号,并且输入信号,并且替代处理器向系替代处理器向系

24、统输出信号。统输出信号。陷幽厘贺炬巩季纂裴烬草戊阂意挥幸按逃疙涅狸桌柑勤骡酚例僧莹大抑柬嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日34南京大学计算机系扫描链扫描链0lScan Chain 0:有113个扫描单元,包括ARM核的所有的I/O、地址数据总线和输入输出控制信号。这条链上的信号复杂,不易控制,但是包含的信息丰富,可以通过这条链得到ARM7TDMI内核的所有信息。l从查询数据输入到输出,扫描链的顺序为:(1)数据总线位0-位31;(2)内核控制信号;(3)地址总线位31-位0;(4)嵌入式ICE-RT控制信号。l嵌入式IC

25、E-RT控制信号(特别是DBGRQI)首先被扫描输出。限疮胡熄炬役扛顶曹懈仲答浪时抽丫懒汛蚁膘核灰狙札察棋蛆詹藕挽悔自嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日35南京大学计算机系扫描链扫描链0单元单元编号信号类型编号信号类型132D0D31输入/输出41BL0输入33BREAKPT输入42BL1输入34NENIN输入43BL2输入35NENOUT输出44BL3输入36LOCK输出45DCTL输出37BIGEND输入46nRW输出38DBE输入47DBGACK输出39MAS0输出48CGENDBGACK输出40MAS1输出49n

26、FIQ输入丢吞挞巫造不欺撞烽滨疹点纽冰埔楔森刹肋挟猫俗删岗胞恃壳慰证者钻迸嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日36南京大学计算机系扫描链扫描链0单元单元(续续1)编号信号类型编号信号类型50nIRQ输入59nMREQ输出51nRESET输入60SEQ输入52ISYNC输入61nTRANS输入53BRGRQ输入62CPB输入54ABORT输入63nM4输出55CPA输入64nM3输出56nOPC输出65nM2输出57IFEN输入66nM1输出58nCPI输出67nM0输出座缮诅涎阵莉抵泊焉肇壹硕拷古桶多奔擒孰鹊矾菩棒放皱姓邮

27、陪既测婆详嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日37南京大学计算机系扫描链扫描链0单元单元(续续2)编号信号类型编号信号类型68nEXEC输出69ALE输出70ABE输入71APE输入72TBIT输出73nWAIT输入74105A31A0输出106113ICE-RT信号体叙浊钮秀棱滩肝达痢劫馅误礁枉熟娟匣擦烙逢筒憋撰钢卿蛛莲盏唱郴剪嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日38南京大学计算机系扫描链扫描链1l扫描链1:有33个扫描单元,包括ARM核的数据总线和

28、一个断点控制信号。这是一条很有用的链,通过控制这条链,可以控制ARM核执行指定的指令,从而实现对ARM的内部寄存器、协处理器以及外部存储器的读写操作。镐锐苗银羚克矾案乞郧蜒缺右沿售畦忿叭色评相栅映褂泰喇诀尖此助院喉嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日39南京大学计算机系扫描链扫描链1(续)(续)l扫描链1的前32位用于数据值,加上在BREAKPT内核输入上的扫描单元。第33位有如下4个用途:l在正常INTEST测试条件下,允许将已知值扫描到BREAKPT的输入。l在EXTEST测试条件下,捕获从系统加到BREAKPT输入的

29、值。l在调试期间,第33位的值决定在执行指令之前ARM7TDMI核是否同步回系统速度。lARM7TDMI核进入调试状态后,该位第一次被捕获并被扫描输出。其值告诉调试器内核是否由断点(位33清零)或由观察点(位33置位)进入调试状态。臻垄扬便昭炭缘礼机瞄续烁篷惶寨盖岁傻俭榨博凯簇糯瞄椭熊病炒曼抛伍嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日40南京大学计算机系扫描链扫描链2lScan Chain 2共有38个扫描单元,通过控制EmbeddedICE宏单元,实现对ARM执行指令的断点、观察点的控制。l从TDI到TDO的扫描链次序如下:

30、l读/写;l寄存器地址位4-位0;l数据值位31-位0。奋貉顿忍甲犬侵烩唤诱盖篮窘汲顿裂垃压珍开鸣殃化从豆寿裤请哈恶磺笺嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日41南京大学计算机系3.4.6 嵌入式嵌入式ICE-RT逻辑逻辑l嵌入式ICE-RT逻辑也称为Embedded ICE或者Embedded ICE-RT,其主要功能是为ARM7TDMI核提供集成的在线调试支持。lARM公司的片上测试部件。l使用ARM7TDMI的TAP控制器来控制嵌入式ICE-RT逻辑的串行数据输入。l下图给出了内核、嵌入式ICE-RT逻辑和TAP控制器

31、之间的关系。图中仅显示了有关的信号。社瘟逸彤豌谈用闪恰驯蝎链节咬苦娇猿鹅寂堤逢孰仆邹橱兄塑室贾案限围嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日42南京大学计算机系嵌入式嵌入式ICE-RT连线结构图连线结构图酒坚割辈幽抓赁沈劝资议苫栖面矿艘百蜡督霉盂司寿尺原邵式焚韦底郊玄嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日43南京大学计算机系嵌入式嵌入式ICE-RT逻辑的组成逻辑的组成l嵌入式ICE-RT逻辑的组成如下:l2个实时观察点单元;l3个独立的寄存器:调试控制寄存器

32、、调试状态寄存器、中止状态寄存器;l调 试 通 信 通 道 DCC(Debug Communications Channel)。怂别瓜炭隋歉尘声祁压功毅理揩鄂召锈瘸品廊谰狰铁奶莱毙略屋强辽蹿峨嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日44南京大学计算机系嵌入式嵌入式ICE-RT逻辑的组成(续)逻辑的组成(续)l调试控制寄存器和调试状态寄存器提供嵌入式ICE-RT操作的所有控制。在选择监控模式时使用中止状态寄存器。l可以编程1个或2个观察点单元来暂停内核程序的执行。当编程进入嵌入式ICE-RT的值与当前出现在地址总线、数据总线和各

33、种控制信号的值匹配时,暂停执行。冀僧谴魄吧隋耪耳绩职垒趣誊旦傈南稼须制苫缚颇樟乱惭侍融洁藤六蔡埃嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日45南京大学计算机系EmbeddedICE的数据结构的数据结构lEmbeddedICE是集成在ARM内核中的嵌入式ICE仿真器。其结构如下图所示。l通过对EmbeddedICE的控制,对EmbeddedICE中寄存器的读取,可以获得ARM内核的状态,为程序设置断点以及读取Debug通讯通道。lEmbeddedICE的串行数据长度是38位,包括:l32位数据l5位的访问EmbeddedICE中寄

34、存器的地址l1个读写控制位诱袱龙分渠孜甲闽胚椿斧烫垒首畏霓裸伸惑偏叁地秩尹巷痕勉娟谚申悔辛嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日46南京大学计算机系EmbeddedICE结构结构EmbeddedICE扫描链共38位遭但鞘慑放苹是琼崭棺胶耽侵尸疼拆卤裂纪阿蔡舰懒猛眉折煎螺骗泞涎爸嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日47南京大学计算机系EmbeddedICE的寄存器的寄存器地址宽度功能地址宽度功能000006Debug control011009Watchp

35、oint 0 control value000015Debug status011018Watchpoint 0 control mask000101Abort status1000032Watchpoint 1 address value001006Debug commands control register 1000132Watchpoint 1 address mask0010132Debug commands data register 100102Watchpoint 1 data value01000 32Watchpoint 0 address value 1001132Wat

36、chpoint 1 data mask0100132Watchpoint 0 address mask 101009Watchpoint 1 control value0101032Watchpoint 0 data value 101018Watchpoint 1 control mask0101132Watchpoint 0 data mask 每壁轴绒础实汁宁吴削拄剁金钟宏小鹅窜靖蔼港南悲秀很百絮抠都华台揽嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日48南京大学计算机系Watchpoint寄存器的使用寄存器的使用 lEmbe

37、ddedICE的一个主要作用就是可以在ARM的程序中设置软件或者硬件的断点。l在EmbeddedICE中,集成了一个比较器,比较器负责把ARM处理器取指的地址A31:0、数据D31:0以及一些控制信号与EmbeddedICE中Watchpoint寄存器中设置的数值相比较l具体的说应该是进行同或运算l比较的结果用来确定输出一个ARM的断点(Breakpoint)信号。l具体的运算关系如下公式所描述:l(Av31:0,Cv4:0 XNOR A31:0,C4:0) OR Am31:0,Cm4:0 = 0x1FFFFFFFFF愤卑绑妊蒜塘具瘫惫痕蔚泛佬篓嘱凯赋寄摧伺跋袁筏剐谦蔡嘘泣麻脱烙盆嵌入式系统基

38、础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日49南京大学计算机系EmbeddedICE断点信号条件断点信号条件l当上述表达式为真的时候,断点信号有效,ARM的内核就进入了Debug模式。l在Debug模式下,ARM内核的时钟从系统的主时钟(MCLK)被替换成跟踪时钟(DCLK)。l跟踪时钟(DCLK)是通过在JTAG的状态机的Run-test/Idle状态的TCK来控制的。 甲当纠才囚裙户撑畸民痒忌衫岳颖滞职匈驭捣贬喻方饲嗣顾贬云衡泞铃们嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14

39、日50南京大学计算机系Watchpoint表达式的含义表达式的含义 信号说 明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的核中得到的总线的数据,也就是当前处理器取址所

40、到的数据Cv8:0Watchpoint中控制寄存器(control register)中的数据Cm7:0Watchpoint中控制mask寄存器(control mask register)中的数据C9:0ARM7TDMI的控制总线袁辑何玫泄携逼豪氏视昭凉谷酱默锌竿唉滓冻英申予抉链绝产缕衰羽岛酸嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日51南京大学计算机系3.4.7 ARM7TDMI断点的设置断点的设置lARM中断点的设置主要是设置EmbeddedICE中的寄存器l主要包括:设置EmbeddedICE的两个watchpoint单

41、元的地址、数据或控制信号寄存器。l当一个(或者两个)watchpoint寄存器满足条件的时候,ARM就从运行状态进入Debug状态。l也就是与ARM中的地址(也可以包括数据)和ARM所执行的当前的指令相同的时候坤洒箭屎毖滦驾炙忱汗排带标丢高潦性饭召提托绳杖贺潍涛侗膜葬右兄猜嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日52南京大学计算机系硬件断点和软件断点硬件断点和软件断点l在ARM7TDMI处理器的内核中,有两种断点的设置方式:硬件断点和软件断点硬件断点和软件断点l硬件断点l通过设置EmbeddedICE中的Watchpoint寄

42、存器中的地址相关的寄存器,来实现断点。l通过这种方式设置断点,断点数目受EmbeddedICE中的Watchpoint数目的限制(在ARM7TDMI处理器的内核中,只有两组Watchpoint寄存器,最多只能设置两个硬件断点)。l硬件断点可以在任何地方设置。不受存储器类型的限制。尝绥箩奈戎牛维棕胖惊助惠悲礁筒爷梁增托掸堑邑晌混烁案耕拉亭碳胶紊嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日53南京大学计算机系软件断点软件断点l软件断点的实现比较复杂,需要如下几个步骤:l通过设置EmbeddedICE中的Watchpoint寄存器中的数

43、据相关寄存器(data value和data mask value)为一个特殊的32位数字ARM的未定义指令,比如:0x06000010。l替换RAM中的指令为上面所设置的那个未定的指令0x06000010,作为一个标志。l当系统运行到RAM中所设定的单元位置时候,那个事先设置的标志数字将被当作一个指令读入处理器的内核。四仆辅樱良逆斥霸釉仆粉障谊封橡炭律雍造琴军续逻堡卑漓袒恭哩壬圆关嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日54南京大学计算机系软件断点(续)软件断点(续)l此时,系统所读入的指令的数据刚好和data value中

44、的数字相吻合,系统就进入了Debug模式。这就是软件断点的工作过程。l软件断点的数目不受ARM内核的Watchpoint数目的限制,不管系统设置多少个软件断点,仅仅使用了ARM内核的一个Watchpoint资源。l软件断点是通过替换系统的断点地址的指令实现的,所以,软件断点只能在可写的存储器的地址中设置(比如:RAM),而不能在ROM(比如:Flash)中设置。票恨湘骚助创小贝铜授厉炔奉扬赴税投竞颗辜帕谚钉荷迸碎嫩遁譬曼造译嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日55南京大学计算机系断点设置小结断点设置小结l总之,在有两个Wa

45、tchpoint资源的ARM7TDMI的内核中,断点可以有如下情况:l2个硬件断点,没有软件断点l1个硬件断点,任意多个软件断点l任意多个软件断点胡轮设新优厂仇悲牌享馒色蹭探怨垮氓拇柒霞评迎农棋部列哎伎悸镊惭鳞嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日56南京大学计算机系3.4.8 ARM调试接口调试接口lARM7TDMI调试接口基于IEEE标准1149.1-1990以及标准测试访问口和边界扫描体系结构(Standard Test Access Port and Boundary-Scan Architecture)。l调试扩充

46、可强迫内核进入下列模式之一:l暂停模式(调试模式):暂停模式(调试模式):在断点或观察点,内核进入调试状态。在调试状态,内核停止工作并与系统的其它部分隔离。当调试完成后,调试主机恢复内核和系统状态,程序重新开始执行。l监控模式:监控模式:在断点或观察点,形成指令中止或数据中止而不进入调试状态。内核仍正常接受和服务中断。傲牵巾丘认弓惭泣洱关洋躺筒源夫攻愿荡挠扛妥友谐弘嫌唯吼檄莎话阅淑嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日57南京大学计算机系调试阶段调试阶段l外部调试接口信号或嵌入式ICE-RT逻辑请求迫使ARM7TDMI进入调

47、试状态。激活调试的事件如下:l断点断点(取指);l观察点观察点(数据访问);l外部调试请求外部调试请求。l使用JTAG格式的串行口检测ARM7TDMI的内部状态。在暂停模式下,这可确保不使用外部数据总线即可将指令串行插入进内核流水线。l例如,在调试状态,存储多个寄存器指令(STM)可以插入指令流水线,输出ARM7TDMI寄存器的内容。数据可以串行移出而不影响系统的其它部分。l在监控状态,JTAG接口用于在调试器与运行在ARM7TDMI核上简单的监控程序之间传送数据。市今郑剖帖区讼橱爷形终亏庐冯担竖汐韧讣滦讽场厘柳橙嫩霍开登宽殃坚嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第0

48、5讲第3章JTAG技术2008年3月14日58南京大学计算机系时钟时钟 lARM7TDMI核有如下2个时钟:lMCLK是存储器时钟;lDCLK是内部调试时钟,由测试时钟TCK生成。l在正常工作期间,内核由MCLK时钟驱动,内部逻辑保持DCLK为低电平。l当ARM7TDMI在暂停模式时,在TAP状态机控制下,内核由DCLK供给时钟,MCLK自由运行。选择的时钟在信号线ECLK上输出以便由外部系统使用。审施抒叼赋罢脆纪迂雍浓剪杆衙纵龟霍戒朴吵霉眶芹导耘眠迸谜崎业雨矣嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日59南京大学计算机系调试接

49、口信号调试接口信号l与调试接口有关的外部信号主要有如下3个:lBREAKPT和DBGRQ是处理器进入调试状态的系统请求信号;lDBGACK是指示内核处于调试状态的信号。l进入调试状态的入口(1) 在断点进入调试状态在断点进入调试状态(2) 在观察点进入调试状态在观察点进入调试状态(3) 由调试请求进入调试状态由调试请求进入调试状态价抵淤讨司话妹逆谈算磨述萄届赞是门屉邱毕铁正欠辱攒簇迟豆侄颐瑚胜嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日60南京大学计算机系调试接口信号(续)调试接口信号(续)l调试状态下ARM7TDMI的动作l在暂

50、停模式下,除nMREQ和SEQ外,所有存储器接口输出发生与存储器系统异步的改变。l在监控模式下,ARM7TDMI继续执行指令,存储器接口的行为正常。奇闻闸殷牟肇隙触鸽侄拖盎丸飘渍边沁崔炎横住琳洲壕漠扯嫉钵拖刹龄峪嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日61南京大学计算机系ARM处理器的实时处理器的实时JTAG仿真器仿真器与开发板的连线图与开发板的连线图沾励吐昨拎诈扯疵焚濒激鱼寒陈轴歌揭伶找镶逆谤使韧忙瓮莲挑解寿狠骤嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日62南

51、京大学计算机系第第5讲重点讲重点l测试摩尔定律l边界扫描单元和JTAG扫描链lARM的JTAG调试结构lARM7TDMI的JTAG扫描链结构lJTAG状态机的状态转换图lJTAG标准信号和JTAG工作原理lARM公司的嵌入式ICE-RT功能和结构l硬件断点和软件断点lARM处理器的JTAG仿真器接线祷赚刺篙幕规笔建母神庙矫趣粤诈购笛类尸筏帐踏准凹墩顺玻量哲抹岂倘嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日63南京大学计算机系第第5讲讲 复习题和思考题复习题和思考题l哪些类型的半导体集成电路芯片内嵌了JTAG扫描电路?l测试摩尔定律

52、的主要观点是什么?l试阐述JTAG标准的基本概念。lARM处理器的JTAG调试结构对于其他含有JTAG接口的嵌入式处理器或者芯片也适用吗?lJTAG协议转换器有哪些功能?lJTAG扫描链能够完成哪几种基本操作?l嵌入式ICE-RT逻辑可以设置几个调试断点?l硬件断点和软件断点有什么区别?l试在因特网上检索几种ARM仿真器,并指出各自的技术特点?虏卧厦擂欣咀谤薄袍姻甄降姓婪页馏瞎挛忙谁瑟湿彤遗蔬草悉唁以投植雄嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日64南京大学计算机系第第5讲结束讲结束谢谢大家的使用!欢迎大家提出宝贵意见和建议!此竿嫡砂斥肩返构妻墙圣蛤舵夕盘暴逐睫玄屹漠培垂摔氖翼畅姚沽计呜邵嵌入式系统基础教程第05讲第3章JTAG技术嵌入式系统基础教程第05讲第3章JTAG技术2008年3月14日65南京大学计算机系

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号