
Distributed debugging – SPY
Background
The use of classic development tools from the embedded area is only possible to a limited extent in redundant systems, as the error detection monitors in all redundant units react to intentional (e.g. breakpoints) or unintentional (e.g. change in time behavior) influences of the debugging environment in a target.
SPY technology
The Aviotech SPY is a debugging solution for use in distributed systems with cycle-oriented processing, in particular for software integration in redundant environments. The key features are:
- Common time base in the distributed network, also between non-synchronized units
- On this basis: (pseudo-)synchronous real-time monitoring and manipulation in multiple targets.
- Possibility to realize application-specific debugging commands
- Support for >50 CPUs
- Independence of the SPY protocol from the network technology used, e.g. Ethernet, CAN, FlexRay, …
- Graphical user interface GVITE for control, visualization, logging
- Complete SPY functionality can be scripted and executed in real time
- Translated with www.DeepL.com/Translator (free version)
Die SPYThe SPY debugging solution comprises three components:
- SPY server as part of each target in the distributed network: Serves the monitoring requests and executes manipulation and other commands. A reference implementation in C is available.
- SPY client takes over the central communication to all SPY servers. The client is executed on a real-time capable test system, whereby either a dedicated microcomputer is used or integration into a larger (e.g. HiL) hardware with residual bus simulation is possible.
- Host PC with Vite GUI: used to control and visualize the SPY debugger
SPY architecture

GUI-Screenshot
