Dynamic Clock Management via Critical Path Messenger

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microprocessor designs face bottlenecks in speed improvements, leading to delays in data transmission due to bandwidth limitations, and existing dynamic voltage and frequency scaling techniques lack the necessary granularity for instruction-level timing management, resulting in inefficiencies and bottlenecks, especially in deep pipeline and out-of-order operations.

Innovation Solution

The implementation of an on-chip critical path messenger system that predicts timing operations and an elastic pipeline clocking scheme, allowing for dynamic clock management and redistribution of timing among pipeline stages, enabling single-instruction-level clock scaling and exploiting dynamic timing slack to enhance performance and energy efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If dynamic voltage and frequency scaling (DVFS) is used for clock management, then power consumption is reduced, but the granularity is limited to program level and cannot reach instruction level frequency scaling

Engineering Contradiction:
Improvepower consumptionVSAvoidfrequency scaling granularity
Core Design Contradiction:
Use of energy by moving objectVSEase of operation

Solution Approach 1:

The patent segments the clock management control down to individual pipeline stages and instructions. Each pipeline stage has its own clock control capability, allowing independent frequency scaling at the instruction level rather than program level. This segmentation enables precise control of clock cycles for each instruction in the pipeline, resolving the granularity limitation of conventional DVFS.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic clock period adjustment where the clock period for each pipeline stage can be dynamically changed based on real-time timing slack detection. The system continuously monitors actual execution timing and adjusts clock periods dynamically, enabling instruction-level frequency scaling that adapts to actual runtime conditions rather than static program-level control.

Inventive Principle:
Principle #15Dynamics

2Reliability

If worst-case timing is used for all pipeline stages, then reliability is ensured, but dynamic timing slack is not exploited leading to performance loss

Engineering Contradiction:
Improvetiming reliabilityVSAvoidmicroprocessor speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent inserts 'messenger' signals in advance at each pipeline stage to detect critical paths before they become bottlenecks. These messengers are placed at strategic points to predict timing violations ahead of time, allowing the system to proactively adjust clock periods for subsequent instructions. This preliminary detection enables the system to maintain reliability by catching timing issues early while avoiding the performance penalty of always using worst-case timing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where actual execution timing is continuously monitored and used to adjust future clock periods. The system measures the actual time taken by each instruction to complete through pipeline stages and uses this feedback to optimize clock timing for subsequent instructions. This feedback loop allows the system to exploit dynamic timing slack while maintaining reliability through continuous monitoring and adjustment.

Inventive Principle:
Principle #23Feedback

3Productivity

If deep pipeline stages are used to increase instruction throughput, then productivity is improved, but timing bottlenecks and delays increase

Engineering Contradiction:
Improveinstruction throughputVSAvoiddata transmission delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies different clock periods to different pipeline stages based on their local timing characteristics. Each pipeline stage can have a customized clock period optimized for its specific timing slack and critical path requirements. This local quality approach allows deep pipelines to maintain high throughput while individual stages are tuned to minimize delays, preventing timing bottlenecks from propagating through the entire pipeline.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11829769B2Instruction driven dynamic clock management for deep pipeline and out-of-order operation of microprocessor using on-chip critical path messenger and elastic pipeline clocking
Publication Date: 2023.11.28 NORTHWESTERN UNIV
  • US11829769B2 patent drawing
  • US11829769B2 patent drawing
  • US11829769B2 patent drawing

AI summary

Systems and/or methods can include techniques to exploit dynamic timing slack on the chip. By using a special clock generator, the clock period can be shrunk as needed at every cycle. The clock period is determined during operation by checking “critical path messengers” to indicate how much dynamic timing slack exists. Elastic pipeline timing can also be introduced to redistribute timing among pipeline stages to bring further benefits.