[发明专利]用于对流水线中的块进行调度的编译方法和设备有效
申请号: | 201410014235.6 | 申请日: | 2014-01-13 |
公开(公告)号: | CN103970510B | 公开(公告)日: | 2018-06-29 |
发明(设计)人: | 金泰松 | 申请(专利权)人: | 三星电子株式会社 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京铭硕知识产权代理有限公司 11286 | 代理人: | 韩明星;王兆赓 |
地址: | 韩国京畿*** | 国省代码: | 韩国;KR |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调度 流水线 编译 存取 方法和设备 程序代码 寄存器 控制流 处理器 回写 响应 配置 冲突 | ||
1.一种用于对管线中的块进行调度的编译方法,所述编译方法包括:`
使用处理器对程序代码的控制流程中的块的存取计数进行配置;
响应于进入块的边缘的边缘计数大于或等于预定值,将块确定为重要块,其中,边缘计数包括在块的存取计数中;
使用存取计数对重要块进行调度以防止寄存器回写冲突,
其中,基于存取计数对重要块进行调度以防止寄存器回写冲突的步骤包括:将不执行回写的操作调度到重要块的预料到寄存器回写冲突的周期中。
2.如权利要求1所述的编译方法,其中,将块确定为重要块的步骤包括:
将具有大于或等于预定重要限制的边缘计数的边缘标记为重要边缘;
将重要边缘进入的块确定为重要块。
3.如权利要求2所述的编译方法,其中,将具有大于或等于预定重要限制的边缘计数的边缘标记为重要边缘的步骤包括:将从未调度块进入的重要边缘标记为普通边缘。
4.如权利要求1所述的编译方法,其中,基于存取计数对重要块进行调度以防止寄存器回写冲突的步骤包括:
根据基于存取计数确定的优先级对块进行分类;
按基于优先级对块进行分类的次序顺序地对块进行调度。
5.如权利要求1所述的编译方法,其中,将块确定为重要块的步骤包括:基于存取计数从块形成超块。
6.如权利要求1所述的编译方法,其中,将不执行回写的操作调度到重要块的预料到寄存器回写冲突的周期中的步骤包括:将空操作(NOP)调度到预料到寄存器回写冲突的周期中。
7.如权利要求1所述的编译方法,其中,基于存取计数对重要块进行调度以防止寄存器回写冲突的步骤包括:将存储操作调度到预料到寄存器回写冲突的周期中。
8.如权利要求1所述的编译方法,其中,基于存取计数对重要块进行调度以防止寄存器回写冲突的步骤包括:对重要块的操作进行调度以在重要块内或以边缘连接到重要块的块中执行回写。
9.如权利要求1所述的编译方法,还包括:
在不重要块中不考虑回写而进行调度。
10.如权利要求9所述的编译方法,其中,在不重要块中不考虑回写而进行调度的步骤包括:按物理方法将停顿周期应用于不重要的预料到寄存器回写冲突的周期中。
11.如权利要求1所述的编译方法,还包括:
响应于存在从不重要块离开并进入到至已调度块的边缘,进行调度以在不重要块中执行操作的回写。
12.一种用于对流水线中的块进行调度的编译设备,所述编译设备包括处理器和存储有计算机程序的存储器,
其中,处理器被配置为,通过运行所述计算机程序来执行:
在程序代码的控制流程中对块的存取计数进行配置;
响应于进入块的边缘的边缘计数大于或等于预定值将块确定为重要块,其中,边缘计数包括在存取计数中;
基于存取计数对重要块进行调度以防止寄存器回写冲突,
其中,所述处理器还被配置为将不执行回写的操作调度到重要块的预料到寄存器回写冲突的周期中。
13.如权利要求12所述的编译设备,其中,所述处理器还被配置为:
基于存取计数从块形成超块,
其中,所述处理器还被配置为根据基于存取计数确定的优先级对块和超块进行分类,并按分类的次序顺序地对块和超块进行调度。
14.如权利要求12所述的编译设备,其中,所述处理器还被配置为在块中将具有大于或等于预定重要限制的边缘计数的边缘标记为重要边缘,并将从未调度块进入的重要边缘标记为普通边缘,
其中,所述处理器还被配置为将重要边缘进入的块确定为重要块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于三星电子株式会社,未经三星电子株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410014235.6/1.html,转载请声明来源钻瓜专利网。