Simulation of automatically-generated test programs is the primary means for functional verification of complex hardware designs. The Cloud and Hardware Quality group specializes in automatic test program generation technologies for high-end designs, focusing on verifying processors and symmetric multi-processor (SMP) systems. We have developed a testing methodology that is employed throughout the design life-cycle, starting in pre-silicon unit and core levels, through acceleration, emulation and on-silicon validation. Our technologies are recognized as the best in the field and are used throughout IBM's major hardware development labs as well as by external customers.

Our research activities also include tools for automatic test program generation for the IBM Cloud. The Cloud Quality is crucial for business success, and our tools aim at finding the problems in the Cloud infrastructure, before it is deployed and used by our clients.


Tom Kolan, Manager Cloud and Hardware Quality, IBM Research - Haifa



Cloud Quality Technologies

    We develop tools to improve the quality of the IBM Cloud. Our research areas include
  • Testing functionality of the cloud infrastructure - ensuring that cloud users have the functionality needed to deploy and use their systems on IBM Cloud.
  • Boosting cloud resiliency - making the cloud more robust so it can more easily recover from data loss or delay between different micro-services.
  • Improving cloud management - building a tool that checks the feasibility of cloud solutions built by offering managers, by making sure the requested solution is possible under constraints defined by the users.

IBM Genesys Professional Edition Test Generator (Genesys-Pro)

Genesys-Pro is a generic state-of-the-art test program generator for processor and multi-processor functional verification. Leveraging experience of over two decades in test generator development, this is the central tool used for functional verification of IBM POWER and System Z designs. Genesys-Pro is also licensed by external companies for ARM designs.


IBM FPgen Floating Point Test Generator (FPgen)

FPgen is a test generator targeted toward the verification of the floating point datapath. The technology includes a generic test plan for floating point to help verification engineers ensure high coverage of their design. FPgen has been used to verify all major floating point units in IBM over the last two decades. It is also licensed by external companies.

IBM Constraint Solver

IBM Constraint Solver

Our primary goal is to provide constraint satisfaction technology for the functional verification tools in our department. The solver has specialized features for the domain of hardware verification but is also been used to solve challenging problems in other domains, such as data fabrication and cloud configuration.

Post-Silicon Validation Technologies

Post-Silicon Validation Technologies

IBM Threadmill Post-Silicon Exerciser (Threadmill) is our key technology for post-silicon validation. It is used on emulation and acceleration platforms as well as on silicon. Threadmill is a bare-metal application that once loaded to the system, continuously generates test-cases, executes them, and checks their results. Threadmill has been used as part of the IBM POWER7, POWER8 and POWER9 development process, where it detected numerous hard to hit bugs. It is also licensed by external companies for ARM designs.