Overview
System-level stimuli generation refers, in the provided evidence, to the application of knowledge-based random stimuli generation technology to hardware system verification rather than only processor-level verification. IBM initiated the X-Gen project in 2000 with the explicit goal of applying the technology to system-level stimuli generation.[C1]
X-Gen approach
X-Gen was designed with an architecture similar to Genesys PE and used the same CSP solver.[C2] The key adaptation for the system-level domain was its modeling language: unlike the processor-focused setting, X-Gen made components, system transactions, and configurations first-class members of the language.[C2]
This distinction indicates that system-level stimuli generation required models that represent interactions among system components and configurations, not only instruction-level or processor-specific behavior.[C2]
Evaluation and adoption
In 2002, X-Gen was evaluated by running it in parallel with a legacy system stimuli generator that was not knowledge-based.[C3] The reported result was that X-Gen achieved higher coverage metrics while using one-fifth of the simulation time and one-tenth of the test templates.[C3]
Following this comparison, X-Gen became the primary stimuli generator for IBM high-end systems.[C4] Since 2002, it has been used in verification of most IBM high-end system designs cited in the source, including the p-Series server and Cell-processor-based systems.[C4]
Maintainability considerations
The evidence emphasizes maintainability as crucial because multiple designs were verified simultaneously and hardware specifications were unstable.[C5] The described application architecture addressed maintainability through separation of responsibilities, knowledge reuse, adaptation to change, and ongoing upgrades.[C5]
A central maintainability mechanism was the partition between a generic generation engine and a knowledge base. This enabled reuse of generic test-generation capabilities and testing knowledge for new designs.[C6] Designs from different generations of the same hardware architecture were modeled in a hierarchy reflecting their lineage, allowing common building blocks and testing knowledge to be shared.[C6]
The evidence also notes that verification often begins while the hardware architecture is still evolving. Changes to the hardware specification therefore had to be reflected in the knowledge base and reference model in a timely manner.[C7] Separating these modules allowed parallel development and enabled different teams to check correctness across modules.[C7]
Key characteristics
- Originated as an extension of successful processor-verification stimulus generation to system-level verification.[C1]
- Implemented in X-Gen using a knowledge-based architecture and CSP solver shared with Genesys PE.[C2]
- Required a system-oriented modeling language where components, system transactions, and configurations were first-class concepts.[C2]
- Demonstrated higher coverage than a legacy non-knowledge-based system generator in less simulation time and with fewer test templates in the reported 2002 comparison.[C3]
- Became the primary stimuli generator for IBM high-end systems and was used on p-Series and Cell-processor-based system verification.[C4]