IP Library Granted Patent US 8,726,203
Granted Patent B1
US 8,726,203 · App. 13/870,378 · Granted May 13, 2014

System and method for generating virtual test benches

Inventors: Serdar Uckun (Palo Alto, CA); William Benjamin Schaefer, IV (Palo Alto, CA); Mark Flanagan Ward (Palo Alto, CA); Kerry Ryan Poppa (Palo Alto, CA); Michael Theodore Koopmans (Palo Alto, CA); Mark Edwin Drummond (Palo Alto, CA); Lee Travis Bergmann Johnson (Palo Alto, CA)
Assignee: Cydesign, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,726,203
App. No.
13/870,378
Granted
May 13, 2014
Kind
B1
Abstract

A method and system for generating a test bench for testing a requirement is described. According to an embodiment, a test bench generator subsystem automatically chooses a test template based on a user specification of a requirement to be tested. The requirement is automatically associated with information such as parameters, context identifiers, and success criteria. The subsystem automatically generates a test bench data construct for a simulation that will test the requirement and evaluate success or failure. In an embodiment, generating the test bench includes automatically choosing a system model for the test bench.

Claims (53)

1. A system comprising:

a plurality of data processing units coupled to at least one network;

at least one user input device coupled to the at least one network;

a plurality of databases coupled to the at least one network; and

at least one processor coupled to the at least one network and configured to execute a test bench generator subsystem, the test bench generator subsystem comprising a test bench generator module configurable to automatically compose an end-to-end simulation for testing a requirement, wherein composing comprises,

automatically associating the requirement with appropriate information;

in response to a user specifying that the requirement is to be tested, automatically retrieving a test template;

automatically retrieving a system model; and

automatically composing the end-to-end simulation.

2. The system of claim 1 , wherein the appropriate information includes one or more parameters, success criteria, and context identifiers.

3. The system of claim 1 , wherein the test bench generator module is further configurable to:

determine whether a context model is available; and

if a context model is available, automatically retrieve the context model.

4. The system of claim 1 , wherein the test bench generator module is further configurable to:

determine whether a user model is available; and

if a user model is available, automatically retrieve the user model.

5. The system of claim 1 , wherein the test bench generator module is further configurable to create sets of data from the system model.

6. The system of claim 5 , wherein the sets of data created by the test bench generator module comprise a simulation sequence for testing a requirement.

7. The system of claim 5 , wherein the sets of data created by the test bench generator module comprise one or more probes, wherein a probe is configured to track a parameter as defined by a requirement.

8. The system of claim 5 , wherein the sets of data created by the test bench generator module comprise execution conditions for testing a requirement.

9. The system of claim 5 , wherein the sets of data created by the test bench generator module comprise external stimuli for testing a requirement.

10. The system of claim 5 , wherein the sets of data created by the test bench generator module comprise a measurement algorithm for determining whether a requirement was met during the test of the requirement.

11. A computer-implemented method for testing a requirement, the method comprising:

a processor receiving and storing requirements and information associated with the requirements, wherein a requirement comprises a predefined characteristic of a system;

the processor executing a test bench generator subsystem module, wherein,

the test bench generator subsystem module receives user input specifying a requirement to be tested;

the test bench generator subsystem module automatically retrieves a test template from a database;

the test bench generator subsystem module automatically retrieves one or more of a plurality of data models from the database; and

the test bench generator subsystem module automatically composes a simulation for testing the specified requirement, wherein the simulation comprises an executable test bench data construct.

12. The computer-implemented method of claim 11 , further comprising the test bench generator subsystem module automatically associating the requirements with the information.

13. The computer-implemented method of claim 11 , wherein the information associated with the requirements comprises one or more parameters, success criteria, and one or more context identifiers.

14. The computer-implemented method of claim 11 , wherein the plurality of models comprise a system model, a user model, and a context model.

15. The computer-implemented method of claim 11 , wherein composing the simulation comprises the test bench generator subsystem module creating external stimuli based the one or more data models.

16. The computer-implemented method of claim 11 , wherein composing the simulation comprises the test bench generator subsystem module creating execution conditions based on the test template.

