Selective ITLB Access Suppression for Instruction Cache Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing environments face inefficiencies in instruction fetch processing due to repetitive and unnecessary access to instruction translation lookaside buffers (ITLB) during sequential instruction fetches from the same address page, leading to increased power dissipation and heat generation.

Innovation Solution

A method is introduced to selectively suppress ITLB access for subsequent instruction fetches from the same address page by comparing the results of the most recent ITLB access with the current instruction directory access, generating a suppress signal to avoid repetitive translations and reduce power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If ITLB access is performed for every instruction fetch, then address translation accuracy is maintained, but power dissipation increases

Engineering Contradiction:
Improvepower dissipationVSAvoidaddress translation accuracy
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The patent performs address translation in advance and buffers the results before they are needed. The ITLB access is performed once per cache line rather than once per instruction, and the translated address is buffered for subsequent instructions from the same cache line, eliminating redundant translation operations while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies selective suppression of ITLB access based on local conditions - specifically when multiple instructions are fetched from the same cache line. The suppression logic examines whether the current instruction and previous instructions map to the same cache line, and only suppresses ITLB access when this local condition is met, rather than applying a global suppression policy.

Inventive Principle:
Principle #3Local quality

2Productivity

If ITLB access is suppressed for sequential instructions, then processing speed improves, but address translation reliability may deteriorate

Engineering Contradiction:
Improveprocessing speedVSAvoidaddress translation reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The address translation is performed in advance for the entire cache line before instruction execution begins. The ITLB access occurs once when the cache line is loaded, and the resulting physical address is buffered and reused for all subsequent instructions from that cache line, ensuring both speed and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The suppression logic includes feedback mechanisms that monitor whether instructions are indeed from the same cache line. If a branch instruction or cache line boundary is detected, the suppression is lifted and a new ITLB access is performed, ensuring that address translation remains accurate while still providing speedup for sequential instructions.

Inventive Principle:
Principle #23Feedback

3Temperature

If ITLB access is performed for each instruction fetch, then address translation freshness is maintained, but heat generation increases

Engineering Contradiction:
Improveheat generationVSAvoidaddress translation freshness
Core Design Contradiction:
TemperatureVSLoss of information

Solution Approach 1:

The patent performs address translation in advance when the cache line is loaded into the instruction cache, rather than performing it repeatedly during instruction fetch. The translated address is stored in a buffer and reused for all instructions from that cache line, reducing heat-generating operations while maintaining translation freshness through buffer invalidation on cache line updates.

Inventive Principle:
Principle #10Preliminary action

4Loss of energy

If ITLB access is selectively suppressed, then power consumption decreases, but device complexity increases

Engineering Contradiction:
Improvepower consumptionVSAvoiddevice complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The suppression logic examines local conditions - specifically whether the current instruction and previous instructions map to the same cache line - and applies suppression only when this local condition is met. This localized approach reduces power consumption for sequential instructions while avoiding the need for complex global suppression mechanisms.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The instruction cache system performs self-service by maintaining its own address translation information in the IDIR (Instruction Directory). The suppression logic uses information already available in the cache structure (cache line addresses) to determine when suppression is appropriate, rather than requiring additional complex translation management hardware.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9898296B2Selective suppression of instruction translation lookaside buffer (ITLB) access
Publication Date: 2018.02.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9898296B2 patent drawing
  • US9898296B2 patent drawing
  • US9898296B2 patent drawing

AI summary

Processing of an instruction fetch from an instruction cache is provided, which includes: determining whether the next instruction fetch is from a same address page as a last instruction fetch from the instruction cache; and based, at least in part, on determining that the next instruction fetch is from the same address page, suppressing for the next instruction fetch an instruction address translation table access, and comparing for an address match results of an instruction directory access for the next instruction fetch with buffered results of a most-recent, instruction address translation table access for a prior instruction fetch from the instruction cache.