【技术实现步骤摘要】
微指令缓存及操作方法、处理器核及指令处理方法
[0001]本公开的实施例涉及一种微指令缓存及微指令缓存操作方法、处理器核及指令处理方法。
技术介绍
[0002]处理器核(或简称“CPU核”)是可以独立完成中央处理器(CPU)操作步骤的核心(Core)。例如,CPU可能包含至少一个CPU核,根据所包括的CPU核的多少,CPU可以为单核处理器(CPU)或多核处理器(CPU)。通常每个CPU核不包含二级和三级缓存(如果有三级缓存)。
[0003]单核处理器或多核处理器的处理器核(CPU核)通过流水线技术提高指令执行效率。流水线技术将CPU核的完整操作步骤分为多个子步骤,并将这些子步骤按照流水线的形式执行以提高效率。图1示出了示例性的标量中央处理器(CPU)的指令流水线,该指令流水线包括五阶段流水线,其中,每条指令可以在每个时钟周期发出并在固定的时间(例如,5个时钟周期)内执行。每条指令的执行分成5步:取指(IF)阶段1001、译码(ID)阶段1002、执行(EX)阶段1003、访存(MEM)阶段1004和写回(WB)阶段1 ...
【技术保护点】
【技术特征摘要】
1.一种微指令缓存,包括多个缓存项,其中,每个所述缓存项包括数据字段、地址信息字段,每个所述缓存项配置为:响应于所述数据字段中存储的对象微指令组包括多个微指令,在所述地址信息字段中存储所述对象微指令组的各微指令的微指令起始地址偏移。2.根据权利要求1所述的微指令缓存,其中,每个所述缓存项还包括标签字段和有效位,所述标签字段配置为用于存储所述数据字段中存储的对象微指令组的访问地址中的标签部分,所述有效位配置为用于存储所述数据字段中存储的对象微指令组的有效性信息。3.根据权利要求2所述的微指令缓存,还包括选择逻辑处理电路,其中,所述选择逻辑处理电路配置为:比较所述微指令缓存接收的访问请求中的访问地址信息的标签部分与目标缓存项的标签字段的内容是否匹配以得到第一比较结果,比较所述访问请求中的访问地址信息的访问起始地址偏移部分与所述目标缓存项的地址信息字段存储的任一微指令起始地址偏移是否匹配以得到第二比较结果,并且根据所述第一比较结果和所述第二比较结果,确定所述访问请求是否访问命中或访问缺失。4.根据权利要求3所述的微指令缓存,其中,每个所述缓存项还配置为:在所述地址信息字段中存储所述数据字段中存储的对象微指令组的微指令组终止地址偏移,所述选择逻辑处理电路还配置为:比较所述访问请求中的访问终止地址偏移部分与所述目标缓存项的地址信息字段保存的微指令组终止地址偏移是否匹配以得到第三比较结果,并且在根据所述第一比较结果和所述第二比较结果之外还根据所述第三比较结果,确定输出结果。5.根据权利要求3所述的微指令缓存,其中,所述选择逻辑处理电路还配置为:响应于所述访问缺失且响应于所述第一比较结果为匹配以及所述起始访问地址偏移与小于所述目标缓存项中保存的微指令组中首个微指令的微指令起始地址偏移,将所述访问请求所针对的目标微指令组填充到所述微指令缓存中。6.根据权利要求5所述的微指令缓存,其中,所述选择逻辑处理电路还配置为:将所述访问请求所针对的目标微指令组填充到所述微指令缓存中不同于所述目标缓存项的缓存项中,且将所述目标缓存项的有效位设置为表示无效,或者将所述访问请求所针对的目标微指令组填充到所述目标缓存项中。7.一种处理器核,包括:解码单元,以及微指令缓存,包括多个缓存项,其中,每个所述缓存项包括数据字段、地址信息字段,所述解码单元配置为:获取待解码的对象指令;将所述对象指令解码以得到多个微指令,且记录所述多个微指令中每个的微指令起始地址偏移;至少部分基于所述多个微指令得到对象微指令组;将所述对象微指令组存储在所述微指令缓存的目标缓存项的数据字段中,在所述目标缓存项的地址信息字段中存储所述对象微指令组的各微指令的微指令起始地址偏移。
8.根据权利要求7所述的处理器核,其中,所述解码单元还配置为:在将所述对象指令解码以得到所述多个微指令时,还记录所述多个微指令中每个的微指令结束地址偏移。9.根据权利要求8所述的处理器核,其中,所述解码单元还配置为:在所述目标缓存项的地址信息字段中存储所述对象微指令组的各微指令的微指令起始地址偏移时,还在所述目标缓存项的地址信息字段中存储所述对象微指令组的最后一条微指令的微指令结束地址偏移,作为所述对象微指令组的访问结束地址偏移。10.根据权利要求7所述的处理器核,还包括指令缓存,其中,所述解码单元还配置为从所述指令缓存中接收待解码的所述对象指令。11.根据权利要求10所述的处理器核,还包括取指单元,其中,所述取指单元配置为,响应于在所述指令缓存的指令缓存块中从起始地址至结束偏移之间取指时所述结束偏移小于被操作的所述指令缓存块的边界且结束位置为条件分支指令,将所述结束偏移延长至新的结束偏移,并将所述起始地址至所述新的结束偏移之间的指令部分作为所述对象指令提供至所述解码单元,所述新的结束偏移至多到被操作的所述指令缓存块的边界。12.根据权利要求11所述的处理器核,其中,所述解码单元还配置为将所述起始地址至所述新结束偏移之间的指令部分作为所述对象指令解码,并且将所述起始地址至所述结束偏移之间的指令部分解码得到的微指令标注为非激进解码,将所述结束偏移和所述新的结束偏移之间的指令部分解码的得到的微指令标注为激进解码。13.根据权利要求12所述的处理器核,还包括微指令队列,其中,所述解码单元还配置为将被标注为非激进解码的微指令提供至所述微...
【专利技术属性】
技术研发人员:赵春尧,胡世文,
申请(专利权)人:海光信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。