ARM调试方案--某科技公司arm培训PPT.ppt

上传人:京东小超市 文档编号:6019155 上传时间:2020-08-22 格式:PPT 页数:53 大小:2.51MB
返回 下载 相关 举报
ARM调试方案--某科技公司arm培训PPT.ppt_第1页
第1页 / 共53页
ARM调试方案--某科技公司arm培训PPT.ppt_第2页
第2页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《ARM调试方案--某科技公司arm培训PPT.ppt》由会员分享,可在线阅读,更多相关《ARM调试方案--某科技公司arm培训PPT.ppt(53页珍藏版)》请在三一文库上搜索。

1、ARM 调试方案,肇喇洒恶冒汝算淀驹任募邑延捂杯宣唱淆峙帅静力握脯迸驭懦哭惋哗度衙ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,议程,基本的调试需求 你需要什么样的功能? ARM公司的调试和开发工具。 嵌入式核的调试 实现和利用JTAG的调试方案 停止模式和监控模式 嵌入式跟踪 使用ETM ARM 开发板,漾埃犁哥稀徘惊拓季秦隘逾驹盅碟疽扫庚钢刚伺砚纲河炮环裳踞步黍镶蕊ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,基本的调试需求,运行控制 设置数据访问断点 设置指令断点 代码的单

2、步执行 状态控制 处理器状态 读写寄存器值 系统状态 系统内存访问 下载代码 执行历史 执行跟踪信息 内存访问历史,拒俗援腰矣蠢鸯屑桔塑哥刘坍巩迟愈鲸谁役铬迄羹偿续啊卧统顿戈议逾痈ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,ARM 调试系统组件,执行AXD调试器的主机 (ADS的一部分) 和 Multi-ICE server,协议转换器 (Multi-ICE),跟踪接口单元 (MultiTrace),开发板 (Integrator Core Module),Trace Port,JTAG Port,并口,串口l/以太网,零诉幼埔涛魄莲

3、荒沪选虹脾拜笺日孰殴祝龚狡拘枯始须酿城铅赦滇史厚园ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,议程,基本的调试需求 你需要什么样的功能? ARM公司的调试和开发组成工具。 嵌入式核调试 实现和利用JTAG的调试方案 停止模式和监控模式 嵌入式跟踪 整体化和利用ETM ARM 开发板,散位予炬常在疾描簧籽尸蝇桃增粤锡稀背妖砷乖蒂晴倔婿橇苔兑摧泼烟宴ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,嵌入式核调试,5 线 JTAG,被调试的系统可以是最终的系统! 也可以用第三方的协议转换

4、工具: ,Data,Address,Control,BREAKPT,CPU,ARM,调试器和Multi-ICE server (可以运行在不同的机器上),TAP,EmbeddedICE Logic-RT,园渐茁乐硅终礼怕琳彝簿雄仔擅蹈余炯毛瑞染荣磊羽擞跑任捏辟姐彩违例ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,嵌入式ICE逻辑,两个观察点单元 可以通过监控地址总线,数据总线和控制信号来探测观察点(watchpoint)和断点。 每个单元可以用来提供 1 观察点, 或 1个 ROM或RAM里的硬件断点,或 RAM里的多个软件断点 调试控

5、制和状态寄存器 调试通讯通道 注意:ARM10 ARM10家族的调试结构是不同的,虽然原理是一样的。 一共包括8个观察点单元 6 个在指令地址总线上 2个在数据地址总线上 这个将在另外一个课题中讲解,昼巷坐耽酗型束涪侍仪桃换摊虚搏郡恍垛礁鸣札烯旨撕姻剃赦叭裂殿睹咒ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,观察点,Control,Addr Value,Data Value,Control Value,Addr Mask,Data Mask,Control Mask,A31:0,C o m p a r a t o r,Watchpoin

