Online Instruction Tagging for Complex Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems face challenges in managing instruction dependencies and tagging, particularly when complex instruction definitions require tags that are not initially present, leading to increased complexity in associating tags with specific instructions.

Innovation Solution

The system employs an apparatus with data processing circuitry, instruction tag storage, register writer storage, and instruction tagging circuitry to selectively associate instruction tags with identifiers, creating entries in the instruction tag storage and determining producer instructions to establish data dependency graphs, allowing on-the-fly tagging and prioritization of instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the data processing apparatus automatically associates tags with instructions based on complex definitions, then the ability to handle complex instruction sets is improved, but the complexity of the tagging mechanism increases significantly

Engineering Contradiction:
Improveability to handle complex instruction setsVSAvoidcomplexity of tagging mechanism
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the tagging mechanism into separate functional components: a tag generation unit that creates tags based on instruction type, a tag storage unit that holds tag-instruction mappings, and a tag application unit that applies tags to instructions. This segmentation allows the system to handle complex instruction sets through automated tagging without creating a monolithic complex mechanism, as each component has a specific simplified function.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-defining tag types and their associated instruction categories before actual instruction processing begins. The system prepares tag templates and classification rules in advance, so that when complex instructions need tagging, the apparatus can quickly match them against pre-established categories rather than creating tags from scratch during execution.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If instruction tagging is performed manually for each instruction type, then the complexity of the tagging mechanism is reduced, but the productivity of processing complex instruction sets decreases

Engineering Contradiction:
Improvesimplicity of tagging mechanismVSAvoidprocessing speed of instruction sets
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements self-service by enabling the data processing apparatus to automatically generate and apply tags to instructions without external intervention. The tag generation unit autonomously determines appropriate tags based on instruction characteristics, and the tag application unit automatically applies them. This self-service capability eliminates manual tagging efforts while maintaining processing speed, as the automated system operates continuously without human bottlenecks.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If the apparatus processes all instructions with detailed tagging, then the precision of data processing operations is improved, but the use of energy and processing time increases

Engineering Contradiction:
Improveprecision of instruction processingVSAvoidprocessing time for tag application
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by implementing selective tagging where not all instructions require detailed tags. The system identifies instruction categories that benefit most from tagging (such as critical path instructions or those with complex dependencies) and applies detailed tags only to those, while using simplified or no tagging for routine instructions. This partial approach maintains precision where needed while reducing overall processing time and energy consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11163581B2Online instruction tagging
Publication Date: 2021.11.02 ARM LTD
  • US11163581B2 patent drawing
  • US11163581B2 patent drawing
  • US11163581B2 patent drawing

AI summary

Apparatuses and methods of data processing are disclosed for tagging instructions on-line. Instruction tag storage stores information indicative of a tag applied to certain instruction identifiers. A data processing operation performed by the data processing circuitry in response to an executed instruction is dependent on whether there is a corresponding instruction identifier for the executed instruction in the instruction tag storage which has the instruction tag. Register writer storage is maintained, and an entry is created for each register writing instruction encountered which causes a result value to be written to a destination register, where the entry comprises an indication of the destination register and the register writing instruction. An instruction tagging queue buffers instruction identifiers and an instruction identifier is added to the queue for a predetermined type of instruction when it is encountered. Instruction tagging circuitry tags the instructions in the instruction tagging queue and determines one or more producer instructions which each produce at least one data value which is a source operand of a subject instruction and adds the one or more producer instructions to the instruction tagging queue. Data dependency graphs are thus elaborated and online tagging of such data dependency graphs is thus supported.