Substituting associative load queue with simple hash tables in out-of-order microprocessors

  • Authors:
  • Alok Garg;Fernando Castro;Michael Huang;Daniel Chaver;Luis Piñuel;Manuel Prieto

  • Affiliations:
  • University of Rochester;Universidad Complutense Madrid;University of Rochester;Universidad Complutense Madrid;Universidad Complutense Madrid;Universidad Complutense Madrid

  • Venue:
  • Proceedings of the 2006 international symposium on Low power electronics and design
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Buffering more in-flight instructions in an out-of-order microprocessor is a straightforward and effective method to help tolerate the long latencies generally associated with off-chip memory accesses. One of the main challenges of buffering a large number of instructions, however, is the implementation of a scalable and efficient mechanism to detect memory access order violations as a result of out-of-order scheduling of load and store instructions. Traditional CAM-based associative queues can be very slow and energy consuming. In this paper, instead of using the traditional age-based load queue to record load addresses, we explicitly record age information in address-indexed hash tables to achieve the same functionality of detecting premature loads. This alternative design eliminates associative searches and significantly reduces the energy consumption of the load queue. With simple techniques to reduce the number of false positives, performance degradation is kept at a minimum.