Magma Tekton: rethinking static timing analysis
Static timing analysis (STA) was nearly an instant success at timing closure 15 years ago. But except for creating partitioning/scheduling algorithms to parallelize the algorithms for multicore CPUs, nothing much has changed since, if you will grant that statistical timing analysis is a separate subject.
This languishing has allowed the number of instances in a design, the number of modes in which a design must be analyzed, and the number of process corners each to grow enormously, while the speed of STA remained tied to the comparatively much slower growth in computing power. Consequently, run-times for full designs across modes and corners have become enormous—days, in some cases. That has turned STA from an elegant, fast tool into a powerful, trusted, but ponderous necessity, consuming licenses and days of precious schedule with abandon. If there were a way to speed up STA dramatically, users would need fewer licenses, could save the real-estate and power costs for huge server collections, and they could employ the tool in situations where it has become impractical today, such as checking timing constraints or evaluating ECOs.
There are several alternatives to accelerate STA. To begin with, the task is embarrassingly parallelizable. Most nets are independent with regard to delay, so you can organize the nets into independent sets and dispatch them to independent threads. That makes STA inherently friendly to multicore computing, and in principle also to cloud computing—should we ever figure out what that is—and more practically to execution on graphics processors. But according to Magma technical marketing manager Dan Blong, it’s been 15 years since anyone looked at the underlying algorithms and the code to see if there were other ways to accelerate the analysis.
That is what a team headed by Pathmill pioneer Jacob Avidan set out to do two years ago. The result, according to Blong, is a new STA/extraction/SPICE environment: Tekton. Magma claims that as a timing analyzer, Tekton runs significantly faster on a single CPU, and dramatically faster in a multi-mode/multi-corner analysis on a multi-core machine. The company summarizes these claims with the presumably somewhat hyperbolic slogan "any design, one machine, in under an hour." They support this claim with stated speed of one million nets per minute, and near-linear scaling for up to 24 CPUs.
The greater performance comes primarily, Blong says, from careful organization of the work to avoid having to repeat calculations. This presumably means recognizing tasks that are unnecessary as well as saving intermediate results for use in future calculations, especially across modes and corners. It does not mean compromising timing accuracy: Blong says Tekton correlates very well to PrimeTime delay results, and approximates PrimeTime crosstalk results, an area on which the team is still working.
Tekton is designed to drop into existing flows, accepting PrimeTime tcl and Perl scripts. As a complete environment, Tekton includes the Tekton QCP extraction tool—which correlates to QuickCap—as well as crosstalk analysis, on-chip variation analysis, and an integrated SPICE engine. In addition to being able to time an entire design in under an hour, the package includes an incremental mode that lets you work on particular blocks of IP or on ECOs diretctly.
Faster STA appears to be the only alternative left after the industry has seemingly rejected statistical timing analysis, preferring instead to let the number of PVT corners go through the roof. Magma says Tekton is designed to accommodate 15 or more PVT corners in a multi-mode analysis, with up to 54 total cases. Whether that is going to be sufficient to handle the increasing dominance of process variations without falling back on massive guard-banding remains to be seen.
Jim McCanny, Altos commented:
8F5K5 commented:
ron commented:
EdaGuy commented:
EdaGuy commented:
Tom commented:















