Numerical Controller Software Optimization via Function Frequency Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Numerical controllers face issues with decreased processing speed due to pipeline stalls and cache mistakes caused by conditional branch instructions, and existing methods require extensive resources and are not suitable for controllers with limited resources, while also making it difficult to immediately use changed functions without network connectivity.
Innovation Solution
A control system that analyzes machining programs and their use history to calculate function use frequencies, optimizes source code, and generates optimized control software for efficient execution, reducing pipeline stalls and cache mistakes by rearranging conditional branch instructions and module placement based on usage patterns, allowing for offline operation with optimized software.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If new functions are added to the numerical controller to expand capabilities, then adaptability is improved, but processing speed deteriorates due to increased conditional branch instructions causing pipeline stalls and cache mistakes
Solution Approach 1:
The patent applies dynamics by making the control software configurable and optimizable after deployment. The system allows dynamic adjustment of software parameters and optimization based on actual usage patterns, transforming the static software into a dynamic system that can adapt to specific machining tasks while maintaining processing speed.
Solution Approach 2:
The patent changes parameters by optimizing control software parameters based on actual machining programs. The system analyzes which functions are actually used and adjusts software parameters accordingly, reducing the impact of conditional branch instructions for unused functions and improving processing speed without sacrificing adaptability.
2Speed
If control software is optimized based on user profile data by deleting unnecessary modules and fixing variables, then processing speed is improved and memory usage is reduced, but operational flexibility deteriorates when parameters or machining programs need to be changed
Solution Approach 1:
The patent resolves this contradiction by making the optimization dynamic rather than static. The control software maintains the ability to be re-optimized when machining programs or parameters change, allowing the system to regain speed optimizations after adaptations. This dynamic re-optimization capability preserves both speed and flexibility.
Solution Approach 2:
The patent applies preliminary action by pre-optimizing the control software based on analysis of machining programs before execution. The system analyzes the program in advance, determines which functions will be used, and optimizes the software accordingly, preparing the optimal configuration before the actual machining operation begins.
3Speed
If multiple interpreter sets are prepared in advance to maximize cache efficiency for different instruction groups, then processing speed is improved for specific program types, but device complexity increases and resources are consumed
Solution Approach 1:
The patent applies preliminary action by performing optimization analysis before software generation. The system analyzes machining programs in advance to determine which functions are used, then generates a single optimized interpreter set tailored to those specific functions, eliminating the need to prepare and manage multiple interpreter sets for different program types.
Solution Approach 2:
The patent applies local quality by creating an interpreter set that is specifically optimized for the local characteristics of the given machining program. Rather than preparing generic interpreter sets for broad program categories, the system tailors the interpreter to the specific functions and instruction patterns present in the actual machining program being executed.
4Productivity
If control software is optimized offline based on machining program analysis, then processing speed is improved and resource usage is reduced, but the ability to immediately use new functions without network connectivity is lost
Solution Approach 1:
The patent resolves this contradiction by making the optimization process dynamic and repeatable. The system allows users to analyze new machining programs and regenerate optimized control software locally without requiring network connectivity. This dynamic re-optimization capability ensures that productivity improvements are maintained while preserving the ability to immediately incorporate new functions.
Data Source
AI summary
A control system calculates a use frequency of a function used by a control program based on the control program (and a use history of the control program), and generates an optimized source code by optimizing a source code of control software based on the calculated use frequency. Based on the generated optimized source code, optimized control software is generated and transferred to the execution environment of the control software.


