impulse is an easy to use waveform viewer and analyser tool. This chapter gives you a first insight.
This chapter describes some basic principles of how signals are represented in impulse. These are not necessary for the use of impulse, but convey a better understanding.
A view combines a set of plots, organized in the form of a tree. Users can define and select between multiple views to get the information they need.
The plot area contains three elements: an axis, the configured plots and cursors. Cursors are part of a view, like plots and folders, but they are not visible in the view configuration hierarchy. So, if you change the view, you also change to a different set of cursors.
impulse can display waveforms using multiple domains (e.g., time and frequency) in one view. If your signals are using the same domain, it allows you to display them on multiple axes.
As soon as your signals are not bound to a file, but streamed in from different sources like processes, sockets, pipe and drivers, ports are the means by which impulse handles those signals.
In addition to the viewer and editor, there is a set of additional tabular presentation UIs in impulse. These tables allow to output the signal content using different forms.
The eclipse platform supports different markers such as bookmarks, tasks, problems and errors. Based on these mechanisms, impulse allows the user to add annotations, bookmarks and tasks to any signal at a given position.
impulse’s preferences are stored within the eclipse preference store. If you open the preferences dialogue, you can manage all the relevant settings. There are preferences pages for views, serializers, ports, templates, .... Settings can be easily imported or exported using the Wallet Editor.
The Signal Scripts production allows the users to analyze and interpret signals in many ways. Combine signals using mathematical operations, generate references, implement protocol parsers, extract statistical informations or search for conflicts automatically.
impulse can handle signal data from multiple inputs. When inputs don't have a common domain base, synchronization may be required.
The Find dialogue helps you to find signal patterns. It behaves like the standard find dialogue of the text editors. You type in a find expression, select if you want to search forwards or reverse, with or without wrapping and then click find. The active cursor will be placed at the found position.
Charts can be used to visualize signals and signal-related information. Charts can be extended and configured in many ways. You can define your own charts or integrate existing chart tools.
Templates simplify the re-use of configuration elements. A template may contain simple defaults, such that all float signals shall be painted red, but they can also contain a rich set of elements containing multiple scripts and folders.
An eclipse launch configuration is a description of how to launch a program. The program itself may be a Java program, another Eclipse instance in the form of a runtime workbench, a C program, or something else. The impulse launch integration enables users to bind an impulse port to a launch configuration.
impulse can be easily installed from within your eclipse environment.
Most operations can be initiated with keyboard shortcuts.
The Impulse trace format (*.recTr) is an open format targeting typical embedded system use-cases. The trace data is packed into a binary format. To generate a trace, you can use open-source multi-language emitters (currently C).
RecJs files are wave files build on scripts. You might prepare signal references, define test vectors for your design or script a custom reader. Everything is based on the same simple api that is used in signal scripts and serializers.
This chapter gives an overview of all implemented formats.
Ports are means to read signal data from external devices and interfaces. This chapter gives an overview of all supported ports.
Productions can be used to create/derive new signals: combine multiple sources, extract statistical information , do mathematical calculations or to filter samples.
Native extension are application and libraries natively compiled for your platform. This article explains how to manage, configure and build those extensions.
If you want to read signal and trace data from a TCP, files, serial, or any other port input and with a format that is unknown to impulse , a scripted reader can help you to get on track.