Process Variation Tolerant Register Files Based On Dynamic Memories
Xiaoyao Liang,Ramon Canal,Gu-Yeon Wei,David M. Brooks
2007-01-01
Abstract:Transistor gate length and threshold voltage vari- ability due to process variations will greatly impact the stability, leakage power, and performance of future microprocessors. These variations are especially detrimental to continued scaling of 6T SRAM (6-transistor static memory) structures. This paper proposes replacing traditional SRAM-based cells in mutliported register files with cells based on 3T1D DRAM (3-transistor, 1- diode dynamic memory) cells, which can absorb the effects of device physical variations into a single parameter - the data retention time. By leveraging the transient data in the processor and dependency slack in the pipeline, retention time variation can be hidden into the existing processor architecture. Thus the proposed register file can effectively tolerate very large process variation with little or even no impact on performance, ad- dresses stability concerns, and reduces power consumption, when compared with ideal SRAM-based designs. Detailed circuit and architectural simulations and analysis verify a 1% normalized performance loss even under very large process variations, and 22% average power savings. I. INTRODUCTION Nanoscale technology scaling offers the promise of con- tinuing transistor density and performance trends. However, the road is fraught with difficulties resulting from increased process variations that limit performance gains and affect stability of key circuit blocks such as on-chip memories. Addressing these problems will require innovation from all levels in the design flow from the devices to the system architecture. This paper investigates using dynamic memory cells with architecture support to enable robust register file designs tolerant to process variations for future generations of high-performance microprocessors. Process variation is mainly caused by fluctuations in dopant concentrations and device channel dimensions. Gate length variation can change the effective driving capability of the transistor, as well as the threshold voltage due to the short channel effect. Random dopant variations can also change the threshold voltage of the device. The nature of the semi- conductor manufacturing process gives rise to both within-die variations (i.e. device features on one chip can be different) and die-to-die variations (i.e. device features across chips can be different). As technology scales, within-die variations are getting larger, significantly affecting performance and compromising circuit reliability. On-chip memories consume a significant portion of the overall die space in modern microprocessors due to their area efficiency and the high system performance they offer in exchange for the space and power they consume. Multi-ported register files rely on SRAM cells, which have generally scaled well with technology. Unfortunately, stability, performance, and leakage power will become major hurdles for future SRAMs implemented in aggressive nanoscale technologies due to increasing device-to-device mismatch and variations. One simple solution to these problems that affect traditional SRAM designs is to stop scaling SRAMs at the expense of lower performance and larger area. However, this would effectively mean the end of Moore's Law scaling of transistor density and speed for future processor designs. To avoid these scaling limitations, new circuit and architec- tural solutions are needed. In this paper, we investigate on- chip memory architectures based on 3T1D dynamic memory cells (14). We demonstrate a robust memory design in the context of an important architectural structure - multiported register files. We show how characteristics of the modern pro- cessor architecture (e.g., superscalar, out-of-order execution) can mitigate the costs associated with dynamic memories and overcome effects of physical device variations, while offering significant performance, stability, and power advantages. This paper takes several steps in the direction of variation-tolerant memory architecture designs. Specifically, there are three major contributions: