Bitwise Masking Circuit for Variable Runlength Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems require a two-stage operation to count leading zeros in a binary number and then compare this count with a variable runlength, which is inefficient.

Innovation Solution

A combined apparatus and method that generates a 2(N+1)-bit mask value based on a (N+1)-bit variable number, performs a logical combination of bits within the input number and mask value, and determines if the number of adjacent bits is less than or equal to the runlength, allowing for a single, rapid operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a two-stage operation is used to count leading zeros and then compare with a variable number, then the comparison can be performed, but the processing time increases and efficiency decreases

Engineering Contradiction:
Improvecomparison accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent combines the count leading zero operation and the compare operation into a single unified circuit that performs both functions simultaneously. The comparison circuit receives the input number and variable number directly, generates a mask based on the variable number, performs logical operations to determine both the count and comparison result in one stage, thereby eliminating the time delay of sequential two-stage processing while maintaining accurate comparison results

Inventive Principle:
Principle #5Merging (Combining)

2Measurement precision

If a two-stage operation is used to count leading zeros and then compare with a variable number, then the comparison can be performed, but the operational complexity increases

Engineering Contradiction:
Improvecomparison accuracyVSAvoidoperational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the count leading zero function and compare function into a single integrated comparison circuit, reducing operational complexity from two separate stages to one unified operation. The circuit uses a mask generator and logical combination unit that simultaneously handle both counting and comparison tasks, eliminating the need for sequential operations and reducing control logic complexity

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The comparison circuit is designed as a multi-functional unit that can perform both counting and comparison operations within a single stage. The circuit accepts an input number and variable number, performs logical operations to determine the count of leading zeros, and simultaneously compares this count with the variable number to generate a result indicating whether the count is less than or equal to the variable number, thereby reducing operational steps

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10534580B2Comparing a runlength of bits with a variable number
Publication Date: 2020.01.14 ARM LTD
  • US10534580B2 patent drawing
  • US10534580B2 patent drawing
  • US10534580B2 patent drawing

AI summary

Processing circuitry is provided for comparing a number of adjacent widths having a common value and extending from a starting position within an input number with a runlength specified by a variable number. The circuitry includes a mask generator for generating a mask value in dependence upon the variable number, combination circuitry for performing a logical combination operation upon respective bits within the input number starting from the starting position and corresponding bits within the mask value so as to generate an intermediate value. Result circuitry then generates a result indicative of whether or not the number of adjacent bits is less than or equal to the run length in dependence upon a determination if any bits within the intermediate value have a predetermined value.