用于使用常量高速缓冲存储器将字面数产生的数据更高效地转发到依赖指令的方法和设备的制造方法_3

文档序号:9291634阅读:来源:国知局
基站。9.一种方法,其包括: 在第一管线中对第一指令进行解码,其中所述第一指令在完成执行后即刻将值写入到寄存器,并且其中当所述第一管线对所述第一指令进行解码时确定所述值或者所述值是可用的; 在高速缓冲存储器中的条目中存储所述值; 用所述寄存器标记所述条目;以及 将所述条目设置成有效的。10.根据权利要求9所述的方法,其中所述第一指令是移动立即数指令。11.根据权利要求9所述的方法,其进一步包括: 在所述第一管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 将所述值从所述高速缓冲存储器中的所述条目转发到所述第一管线,作为用于所述第二指令的操作数,前提是所述条目指示为是有效的。12.根据权利要求11所述的方法,其进一步包括: 在所述第一管线中对第三指令进行解码,所述第三指令以所述寄存器为目标,所述第三指令通过从寄存器堆读取而确定其结果;以及 在对所述第三指令进行解码后即刻将所述条目设置成无效的。13.根据权利要求9所述的方法,其进一步包括: 在所述第一管线中对第二指令进行解码,所述第二指令以所述寄存器为目标,所述第二指令通过从寄存器堆读取而确定其结果;以及 在对所述第二指令进行解码后即刻将所述条目设置成无效的。14.根据权利要求9所述的方法,其进一步包括: 在第二管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 将所述值从所述高速缓冲存储器中的所述条目转发到所述第一管线,作为用于所述第二指令的操作数,前提是所述条目指示为是有效的。15.根据权利要求14所述的方法,其进一步包括: 在所述第一管线中对第三指令进行解码,所述第三指令以所述寄存器为目标,所述第三指令通过从寄存器堆读取而确定其结果;以及 在对所述第三指令进行解码后即刻将所述条目设置成无效的。16.根据权利要求9所述的方法,其进一步包括: 在第二管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 以零管线循环延迟将所述值从所述第一管线转发到所述第二管线,作为用于所述第二指令的操作数,前提是在所述第一指令执行时,所述第一指令使所述条目指示为是有效的。17.—种设备,其包括: 寄存器; 用以对第一指令进行解码的第一管线,其中所述第一指令在完成执行后即刻将值写入到所述寄存器,并且其中在所述第一管线对所述第一指令进行解码时确定所述值或者所述值是可用的; 用于存储的装置,所述用于存储的装置用以在条目中存储所述值; 用于标记的装置,所述用于标记的装置用以用所述寄存器标记所述条目;以及 用于设置的装置,所述用于设置的装置用以将所述条目设置成有效的。18.根据权利要求17所述的设备,其中所述第一指令是移动立即数指令。19.根据权利要求17所述的设备,其进一步包括: 用于转发的装置,所述用于转发的装置用以将所述值从所述条目转发到所述第一管线,作为用于在所述第一管线中解码的第二指令的操作数,前提是所述条目指示为是有效的,所述第二指令按编程顺序在所述第一指令之后,并且是所述值的消耗指令。20.根据权利要求19所述的设备,其进一步包括寄存器堆,所述寄存器堆包括所述寄存器,其中所述用于设置的装置在所述第一管线对以所述寄存器为目标的第三指令进行解码后即刻将所述条目设置成无效的,所述第三指令通过从所述寄存器堆读取而确定其结果O21.根据权利要求17所述的设备,其进一步包括寄存器堆,所述寄存器堆包括所述寄存器,其中所述用于设置的装置在所述第一管线对以所述寄存器为目标的第二指令进行解码后即刻将所述条目设置成无效的,所述第二指令通过从所述寄存器堆读取而确定其结果O22.根据权利要求17所述的设备,其进一步包括: 第二管线;以及 用于转发的装置,所述用于转发的装置用以将所述值从所述条目转发到所述第二管线,作为用于在所述第二管线中解码的第二指令的操作数,所述第二指令按编程顺序在所述第一指令之后,并且是所述值的消耗指令,前提是所述条目指示为是有效的。23.根据权利要求22所述的设备,其进一步包括寄存器堆,所述寄存器堆包括所述寄存器,其中所述用于设置的装置在所述第一管线对第三指令进行解码后即刻将所述条目设置成无效的,所述第三指令以所述寄存器为目标,所述第三指令通过从所述寄存器堆读取而确定其结果。24.根据权利要求17所述的设备,其进一步包括: 第二管线;以及 用于转发的装置,所述用于转发的装置用以以零管线循环延迟将所述值转发到所述第二管线,作为用于在所述第二管线中解码的第二指令的操作数,所述第二指令按编程顺序在所述第一指令之后,并且是所述值的消耗指令,前提是在所述第一指令执行时,所述第一指令使所述条目指示为是有效的。25.根据权利要求17所述的设备,其中所述设备是从由以下组成的群组中选出的:蜂窝电话和基站。26.一种非暂时性计算机可读媒体,其存储有指令以使处理器执行包括以下操作的进程: 在第一管线中对第一指令进行解码,其中所述第一指令在完成执行后即刻将值写入到寄存器,并且其中在所述第一管线对所述第一指令进行解码时确定所述值或者所述值是可用的; 在高速缓冲存储器中的条目中存储所述值; 用所述寄存器标记所述条目;以及 将所述条目设置成有效的。27.根据权利要求26所述的非暂时性计算机可读媒体,其中所述第一指令是移动立即数指令。28.根据权利要求26所述的非暂时性计算机可读媒体,所述进程进一步包括: 在所述第一管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 将所述值从所述高速缓冲存储器中的所述条目转发到所述第一管线,作为用于所述第二指令的操作数,前提是所述条目指示为是有效的。29.根据权利要求28所述的非暂时性计算机可读媒体,所述进程进一步包括: 在所述第一管线中对第三指令进行解码,所述第三指令以所述寄存器为目标,所述第三指令通过从寄存器堆读取而确定其结果;以及 在对所述第三指令进行解码后即刻将所述条目设置成无效的。30.根据权利要求26所述的非暂时性计算机可读媒体,所述进程进一步包括: 在所述第一管线中对第二指令进行解码,所述第二指令以所述寄存器为目标,所述第二指令通过从寄存器堆读取而确定其结果;以及 在对所述第二指令进行解码后即刻将所述条目设置成无效的。31.根据权利要求26所述的非暂时性计算机可读媒体,所述进程进一步包括: 在第二管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 将所述值从所述高速缓冲存储器中的所述条目转发到所述第二管线,作为用于所述第二指令的操作数,前提是所述条目指示为是有效的。32.根据权利要求31所述的非暂时性计算机可读媒体,所述进程进一步包括: 在所述第一管线中对第三指令进行解码,所述第三指令以所述寄存器为目标,所述第三指令通过从寄存器堆读取而确定其结果;以及 在对所述第三指令进行解码后即刻将所述条目设置成无效的。33.根据权利要求26所述的非暂时性计算机可读媒体,所述进程进一步包括: 在第二管线中对第二指令进行解码,所述第二指令按编程顺序在所述第一指令之后并且是所述值的消耗指令;以及 以零管线循环延迟将所述值从所述第一管线转发到所述第二管线,作为用于所述第二指令的操作数,前提是在所述第一指令执行时,所述第一指令使所述条目指示为有效的。
【专利摘要】本发明提供一种处理器,用以在对移动立即值指令进行解码后即刻在高速缓冲存储器中存储常量值(立即数或字面数),其中所述立即数将要移动(复制或写入)到架构式寄存器。所述常量值存储于所述高速缓冲存储器中的条目中。所述高速缓冲存储器中的每一条目包含用以指示其存储的常量值是否有效的字段,以及用以使所述条目与架构式寄存器相关联的字段。一旦常量值存储于所述高速缓冲存储器中,所述常量值立即可以用于转发到处理器管线,其中经解码指令可能需要所述常量值作为操作数。
【IPC分类】G06F9/30, G06F9/38
【公开号】CN105009073
【申请号】CN201480010778
【发明人】詹姆斯·诺里斯·迪芬德费尔, 迈克尔·威廉·莫罗, 罗德尼·韦恩·史密斯, 杰弗里·M·斯科特米勒, 丹尼尔·S·希格登, 迈克尔·斯科特·麦克勒瓦伊内, 布莱恩·迈克尔·斯坦普尔, 库林·纳伦德拉·科塔里
【申请人】高通股份有限公司
【公开日】2015年10月28日
【申请日】2014年3月14日
【公告号】US20140281391, WO2014152064A1
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1