By paul ~ May 7th, 2007. Filed under: FAQ.
We recently received the following question:
Do you have any examples of pulling real-time data from operations and using it to populate the simulation models so that they are continually re-initialized with current data?
Unfortunately, I can’t point you to any whitepapers that describe your scenario exactly. However, the necessary mechanisms (file interchange formats and APIs) exist in Foresight to support this sort of thing. Here are some examples of different kinds of things we’ve done that are related to your question:
- Co-simulations have been created using HLA, the VHDL and Verilog co-simulation interfaces, interfaces to instruction set simulators, SystemC, and MatLab. (Note the MatLab whitepaper at http://www.foresightsystems-mands.com/white/Combining%20Foresight%20and%20MATLAB%20for%20Complex%20System%20Design.pdf) These co-simulations all provide for real-time communication between simulations running in different simulation environments.
- Implementation in-the-loop simulations (where ‘implementation’ can be either hardware or software or a mixture.) In these cases, the Foresight APIs are used to link the Foresight system-level simulation to implementation. In this configuration, the Foresight model can function as a test-bench for the implementation, or the implementation can provide the behavior for components that would otherwise have to be modeled in Foresight. Using this mechanism, we have created operational prototypes wherein the Foresight model managed the control behavior and communication between many components. The component implementations (hardware and software) were connected real-time to the Foresight simulation allowing end-users and other stake-holders to interact with a functional virtual prototype. Also using this mechanism, we have connected the Linux scheduler and DiffServ queuing functionality directly into a Foresight system-level model to analyze and optimize Quality-of-Service (QoS) behavior in a system that intended to use those components. Using these mechanisms, you could easily stimulate your model directly from operations in real-time.
- Foresight simulations can read model parameters from text files as well as reading any other kind of text file that may be available. As a result, operations may generate configuration parameters or stimulus files that the simulation reads. This methodology is used in our DOORS interface where configuration parameters can be stored in the DOORS requirements database and “fed-forward” into the simulation. This is also the mechanism we use when managing parameters in Excel and setting up and executing a series of batch simulation experiments in Excel. See http://www.foresightsystems-mands.com/blog/?p=10
I hope this information is helpful. We have a lot of experience linking Foresight models up with other environments for all kinds of purposes. Please give us a call if you’d like to discuss this in more depth.