DocumentCode :
2925400
Title :
Accelerating statistical static timing analysis using graphics processing units
Author :
Gulati, Kanupriya ; Khatri, Sunil P.
Author_Institution :
Dept. of ECE, Texas A&M Univ., College Station, TX
fYear :
2009
fDate :
19-22 Jan. 2009
Firstpage :
260
Lastpage :
265
Abstract :
In this paper, we explore the implementation of Monte Carlo based statistical static timing analysis (SSTA) on a graphics processing unit (GPU). SSTA via Monte Carlo simulations is a computationally expensive, but important step required to achieve design timing closure. It provides an accurate estimate of delay variations and their impact on design yield. The large number of threads that can be computed in parallel on a GPU suggests a natural fit for the problem of Monte Carlo based SSTA to the GPU platform. Our implementation performs multiple delay simulations at a single gate in parallel. A parallel implementation of the Mersenne Twister pseudo-random number generator on the GPU, followed by box-Muller transformations (also implemented on the GPU) is used for generating gate delay numbers from a normal distribution. The mu and sigma of the pin-to-output delay distributions for all inputs and for every gate, are obtained using a memory lookup, which benefits from the large memory bandwidth of the GPU. Threads which execute in parallel have no data/control dependencies on each other. All threads compute identical instructions, but on different data, as required by the single instruction multiple data (SIMD) programming semantics of the GPU. Our approach is implemented on a NVIDIA GeForce GTX 8800 GPU card. Our results indicate that our approach can obtain an average speedup of about 260times as compared to a serial CPU implementation. With the recently announced quad 8800 GPU cards, we estimate that our approach would attain a speedup of over 785times. The correctness of the Monte Carlo based SSTA implemented on a GPU has been verified by comparing its results with a CPU based implementation.
Keywords :
Monte Carlo methods; computer graphics; parallel processing; Monte Carlo simulations; NVIDIA GeForce GTX 8800 GPU card; SIMD programming semantics; box-Muller transformations; delay variations; graphics processing units; memory lookup; multiple delay simulations; pin-to-output delay distributions; single instruction multiple data; statistical static timing analysis; Computational modeling; Concurrent computing; Delay; Delay estimation; Gaussian distribution; Graphics processing unit; Monte Carlo methods; Timing; Yield estimation;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Design Automation Conference, 2009. ASP-DAC 2009. Asia and South Pacific
Conference_Location :
Yokohama
Print_ISBN :
978-1-4244-2748-2
Electronic_ISBN :
978-1-4244-2749-9
Type :
conf
DOI :
10.1109/ASPDAC.2009.4796490
Filename :
4796490
Link To Document :
بازگشت