Program Counter Range Comparison Circuit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In microprocessor applications, comparing values within a range is costly and detrimental to processor performance due to the need for multiple comparisons across a wide range of values, especially in superscalar CPUs where signal increments are high, leading to inefficiencies in determining program counter values and generating control signals.

Innovation Solution

A circuit and method that examine whether a value from a first range is equal to or greater than the lower boundary of a second range, and whether the lower boundary of the first range is smaller than or equal to the upper boundary of the second range, using a combination of comparators and arithmetic logic to simplify the comparison process by dividing it into partial inequations and focusing on boundary value examinations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a set of comparators is used to determine whether the CPU has executed instructions within a certain PC range, then measurement precision is improved, but device complexity increases

Engineering Contradiction:
ImprovePC value range detection accuracyVSAvoidcomparator circuit complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the PC value comparison into two separate comparison operations: first comparing the lower boundary of the PC range with the lower boundary of the target range, and second comparing the upper boundary of the PC range with the upper boundary of the target range. This segmentation reduces the complexity of a single complex comparator by dividing it into simpler comparison stages.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs partial comparisons by examining only the boundary values of the PC range rather than comparing every possible PC value against the target range. This partial action approach maintains measurement precision for range detection while significantly reducing the computational burden and circuit complexity.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If multiple comparisons are performed for each calculated PC value, then measurement precision is improved, but productivity decreases

Engineering Contradiction:
ImprovePC value comparison accuracyVSAvoidinstruction execution throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent performs partial comparisons by examining only the boundary values of the PC range rather than comparing every possible PC value against the target range. This partial action approach maintains measurement precision for range detection while significantly reducing the computational burden and circuit complexity.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent performs preliminary comparisons of boundary values before full PC value comparison is needed. By pre-establishing the relationship between boundary values, the system avoids performing multiple redundant comparisons for each individual PC value, thereby improving throughput while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If comparison operations are performed in the same clock cycle, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improvecomparison operation throughputVSAvoidcircuit structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the comparison operation into two independent comparison stages that can be performed in parallel within the same clock cycle. The first comparison evaluates the lower boundary relationship while the second comparison evaluates the upper boundary relationship, allowing simultaneous execution without requiring complex sequential control logic.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7698542B2Circuit and method for comparing program counter values
Publication Date: 2010.04.13 INFINEON TECHNOLOGIES AG
  • US7698542B2 patent drawing
  • US7698542B2 patent drawing
  • US7698542B2 patent drawing

AI summary

A circuit and a method of examining in a microprocessor a section of a first range of values and a second range of values each comprising a lower boundary value and an upper boundary value is disclosed. The method includes examining whether a value of the first range of values is equal to or greater than the lower boundary value of the second range of values, and examining whether the lower boundary value of the first range of values is smaller than or equal to the upper boundary value of the second range of values.