iSystem tools for embedded software development include in-circuit and on-chip emulation hardware for more than 50 micro controller families and their derivates, any easy to use development environment and open interfaces for flexible integration and application of iSystem products in the development cycle.
Besides being the interface to the target hardware an In-Circuit Emulator (ICE) and On-Chip Debugger (OCD) offers functions for software error detection and software testing. The run time analysis functions of the ICE include bus trace, execution profiler, data profiler, execution coverage and data access coverage. New is code coverage analysis without code instrumentation, based on object code. Code coverage is a method to evaluate the quality of test runs and is used to detect “dead” or untested code.
Tools that work on source code instrument the code to measure code coverage during runtime. For embedded systems code instrumentation is seldom an option. Very often resources on hardware are not sufficient. Instrumented code changes the runtime behaviour of an application, which is not applicable. Analysis based on object code uses the code loaded in the real destination hardware without influence on the runtime behaviour of the application. For analysis use the tools already available for development. For object code level coverage the micro processor has to provide a trace interface.
Based on code coverage analysis new test cases are deduced, redundant test cases are eliminated and inefficient test cases are changed or replaced. This approach leads step by step to a code coverage measure defined by company quality criteria or by national/international standards. Code coverage analysis is a technique to evaluate the quality of the whole test process during product development and by that to indirectly improve the quality of the complete product.