The Verification and Quality Technologies Department specializes in high-quality research, design, and development in the domain of functional verification, for both hardware and software.
Our expertise in this domain goes back over 30 years, during which we pioneered several of the practices currently prevalent in the industry. Some of our prominent technologies include:
- The use of constraint-solving capabilities for stimuli generation in the domain of functional verification of hardware. This includes separating the architecture description (model) from the generation engine.
- A scalable formal verification technology that employs state-of-the-art model checking algorithms with extensive support for all common design and specification languages, including PSL (an IEEE standard specification language invented by our department).
- A powerful solution for post-silicon validation aimed at finding intricate bugs that may occur in complex multi-processing scenarios or under advanced memory management constraints, such as transactional memories.
- An advanced Combinatorial Test Design (CTD) technology that dramatically reduces the number of tests required to achieve a desired level of parameter interaction coverage over the test space of the program or system under test.
Our primary customers within IBM are IBM Systems and Global Business Services, but many of our tools are generic and are used by external customers, as well.
The technologies developed in our department have received multiple IBM awards. Our overall contribution to IBM hardware was awarded an IBM Research Extraordinary Accomplishment, the highest rank for technical accomplishment awarded by IBM Research. Our CTD technology was awarded an IBM Corporate Award, the highest award granted by IBM corporate.
In our ongoing endeavor to develop the next generation of verification tools and capabilities that can meet the increasing needs of our customers, we are exploring additional exciting directions. Among these we are:
- Harnessing analytics to provide insights on Big Data collected during the verification/testing process.
- Developing techniques to help verify that a given design meets its performance requirements.
- Developing technology and methodology to assess the quality of successful machine learning solutions.
- Researching and developing simulation engines of approximate noise models in the domain of quantum computing.