Method and apparatus for random stimulus generation
AssigneeSynopsys, Inc.
InventorsWon Sub Kim, Mary Lynn Meyer, Daniel Marcos Chapiro
Life of this patent
Estimating the term…
Loading patent…
AssigneeSynopsys, Inc.
InventorsWon Sub Kim, Mary Lynn Meyer, Daniel Marcos Chapiro
Estimating the term…
The present invention adds capabilities to a Hardware Verification Language (HVL) which facilitate the generation of random test data. Sources of random numbers are easily produced by simply adding a randomness attribute to a variable declaration of a class definition. Such variables are called random variables. A “randomize” method call may be made to an instance of the class definition to produce random values for each random variable. The values assigned to random variables are controlled using constraint blocks, which are part of the class definition. A constraint block is comprised of constraint expressions. The constraint expressions may impose a linear ordering in which random variable values must be assigned and this dependency is expressed by directed acyclic graphs (DAGs). The constraint expressions constraining each random variable are converted into ranges of permissible values from which a value is chosen at random. Rather than selecting a value for each random variable from within one of its ranges, as done for the randomize method, each boundary method call sequentially selects a combination of boundary values, for each random variable, from each random variable's set of ranges. By selecting a boundary value for each random variable of the instance, in a coordinated fashion, all combinations of boundary values can be produced through successive calls to the boundary function. As with the randomize method, since random variables may depend upon each other, the selection of a boundary value for one random variable may change the selection of boundary values available for other random variables.
A method for generating values, comprising:
A system for generating values, comprising:
An electronic data signal representing sequences of instructions which, when executed by a data processing system, cause generation of values by performing the steps of:
A computer program product comprising:
Dependencies are inferred from the claim text.