Bit-Inversion Word Encoding Using Padding Bits for Lower Memory Bus Power
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
Data Source
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.


