Offline Debugging via Virtual Machine Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing offline debugging methods for semiconductor automated testing are cumbersome and costly due to dependence on physical hardware devices, with low scalability and inefficiency in modifying return values and switching between different platforms.
Innovation Solution
An offline debugging method using a virtual machine to simulate the target platform, where interfaces requiring return values are identified, debugging strategies are set, and a configuration file is compiled into an executable file, allowing for multiple debugging strategies to be executed and tested without physical hardware, using a cross compiler like GCC to ensure compatibility across platforms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If test flow is executed on physical hardware device, then debugging results can be obtained, but device wear increases and economic costs rise
Solution Approach 1:
The patent creates a virtual copy of the hardware device through a virtual machine that simulates the target platform's behavior. This virtual device copy can be used for debugging without wearing out the physical hardware, while still providing accurate debugging results that reflect real hardware behavior.
Solution Approach 2:
The patent introduces a virtual machine as an intermediary layer between the test flow execution and the physical hardware. This intermediary allows debugging to proceed on software without directly stressing the physical device, reducing wear and cost while maintaining debugging effectiveness.
2Ease of operation
If return values are modified in lower embedded system, then interface debugging is achieved, but code modification and recompilation become cumbersome
Solution Approach 1:
The patent creates a virtual copy of the embedded system environment where return values can be modified without touching the actual embedded code. Changes are made in the virtual machine's simulated environment, eliminating the need for code modification and recompilation while maintaining debugging effectiveness.
Solution Approach 2:
The patent pre-configures the virtual machine with the embedded system's interface behavior and return value settings before debugging begins. This preliminary setup allows flexible modification of return values during debugging without requiring subsequent code changes or recompilation steps.
3Reliability
If test scripts are transferred to lower computer for execution, then test conditions can be met, but execution time increases significantly
Solution Approach 1:
The patent creates a universal virtual machine environment that can execute test scripts directly without requiring transfer to the lower computer. The virtual machine is configured to replicate the lower computer's behavior, allowing scripts to run locally and immediately, eliminating transfer time while maintaining test condition validity.
Solution Approach 2:
The patent pre-configures the virtual machine with all necessary test environment settings and script execution capabilities before debugging starts. This preliminary setup enables direct local execution of test scripts without subsequent transfer operations, significantly reducing execution time while ensuring test conditions are properly satisfied.
4Ease of manufacture
If X86 platform application is used, then development is easier, but direct execution on ARM embedded board is not possible
Solution Approach 1:
The patent creates a virtual copy of the ARM embedded board environment on the X86 platform. This virtual machine replicates the ARM architecture's behavior and interface characteristics, allowing X86 applications to execute and debug as if running on the actual ARM board, thus maintaining platform compatibility without sacrificing development convenience.
Solution Approach 2:
The patent introduces a virtual machine as an intermediary layer between the X86 application and the ARM embedded board. This intermediary translates and simulates ARM platform behavior within the X86 environment, enabling cross-platform execution and debugging while maintaining ease of X86 development and achieving ARM platform compatibility.
Data Source
AI summary
The present invention discloses an offline debugging method, comprising: S01: obtaining interfaces which require return values in test flows of the test device; S02: setting the return value corresponding to each of the interfaces which require the return values, adding M debugging strategies and determining a debugging strategy required to be started; S03: compiling a configuration file comprises the M debugging strategies into an executable file required by the target platform; S04: setting up a virtual machine to fit the target platform, and transferring the executable file to the virtual machine; S05: invoking the test flow, returning the return value set by the debugging strategy corresponding to the interface which require the return value and obtaining an debugging result correspondingly. Therefore, the present invention solves a problem that debugging relays on hardware devices in semiconductor automation test, so as to reduce complexity and difficulty of debugging of a test device.

