摘要:
Systems and methods for solving a constraint satisfaction problem (CSP) defined by one or more variables, constraints and probabilistic requests (PRs) are provided. In one embodiment, each PR is mapped onto a set of constraints that implement the PR. The CSP solver then finds a series of solutions to the CSP. For each solution, if a constraint associated with a PR is satisfied, then a success counter for that PR is incremented; else a failure counter for that PR is incremented. If the constraint was not considered for the purpose of solving the CSP, then the failure counter for the PR associated with the constraint is incremented.
摘要:
A method for solving a constraint satisfaction problem (CSP) comprises identifying a first illegal combination associated with at least one variable, wherein the first illegal combination contradicts at least one constraint; grouping the first illegal combination with a second illegal combination, in response to determining that the first and second illegal combinations contradict the same constraint; identifying at least one failure explanation for each group of illegal combinations, wherein the failure explanation is associated with at least one illegal combination in said group to provide a reason for a contradicted constraint associated with the illegal combination; assigning a value to each variable in the given domain to solve the CSP within the limitations defined by the constraints in a solution path; and generating a result, in response to determining that at least one assigned value to a variable contradicts a constraint.
摘要:
Systems and methods for solving a constraint satisfaction problem (CSP) defined by one or more variables, constraints and probabilistic requests (PRs) are provided. In one embodiment, each PR is mapped onto a set of constraints that implement the PR. The CSP solver then finds a series of solutions to the CSP. For each solution, if a constraint associated with a PR is satisfied, then a success counter for that PR is incremented; else a failure counter for that PR is incremented. If the constraint was not considered for the purpose of solving the CSP, then the failure counter for the PR associated with the constraint is incremented.
摘要:
Improvements in functional verification of a design are achieved by providing a test template that specifies test parameters directed to a function of the design. An exemption mode of operation is associated with a portion of the template, in which constraints and variables associated with the template are revised. The template is an input to a CSP engine, which, in cooperation with a test generator engine, produces test scenarios that lie in an expanded region of the generator's usual operational space. Provision is made for independently enabling and disabling a plurality of exemption modes of operation that are associated with the same or different areas of the template.
摘要:
Methods and systems are disclosed that enhance the ability of a test generator to automatically deal with address translation in a processor design, and without need for creating specific code. A model of the address translation mechanism of a design-under-test is represented as a directed acyclic graph and then converted into a constraint satisfaction problem. The problem is solved by a CSP engine, and the solution used to generate test cases for execution. Using the model, testing knowledge can be propagated to models applicable to many different designs to produce extensive coverage of address translation mechanisms.
摘要:
A method for solving a constraint satisfaction problem (CSP) comprises identifying a first illegal combination associated with at least one variable, wherein the first illegal combination contradicts at least one constraint; grouping the first illegal combination with a second illegal combination, in response to determining that the first and second illegal combinations contradict the same constraint; identifying at least one failure explanation for each group of illegal combinations, wherein the failure explanation is associated with at least one illegal combination in said group to provide a reason for a contradicted constraint associated with the illegal combination; assigning a value to each variable in the given domain to solve the CSP within the limitations defined by the constraints in a solution path; and generating a result, in response to determining that at least one assigned value to a variable contradicts a constraint.
摘要:
A method for automatically generating test programs includes receiving a description of a system under test, expressed in terms of variables associated with the system and conditional constraints including semantics applied to the variables, and receiving a definition of an event to be tested in the system. The method generates an ECondCSP over the variables responsively to the definition of the event and to the conditional constraints, such that at least some of the semantics of the conditional constraints are preserved in the ECondCSP when one or more of the variables to which the semantics are applied are inactive. The ECondCSP is solved to generate a test case for the system.
摘要:
Methods and systems are disclosed that enhance the ability of a test generator to automatically deal with address translation in a processor design, and without need for creating specific code. A model of the address translation mechanism of a design-under-test is represented as a directed acyclic graph and then converted into a constraint satisfaction problem. The problem is solved by a CSP engine, and the solution used to generate test cases for execution. Using the model, testing knowledge can be propagated to models applicable to many different designs to produce extensive coverage of address translation mechanisms.
摘要:
The input for a test generator is a plurality of test templates, each of which typically aims at covering a specific verification task. Test templates direct the production of distinct transactions, which are the atomic functional building blocks of the design-under-verification. Test templates directed to different hardware functions of the scenario are dynamically interleaved. In this way several transactions are combined together in complex statements in order to achieve a complex test scenario. The transactions are submitted to the test generator, which generates test cases, in which the different hardware functions of the scenario are exercised in combinations. Variation among the test cases is achieved through a large number of random decisions made during the generation process.
摘要:
Apparatus for automatically generating test programs is provided. The apparatus includes a test generator, which is adapted to receive a description of a system under test, expressed in terms of variables associated with the system and conditional constraints including semantics applied to the variables, to receive a definition of an event to be tested in the system, to generate an ECondCSP over the variables responsively to the definition of the event and to the conditional constraints, such that at least some of the semantics of the conditional constraints are preserved in the ECondCSP when one or more of the variables to which the semantics are applied are inactive, and to solve the ECondCSP to generate a test case for the system.