A physical level study and optimization of CAM-based checkpointed register alias table

Using full-custom layouts in 130 nm technology, this work studies how the latency and energy of a checkpointed, CAM-based Register Alias Table (cRAT) vary as a function of the window size, the issue width, and the number of embedded global checkpoints (GCs). These results are compared to those of the SRAM-based RAT (sRAT). Understanding these variations is useful during the early stages of architectural exploration where physical level information is not yet available. It is found that compared to sRAT, cRAT is more sensitive to the number of physical registers and issue width, however, it is less sensitive to the number of GCs. In addition, beyond a certain number of GCs, cRAT becomes faster than its equivalent sRAT. For instance, this is true when a RAT for 64 architectural and 128 physical registers has at least 20 GCs. This work also proposes an energy optimization for the cRAT; this optimization selectively disables cRAT entries that do not result in a match during lookup. The energy savings are, for the most part, a function of the number of physical registers. For instance, for a cRAT with 128 entries energy is reduced by 40%.

[1]  Gürhan Küçük,et al.  A circuit-level implementation of fast, energy-efficient CMOS comparators for high-performance microprocessors , 2002, Proceedings. IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[2]  Andreas Moshovos Checkpointing alternatives for high performance, power-aware processors , 2003, ISLPED '03.

[3]  Angela Arapoyanni,et al.  On the latency, energy and area of checkpointed, superscalar register alias tables , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[4]  Haitham Akkary,et al.  An analysis of a resource efficient checkpoint architecture , 2004, TACO.

[5]  James E. Smith,et al.  Complexity-Effective Superscalar Processors , 1997, ISCA.

[6]  Kenneth C. Yeager The Mips R10000 superscalar microprocessor , 1996, IEEE Micro.

[7]  Josep Llosa,et al.  Kilo-instruction Processors , 2003, ISHPC.

[8]  Richard E. Kessler,et al.  The Alpha 21264 microprocessor , 1999, IEEE Micro.

[10]  Andreas Moshovos,et al.  BranchTap: improving performance with very few checkpoints through adaptive speculation control , 2006, ICS '06.

[11]  E. You,et al.  A third-generation SPARC V9 64-b microprocessor , 2000, IEEE Journal of Solid-State Circuits.