Genesys-pro: innovations in test program generation for functional processor verification

Allon Adir, Eli Almog, Laurent Sébastien Fournier, Eitan Marcus, Michal Rimon, Michael Vinov, Avi Ziv

IEEE Design & Test of Computers · 2004 · 178 citations · 13 references

Concepts

TL;DR

Functional verification remains the bottleneck of the hardware design cycle, with growing performance demands and hardware size making verification increasingly difficult, and although formal methods have advanced, they are limited to small blocks or focused goals, so industry relies on random stimuli generators and tools like Geneysys‑Pro for processor verification. The authors employ MAC‑based algorithms to automatically generate test programs that trigger architecture and microarchitecture events defined by a verification plan, thereby postponing heuristic decisions until all constraints are considered. The new language used in Geneysys‑Pro significantly reduces the effort required to define and maintain implementation‑specific knowledge and verification plans.

Abstract

Functional verification is widely recognized as the bottleneck of the hardware design cycle. With the ever-growing demand for greater performance and faster time to market, coupled with the exponential growth in hardware size, verification has become increasingly difficult. Although formal methods such as model checking and theorem proving have resulted in noticeable progress, these approaches apply only to the verification of relatively small design blocks or to very focused verification goals. Current industry practice is to use separate, automatic, random stimuli generators for processor- and multiprocessor-level verification. The generated stimuli, usually in the form of test programs, trigger architecture and microarchitecture events defined by a verification plan. MAC-based algorithms are well suited for the test program generation domain because they postpone heuristic decisions until after consideration of all architectural and testing-knowledge constraints. Geneysys-Pro is currently the main test generation tool for functional verification of IBM processors, including several complex processors. We've found that the new language considerably reduces the effort needed to define and maintain knowledge specific to an implementation and verification plan.

References

13