Bus Encoding with Padding-Bit Inversion for Lower Memory Power

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

External memory accesses in computing systems consume a significant amount of power, particularly due to the capacitance of the bus, and existing bus-invert coding methods require additional hardware and become inefficient as the number of compared bits increases.

Innovation Solution

A method of encoding data values by determining if more than half of the bits in a portion of the word are ones and inverting them, with a padding bit to indicate inversion, and decoding using a corresponding padding bit to flip or maintain bits as needed, 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 is reduced, but device complexity increases due to additional bus lines and specialized hardware

Engineering Contradiction:
Improvepower consumptionVSAvoiddevice complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The patent extracts only the necessary inversion functionality from traditional bus-invert coding by using existing padding bits within data words to indicate inversion, eliminating the need for separate inversion indicator lines and reducing device complexity while maintaining power consumption benefits

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent makes existing padding bits serve a dual function: their original purpose and as inversion indicators, thereby eliminating the need for additional dedicated inversion indicator lines and reducing overall device complexity

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

2Use of energy by moving object

If traditional bus-invert coding is used, then power consumption is reduced, but manufacturing becomes more difficult due to additional hardware requirements

Engineering Contradiction:
Improvepower consumptionVSAvoidease of manufacture
Core Design Contradiction:
Use of energy by moving objectVSEase of manufacture

Solution Approach 1:

The patent removes the requirement for specialized inversion indicator lines and dedicated inversion hardware, extracting only the essential inversion functionality that can be implemented using standard logic circuits and existing data word structures, thereby simplifying manufacturing

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The data words themselves carry the inversion indication information through their padding bits, eliminating the need for separate specialized hardware components and making the system easier to manufacture using standard integrated circuit processes

Inventive Principle:
Principle #25Self-service

3Measurement precision

If more bits are compared in bus-invert coding, then inversion accuracy is improved, but processing time increases

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

Solution Approach 1:

The patent performs inversion determination in parallel by examining padding bits that are already present in the data words, eliminating the need for sequential comparison of multiple bits and reducing processing time while maintaining accurate inversion detection

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses only the necessary padding bits for inversion indication rather than comparing all data bits, achieving sufficient inversion accuracy with minimal processing overhead and reduced time loss

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3889792B1Efficient encoding methods
Publication Date: 2026.03.18 IMAGINATION TECH LTD
  • EP3889792B1 patent drawingFigure 1~2
  • EP3889792B1 patent drawingFigure 3
  • EP3889792B1 patent drawingFigure 4~5B

AI summary

A method of encoding data values is described where the data values are arranged into words, each word comprising a plurality of input values and one or more padding bits. A word is encoded by determining whether more than half of bits in a portion of the word are ones, where the portion may comprise some or all of the bits of the input values in the word, and in response to determining that more than half of 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.