Claims
- 1. A method for synchronizing execution of a plurality of concurrently executing tests of a distributed simulation which execute in one or more computers which are mutually operatively coupled to one another and which includes one or more circuit simulations and the plurality of tests and a hub through which each of the plurality tests can interact with each of the circuit simulations, the method comprising:
- including in the hub a central thread, a first local thread and a second local thread, wherein said first local thread has a first thread state which represents a first synchronization state of a first one of said plurality of tests, and wherein said second local thread has a second thread state which represents a second synchronization state of a second one of said plurality of tests; and
- effecting a change in the first synchronization state by signaling the first local thread to cause a change in the first thread state.
- 2. A method for synchronizing execution of a plurality of concurrently executing tests of a distributed simulation which includes one or more circuit simulations and the plurality of tests and a hub through which each of the plurality of tests can interact with each of the circuit simulations, the method comprising:
- including in the hub a central thread, a first local thread and a second local thread, wherein said first local thread has a first thread state which represents a first synchronization state of a first one of said plurality of tests, and wherein said second local thread has a second thread state which represents a second synchronization state of a second one of said plurality of tests; and
- effective a change in the first synchronization state by causing a change in the first thread state.
- 3. The method of claim 2 wherein the first synchronization state is used to govern interaction between the first one of said plurality of tests and a selected one of the circuit simulations, the method further comprising:
- acquiring by the first local thread a lock on the selected circuit simulation when the first synchronization state is one in which interaction between the first one of said plurality of tests test and the selected circuit simulation is permitted.
- 4. The method of claim 3 further comprising:
- releasing by the first local thread of the lock when the first synchronization state is one in which interaction between the first one of said plurality of tests and the selected circuit simulation is disallowed.
- 5. A computer program product comprising:
- a computer usable medium having computer readable code embodied therein for synchronizing execution of a plurality of concurrently executing tests of a distributed simulation which executes in one or more computers which are mutually operatively coupled to one another and which includes one or more circuit simulations and the plurality of tests and a hub through which each of the plurality of tests can interact with each of the circuit simulations, the computer readable code comprising:
- a central thread of the hub;
- a first local thread of the hub, wherein the first local thread has a first thread state which represents a first synchronization state of a first one of the plurality of tests;
- a second local thread of the hub, wherein the second local thread has a second thread state which represents a second synchronization state of a second one of the plurality of tests; and
- a thread signaler which is operatively coupled to the first local thread and the second local thread and which is configured to effect a change in the first synchronization state by signaling the first local thread to cause a change in the first thread state.
- 6. A computer program product comprising:
- a computer usable medium having computer readable code embodied therein for synchronizing execution of a plurality of concurrently executing tests of a distributed simulation which includes one or more circuit simulations and the plurality of tests and a hub through which each of the plurality of tests can interact with each of the circuit simulations, the computer readable code comprising:
- a central thread of the hub;
- a first local thread of the hub, wherein the first local thread has a first thread state which represents a first synchronization state of a first one of the plurality of tests;
- a second local thread of the hub, wherein the second local thread has a second thread state which represents a second synchronization state of a second one of the plurality of tests; and
- a thread state module which is operatively coupled to the first local thread and the second local thread and which is configured to effect a change in the first synchronization state by causing a change in the first thread state.
- 7. The computer program product of claim 6 wherein the first synchronization state is used to govern interaction between the first one of said plurality of tests and a selected one of the circuit simulations, the computer readable code further comprising:
- a simulation lock mechanism which is operatively coupled to the first local thread and the second local thread and which is configured to associate with the first local thread a lock on the selected circuit simulation when the first synchronization state is in a state in which interaction between the first one of said plurality of tests and the selected circuit simulation is permitted.
- 8. The computer program product of claim 7 wherein the simulation lock mechanism is further configured to release the lock when the first synchronization state is in a state in which interaction between the first one of said plurality of tests and the selected circuit simulation is disallowed.
SPECIFICATION
This is a continuation of U.S. patent application Ser. No. 08/621,816 filed Mar. 22, 1996.
US Referenced Citations (6)
Continuations (1)
|
Number |
Date |
Country |
Parent |
621816 |
Mar 1996 |
|