17. The computer-implemented method of claim 11 , wherein composing the simulation comprises the test bench generator subsystem module creating a measurement algorithm for determining whether the specified requirement was met.

18. The computer-implemented method of claim 17 , wherein creating the measurement algorithm comprises the test bench generator subsystem module using the information associated with the requirements.

19. The computer-implemented method of claim 11 , wherein composing the simulation comprises the test bench generator subsystem module creating a simulation sequence.

20. The computer-implemented method of claim 11 further comprising:

the test bench generator subsystem module collecting output data after execution of the test bench construct; and

the test bench generator subsystem module determining whether the requirement was met.

21. The computer-implemented method of claim 11 , further comprising one or more processors performing the simulation, comprising executing the test bench construct, wherein executing comprises scheduling and performing a plurality of data processing tasks on the one or more processors.

22. The computer-implemented method of claim 21 , wherein executing the test bench construct further comprises scheduling and performing a plurality of data processing tasks in parallel on the one or more processors.

23. A non-transitory computer readable medium having instruction stored thereon which, when executed by a processor perform a requirement testing method, the method comprising:

automatically choosing a test template based on a user specification of a requirement to be tested;

automatically associating the requirement with information comprising one or more of at least one parameter, at least one context identifier, and success criteria;

automatically selecting at least one model for generating a test bench, wherein the test bench comprises a data construct for a computer simulation that tests the requirement for compliance the success criteria, wherein the at least one model comprises a system model that models the system to be tested for compliance with the requirement; and

automatically generating the test bench, comprising creating sets of data from the at least one model for inclusion in the test bench.

24. The non-transitory computer readable medium of claim 23 , wherein the sets of data comprise one or more probes for monitoring one or more predefined conditions.

25. The non-transitory computer readable medium of claim 23 , wherein the sets of data comprise execution conditions for the simulation.

26. The non-transitory computer readable medium of claim 23 , wherein the sets of data comprise external stimuli.

27. The non-transitory computer readable medium of claim 23 , wherein the sets of data comprise a simulation sequence.

28. The non-transitory computer readable medium of claim 23 , wherein the at least one model further comprises a system model that models the system to be tested for compliance with the requirement, a context model that models a context for the simulation, and a user model that models a user of the system to be tested.

29. The non-transitory computer readable medium of claim 23 , further comprising automatically evaluating an output of the simulation to determine whether the requirement was met.

Assignments (4)
CONFIRMATORY LICENSE Recorded Mar 3, 2014
From: CYDESIGN LABS, INC.
To: DEFENSE ADVANCED RESEARCH PROJECTS AGENCY
Reel/Frame 032379/0277 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2014
From: UCKUN, SERDAR, MR; SCHAEFER, WILLIAM BENJAMIN, IV, MR; WARD, MARK FLANAGAN, MR; POPPA, KERRY RYAN, MR; KOOPMANS, MICHAEL THEODORE, MR; DRUMMOND, MARK EDWIN, MR; JOHNSON, LEE TRAVIS BERGMAN, MR
To: CYDESIGN LABS, INC.
Reel/Frame 032275/0896 →
CONFIRMATORY LICENSE Recorded Feb 23, 2014
From: UCKUN, SERDAR, MR; SCHAEFFER, WILLIAM BENJAMIN, IV, MR; WARD, MARK FLANAGAN, MR; POPPA, KERRY RYAN, MR; KOOPMANS, MICHAEL THEODORE, MR; DRUMMOND, MARK EDWIN, MR; JOHNSON, LEE TRAVIS BERGMAN, MR
To: CYDESIGN LABS
Reel/Frame 032326/0838 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2013
From: UCKUN, SERDAR; SCHAEFER, WILLIAM BENJAMIN, IV; WARD, MARK FLANNAGAN; POPPA, KERRY RYAN; KOOPMANS, MICHAEL THEODORE; DRUMMOND, MARK EDWIN; JOHNSON, LEE TRAVIS BERGMANN
To: CYDESIGN LABS INC.
Reel/Frame 030287/0425 →