Cell libraries often contain a simulation model in a system design language, such as Verilog. These languages usually involve non-determinism, which in turn, poses a challenge to their validation. Simulators often resolve such problems by using certain rules to make the specification deterministic. This however is not justified by the behavior of the hardware that is to be modeled. Hence, simulation might not be able to detect certain errors. In this paper we develop a technique to prove whether non-determinism does not affect the behavior of the simulation model, or whether there exists a situation in which the simulation model might produce different results. To make our technique efficient, we show that the global property of equal behavior for all possible evaluations is equivalent to checking only a certain local property.
['M Matthias Raffelsieper', 'Mohammad Reza Mousavi', 'Jan-Willem Roorda', 'Chris Strolenberg', 'Hans Zantema']
Formal Analysis of Non-determinism in Verilog Cell Library Simulation Models