Memory Endianness Compatibility via Bit Reordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in supporting multiple endianness formats, requiring complex calculations and additional operations to switch between big endian and little endian formats, which can lead to inefficiencies and increased processing requirements.

Innovation Solution

A method that involves receiving bytes in a particular endianness format, reordering them on a bytewise basis to a bit-sequential format using a hardware flag, and adjusting shift directions based on the endianness format, allowing for transparent support of both big endian and little endian compatibility without knowledge of the total number of bytes, thereby simplifying shift operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If complex calculations and additional operations are performed to switch between big endian and little endian formats, then endianness compatibility is achieved, but processing efficiency deteriorates and calculation requirements increase

Engineering Contradiction:
Improveendianness compatibilityVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by determining the endianness format of incoming data before storage operations. The controller identifies whether data is in big endian or little endian format upfront, allowing it to pre-configure the shift direction and storage sequence. This preliminary determination eliminates the need for complex runtime calculations and format switching operations, thereby maintaining both endianness compatibility and processing efficiency.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If complex calculations and additional operations are performed to switch between big endian and little endian formats, then endianness compatibility is achieved, but device complexity increases

Engineering Contradiction:
Improveendianness compatibilityVSAvoidprocessing requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by making the shift direction configurable based on the detected endianness format. Rather than implementing complex format conversion logic, the system dynamically adjusts the shift direction parameter (first shift direction for big endian, second shift direction for little endian) based on the incoming data format. This dynamic adaptation simplifies the overall device architecture while maintaining support for multiple endianness formats.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If shift operations are performed without knowledge of total byte count, then processing is simplified, but precision in bit reordering may deteriorate

Engineering Contradiction:
Improveshift operation simplicityVSAvoidbit reordering accuracy
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent applies parameter changes by adjusting the shift direction parameter based on the endianness format of the incoming data. When big endian data is detected, a first shift direction is applied; when little endian data is detected, a second shift direction is applied. This parameter adaptation ensures that bits are reordered with precision appropriate for each format, while the shift operations themselves remain simple and do not require knowledge of the total byte count.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10983706B2Multiple endianness compatibility
Publication Date: 2021.04.20 MICRON TECHNOLOGY INC
  • US10983706B2 patent drawing
  • US10983706B2 patent drawing
  • US10983706B2 patent drawing

AI summary

Examples of the present disclosure provide apparatuses and methods for multiple endianness compatibility. An example method comprises receiving a plurality of bytes and determining a particular endianness format of the plurality of bytes. The method can include, responsive to determining the particular endianness format is a first endianness format, reordering bits of each byte of the plurality of bytes on a bytewise basis, storing the reordered plurality of bytes in an array of memory cells, and adjusting a shift direction associated with performing a number of operations on the plurality of bytes stored in the array. The method can include, responsive to determining the particular endianness format is a second endianness format, storing the plurality of bytes in the array without reordering bits of the plurality of bytes.