Qiang Qiang - Santa Clara CA, US Dhiraj Goswami - Wilsonville OR, US
Assignee:
Synopsys, Inc. - Mountain View CA
International Classification:
G06F 17/50
US Classification:
716106, 716136
Abstract:
Methods and apparatuses are described for assigning random values to a set of random variables so that the assigned random values satisfy a set of constraints. An embodiment can receive a set of constraints, wherein each constraint is defined over one or more random variables from a set of random variables. Next, the embodiment can generate a circuit model based on the set of constraints, wherein assignable values for at least one node in the circuit model are represented in multiple value systems. The embodiment can then assign random values to the set of random variables based on the circuit model.
Adaptive State-To-Symbolic Transformation In A Canonical Representation
Dhiraj Goswami - Wilsonville OR, US Ngai Ngai William Hung - San Jose CA, US Jasvinder Singh - San Jose CA, US Qiang Qiang - Santa Clara CA, US
Assignee:
SYNOPSYS, INC. - Mountain View CA
International Classification:
G06F 17/50
US Classification:
716 3
Abstract:
Some embodiments provide a system for adaptively performing state-to-symbolic transformation in a canonical representation which is used for generating random stimulus for a constrained-random simulation. The system can construct a canonical representation for a set of constraints using the set of random variables and the subset of the state variables in the constraints. Next, the system can use the canonical representation to generate random stimulus for the constrained-random simulation, and monitor parameters associated with the constrained-random simulation. Next, the system can add state variables to or remove state variables from the canonical representation based at least on the monitored parameters. The system can then use the modified canonical representation which has a different set of state variables to generate random stimulus for the constrained-random simulation.
Method And Apparatus For Optimizing Constraint Solving Through Constraint Rewriting And Decision Reordering
Ngai Ngai William Hung - San Jose CA, US Qiang Qiang - Santa Clara CA, US Guillermo R. Maturana - Berkeley CA, US Jasvinder Singh - San Jose CA, US Dhiraj Goswami - Wilsonville OR, US
Assignee:
SYNOPSYS, INC. - Mountain View CA
International Classification:
G06F 17/50
US Classification:
703 2
Abstract:
Methods and apparatuses are described for assigning random values to a set of random variables so that the assigned random values satisfy a set of constraints. A constraint solver can receive a set of constraints that is expected to cause performance problems when the system assigns random values to the set of random variables in a manner that satisfies the set of constraints. For example, modulo constraints and bit-slice constraints can cause the system to perform excessive backtracking when the system attempts to assign random values to the set of random variables in a manner that satisfies the set of constraints. The system can rewrite the set of constraints to obtain a new set of constraints that is expected to reduce and/or avoid the performance problems. The system can then assign random values to the set of random variables based on the new set of constraints.
Optimizing Constraint Solving By Rewriting At Least One Bit-Slice Constraint
- Mountain View CA, US Qiang Qiang - Santa Clara CA, US Guillermo R. Maturana - Berkeley CA, US Jasvinder Singh - San Jose CA, US Dhiraj Goswami - Wilsonville OR, US
Assignee:
SYNOPSYS, INC. - Mountain View CA
International Classification:
G06F 17/50 G06F 7/58
Abstract:
Methods and apparatuses are described for assigning random values to a set of random variables so that the assigned random values satisfy a set of constraints. A constraint solver can receive a set of constraints that is expected to cause performance problems when the system assigns random values to the set of random variables in a manner that satisfies the set of constraints. For example, modulo constraints and bit-slice constraints can cause the system to perform excessive backtracking when the system attempts to assign random values to the set of random variables in a manner that satisfies the set of constraints. The system can rewrite the set of constraints to obtain a new set of constraints that is expected to reduce and/or avoid the performance problems. The system can then assign random values to the set of random variables based on the new set of constraints.