[发明专利]微处理器加速的代码优化器有效
申请号: | 201180076248.0 | 申请日: | 2011-11-22 |
公开(公告)号: | CN104040491B | 公开(公告)日: | 2018-06-12 |
发明(设计)人: | M·阿布达拉 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/06 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 黄嵩泉 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 微指令序列 微处理器 微处理器流水线 优化 代码优化器 代码优化 副本存储 高速缓存 解码部件 输出优化 优化处理 指令提取 解码 传入的 代码组 宏指令 微指令 重排序 命中 传送 | ||
1.一种用于在微处理器中加速代码优化的方法,包括:
使用指令提取部件来提取传入的宏指令序列;
向解码部件传送所提取的宏指令序列用于解码成微指令序列;
通过基于将微指令的目的地与后续微指令的源和目的地相比较、以及将微指令的源与在先微指令的源相比较而用微指令序列的微指令间的依赖性的指示来填充依赖性矩阵、以及通过将所述微指令序列重排序成包括多个依赖代码组的优化的微指令序列,来执行优化处理,其中所述优化处理使用所述依赖性矩阵来确定所述微指令序列的哪些微指令被分组为所述多个依赖代码组中的同一个依赖代码组;
向微处理器流水线输出所述优化的微指令序列用于执行;以及
将所述优化的微指令序列的副本存储到序列高速缓存中,用于在后续命中优化的微指令序列时的后续使用。
2.根据权利要求1所述的方法,其中将所解码的微指令序列的副本存储到微指令高速缓存中。
3.根据权利要求1所述的方法,其中使用所述微处理器的分配和发布级来执行所述优化处理。
4.根据权利要求3所述的方法,其中所述分配和发布级还包括将所述微指令序列重排序成所述优化的微指令序列的指令调度和优化器部件。
5.根据权利要求1所述的方法,其中所述优化处理还包括动态地展开微指令序列。
6.根据权利要求1所述的方法,其中通过多次迭代来实施所述优化处理。
7.根据权利要求1所述的方法,其中通过寄存器重命名过程来实施所述优化处理以实现所述重排序。
8.一种微处理器,包括:
指令提取部件,用于提取传入的宏指令序列;
解码部件,耦合到所述指令提取部件以接收所提取的宏指令序列并且解码成微指令序列;
分配和发布级,耦合到所述解码部件以接收所述微指令序列并且通过基于将微指令的目的地与后续微指令的源和目的地相比较、以及将微指令的源与在先微指令的源相比较而用微指令序列的微指令间的依赖性的指示来填充依赖性矩阵、以及通过将所述微指令序列重排序成包括多个依赖代码组的优化的微指令序列,来执行优化处理,其中所述优化处理使用所述依赖性矩阵来确定所述微指令序列的哪些微指令被分组为所述多个依赖代码组中的同一个依赖代码组;
微处理器流水线,耦合到所述分配和发布级以接收和执行所述优化的微指令序列;以及
序列高速缓存,耦合到所述分配和发布级以接收和存储所述优化的微指令序列的副本,用于在后续命中所述优化的微指令序列时的后续使用。
9.根据权利要求8所述的微处理器,其中将所解码的微指令序列的副本存储到微指令高速缓存中。
10.根据权利要求8所述的微处理器,其中使用所述微处理器的分配和发布级来执行所述优化处理。
11.根据权利要求10所述的微处理器,其中所述分配和发布级还包括将所述微指令序列重排序成所述优化的微指令序列的指令调度和优化器部件。
12.根据权利要求8所述的微处理器,其中所述优化处理还包括动态地展开微指令序列。
13.根据权利要求8所述的微处理器,其中通过多次迭代来实施所述优化处理。
14.根据权利要求8所述的微处理器,其中通过寄存器重命名过程来实施所述优化处理以实现所述重排序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180076248.0/1.html,转载请声明来源钻瓜专利网。