[发明专利]追踪模块、追踪分析器及方法、数据处理装置和存储介质有效
申请号: | 201880087107.0 | 申请日: | 2018-12-10 |
公开(公告)号: | CN111630498B | 公开(公告)日: | 2023-09-08 |
发明(设计)人: | 迈克尔·约翰·吉布斯 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/34 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 林强 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 追踪 模块 分析器 方法 数据处理 装置 存储 介质 | ||
追踪模块(12)具有用于监视处理电路(8)对指令的处理的监视电路(18)和用于输出指示处理电路(8)处理指令的结果的元素序列的追踪输出电路(20)。追踪模块支持指示提交窗口的提交窗口移动元素的输出,其表示包括至少一个推测元素的追踪流的一部分应移动,该至少一个推测元素表示至少一个推测地执行的指令,而追踪流的最旧的剩余推测元素保持未提交。这对于追踪程序代码中的事务存储器功能非常有用。
技术领域
本发明涉及数据处理领域。更具体地,本发明涉及指示处理电路处理指令的结果的追踪数据的产生和分析。
背景技术
数据处理设备可具有追踪模块,该追踪模块用于监视处理电路对指令的处理并输出指示处理电路处理指令的结果的元素序列。例如,由追踪模块生成的追踪元素可指示处理行为,例如分支指令的结果、例外的发生或在处理电路处理指令期间出现的其他感兴趣事件的发生。追踪分析单元可分析由追踪模块输出的元素序列并重构在执行给定程序时由处理电路执行的操作。这对于调试或诊断目的(例如,用于辅助软件开发或性能分析)非常有用。
发明内容
至少一些示例提供追踪模块,该追踪模块包括:
监视电路,用于监视处理电路对指令的处理;以及
追踪输出电路,输出指示该处理电路对指令的处理的结果的元素序列;其中:
追踪输出电路能输出:
提交元素,该提交元素指示该处理电路提交了由该元素序列的提交窗口中的至少一个最旧的推测元素表示的一个或多个推测执行的指令,该提交窗口包括包含至少一个推测元素的元素序列的一部分,该至少一个推测元素表示仍由该处理电路提交的至少一个推测执行的指令,其中该提交元素还指示在该提交元素之后,该至少一个最旧的推测元素将从该提交窗口中被排除;以及
提交窗口移动元素,该提交窗口移动元素指示当由该元素序列的最旧的剩余推测元素表示的一个或多个推测执行的指令保持未被该处理电路提交时,该提交窗口应相对于该最旧的剩余推测元素移动以改变哪个推测元素是该提交窗口中的最旧的推测元素。
至少一些示例提供了一种数据处理设备,其包括如上所述的追踪模块和处理电路。
至少一些示例提供了一种用于追踪处理电路对指令的处理的方法,该方法包括:
监视该处理电路对指令的处理;以及
输出指示该处理电路对指令的该处理的结果的元素序列;
该元素序列包括:
提交元素,该提交元素指示该处理电路提交了由该元素序列的提交窗口中的至少一个最旧的推测元素表示的一个或多个推测执行的指令,该提交窗口包括包含至少一个推测元素的该元素序列的一部分,该至少一个推测元素表示仍由该处理电路提交的至少一个推测执行指令,其中该提交元素还指示在该提交元素之后,该至少一个最旧的推测元素将从该提交窗口中被排除;以及
提交窗口移动元素,该提交窗口移动元素指示当由该元素序列的最旧的剩余推测元素表示的一个或多个推测执行的指令保持未被该处理电路提交时,该提交窗口应相对于该最旧的剩余推测元素移动以改变哪个推测元素是该提交窗口中的最早的推测元素。
至少一些示例提供了一种追踪分析方法,该方法包括:
获得指示目标处理电路对指令的处理的结果的元素序列;
响应于检测到该元素序列中的提交元素:
推断该目标处理电路提交由在该元素序列的提交窗口中的至少一个最旧的推测元素表示的一个或多个推测执行的指令,该提交窗口包括包含至少一个推测元素的该元素序列的一部分,该至少一个推测元素表示仍被推断成由该目标处理电路提交的至少一个推测执行的指令,并且从该提交窗口中排除该至少一个最旧的推测元素以分析该元素序列中的后续元素;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880087107.0/2.html,转载请声明来源钻瓜专利网。