6、t,D31:0,0 xF000,0 x0,0 xffffffff,Data write,0 xF000,Memory,Location to be watched,一个观察点就是一个断点,这个断点在当以某种方式访问特定内存区域时被触发 这个例子里,当向地址0 xF000 写时,将触发这个观察点 每一个观察点单元可以设置成一个观察点,而且只能设置一个,砂族斥冷离彻派朽骄穿衣腐元冤蜕嘴阐诀菠芽扦跌歹碴殖霖请考疹摇侠铸ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,硬件断点,0 x8000,ARM - 0 x3Thumb - 0 x1,0 xf

7、fffffff,Opcode fetch,0 x8000,Memory,Breakpoint to be set here,Control,Addr Value,Data Value,Control Value,Addr Mask,Data Mask,Control Mask,A31:0,C o m p a r a t o r,Breakpoint,D31:0,当内核试图执行内存里一个特定地址的指令时,将会触发一个硬件断点 这个例子里,当要执行从地址0 x8000索取的指令时,将会触发一个硬件断点 硬件断点可以在RAM或ROM里设置 每个观察点单元可以被用来设置一个硬件断点,而且只能一个,隙纷

8、蝉燃渺捻辜雹杯翟着夯僻锥凤鸥伯刁掏苔钳撮蛔厕橡州非酌主啊彰摧ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,软件断点,Memory,0 xffffffff,0 xeeeeeeee,0 x0,Opcode fetch,Control,Addr Value,Data Value,Control Value,Addr Mask,Data Mask,Control Mask,A31:0,C o m p a r a t o r,Breakpoint,D31:0,一个软件断点是当一个特定的指令从任何地址被预取时触发的一个断点 这个例子表明了观察点单元

9、的配置 这对所有的软件断点都是一样的 为了设置一个断点,可以使用Multi-ICE在特定的地方写一个特别的指令这些只能在RAM里在操作 每一个观察点单元可以用来设置无数的软件断点.,(The “special” value),汗通栋贾括逐枷坐翱铝阴策剁噪裸档蓖蘑妖嫩牌脯廉程预百澡温辅云剐翠ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,命中一个断点,停止模式调试 由标准的 EmbeddedICE 拷贝 DCC 控制寄存器到 r2 MRC p14,0,r2,c0,c0,0 ; 检查DCC 控制寄存器的位1 TST r2,#0 x2 ; 如果

10、位1清掉了,拷贝数据从r1到 DCC 写寄存器 MCREQ p14,0,r1,c1,c0,0,; 拷贝 DCC 控制寄存器到 r2 MRC p14,0,r2,c0,c0,0 ;检查DCC 控制寄存器的位0 TST r2,#0 x1 ; 如果位0设置,拷贝数据从DCC 写寄存器 到r3 MRCNE p14,0,r3,c1,c0,0,调试器查询控制寄存器利用扫描链2来察看什么时候写位被设置,读位被清掉接着数据可以被扫描进入或者输出,r1,r3,Read Register,灵钒窝嗜佐匿偷记掠辕抠雷面侯摧斡唉沙逞穆菇镶方史镐聚马金沮耍猴祭ARM调试方案-某科技公司arm培训PPTPowerpoint

11、presentation master,ARM,DCC 利用中断进行通讯,R,COMMRX,InterruptController,COMMTX,nIRQ,W,Other interrupt sources,通过Multi ICE 连接的调试器,尔酸偏贱痹渊锈坎并惹划炒碗盐淹城资诺三施壳趋愿边肝指铬雹游珠伙凑ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,向量捕获,允许没有处理软件的异常机制的捕获 在ARM7TDMI 上执行利用断点 当从ROM 地址 0 x0 调试时关闭 在ARM9TDMI/ARM10和后来的版本上执行利用专门的硬件 只

12、对硬件异常敏感 到向量表里的跳转将不被捕获 留下观察点单元作为一般使用 一旦有你自己的处理,则关掉向量捕获 AXD : spp vector_catch 0,%RUsPDaif,FIQ,IRQ,(Reserved),Data Abort,Prefetch Abort,Software Interrupt,Undefined Instruction,Reset,0 x1C,0 x18,0 x14,0 x10,0 x0C,0 x08,0 x04,0 x00,虞医敬震捡绢鳞里逃摔浑鬼伎墩牡植媚散喇鉴蹭颗机淤摔遁倔阔喀抓迸僵ARM调试方案-某科技公司arm培训PPTPowerpoint present

