Claims
- 1. A method for simulation, comprising:
establishing a network connection between first and second simulators, which are respectively configured to simulate operation of first and second devices in mutual communication over a link having a link clock; receiving at the first simulator an input frame sent over the network connection, the input frame comprising input data generated by the second simulator in the course of the simulated operation of the second device over multiple cycles of the link clock for transmission via the link to the first device; processing the input data using the first simulator to simulate the operation of the first device over multiple cycles of the link clock and thus to generate an output frame comprising output data; and passing the output frame from the first simulator to the second simulator over the network connection for processing by the second simulator in the simulated operation of the second device.
- 2. A method according to claim 1, wherein establishing the network connection comprises establishing the connection over a local area network (LAN).
- 3. A method according to claim 1, wherein the first and second simulators are located at respective sites, remote from one another, and wherein establishing the network connection comprises establishing the connection between the sites.
- 4. A method according to claim 3, wherein establishing the connection comprises establishing the connection over the Internet.
- 5. A method according to claim 1, wherein the first and second simulators are configured to simulate the first and second devices using substantially different, respective first and second simulation software tools.
- 6. A method according to claim 5, wherein the first simulation tool comprises a hardware design language tool, while the second simulation tool comprises a high-level performance evaluation modeling tool.
- 7. A method according to claim 5, wherein the first simulation tool comprises a device simulator, while the second simulation tool comprises a test generator, which is configured to generate the input data so as to verify behavior of the first device.
- 8. A method according to claim 1, wherein the first and second simulators are operated respectively by different first and second business entities in development of the first and second devices.
- 9. A method according to claim 1, wherein receiving the input frame comprises receiving a file, and wherein the input data comprise input symbols arranged in sequence in the file.
- 10. A method according to claim 9, wherein the output frame comprises an output file, and the output data comprise output symbols, and wherein processing the input data comprises reading, at each of the cycles of the link clock in the simulated operation of the first device, one of the input symbols from the input file, and writing one of the output symbols to the output file.
- 11. A method according to claim 10, wherein passing the output frame comprises passing the output file after the first simulator has written a predetermined number of the symbols to the output file.
- 12. A method according to claim 1, wherein establishing the network connection comprises opening a communication socket, and wherein receiving the input frame and passing the output frame comprise receiving and passing the frames using the socket.
- 13. A method according to claim 1, wherein processing the input data comprises generating the output data over a number of the cycles of the link clock that is selected responsive to a latency of the mutual communication between the first and second devices in the simulated operation thereof.
- 14. A method according to claim 1, wherein receiving the input frame comprises receiving an input succession of input frames, and wherein processing the input data comprises generating an output succession of output frames, and wherein passing the output frame comprises passing the output frames in the output succession while receiving the input frames in the input succession.
- 15. A method according to claim 14, wherein receiving the succession of input frames comprises holding at least a second one of the input frames in a memory while processing a first one of the input frames.
- 16. A method according to claim 1, wherein receiving the input frame comprises receiving input frames from a plurality of other simulators, including the second simulator, and wherein processing the input data comprises generating multiple output frames, and wherein passing the output frame comprises passing the output frames to the plurality of other simulators.
- 17. A method for simulation, comprising:
establishing a network connection between first and second simulators operated respectively by different first and second business entities in development of first and second devices, the first and second simulators being respectively configured to simulate operation of first and second devices in mutual communication over a link; receiving at the first simulator an input frame sent over the network connection, the input frame comprising input data generated by the second simulator in the course of the simulated operation of the second device for transmission via the link to the first device; processing the input data using the first simulator to simulate the operation of the first device and thus to generate an output frame comprising output data; and passing the output frame from the first simulator to the second simulator over the network connection for processing by the second simulator in the simulated operation of the second device.
- 18. A method according to claim 17, wherein establishing the network connection comprises establishing the connection between facilities of the first and second business entities.
- 19. A method according to claim 17, wherein establishing the network connection comprises linking the first and second simulators substantially without divulging confidential information embodied in a simulation model of the first device run by the first simulator to the second business entity.
- 20. A method according to claim 17, wherein establishing the connection comprises establishing the connection over the Internet.
- 21. A method according to claim 17, wherein the first and second simulators are configured to simulate the first and second devices using substantially different, respective first and second software tools.
- 22. A method according to claim 17, wherein receiving the input frame comprises receiving an input succession of input frames, and wherein processing the input data comprises generating an output succession of output frames, and wherein passing the output frame comprises passing the output frames in the output succession while receiving the input frames in the input succession.
- 23. Simulation apparatus, comprising a first simulation processor, which is configured to simulate operation of a first device and is adapted to establish a network connection with a second simulation processor, configured to simulate operation of a second device, so as to model communication between the first and second devices over a link having a link clock, the first simulation processor being further adapted to receive an input frame sent over the network connection, the input frame comprising input data generated by the second simulation processor in the course of the simulated operation of the second device over multiple cycles of the link clock for transmission via the link to the first device, to process the input data so as to simulate the operation of the first device over multiple cycles of the link clock and thus to generate an output frame comprising output data, and to pass the output frame to the second simulation processor over the network connection for processing by the second simulation processor in the simulated operation of the second device.
- 24. Apparatus according to claim 23, wherein the network connection comprises a connection over a local area network (LAN).
- 25. Apparatus according to claim 23, wherein the first and second simulation processors are located at respective sites, remote from one another, and wherein the network connection comprises a connection between the sites.
- 26. Apparatus according to claim 25, wherein the connection between the sites is established over the Internet.
- 27. Apparatus according to claim 23, wherein the first and second simulation processors are configured to simulate the first and second devices using substantially different, respective first and second software tools.
- 28. Apparatus according to claim 27, wherein the first simulation tool comprises a hardware design language tool.
- 29. Apparatus according to claim 27, wherein the first simulation tool comprises a high-level performance evaluation modeling tool.
- 30. Apparatus according to claim 27, wherein the second simulation tool comprises a test generator, which is configured to generate the input data so as to verify behavior of the first device.
- 31. Apparatus according to claim 23, wherein the first and second simulation processors are operated respectively by different first and second business entities in development of the first and second devices.
- 32. Apparatus according to claim 23, wherein the input frame comprises a file, and wherein the input data comprise input symbols arranged in sequence in the file.
- 33. Apparatus according to claim 32, wherein the output frame comprises an output file, and the output data comprise output symbols, and wherein the first simulation processor is adapted to read, at each of the cycles of the link clock in the simulated operation of the first device, one of the input symbols from the input file, and to write one of the output symbols to the output file.
- 34. Apparatus according to claim 33, wherein the first simulation processor is adapted to pass the output file after it has written a predetermined number of the symbols to the output file.
- 35. Apparatus according to claim 23, wherein the network connection comprises a communication socket opened between the first and second simulation processors, and wherein the input frame is received and the output frame is passed using the socket.
- 36. Apparatus according to claim 23, wherein the first simulation processor is arranged to generate the output data over a number of the cycles of the link clock that is selected responsive to a latency of the mutual communication between the first and second devices in the simulated operation thereof.
- 37. Apparatus according to claim 23, wherein the input frame is one in an input succession of input frames, and the output frame is one in an output succession of output frames, and wherein the first simulation processor is arranged to receive the input succession of input frames and to generate and pass the output succession of output frames while receiving the input frames in the input succession.
- 38. Apparatus according to claim 37, and comprising a memory, which is adapted to hold at least a second one of the input frames while the first simulation processor processes a first one of the input frames.
- 39. Apparatus according to claim 23, wherein the input frame is one of a multiplicity of input frames received by the first simulation processor from a plurality of other simulation processors, including the second simulation processor, and wherein the first simulation processor is adapted to generate multiple output frames and to pass the output frames to the plurality of other simulation processors.
- 40. Apparatus for simulation, comprising first and second simulators operated respectively by different first and second business entities in development of first and second devices, the first and second simulators being connected by a network connection and being respectively configured to simulate operation of first and second devices in mutual communication over a link, such that upon receiving over the network connection an input frame comprising input data generated by the second simulator in the course of the simulated operation of the second device for transmission via the link to the first device, the first simulator is adapted to process the input data to simulate the operation of the first device and thus to generate an output frame comprising output data, and to pass the output frame to the second simulator over the network connection for processing by the second simulator in the simulated operation of the second device.
- 41. Apparatus according to claim 40, wherein the network connection is established between facilities of the first and second business entities.
- 42. Apparatus according to claim 40, wherein the first and second simulators are connected substantially without divulging confidential information embodied in simulation models of the devices from one of the business entities to the other.
- 43. Apparatus according to claim 42, wherein the connection is established over the Internet.
- 44. Apparatus according to claim 40, wherein the first and second simulators are configured to simulate the first and second devices using substantially different, respective first and second simulation software tools.
- 45. Apparatus according to claim 40, wherein the input frame is one in an input succession of input frames, and wherein the output frame is one in an output succession of output frames, and wherein the first simulation processor is arranged to pass the output frames in the output succession while receiving the input frames in the input succession.
- 46. A computer software product, comprising a computer-readable medium in which program instructions are recorded, which instructions, when read by a first computer simulating operation of a first device, cause the computer to establish a network connection with a second computer, simulating operation of a second device, so as to model communication between the first and second devices over a link having a link clock, so that upon receiving an input frame sent over the network connection, the input frame comprising input data generated by the second computer in the course of the simulated operation of the second device over multiple cycles of the link clock for transmission via the link to the first device, the first computer processes the input data to simulate the operation of the first device over multiple cycles of the link clock and thus to generate an output frame comprising output data, and passes the output frame to the second computer over the network connection for processing by the second computer in the simulated operation of the second device.
- 47. A computer software product, comprising a computer-readable medium in which program instructions are recorded, which instructions, when read by a first computer operated by a first business entity in development of a first device, cause the first computer to establish a network connection with a second simulator operated by a different, second business entity in development a second device, the first and second computers being respectively configured to simulate operation of the first and second devices in mutual communication over a link, so that upon receiving an input frame sent over the network connection, the input frame comprising input data generated by the second computer in the course of the simulated operation of the second device for transmission via the link to the first device, the first computer processes the input data to simulate the operation of the first device and thus to generate an output frame comprising output data, and passes the output frame to the second computer over the network connection for processing by the second computer in the simulated operation of the second device.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/232,015, filed Sep. 12, 2000, which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60232015 |
Sep 2000 |
US |