System and method for block diagram simulation context restoration
First Claim
1. In a block diagram environment, a method of storing and using simulation context variables, comprising:
- registering areas of memory to be used in an original simulation of a block diagram of a dynamic system initiated from a zero time-point;
running the original simulation of the block diagram initiated from the zero time-point;
reaching a specified time-point in the original simulation of the block diagram, the original simulation displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original simulation and a user-indicated time-point chosen during the original simulation;
storing system state information and simulation context variables from the registered areas of memory in a storage location based on the running of the original simulation from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the simulation context variables enabling a subsequent new simulation corresponding to the original simulation to be initiated from the specified time-point of the original simulation and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem;
retrieving the simulation context variables and system state information from the storage location; and
initiating the new simulation using the retrieved simulation context variables and the system state information, the new simulation initiated from the specified time-point of the original simulation so that the new simulation displays the second behavior of the dynamic system.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of saving portions of a simulation or execution engine image at various points in a simulation or execution is disclosed. The saving of the simulation or execution context in addition to the more traditional saving of the system state information enables the restoration of a simulation or execution that is capable of producing, in a subsequent simulation or execution of a block diagram continuing from the point of the saved simulation or execution, results that are identical to those of the initial simulation or execution. The ability to restore more than just system state variables enables a user to run multiple variations of a simulation from a given point without having to replicate the simulation up until the point of the saved initial simulation, and the ability to run multiple iterations of a block diagram execution in a non-simulation execution from a given point without having to replicate the execution of the block diagram up until that point.
36 Citations
67 Claims
-
1. In a block diagram environment, a method of storing and using simulation context variables, comprising:
-
registering areas of memory to be used in an original simulation of a block diagram of a dynamic system initiated from a zero time-point; running the original simulation of the block diagram initiated from the zero time-point; reaching a specified time-point in the original simulation of the block diagram, the original simulation displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original simulation and a user-indicated time-point chosen during the original simulation; storing system state information and simulation context variables from the registered areas of memory in a storage location based on the running of the original simulation from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the simulation context variables enabling a subsequent new simulation corresponding to the original simulation to be initiated from the specified time-point of the original simulation and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieving the simulation context variables and system state information from the storage location; and initiating the new simulation using the retrieved simulation context variables and the system state information, the new simulation initiated from the specified time-point of the original simulation so that the new simulation displays the second behavior of the dynamic system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. In a block diagram environment, a method, comprising:
-
running an original simulation initiated from a zero time-point; reaching a specified time-point in the original simulation initiated from the zero time-point, the original simulation displaying a first behavior before the specified time-point and a second behavior after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original simulation and a user-indicated time-point chosen during the original simulation; storing system state information and simulation context variables in a storage location based on the running of the original simulation from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the simulation context variables enabling a subsequent new simulation corresponding to the original simulation to be initiated from the specified time-point of the original simulation and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieving the simulation context variables and system state information from the storage location; and initiating the new simulation using the retrieved simulation context variables and the system state information, the new simulation initiated from the specified time-point of the original simulation so that the new simulation displays the second behavior. - View Dependent Claims (16, 17, 18)
-
-
19. A computer-readable medium holding computer-executable instructions for storing and using simulation context variables, the instructions when executed causing a computer to:
-
register areas of memory to be used in simulating a block diagram of a dynamic system initiated from a zero time-point; run an original simulation of the block diagram initiated from the zero time-point; reach a specified time-point in the original simulation of the block diagram, the original simulation displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original simulation and a user-indicated time-point chosen during the original simulation; store system state information and simulation context variables in a storage location based on the running of the original simulation from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the simulation context variables enabling a subsequent new simulation corresponding to the original simulation to be initiated from the specified time-point of the original simulation and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieve the simulation context variables and system state information from the storage location; and initiate the new simulation of the block diagram using the retrieved simulation context variables and the system state information, the new simulation initiated from the specified time-point of the original simulation so that the new simulation displays the second behavior of the dynamic system. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. In a non-simulation block diagram environment, a method for storing and using context variables, comprising:
-
registering areas of memory to be used during an original execution of a block diagram of a dynamic system initiated from a zero time-point; running the original execution of the block diagram initiated from the zero time-point; reaching a specified time-point in the original execution of the block diagram, the original execution displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original execution and a user-indicated time-point chosen during the original execution; storing system state information and context variables from the registered areas of memory in a storage location based on the running of the original execution from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the context variables enabling a subsequent new execution corresponding to the original execution to be initiated from the specified time-point of the original execution and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieving the context variables and system state information from the storage location; and initiating the new execution by executing a block method to solve for a block output using the retrieved context variables and the system state information, the new execution initiated from the specified time-point of the original execution so that the new execution displays the second behavior of the dynamic system. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. In a non-simulation block diagram environment, a method for storing and using context variables, comprising:
-
running an original execution of a block diagram of a dynamic system initiated at a zero time-point; reaching a specified time-point in the original execution of the block diagram, the original execution displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original execution and a user-indicated time-point chosen during the original execution; storing system state information and context variables in a storage location based on the running of the original execution from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the context variables enabling a subsequent new execution corresponding to the original execution to be initiated from the specified time-point of the original execution and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieving the context variables and system state information from the storage location; and initiating the new execution by executing a block method to solve for a block output using the retrieved context variables and the system state information, the new execution initiated from the specified time-point of the original execution so that the new execution displays the second behavior of the dynamic system. - View Dependent Claims (47, 48, 49)
-
-
50. In a non-simulation block diagram environment, a medium holding computer-executable instructions for storing and using context variables, the instructions when executed causing a computer to:
-
register areas of memory to be used during an original execution of a block diagram of a dynamic system initiated from a zero time-point; run the original execution of the block diagram initiated from the zero time-point; reach a specified time-point in the original execution of the block diagram, the original execution displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the specified time-point being one of a pre-determined time-point chosen prior to the original execution and a user-indicated time-point chosen during the original execution; store system state information and context variables in a storage location based on the running of the original execution from the zero time-point to the specified time-point, including a snapshot of the simulation context variables, the context variables enabling a subsequent new execution corresponding to the original execution to be initiated from the specified time-point of the original execution and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem; retrieve the context variables and system state information from the storage location; and initiate the new execution by executing a block method to solve for a block output using the retrieved context variables and the system state information, the new execution initiated from the specified time-point of the original execution so that the new execution displays the second behavior of the dynamic system. - View Dependent Claims (51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62)
-
-
63. A computer-implemented system for storing and using simulation context variables, comprising:
-
a block diagram model of a dynamic system, the model including a plurality of elements; at least one registered area of memory used in a running of an original simulation of the block diagram model initiated from a zero time-point; and a storage location holding system state information and a collection of simulation context variables saved from the registered areas of memory based on the running of the original simulation from the zero time-point to a specified time-point, including a snapshot of the simulation context variables, the original simulation displaying a first behavior of the dynamic system before the specified time-point and a second behavior of the dynamic system after the specified time-point, the collection of simulation context variables enabling a subsequent new simulation corresponding to the original simulation to be initiated from the specified time-point of the original simulation and including at least one variable selected from the group of a solver variable, zero-crossing information, debugging information, and a variable holding an output value of a subsystem, wherein the simulation context variables and system state information are retrieved from the storage location and used in initiating the new simulation from the specified time-point of the original simulation so that the new simulation displays the second behavior of the dynamic system. - View Dependent Claims (64, 65, 66, 67)
-
Specification