13、ation master,ARM 目标上运行的库代码, 但是任何需要的底层的I/O是由主机提供的 SWI 机制提供的主机访问. SWI 接口是ARMulator, Angel 和 Multi-ICE通用的组成部分 Semihosted 程序将运行在所有的ARM目标板上,而不需要 移植 需要连接的调试工具提供这些功能,Semihosting,: printf(“hellon”); :,应用代码,: SWI :,库代码,SWI 服务程序,与主机上运行的 调试器通讯,hello,退且条姬实螺盅父操照裔籽醉幢务甘焉丈区被爹谅计申梧嵌奈钎陇硼袭柬ARM调试方案-某科技公司arm培训PPTPowerpoi

14、nt presentation master,通过JTAG 的Semihosting,spp semihosting_vector 0 x8 spp semihosting_enabled 1,关掉: spp semihosting_enabled 0,Breakpoint,0 x108,0 x104,0 x100,.,SWI ,.,pc = 0 x8lr = 0 x108,MOVS pc, lr,Multi-ICE仿真的 SWI服务程序,0 x00,0 x1C,0 x18,0 x14,0 x10,0 x0C,0 x08,0 x04,阿幸齐虱沁励管关咐扩稽粤氧衷坎摹绍交谦更笆蜀策酗销墒檀牛程诉

15、鞋团ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,Semihosting 加上用户SWIs,spp semihosting_enabled 1 spp semihosting_vector 0 x450,Breakpoint,0 x108,0 x104,0 x100,.,SWI ,.,lr = 0 x108,MOVS pc, lr,SWI Handler,SemiSWI,STMFD sp!,regs Load SWI number B if semiSWI Deal with SWI : : :,LDMFD sp!,regs MOVS

16、pc, lr,0 x450,0 x00,0 x1C,0 x18,0 x14,0 x10,0 x0C,0 x08,0 x04,肚悔机砖此仇姬话串褪痞簧纯翻烙扼撕宿砍硼钟己瘁蹋酚凄考血叼柠悟俗ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,spp semihosting_dcchandler_address 0 x70000 spp semihosting_vector 0 x8 spp semihosting_enabled 2,0 x00,0 x1C,0 x18,0 x14,0 x10,0 x0C,0 x08,0 x04,0 x108,0

17、 x104,0 x100,.,SWI ,.,pc = 0 x8lr = 0 x108,MOVS pc, lr,DCC Semihosting,0 x70000,DCC,DCC Semihosting Handler Code,淮单扣霄酋芒汀记缺蒸滞那霖庞俗畅益昨胚芍瓦惩蓄粳弄矩噪阮替入掣浮ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,直接对EmbeddedICE访问,AXD 允许直接对EmbeddedICE 逻辑寄存器访问 可以直接通过 GUI或如下的命令行察看 REGisters ”EICE Watch 0” 在地址0 x4000写时

18、设置一个观察点: sreg EICE Watch 0|Address Value 0 x00004000sreg EICE Watch 0|Address Mask 0 sreg EICE Watch 0|Data Value 0sreg EICE Watch 0|Data Mask 0 xFFFFFFFF sreg EICE Watch 0|Control Value 0 x10Dsreg EICE Watch 0|Control Mask 0 x0F8 注释: ARM调试器优先与 ADS1.1 通过协处理器0访问EmbeddedICE 逻辑寄存器.,衅二逼寅拍稻浚融钙渍瓜鼎弹疙别孟哩势拭抄

19、骨苍始拎怠漆很峡躬殷伐脏ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,利用Multi-ICE调试设计,确信 DBGEN 是接高电平! Thumb 代码上的软件断点需要半字访问RAM 必须总是字/半字/字节访问内存 Multi-ICE可以在1.0V 到 5.0V时调试系统 自适应到目标逻辑电压 目标板可以在2.0V时工作 在3.3V时,启动电流是400mA , 一般操作时是 120mA Multi-ICE 2.1 出售时跟随一个适当的电源 Multi-ICE用20-针 连接器 多个接地点 灵活的时钟配置 可以与不同的时钟速度设备同步 长

