具有融合保留站结构的微处理器制造技术

技术编号:12419142 阅读:67 留言:0更新日期:2015-12-02 14:03
一种具有融合保留站(RS)结构的微处理器包括主RS、次RS和绕过系统。主RS具有用于接收发射指令的输入,具有用于将发射指令推送到次RS的推送输出,并且具有用于分派准备好分派的发射指令的至少一个绕过输出。次RS具有与主RS的推送输出耦合的输入并且具有至少一个分派输出。绕过系统在主RS的绕过输出和次RS的至少一个分派输出之间进行选择来分派所选择的发射指令。主RS和次RS可各自从不同的RS结构类型中选择。统一RS提供适当的主RS,并且次RS可包括多个队列。绕过输出使能了从主RS的直接分派。

【技术实现步骤摘要】

本专利技术概括而言涉及在微处理器中发射和分派指令的过程,更具体而言涉及更高效地分派指令来供微处理器执行的融合保留站(fused reservat1n stat1ns)模块,并且改善了性能。
技术介绍
许多现代微处理器是超标量的,其中它们包括多个执行单元并且在单个时钟周期中能够分派多个指令到这些执行单元。许多现代微处理器也运行乱序(out-of-order,0-0-0)执行。也就是说,微处理器可不按软件程序的指令指定的顺序执行指令。超标量乱序执行微处理器通常尝试维持未完成指令的相对大的池以便它们可利用更大量的指令并行度。微处理器执行相应指令集架构的指令,例如x86指令集架构等等。在许多这种微处理器中,经常被称为宏指令的指令集架构的指令首先被翻译成被发射到保留站模块的微指令(或者微操作或“μ op”),保留站模块进而将指令分派到执行单元。微指令在这里被更概括地简称为指令。指令也被发射到重排序缓冲器(reorder buffer,ROB),其确保指令的按序引退(retirement) ο保留站(reservat1n stat1n,RS)包括一个或多个有序队列。当有多个指令准备好从RS队列分派时,意味着指令满足了被分派到执行单元的条件,则准备就绪的指令中的一个或多个被分派到相应的执行单元。当执行单元可用,并且指令执行所必要的任何操作数也可用时,则意味着该指令准备好被分派。随着微处理器设计变得越来越复杂,RS的效率和性能都需要改善。希望通过使RS更小并且更高效来改善RS的时序和吞吐量。RS也应当提供更大的进入效率以及增大的执行单元支持。传统的RS配置并不满足所有这些设计改善目标。
技术实现思路
根据一个实施例的具有融合保留站(RS)结构的微处理器包括主RS、次RS和绕过系统。主RS具有用于接收发射的指令的输入,具有用于将发射的指令推送到次RS的推送输出,并且具有用于分派发射的指令中的准备好分派的至少一个指令的至少一个绕过输出。次RS具有耦合到主RS的推送输出的输入并且具有至少一个分派输出。绕过系统在主RS的绕过输出和次RS的至少一个分派输出之间进行选择来分派所选择的发射指令。主RS可实现有统一 RS结构。次RS可实现有任何类型的RS结构,并且通常包括多个RS队列。主RS可作为溢出缓冲器操作,用于在次RS满时接收和存储额外的发射指令。另外,绕过系统可允许主RS在某些条件下直接分派指令,例如当次RS在给定周期中没有分派某种类型的指令时。主RS可包括移位缓冲器来移动其内存储的指令以维持接收的指令顺序。根据一个实施例的具有多级保留站(RS)结构的微处理器包括主RS、次RS和绕过控制系统。主RS包括用于存储接收到的发射指令的至少一个主RS队列,用于将其内存储的发射指令推送到次RS的推送输出,以及至少一个绕过输出,该绕过输出可分派主RS队列中存储的发射指令中的准备好被分派的至少一个指令。次RS包括用于存储从主RS接收的发射指令的至少一个次RS队列,以及用于分派次RS中存储的发射指令中的准备好被分派的至少一个指令的至少一个分派输出。绕过控制系统在次RS的分派输出和主RS的绕过输出之间进行选择来分派发射指令。【附图说明】参考随后的描述和附图将更好地理解本专利技术的益处、特征和优点,附图中:图1是包括根据本专利技术的一个实施例实现的融合保留站(RS)模块的超标量流水线微处理器的简化框图;图2是根据一个实施例的图1的融合RS模块的更详细框图;图3是根据一个实施例的图1的融合RS模块的框图,其具有实现主RS的统一 RSQ和实现次RS的多重分派RS ;图4是根据另一实施例的图1的融合RS模块的简化框图,其中次RS是利用分割RS实现的;图5是根据另外一个实施例的图1的融合RS模块的简化框图,其中次RS是利用集群RS实现的;图6是包括传统RS结构的流水线的简化框图;图7是包括根据本专利技术的一个实施例的融合RS结构的流水线的简化框图;图8是图示出根据一个实施例被配置为具有移位特征的RSQ的图2的主RS的操作的一对简化图;并且图9是图示出根据一个实施例的具有总共12个条目并且假定每次推送出4个指令的图8的RSQ的移位特征的简化图。【具体实施方式】专利技术人认识到了传统的保留站结构的效率低下和更低的性能。他们因此开发出了一种具有改善的效率和性能的融合保留站结构。融合保留站(RS)结构包括一种多级或堆叠式保留站结构,其中包括主RS和次RS。主RS提供前端溢出缓冲器功能,用于缓冲发射的指令以减少转变到造成微处理器的流水线延迟的重发射模式的发生。融合结构因为改善的缓冲功能可减少前端时序气泡。主RS和次RS结构都可以更小,从而整体时序可得到改善。另外,当次RS不能分派给定类型的至少一个指令时,那么当主RS内的任何一个或多个指令准备好被直接分派到处理器的执行单元时,次RS可被绕过。图1是包括根据本专利技术的一个实施例实现的融合保留站(RS)模块108的超标量流水线微处理器100的简化框图。微处理器100包括指令高速缓存102,其缓存某个指令集架构的宏指令130,例如x86指令集架构等等。其它的或替换的指令集架构也是可以预期的。微处理器100包括指令翻译器104,其接收宏指令130并将宏指令130翻译成微指令132。微指令132随后被提供到寄存器别名表(register alias table,RAT) 106 (亦称为“重命名”表),RAT 106生成微指令132的微指令的相关性(cbpendency)并且将微指令132按程序顺序发射到融合RS模块108和重排序缓冲器(ROB) 110。ROB 110对于从RAT106发射的每个微指令存储一条目。融合RS模块108将微指令分派到多个执行单元112中的适当的一个。从RAT 106发射的微指令(ISSUE)通常可被称为微指令,但在这里被更概括地简称为“指令”。融合RS模块108在其已满或者因其他原因不能够从RAT 106接收额外的指令时声明一个满指示信号,示为RS_FULL。ROB 110通常具有更大的结构,在融合RS模块108已满之后可继续接收指令。最终,融合RS模块108能够将指令分派到执行单元112以使得其能够接收更多的指令。在融合RS模块108指示出其不再满之后(例如当信号RS_FULL被取消声明时),指令从ROB 110临时性地被重发射(REISSUE)到融合RS模块108。当ROB 110跟上了 RAT 106时,再次从RAT 106发射指令。如本文进一步描述的,融合RS模块108具有更多数量的乱序(0-0-0)窗口,从而不会那么经常地变满。融合RS模块108更小并且具有更高效的设计,从而具有改善的时序。融合RS模块108表现出增大的吞吐量并从而表现出更高的性能。融合RS模块108可减少重播并且可减少其确实变满时的惩罚。融合RS模块108可减少会插入流水线延迟的前端空间或“气泡”。图2是根据一个实施例的融合RS模块108的更详细框图,该融合RS模块108耦合在RAT 106和ROB 110与执行单元112之间。RAT 106具有被提供到ROB 110的输入的输出。复用器(MUX) 202具有与RAT 106的输出耦合的第一输入,具有与ROB 110的输出耦合的第二输入,并且具有与融合RS模块10本文档来自技高网
...

【技术保护点】
一种具有融合保留站结构的微处理器,包括:主保留站(RS),具有用于接收发射指令的输入,具有用于将所述发射指令推送到次RS的推送输出,并且具有用于分派所述发射指令中的准备好分派的至少一个指令的至少一个绕过输出;所述次RS,具有与所述主RS的所述推送输出耦合的输入并且具有至少一个分派输出;以及绕过系统,其在所述主RS的所述绕过输出和所述次RS的所述至少一个分派输出之间进行选择来分派所选择的发射指令。

【技术特征摘要】

【专利技术属性】
技术研发人员:邸千力余晓园
申请(专利权)人:上海兆芯集成电路有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1