Electronic circuit simulation uses mathematical models to replicate the behaviour of an actual electronic device or circuit. The output of these simulations can be analysed using impulse in many ways. Analysed simulations of analogue and digital systems include: systemC (VCD, TAB, SCV); Verilog, VHDL (VCD, eVCD, LXT2, VZT, FST) and Spice (HSpice, NanoSim, Spice3).[widgetkit id=58]
Into the wild
impulse supports a large range of signal types (digital, analogue, text, logs, transactions,… ) and related diagram types. The domain doesn't need to be time; instead, it can be frequency, voltage, current, index,... You can also manage and view different domains from within a single view. Depending on the signals you watch, impulse shows the right axis and cursors.
The easiest way to use impulse is to open generated wave files in the Project Explorer (or your favourite navigator in eclipse). See File Types to get an overview of the supported files types. The Project Explorer will additionally show the contents of the wave files (records) in the form of a hierarchy of signals and scopes. This enables you to look into the wave structure without opening it. As impulse has team support, you may view different revisions of your wave files (e.g, Team-> Show Local History). If you want to use your own file formats, watch Creating a simple reader for more information.
If the simulation takes a long time, or in the case of debugging, a direct connection between the simulation and the back-end (impulse) is quite useful. If you pause the simulation (e.g., breakpoint), you can analyse the current state of the output. Even without stopping the simulation, it is possible to view and analyse the signals. Typically, this mode is entered by moving a cursor. If the process has finished, you can get back to the 'run' mode by clicking on the 'Start/Stop update' button in the toolbar . After getting all the streams together, you may save everything as a file.
Streaming is realized by using Ports. There are dedicated ports for specific devices, protocols or simulators, and there are general-purpose ports available to stream from pipes, sockets, serial lines and processes.
Merging multiple sources
It's often the case that simulation produces multiple outputs (e.g., the waves, log files, transaction db). By using a Multi-Adapter Port, you can combine multiple sources into one. These sources can be streaming sources (pipes, sockets,… ) but also file resources, so you may combine multiple files into one view.