20、JTAG 电缆 也可以仅仅利用5 个信号来调试 请小心停止系统时钟 复位考虑.,赘何铆鹿藻蓉冶逻份诊契净埠咙题搂闺族嫉署铝挝昏赛勾弧欲珐誉来诵诺ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,TCK, TDI, TMS, TDO,协议转换 接口,TCK, .,nTRST,nRESET,ARM,Reset Circuit,复位,nTRST 和 nSRST 必须通过一个上拉电阻来连接 Multi-ICE 在 nTRST 有开放的连接,赫晶丰近专镜刁捉侍托捞逗弱涌惺尔杏逛吭险揖办躯症砖频违须咯禄孝对ARM调试方案-某科技公司arm培训PPTPo

21、werpoint presentation master,测验,1)EmbeddedICE 逻辑一共包括多少个观察点单元? 2) ROM上可以设置多少个断点? 3) 利用DCC semihosting比一般的 semihosting有什么优势? 4)为了激活ARM的调试功能,DBGEN 的信号应该怎么连接? 5)为什么Multi-ICE需要半字访问内存? 6) EmbeddedICE-RT 提供了哪些额外的调试功能?,岭政眯池嫩攀控峻晨院鹅多絮拄铆献撩顿狭捧顽力盏擒剪帝随佰珊坟拼疵ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,议程,基本

22、调试需求 你需要什么样的功能? ARM公司的调试和开发集成工具。 嵌入式核调试 实现和利用JTAG的调试方案 停止模式和监控模式 嵌入式跟踪 整体化和利用ETM ARM 开发板,锅丫到战洗棘谆劈叮逮紊轰蜒巢粱臻膛具豫脱坠蒲违彭簇疙攫组诗密告有ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,ETM的机制(嵌入式跟踪宏单元),为什么需要实时跟踪功能? 实时系统不允许停止! 传统的调试 (断点和单步执行) 不能满足 必须利用捕获的实际代码运行来调试 为什么不用其它的调试工具而用ETM? EmbeddedICE-RT为调试通讯通道提供了低的带宽

23、只适用于程序状态信息 外部的指令需要写到通讯通道里 独立的处理器比嵌入式处理器容易调试 一个独立的处理器,或者: 用外部的ICE单元代替处理器,或者 用逻辑分析仪探测处理器的信号 当用嵌入式ARM内核时两个都不可能时怎么办啊?,阂镭振勃回拔溢株止诧搏莉烙办偏桓昆苟生夜奴拈盐睁碘墅胜怜从非腋挪ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,16 bit wide RAM,8 bit wide ROM,20 bit Address,16 bit Data,带嵌入式处理器的典型ASIC,Serial Ports,ARM,Data,Address

24、,Display Control,Timer,32 bit wide Internal Memory,External Bus Interface,昏愁逆怠宽见禽摈仟鼠晾泼权传咸阑抢猫垃壳妻岂吞铺母需寝望蜂干龋棍ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,问题,没有外部可见的片上ASIC 总线 带缓存的处理器 (例如, ARM920T) 带有与设备内部相连的核/缓存总线 ICE 版本必须在全速系统速度下运行 随着处理器速度的增加,ICE越来越难 同时必须提供ICE 工具 (例如,触发器) 实时跟踪需要确定的高带宽的接口 需要地址总线,

25、数据总线和控制信号 对于 ARM7TDMI ,有80多个 引脚 很多 ASICs 使用相同的处理器核 ICE必须为每一个 ASIC定做,溃扛耳奶坦茧武莎霓纫奢索茄俞喳弦擂裸尘徽兔部晋竿偿喳楞昏教兽诧沛ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,ARM 实时跟踪,嵌入式跟踪单元 (ETM) 实时指令跟踪 实时数据访问跟踪 包含 ICE功能 (触发和过滤逻辑) MultiTrace 跟踪端口分析器 (TPA) 深度缓冲器捕获跟踪 跟踪调试工具 通过JTAG/Multi-ICE 配置ETM跟踪 从ETM/MultiTrace里接收压缩的跟踪

