Unisim is an electronic systems simulation environment for easier testing of complex software binary code. It offers extensive emulation capabilities, from a single instruction set to an entire electronic system; is interoperable with outside testing, debugging, and code analysis tools; and includes a wide range of analysis support features.
Unisim is an electronic systems simulation environment for the testing and validation of binary code. It offers a vast array of emulation capabilities, from simple instruction sets to entire electronic systems. Unisim integrates a library of hardware component models that can be used to build complete virtual systems like integrated component sets and circuit boards.
It can simulate the most common processor architectures (ARM, Intel, PowerPC) and includes a variety of instrumentation tools (debuggers, profilers, etc.). The Unisim environment can interface with third-party testing, debugging, and code analysis tools, including Frama-C and Binsec.
This open-source environment is compatible with the SystemC and TLM simulation standards and can easily be enhanced with third-party virtual components and extensions.
Unisim offers a number of major advantages:
Unisim is designed to facilitate the validation of complex software (system software, embedded software, critical software, distributed software, etc.), especially in scenarios where formal analysis is a challenge.
It is primarily used to:
For today’s geolocation, image processing, and other embedded systems to work, the numerical computations that power them must be both accurate and stable. Unisim can be used to analyze the numerical accuracy of an embedded system in actual operating conditions.
It was used to instrument a simulated 64-bit PowerPC instruction set to analyze the accuracy of a geolocation algorithm for a rail-industry use case. Simulations of real-world situations were used on the algorithm, and issues at certain train travel speeds were identified.
For today’s geolocation, image processing, and other embedded systems to work, the numerical computations that power them must be both accurate and stable. Unisim can be used to analyze the numerical accuracy of an embedded system in actual operating conditions.
It was used to instrument a simulated 64-bit PowerPC instruction set to analyze the accuracy of a geolocation algorithm for a rail-industry use case. Simulations of real-world situations were used on the algorithm, and issues at certain train travel speeds were identified.
Validation with Code Introspection of a Virtual Platform for Sandboxing and Security Analysis, Y. Lhuillier, G. Mouchard, F. Vedrine. CAESAR. 2019
Visit the Unisim-VP website.