Bit-Inversion Word Encoding Using Padding Bits for Lower Memory Bus Power

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

External memory accesses in computing systems consume a significant amount of power due to the capacitance of the bus, and existing methods like bus-invert coding require additional bus lines and specialized hardware, which can decrease efficiency as the number of bits compared increases.

Innovation Solution

A method of encoding data by determining if more than half of the bits in a word are ones, inverting them, and using padding bits to indicate inversion, which reduces power consumption without requiring additional bus lines or specialized memories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If bus-invert coding is used to reduce power consumption, then power consumption during external memory accesses is reduced, but additional bus lines and specialized hardware are required which decreases efficiency

Engineering Contradiction:
Improvepower consumptionVSAvoidadditional bus lines and specialized hardware
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The patent extracts the inversion indication function from a dedicated bus line and relocates it to existing padding bits within the data structure. This eliminates the need for additional bus lines while preserving the bus-invert coding power-saving mechanism. The padding bits that would otherwise be unused are repurposed to carry the inversion flag.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The padding bits in the data structure are given multiple functions: they serve both as part of the data structure (maintaining fixed-width alignment) and as carriers for the inversion indication. This multi-functionality eliminates the need for specialized hardware while achieving the same power-saving effect.

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

2Reliability

If bus-invert coding compares more bits to determine inversion, then more accurate inversion decisions are made, but the number of bits compared increases which decreases processing efficiency

Engineering Contradiction:
Improveinversion decision accuracyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of analyzing the entire data word to determine inversion, the patent applies a local quality check by examining only the padding bits. This localized approach maintains inversion decision accuracy while dramatically reducing the number of bits that need to be compared, thus preserving processing efficiency.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The inversion decision is made in advance based on a simple count of one-bits in the input data, and the result is encoded into the padding bits before transmission. This preliminary encoding eliminates the need for complex real-time comparison during processing, improving efficiency while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11368166B2Efficient encoding methods using bit inversion and padding bits
Publication Date: 2022.06.21 IMAGINATION TECH LTD
  • US11368166B2 patent drawing
  • US11368166B2 patent drawing
  • US11368166B2 patent drawing

AI summary

A method of encoding data values where the data values are arranged into words, each word having a plurality of input values and one or more padding bits. A word is encoded by determining whether more than half of the bits in a portion of the word are ones, where the portion may be some or all of the bits of the input values in the word, and in response to determining that more than half of the bits in the portion are ones, inverting all the bits in the portion and setting a corresponding padding bit to a value to indicate the inversion.