26、数据 利用拷贝原代码映象来对ETM跟踪,5,ARM core,ETM,RAM,ROM,TAP controller,Trace,Trigger / Filter,9,13,21 线 跟踪接口,5 线 JTAG 接口,串口/以太网口,并口,运行跟踪调试工具的主机 (ADS的附件),蚂惊壶炒茎匣敲禽既求差炽锯沮受孽芽乙仟腐肘饶浴尔英杰罐宿剔驼仆棋ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,ETM 结构,TRACECLK,3 (ETM v1) 4 (ETM v2),PIPESTAT 2:0 (ETM v1) PIPESTAT 3:0 (ET

27、M v2),ARM Core,到和来自ARM的数据,可综合的 ETM 块,ETM 监控器和简要的ARM 总线信号,JTAG 接口,Trigger & Filter Logic,PipelineStatusGeneration,TracePacketCapture,n,TRACEPKTn-1:0,TRACESYNC (ETMv1 only),FIFO,TAP Controller,5,到ARM的控制,来自ARM的控制,来自ARM的地址,确定的 ETM-ARM 接口 (只在ETM v2),鹏潞摩驳甘月稿厦徘蛙惑拾沙养巨认刁眩契另汁漓涂咙衣爱枉拎够删弓颜ARM调试方案-某科技公司arm培训PPTPo

28、werpoint presentation master,跟踪端口说明,TRACECLK: 与处理器时钟有相同的频率 PIPESTAT (流水线状态) 表明: 程序流 是否有一个相关联的TRACEPKT ETM 状态 TRACEPKT (跟踪包) 可能包含以下一个或多个特征: 数据地址 数据值 指令地址 TRACESYNC (只在ETM v1有): 用来在ETM和TPA之间进行同步 * 可以参考ETM规范得到更多的信息,n = 4, 8 or 16,跟踪端口 (9, 13 or 21 引脚),TRACECLK,PIPESTAT 2:0 (ETM v1) PIPESTAT 3:0 (ETM v2

29、),TRACEPKTn-1:0,TRACESYNC (ETMv1 only),讶噶澡休嘱税吗辆务并商投怜虾含穷或志穿搏排讹购概铱拍诧阅她早终攫ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,指令跟踪,与指令跟踪有关的跟踪端口部分: PIPESTAT 表明内核的流水线状态 (例如,一个指令是否被执行) TRACEPKT 当需要时,包含一个跳转目标地址 以上两条和代码映象相结合,就可以进行调试了 指令跟踪能够被高度压缩 典型地,一个 9-位的跟踪端口可以处理只有指令的跟踪 ETM v1 最好的情形: 3位的跟踪信息来跟踪32位的代码 ETM

30、v2 最好的情形: 4位的跟踪信息来跟踪64位的代码 可以用过滤和触发器: 只对内存地址和/或区域进行跟踪 只有在特定的ETM顺序状态,计数器等才进行跟踪 技术注解:TraceEnable (一个 ETM 内部信号) 可以激发指令跟踪。它是由触发器/过滤器事件和资源控制的。,捡邑荧丰销路祸装掌砾谴嗡召森房谍袄呐扣溺凋乾距宠租兄瞪韩橙驶娄乃ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,数据跟踪,与数据跟踪有关的跟踪端口部分: TRACEPKT 包含数据地址或数据值 只有数据地址改变的位被广播 (目的是节省带宽) 每一次跟踪运行都可以配置

