Vector Generating Circuitry With Parallel Adder Paths For Wrap Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern vector processing systems face challenges in generating vectors with wrapping constraints efficiently, particularly due to increasing performance requirements and the need to support multiple wrap points, which can lead to timing constraints and complexity in circuitry design.

Innovation Solution

The design incorporates an input interface for a scalar start value, adjust amount, and wrapping control information, utilizing first and second adder circuitry to generate candidate values with and without wrapping conditions, along with wrap detection and result selection circuitry to determine and adjust values within bounds, allowing for parallel operation and reduced logic depth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional vector generating circuitry is used to support wrapping constraints, then the circuitry can generate vectors with wrapping, but the timing constraints are violated and performance decreases

Engineering Contradiction:
Improvewrapping constraint satisfactionVSAvoidvector generation speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The vector generation process is segmented into two independent parallel paths: one generating candidate values assuming no wrapping condition, and another generating candidate values assuming wrapping condition. This segmentation allows both paths to operate simultaneously without sequential dependencies, resolving the timing constraint violation while maintaining wrapping constraint satisfaction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The circuitry performs preliminary actions by pre-calculating both sets of candidate values (with and without wrapping) before the final selection is needed. The wrap detection circuitry determines adjustment limit and current adjustment values in advance, enabling the result selection circuitry to quickly choose the correct candidate values without timing violations.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If circuitry is designed to support multiple wrap points, then more complex scenarios are supported, but the device complexity increases

Engineering Contradiction:
Improvemultiple wrap point supportVSAvoidcircuitry complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The circuitry is segmented into specialized functional blocks: adder circuitry for generating candidate values, wrap detection circuitry for determining adjustment parameters, and result selection circuitry for choosing correct values. This modular segmentation supports multiple wrap points while keeping each block's complexity manageable and well-defined.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The wrap detection circuitry acts as an intermediary that receives the adjustment amount and wrapping control information, determines the adjustment limit value and current adjustment value, and provides these parameters to the result selection circuitry. This intermediary structure simplifies the overall design by centralizing the complex wrap point detection logic in a dedicated block.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If parallel operation is implemented to reduce logic depth, then timing constraints are alleviated, but the quantity of circuitry increases

Engineering Contradiction:
Improvelogic depthVSAvoidcircuitry quantity
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The circuitry is divided into parallel segments that operate simultaneously: first adder circuitry and second adder circuitry generate candidate values in parallel, while wrap detection circuitry determines adjustment parameters independently. This parallel segmentation reduces logic depth and timing delays despite increasing the total quantity of circuitry components.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The result selection circuitry merges the outputs from both adder circuitry paths by selecting appropriate candidate values based on the adjustment parameters. This merging consolidates the parallel operations into a unified output, achieving the desired vector generation while managing the quantity of circuitry through efficient resource sharing.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11126691B1Apparatus and method for generating a vector of elements with a wrapping constraint
Publication Date: 2021.09.21 ARM LTD
  • US11126691B1 patent drawing
  • US11126691B1 patent drawing
  • US11126691B1 patent drawing

AI summary

An apparatus is provided that receives a scalar start value, an adjust amount and wrapping control information, and includes vector generating circuitry for generating a vector comprising a plurality of elements such that a value of a first element is dependent on the scalar start value, and values of the plurality of elements follow a regularly progressing sequence that is constrained to wrap as required to ensure that each value is within bounds determined from the wrapping control information. The adjust amount is used to determine a difference between values of adjacent elements in the regularly progressing sequence. The vector generating circuitry has first adder circuitry for generating a plurality of first candidate values for the plurality of elements, assuming absence of a wrapping condition, and second adder circuitry for generating a plurality of second candidate values for the plurality of elements, assume presence of a wrapping condition. Wrap detection circuitry determines an adjustment limit value that provides an indication of a total number of regularly progressing values differing by the adjust amount that are available within the bounds determined from the wrapping control information, and a current adjustment value that, taking into account the scalar start value, provides an indication of an initial number of regularly progressing values differing by the adjust amount that are available before the wrapping condition occurs. Result selection circuitry selects, for each element in the plurality of elements, one of the first candidate values and the second candidate values, in dependence on at least the adjustment limit value and the current adjustment value.