Speculative Tablewalk Takeover for Microprocessor TLB Misses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing microprocessor tablewalk mechanisms are inefficient when an older memory access instruction encounters a younger micro-op actively undergoing a tablewalk, leading to unnecessary restarts and loss of work, particularly in strongly ordered situations.

Innovation Solution

A tablewalk takeover system that allows an older memory access instruction to take over an active speculative tablewalk at its current stage of processing if it matches the virtual page address and properties of a younger micro-op, thereby retaining processing results and avoiding the need for a new speculative tablewalk.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If an older memory access instruction initiates a new speculative tablewalk when encountering a younger micro-op actively undergoing a tablewalk, then the older instruction can proceed with its translation, but the work performed by the younger micro-op is lost and must be restarted

Engineering Contradiction:
Improvecorrectness of address translationVSAvoidtablewalk execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent allows the older micro-op to take over the younger micro-op's active tablewalk, effectively discarding the younger micro-op's separate tablewalk initiation while recovering the work already performed. The younger micro-op's tablewalk state is reused by the older micro-op, preventing waste of the partial translation work that had been completed.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent merges the tablewalk operations of multiple micro-ops by allowing the older micro-op to assume the younger micro-op's active tablewalk. This consolidation ensures that only one tablewalk is performed for a given virtual page address, even when multiple micro-ops require translation, thereby eliminating redundant work.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If multiple micro-ops initiate separate speculative tablewalks for the same virtual page address, then each micro-op can proceed independently, but processing efficiency decreases due to redundant work

Engineering Contradiction:
Improveinstruction throughputVSAvoidprocessing resources consumed
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

When a younger micro-op detects that an older micro-op has initiated a tablewalk for the same virtual page address, the younger micro-op discards its own tablewalk initiation and recovers by waiting for or taking over the older micro-op's tablewalk results, thereby avoiding redundant processing.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent implements feedback mechanisms where micro-ops monitor the state of tablewalks initiated by other micro-ops. When a micro-op detects that another micro-op is already performing a tablewalk for the same virtual page address, it adjusts its behavior accordingly, either by taking over or waiting, thus preventing redundant energy consumption.

Inventive Principle:
Principle #23Feedback

3Speed

If speculative tablewalks are allowed to proceed without takeover mechanisms, then micro-ops can execute speculatively, but unnecessary tablewalks are performed when results are later discarded

Engineering Contradiction:
Improveinstruction execution speedVSAvoidwasted processing effort
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent enables speculative micro-ops to initiate tablewalks while providing a mechanism to discard those tablewalks if they are superseded by older micro-ops with the same virtual page address. The younger micro-op discards its speculative tablewalk work when it determines that an older micro-op's tablewalk will satisfy its translation needs, preventing wasted processing effort.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS11314657B1Tablewalk takeover
Publication Date: 2022.04.26 CENTAUR TECHNOLOGY INC
  • US11314657B1 patent drawing
  • US11314657B1 patent drawing
  • US11314657B1 patent drawing

AI summary

In one embodiment, a microprocessor, comprising: a translation lookaside buffer (TLB) configured to indicate that a virtual page address corresponding to a physical page address of a page of memory that a memory access instruction is attempting to access is missing in the TLB; a first micro-op corresponding to a first memory access instruction and configured to initiate a first speculative tablewalk based on a miss in the TLB of a first virtual page address; and a second micro-op corresponding to a second memory access instruction, the second micro-op configured to take over an active first speculative tablewalk of the first micro-op at its current stage of processing based on being older than the first micro-op and further based on having a virtual page address and properties that match the first virtual page address and properties for the first memory access instruction.