31、ETM: 数据地址或数据值(或两个都有) 读或写(或两个都有) 需要一个高的带宽跟踪所有数据(有程序相关) 一个带有45个字节FIFO的13-位跟踪端口可以跟踪大部分数据传输 如果想跟踪更多数据访问则需要一个21-位的跟踪端口 过滤器和触发器对保持跟踪数据的管理很重要 如果在跟踪信息里有一个 FIFO 溢出标记,那么就表示有部分的跟踪信息被丢掉 推荐使用可编程的过滤器和触发逻辑 技术注解:ViewData (一个ETM的内部信号) 激发了数据跟踪(如果TraceEnable是假时被忽略掉). 它是由触发器/过滤事件和资源控制的。,邢国蕾尉舆秀溶彻捏邓闹炎财稽侄花井简镰酒窒送仍锰狡呜豫崭奢印茧巨

32、ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,跟踪例子,0 x1010 MOV r0, #3 0 x1014 SUBS r0, r0, #1 0 x1018 BNE 0 x1014 0 x101C LDR r1, #0 x4000 . 0 x4000 0 x4321 data,IE IE IE,r0=2,IE IE,IE IN ID .,r0=1,r0=0,0 x101C LDR r1, #0 x4000,r1,ID,0 x1018 BNE 0 x1014,0 x1010 SUBS r0, r0, #1,0 x1018 BNE 0 x1

33、014,0 x1014 SUBS r0, r0, #1,0 x1018 BNE 0 x1014,0 x1014 SUBS r0, r0, #1,0 x1010 MOV r0, #3,Corresponding Instruction,none,none,none,none,none,none,none,TRACEPKT,branch not taken,IN,Comment,PIPESTAT,r0=0,IE,direct branch taken,IE,r0=1,IE,direct branch taken,IE,r0=2,IE,r0=3,IE, 假设数据跟踪是激活的(ViewData 被声明

34、了),基本指令和直接跳转的ETM跟踪,由PIPESTAT=IE 或 IN来解码直接跳转,猾栋次徊寅舱纽辩纵刮倘彝亩虎绸蝇椽揖摊筹傻意伯毖倦厌炯域光属泛尝ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,指令跟踪局限,调试器需要一个代码的拷贝来做参考 自动修改代码部分将不能和ETM一起工作 调试器必须知道代码映象的地址映射 代码必须在连接时的地址执行 带有固定代码地址的虚拟内存配置是可以的 现在不支持动态重定位代码 请注意“覆盖” (例如:把代码调入片上RAM) 如果有很多代码段运行在相同的地址,跟踪不能区分哪一部分在运行。这个例子里,跟踪解

35、压是不可能的。 解决办法是给内存区域命名 (见下一页),挎酵级信逆茫用盅宇芍箩毒抚胳沽嘲担丑福氮桥脖砌净四聪惦搞扦汗啊蛋ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,重叠和命名,硬件的命名将每一个段都映射到相同的实际存储器上 用不同的“别名”连接每一个重叠的段执行 PC值标识了哪一个段在执行,A,A,A,A,A,A,A,B,C,B,B,B,B,A,B,C,C,C,C,C,A,B,C,外部ROM,片上 RAM(命名的),注意: 必须用命名的方法设计存储器系统,A,A,A,16K 片上 RAM,0,16K,32K,48K,64K,16K R

36、AM,A13:0,A14,A15,ARM,Decoder,A31:16,SEL,IGNORED,士羽哗简嗽支三谓锁打棺傲涯及误匙滚姆把柏卜匈协池畸僻踊炸加磅袭畴ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,控制跟踪,ETM里的资源是可以被过滤和控制的: 要跟踪的指令 要跟踪的数据访问 外部跟踪端口分析器的触发 ETM的资源由以下部分组成: 8 个数据比较器 8 对全范围地址比较器 16个地址解码器 4 个16-位计数器 1 个3-状态序列器 对于ASIC: 最多 4用户输入,4个用户输出 一个事件可以由任何两个资源逻辑组成:例如 “wi

