[发明专利]处理器以及无效指令缓存的方法有效
申请号: | 201611245641.9 | 申请日: | 2016-12-29 |
公开(公告)号: | CN108255745B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 埃德温·苏坦托 | 申请(专利权)人: | 展讯通信(上海)有限公司 |
主分类号: | G06F12/0891 | 分类号: | G06F12/0891 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 吴敏 |
地址: | 201203 上海市浦东新区浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 以及 无效 指令 缓存 方法 | ||
本发明提供一种处理器及一种无效指令缓存的方法,其中,处理器包括多个线程和指令取得单元。指令取得单元被配置用于:在多个线程中的第一线程上执行至少一个指令取得流程,指令取得流程包括多个步骤;以及在执行指令缓存无效操作前,停止第一线程上正在执行的指令取得流程的当前步骤,使得第一线程进入休眠状态,其中,休眠状态是指线程停止工作且待指令缓存无效操作完成后可重启的状态。这样,为了执行指令缓存无效,在一个或多个线程上等待合适的执行窗口所导致的延时可以被减少。
技术领域
本发明涉及计算机技术领域,特别涉及一种处理器及一种无效指令缓存的方法。
背景技术
中央处理单元(CPU)包括指令取得单元、指令缓存(IC)、执行单元(executionunit)等等。IC为执行单元与其他存储介质(例如,内存或上一级缓存)之间的临时存储介质,用于存储编码的指令,IC的容量比内存和上一级缓存小但交换速度快。存储在IC中的指令只是内存和上一级缓存中的一小部分,但这一小部分是短时间内执行单元即将访问的。这样,就可避开内存和上一级缓存,直接从IC中调用,从而可以提高读取速度。
IC包括许多个项(entry),编码的指令被分别存储在这许多个项中。IC无效(invalidation)操作指删除IC中执行单元不需要执行的一个项、多个项或所有项。现有技术中,执行IC无效操作会造成额外的延时。特别是对于多线程(multi-threaded)处理器,一个IC可对应多个线程,其中,线程是程序执行流中的最小实体单元。这样,延时会随着线程数量的增加而增加。
发明内容
本发明实施例提供一种处理器及一种无效指令缓存的方法,可以为执行指令缓存(IC)无效操作即时停止对应所述IC的线程,等IC无效操作完成后可再重启停止的线程,从而可以减少等待线程出现合适执行窗口所产生的延时。
本发明实施例提供一种处理器,所述处理器包括多个线程和指令取得单元,所述指令取得单元被配置用于:在所述多个线程中的第一线程上执行至少一个指令取得流程,所述指令取得流程包括多个步骤;以及在执行指令缓存无效操作前,停止所述第一线程上正在执行的指令取得流程的当前步骤,使得所述第一线程进入休眠状态,其中,所述休眠状态是指线程停止工作且待所述指令缓存无效操作完成后可重启的状态。在一些实施例中,所述第一线程的数量为一个或多个。
在一些实施例中,所述至少一个指令取得流程中的每个对应一个程序计数器的值。在一些实施例中,程序计数器(PC)用于存储执行的指令的地址
在一些实施例中,所述多个线程还包括第二线程,所述指令取得单元还被配置用于:所述指令缓存无效操作完成后,基于在所述第一线程上最近执行的一个或多个指令取得流程,在所述第二线程上获取正确的程序计数器的值。
在一些实施例中,所述指令取得单元还被配置用于:根据在所述第二线程获取的正确的程序计数器的值,在完成所述指令缓存无效操作后重启休眠的所述第一线程。
在一些实施例中,所述处理器还包括:存储单元,用于存储与所述一个或多个指令取得流程对应的至少一个时间点数据和至少一个程序计数器的值。在一些实施例中,所述至少一个时间点数据记录所述一个或多个指令取得流程的至少一个步骤的开始执行时间。在一些实施例中,所述至少一个程序计数器的值对应所述一个或多个指令取得流程中相关的至少一个指令地址。
在一些实施例中,在所述第二线程上获取正确的程序计数器的值包括:从所述存储单元获取多个时间点数据;比较所述多个时间点数据以获取最早时间点数据;以及获取所述最早时间点数据对应的程序计数器的值作为所述正确的程序计数器的值。
在一些实施例中,所述多个线程还包括第三线程,所述指令缓存无效操作在所述第三线程上执行。在一些实施例中,所述处理器与其他处理器通信,所述指令缓存无效操作在所述其他处理器的第四线程上执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于展讯通信(上海)有限公司,未经展讯通信(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611245641.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种全相联指令Cache
- 下一篇:内存改写检测方法及装置