[发明专利]事务内的指令采样有效
申请号: | 201580064594.5 | 申请日: | 2015-11-23 |
公开(公告)号: | CN107003895B | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 迈克尔·约翰·威廉姆斯;约翰·迈克尔·霍利;斯蒂芬·迪斯特尔霍斯特 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/30;G06F9/38;G06F9/455;G06F11/36 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 林强 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 事务 指令 采样 | ||
数据处理装置(4)包括用于执行形成事务的一部分的程序指令的处理电路(6),该事务执行以生成推测性更新并且如果事务没有冲突地完成则提交推测性更新。指令采样电路(44)捕获与经采样的指令的执行有关的指令诊断数据(IDD)。事务跟踪电路(46)检测经采样的指令是否在事务内,并且如果如此,则跟踪与事务相关联的推测性更新是否被提交并捕获指示推测性更新是否被提交的事务诊断数据(TDD)。因此,与经采样的指令有关的指令诊断数据和与包含经采样的指令的事务的结局有关的事务诊断数据二者被捕获。
技术领域
本发明涉及数据处理系统领域。
背景技术
已知提供包含指令采样机制的数据处理系统,由此当满足触发条件时,涉及数据处理系统的状态和程序指令的执行的数据被采样。这些机制通常允许对系统的行为进行统计剖析以提供在对系统进行调试和/或性能调整中可能有用的信息。
发明内容
在本公开的至少一些示例实施例中,提供了用于处理数据的装置,所述装置包括:
处理电路,用于执行包括事务的程序指令,该事务包括执行以生成对状态数据的推测性更新并且如果所述事务没有冲突地完成则提交所述推测性更新的多个程序指令;
指令采样电路,用于捕获与由所述处理电路对经采样的指令的执行有关的指令诊断数据;以及
事务跟踪电路,用于:
检测所述经采样的指令是否在所述事务内;并且
如果所述经采样的指令在所述事务内,则跟踪所述推测性更新是否被提交并捕获指示所述推测性更新是否被提交的事务诊断数据。
在本公开的至少一些示例实施例中,提供了用于处理数据的装置,所述装置包括:
用于执行包括事务的程序指令的处理装置,该事务包括执行以生成对状态数据的推测性更新并且如果所述事务没有冲突地完成则提交所述推测性更新的多个程序指令;
用于捕获与由所述处理电路对经采样的指令的执行有关的指令诊断数据的指令采样装置;以及
用于以下操作的事务跟踪装置:
检测所述经采样的指令是否在所述事务内;并且
如果所述经采样的指令在所述事务内,则跟踪所述推测性更新是否被提交并捕获指示所述推测性更新是否被提交的事务诊断数据。
在本公开的至少一些示例实施例中,提供了一种处理数据的方法,所述方法包括:
执行包括事务的程序指令,该事务包括执行以生成对状态数据的推测性更新并且如果所述事务没有冲突地完成则提交所述推测性更新的多个程序指令;
捕获与由所述处理电路对经采样的指令的执行有关的指令诊断数据;
检测所述经采样的指令是否在所述事务内;以及
如果所述经采样的指令在所述事务内,则跟踪所述推测性更新是否被提交并捕获指示所述推测性更新是否被提交的事务诊断数据。
附图说明
现在将仅通过示例的方式参照附图来描述示例实施例:
图1示意性地示出了包括事务的程序指令流;
图2示意性地示出了用于执行程序指令的数据处理系统;
图3A和3B是示意性地示出事务执行的流程图;
图4示意性地示出了调试和诊断电路;
图5示意性地示出了生成和输出诊断数据和事务诊断数据的第一示例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580064594.5/2.html,转载请声明来源钻瓜专利网。