Embedded Test Coverage Data Region Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In embedded systems, analyzing test coverage data during software execution leads to significant overhead, delaying test speed and making it difficult to obtain accurate results due to resource constraints.
Innovation Solution
An electronic device and method for generating software code that allocates a test coverage data region in memory, inserts test coverage marking instructions into the code, and outputs test coverage data during runtime, reducing overhead by minimizing direct analysis on the device.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If test coverage analysis is performed during software execution in embedded systems, then test coverage data can be obtained, but system overhead increases and real-time responsiveness deteriorates
Solution Approach 1:
The patent divides the embedded system into two separate components: the embedded device that executes software and collects test coverage data, and an external analysis device that performs the actual test coverage analysis. This segmentation allows the embedded system to minimize overhead by only collecting data during execution, while the computationally intensive analysis is performed externally on a separate system with sufficient resources.
Solution Approach 2:
The patent introduces an external analysis device as an intermediary between the embedded system and the test coverage analysis process. This intermediary collects test coverage data from the embedded device during software execution and performs the analysis externally, thereby preventing direct analysis operations from consuming embedded system resources and maintaining real-time responsiveness.
2Loss of time
If test coverage analysis is performed during software execution, then real-time test coverage data can be obtained, but system resources are constrained and analysis accuracy deteriorates
Solution Approach 1:
The patent separates the data collection phase (performed during software execution on the embedded device) from the data analysis phase (performed after execution on an external device). This allows real-time data collection without compromising analysis accuracy, as the embedded device only needs to collect and store data during execution, while the external device performs comprehensive analysis with sufficient computational resources.
Solution Approach 2:
The patent performs preliminary data collection during software execution, storing test coverage data in the embedded device's memory. The actual analysis is then performed later on an external device that has sufficient computational resources, ensuring both real-time data availability and accurate analysis without resource constraints during the execution phase.
3Reliability
If test coverage data is collected and analyzed during runtime, then test coverage information can be obtained, but device complexity increases
Solution Approach 1:
The patent extracts the test coverage analysis functionality from the embedded system and places it on an external analysis device. The embedded device is simplified to only perform data collection and storage during software execution, while the complex analysis operations are performed externally. This extraction reduces embedded device complexity while maintaining the ability to obtain reliable test coverage information.
Data Source
AI summary
An electronic device includes: a memory in which software code, including a plurality of test positions is loaded; and a processor configured to execute the software code in order according to a control flow, wherein the processor is configured to allocate a test coverage data region in the memory, execute the software code based on a test scenario, when an execution position reaches a target test position among the plurality of test positions, mark a memory position corresponding to the target test position in the test coverage data region in response to a test coverage marking instruction associated with the target test position, and output test coverage data of the test coverage data region in response to an external command.


