Instruction Translation Program Generation Using Operand Pattern Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developers face a heavy burden in manually creating translation programs to convert complex instruction sets into simple ones, especially when dealing with varied operand types, and this burden increases with the expansion of the instruction set, leading to potential errors and inefficiencies.

Innovation Solution

A computer-readable medium storing a program that generates a translation program using a table data set mapping operand patterns to instructions, allowing for the automatic translation of assembly code from a complex instruction set to a simple instruction set by determining operand patterns and outputting corresponding combinations of instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If a translation program manually analyzes mnemonics and operands to output different combinations of translated instructions, then translation accuracy is improved, but the implementation burden and complexity increase significantly

Engineering Contradiction:
Improvetranslation accuracyVSAvoidimplementation burden
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent uses template-based copying where predefined translation templates store the mapping between source instructions and multiple possible target instruction combinations. Instead of manually analyzing and generating translation logic for each case, the system copies appropriate templates based on instruction patterns, significantly reducing implementation burden while maintaining translation accuracy.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system changes the approach from manual parameter analysis to automated template selection based on instruction parameters. By using configurable templates that can be adjusted through parameter changes rather than manual coding, the system achieves flexible and accurate translation without the heavy implementation burden of custom analysis programs.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If the translation program manually modifies to accommodate expansion of the translation source instruction set, then adaptability is improved, but the complexity and maintenance burden increase

Engineering Contradiction:
Improveadaptability to instruction set expansionVSAvoidmaintenance burden
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The translation system is segmented into independent templates, each handling specific instruction patterns. When the instruction set expands, only the relevant template needs to be updated or added, rather than modifying the entire translation program. This segmentation maintains adaptability while significantly reducing maintenance burden.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The templates are designed with universal applicability to handle various instruction patterns through configurable parameters. A single template structure can accommodate multiple instruction types by adjusting parameters, providing adaptability to instruction set expansion without requiring proportional increases in program complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Manufacturing precision

If one instruction in original assembly code is translated into a combination of two or more instructions in the translated assembly language, then translation completeness is improved, but the complexity of determining operand patterns increases

Engineering Contradiction:
Improvetranslation completenessVSAvoidcomplexity of determining operand patterns
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The system copies pre-defined template patterns that already contain the correct instruction combinations for complete translations. Instead of manually determining complex operand patterns and generating translations, the system selects and copies appropriate templates that handle multi-instruction translations automatically, reducing complexity while maintaining completeness.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11556317B2Instruction translation support method and information processing apparatus
Publication Date: 2023.01.17 FUJITSU LTD
  • US11556317B2 patent drawing
  • US11556317B2 patent drawing
  • US11556317B2 patent drawing

AI summary

A process includes receiving a table data set that represents mappings between a plurality of operand patterns indicating types of operands possibly included in a first instruction used in a first assembly language and a plurality of second instructions used in a second assembly language or a machine language corresponding to the second assembly language. The table data set maps two or more of the second instructions to each of the operand patterns. The process also includes generating, based on the table data set, a translation program used to translate first code written in the first assembly language into second code written in the second assembly language or the machine language. The translation program defines a process of determining an operand pattern of an instruction included in the first code and outputting two or more instructions of the second code according to the determined operand pattern.