IBM Journal of Research and Development · 1993 · 139 citations · 16 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureHardware-software Co-designSimulation-based DesignCachingHardware AccelerationInstruction Set ArchitectureInstruction-level ParallelismProcessor Core DesignSpeculative ExecutionCache Access PatternsCache DesignCache PrefetchingInstruction Cache BehaviorInstruction Fetch UnitLoadPrefetching MechanismsProcessor Architecture
A special-purpose load unit is proposed as part of a processor design. The unit prefetches data from the cache by predicting the address of the data fetch in advance. This prefetch allows the cache access to take place early, in an otherwise unused cache cycle, eliminating one cycle from the load instruction. The prediction also allows the cache to prefetch data if they are not already in the cache. The cache-miss handling can be overlapped with other instruction execution. It is shown, using trace-driven simulations, that the proposed mechanism, when incorporated in a design, may contribute to a significant increase in processor performance. The paper also compares different prediction methods and describes a hardware implementation for the load unit.
16
Branch Prediction Strategies and Branch Target Buffer Design
Lockup-free instruction fetch/prefetch cache organization
David Kroft · 1998 · 564 citations · Full text
David Callahan, Ken Kennedy, Allan Porterfield · 1991 · 489 citations