37、thin address range 1 AND data value equals 0 xFFFFFFFF” 不同的ETM 实现有不同数量的触发资源 可以看技术文档得到更详细的资料,僚雁卵徊沼玄吻赔讳禹迹他稚晕锚绪担度计撮四德馒荐翱权杭氯笋亭请祟ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,哪一个ETM?,根据你的ARM内核来选择 ETM7, ETM9, 或者 ETM10 选择小的,中等的或大的模式 选择跟踪端口的宽度 (4/8/16) 如果高的吞吐率(数据跟踪)很重要的时候,可以选择更宽的端口 可以考虑与其它引脚的多路复用技术(例如

38、GPIO) 调试时可以使用大的宽的,产品时可以使用简单的,窄的ETM 使用ATPG 和插入扫描来对产品进行测试 ETM 提供了验证环境套件 下一页将总结配置和数据的大小,产了稿差扰严瓢缆逢式俺晤庚病贸擅碉色俗价廷滁疗哗痪饲汝绑粉苟圣角ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,ETM 配置,4 / 8 /16,4 / 8 /16,4 / 8,Port width,45,18 or 20,9 or 10,FIFO Depth,60k,35k,25k,Gate count,大的,中等的,小的,ETM v1 (ETM7,9),60,30,1

39、5,FIFO Depth,4 / 8 /16,4 / 8 /16,4 / 8 /16,Port width,75k,50k,35k,Gate count,大的,中等的,小的,ETM v2 (ETM10),16,8,4,8,4,1,16,8,2,Addr Comparators,大的,中等的,小的,功能,Range Comparators,Addr Decoders,Counters,Ext. Outputs,1,2,4,0,1,4,8,2,0,Data Comparators,Sequencers,0,1,1,Ext. Inputs,2,4,4,屯炬偶授氓掐措快她瘫姆瘟宴渊涧肘肃裹闭掐失罩涪纹

40、故培蒋有蹋躁咀呵ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,实现跟踪 (1),所有需要的信号连接到ARM 核 没有缓存的内核与地址/数据总线和控制信号相连 有缓存的内核输出内核信号到宏单元边缘(例如: ARM920T 版本1) ASIC上提供跟踪端口 经过基座上输出的最高频率是多少? ASIC上要支持多个ARM内核吗? 考虑跟踪端口与别的引脚多路复用吗? 最终产品中去除以减少引脚数量吗? ARM 跟踪捕获和JTAG的标准连接器 38-路的 AMP MICTOR 连接器 (高密度),ARM7TDMI ARM7TDMI-S ARM720T

41、 rev3 ARM7EJ,ARM9TDMI ARM9E-S/9EJ-S ARM920T rev1/922T ARM966E-S ARM946E-S ARM926EJ-S,ETM7,ETM9,ARM1020E,ETM10,汪益韩矿谦殆恿氓储帽缅蜀佩褪狮肤司茸沧术真卯兑怕踞宰佳健埂芬岿秆ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,实现跟踪 (2),对 ARM7 和 ARM9 内核: CPU 时钟应该自由运行 (利用 nWAIT, 而不是时钟延长), 但不是至关重要的 FIFO FULL 信号可以被用来停止处理器 但是如果FIFO 满了时,

42、将影响实时性能 ETM设计的目标不是低功耗 在正常运行操作(没有跟踪)模式下,ETM不应该被时钟驱动,ETM,CLK,PWRDOWN (通过JTAG控制),ARM,CLK,JTAG,更多更详细的信息请看: ETM 规范 ETM7/9/10 技术参考手册 (TRMs),ETMEN,斩褐迢钟咀规寡刷纺除顿潜舟晶凯宁批给畸商膛告悔毋急健叶纠狮泉砌斗ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,跟踪捕获,需要一个外部的跟踪端口分析仪(TPA)来捕获 ETM 的输出 TPAs 可以在触发事件之前,发生时或之后来跟踪 TPAs 带有很深的跟踪捕获缓

43、冲器 TPA 的缓冲器通过很高速度的上行连接(通常是以太网)来把数据返回给主机 PC 当前可选择的TPA : Multi-Trace* Agilent 逻辑分析仪 (需要 Multi-ICE 或者 Agilent JTAG 探测器) Agilent ARM(E5904B)的跟踪端口分析仪 Tektronix 逻辑分析仪* * 需要 Multi-ICE 2.0 或 更新的 Lauterbach 也提供跟踪工具、仿真器、调试器 ,哺讣艰投挖洪筐勇逸蔚闲醇求淮疽造裹胜刻勒联汗仲枕犯滚儿琳调淌糜业ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,A

44、RM MultiTrace,与 Multi-ICE (2.0+)连接一起工作 通过以太网跟踪,通过JTAG口控制运行 支持 9, 13 和 21 引脚的跟踪端口,频率可高达 200 MHz 1.0V - 3.3V目标电压 支持将跟踪时钟速率降低一半,在上升和下降沿捕获数据 也可以从第三方那获得跟踪分析仪方案 访问: ,Multi ICE,PC,Target Board,JTAG,Multi Trace,LAN,瞅忌魄维龄纳汲错紫氧偶疽襄孩书扫弦昧塘扬巳冠商费冤叙湍与年娠剁罗ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,跟踪调试工具概况,

45、ADS 1.1/1.2- TDT 1.1.1 作为附加工具加到 AXD里 有额外的用户接口功能来支持跟踪 通过JTAG配置 ETM 收集跟踪信息 解码跟踪信息,掏湃恶制共镶跪浸仗豹弧杉努晕嘻初攻莆惭删火墅舵脊倾摹拈遭蟹鹰滞珊ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,跟踪配置,ETM 寄存器设置的 GUI 接口 对所有可能的跟踪和触发ETM配置进行全权访问 适合于已实现的资源对话窗口 存储/恢复 触发器的例子,大虏拣杖秀兴结惦休豫搂克雕暑少绢概一含皱烯缝滞井唱菇曝肖芒蔡帆系ARM调试方案-某科技公司arm培训PPTPowerpoint

46、 presentation master,跟踪输出,映射回执行窗口 产生交叉源码察看,烬郭羊尼吮耗迂棉靡桃睛黑穷瞎蚕胚畸慢谷挤圃扰忌掉那综抗壹蛙尽补纱ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,问题,1)跟踪需要多少个引脚? 2)跟踪输出应该使用什么样的物理连接器? 3)跟踪端口(TRACECLK)的速度是多少? 4)大量的数据跟踪需要什么大小的跟踪端口? 5)怎么更好地减少跟踪引脚的多少? 6)什么类型的程序不能被跟踪? 7)如果需要覆盖跟踪,应该需要什么样的硬件功能?,少橱笛捆肝朱硫划述洼捏护窗嘿簿毒郧毋径汀昨迈鸡疡降桨琵髓讥悬侯

47、遵ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,议程,基本调试需求 你需要什么样的功能? ARM公司的调试和开发组成工具。 嵌入式核调试 实现和利用JTAG的调试方案 停止模式和监控模式 嵌入式跟踪 整体化和利用ETM ARM 开发板,滞梭楔倚氏扩坐容仕拜歹乳晒戏嫩弃役疡浪刀辕抚皖俭竭络门骇姻褂卉祝ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,Evaluator-7T,ARM技术的简单介绍,价格低 包括: Samsung KS32C50100控制器 512k 闪存, 512k S

48、RAM 2 串口, 7个 LED 显示 复位和中断开关 Multi-ICE 连接器 板上Angel 调试监控工具 ADS评估版 电压和电缆线,可以从网上购买,仗姑舵沟奸望擞表征羽俄绿剧淄纲栈栋岛曲藤练零式坷由敲彤椰族扒捂颁ARM调试方案-某科技公司arm培训PPTPowerpoint presentation master,Integrator 平台,核模块 ARM 内核 至少 256kb SSRAM 多达 256Mb SDRAM 可以叠 4 层,逻辑模块 多达 2M门的FPGA 1Mb SRAM 分析仪/跟踪 连接器 时钟发生器,ASIC 平台 可达5 个核/逻辑 模块 系统总线时钟 32Mb 闪存 FPGA系统控制器 AMBA 和PCI 扩展,还有接口模块, 分析器模块和 移植模块 请访问: ,惺幸跨哈讣励胯惜哭汝白泞饥豁战砚逛拥灭窄肛妒网投佐豹炊谭雨改氯蝉ARM调试方案-某科技公司a

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1