IP Library Granted Patent US 10,163,467
Granted Patent B2
US 10,163,467 · App. 14/885,546 · Granted Dec 25, 2018

Multiple endianness compatibility

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,163,467
App. No.
14/885,546
Granted
Dec 25, 2018
Kind
B2
Abstract

Examples of the present disclosure provide apparatuses and methods for multiple endianness compatibility. An example method comprises receiving a plurality of bytes in a non-bit-sequential format. The method includes reordering the bits in each byte of the plurality of bytes such that the plurality of bytes are arranged in a bit-sequential format.

Claims (65)

1. A method, comprising:

receiving a plurality of bytes in a little-endian bytewise, big-endian bitwise format such that the plurality of bytes are in a sequential format and the bits in each byte of the plurality of bytes are in a non-bit-sequential format;

reordering, using reordering circuitry, the bits in each byte of the plurality of bytes on a bytewise basis such that the bits in each byte of the plurality of bytes are arranged in a bit-sequential format;

storing the plurality of bytes with the reordered bits in memory cells; and

shifting the bits in the bit-sequential format stored in the memory cells using shift circuitry.

2. The method of claim 1 , wherein the bit-sequential format is a bit-sequential little endian format where the bits are arranged from a least significant bit of each byte of the plurality of bytes being stored in a most significant position and a most significant bit of each byte of the plurality of bytes being stored in a least significant position.

3. The method of claim 1 , wherein the plurality of bytes are received at a memory device.

4. The method of claim 1 , wherein the plurality of bytes stored in the memory cells are stored in memory cells coupled to a same access line of the array.

5. The method of claim 1 , further comprising:

storing each of the bits in one of a respective number of compute components; and

shifting each of the bits from a compute component coupled to a memory cell storing a lesser significant bit to a compute component coupled to a memory cell storing a more significant bit.

6. The method of claim 1 , further comprising:

storing each of the bits in one of a respective number of compute components; and

shifting each of the bits from a compute component coupled to a memory cell storing a more significant bit to a compute component coupled to a memory cell storing a lesser significant bit.

7. The method of claim 1 , comprising reordering the bits from a bit-sequential little endian format to a non-bit-sequential little endian format on a byte-by-byte basis after shifting the bits.

8. The method of claim 7 , comprising sending the reordered bits to a processing resource.

9. The method of claim 1 , wherein reordering the bits in each byte comprises reordering a most significant bit of a first byte from a most significant bit position to a least significant bit position.

10. The method of claim 9 , wherein reordering the bits in each byte comprises reordering a least significant bit of the first byte from a least significant bit position to the most significant bit position.

11. The method of claim 10 , wherein reordering the bits in each byte comprises reordering:

a second most significant bit of the first byte from a second most significant bit position to a seventh most significant bit position;

a third most significant bit of the first byte from a third most significant bit position to a sixth most significant bit position;

a fourth most significant bit of the first byte from a fourth most significant bit position to a fifth most significant bit position

a fifth most significant bit of the first byte from a fifth most significant bit position to a fourth most significant bit position;

a sixth most significant bit of the first byte from a sixth most significant bit position to a third most significant bit position; and

a seventh most significant bit of the first byte from a seventh most significant bit position to a second most significant bit position.

12. A method, comprising:

receiving, at reordering circuitry, a plurality of bytes in a bytewise little endian bitwise big endian format such that the plurality of bytes are in a sequential format and the bits in each byte of the plurality of bytes are in a non-bit-sequential format;

using the reordering circuitry to reorder the plurality of bytes on a bytewise basis into a bit-sequential little endian format; and

storing the plurality of bytes in the bit-sequential little endian format in a group of memory cells;

using the reordering circuitry to reverse an order of the bits of the plurality of bytes stored in the group of memory cells in the bit-sequential little endian format, such that the plurality of bytes are in the bytewise little endian bitwise big endian format; and

providing the plurality of bytes in the bytewise little endian bitwise big endian format.

13. The method of claim 12 , wherein a first bit position in the order of bits in each of a plurality of bytes is a most significant bit position and an eighth bit position in the order is a least significant bit position.

14. The method of claim 13 , wherein the bits are ordered in the bit-sequential little endian format, prior to the reversing, such that a most significant bit of a first byte of the plurality of bytes is in a least significant bit position of the first byte.

15. The method of claim 14 , wherein the bits are ordered in the bit-sequential little endian format, prior to the reversing, such that a least significant bit of the first byte is in a most significant bit position of the first byte.

16. The method of claim 15 wherein the bits are ordered in the bit-sequential little endian format, prior to the reversing, such that:

a second most significant bit is in a seventh most significant bit position of the first byte;

a third most significant bit is in a sixth most significant bit position of the first byte; and

a fourth most significant bit is in a fifth most significant bit position of the first byte;

a fifth most significant bit is in a fourth most significant bit position of the first byte;

a sixth most significant bit is in a third most significant bit position of the first byte; and

a seventh most significant bit is in a second most significant bit position of the first byte.

17. The method of claim 12 , wherein providing the plurality of bytes in the bytewise little endian bitwise big endian format comprises providing the plurality of bytes in the bytewise little endian bitwise big endian format to a host.

18. The method of claim 17 , wherein the reversed bits are ordered in the bytewise little endian format such that:

a most significant bit of the first byte is in a most significant bit position of the first byte; and

a least significant bit of the first byte is in a least significant bit position of the first byte.

19. An apparatus comprising:

a memory array;

a controller coupled to the memory array;

shift circuitry; and

I/O circuitry coupled to the memory array and the controller, wherein the I/O circuitry includes reordering circuitry configured to reorder bits of a plurality of bytes, received in a bytewise little endian bitwise big endian format in which bits of each byte are in a non-sequential format, from the bytewise little endian bitwise big endian format to a bytewise little endian bitwise little endian format in which bits of the plurality of bytes are in a sequential format by reversing the bits on a bytewise basis;

wherein the controller is configured to cause the bits in the plurality of bytes in the bytewise little endian bitwise little endian format to be stored in memory cells in the memory array; and

wherein the shift circuitry is configured to perform a number of shift operations on the bits stored in the memory cells.

20. The apparatus of claim 19 , wherein the reordering circuitry is configured to reorder the bits without knowing a data format.

21. The apparatus of claim 19 , wherein the shift circuitry is configured to perform a number of shift operations in a first direction on bits ordered in the bitwise big endian format.

22. The apparatus of claim 21 , wherein the number of shift operations in the first direction is a number of shift operations toward a less significant bit position.

23. The apparatus of claim 21 , wherein the shift circuitry is configured to perform the number of shift operations in a different direction than the first direction when the received bits of the plurality of bytes are received in a bitwise little endian, bytewise big endian format to reorder a least significant byte from a least significant byte position to a most significant byte position.

24. The apparatus of claim 23 , wherein the shift circuitry configured to perform the number of shift operations in the different direction includes shifting a second least significant byte from a second least significant byte position to a second most significant byte position.

25. An apparatus comprising:

a memory array;

reordering circuitry coupled to the memory array and configured to reorder bits of a plurality of bytes received in a bytewise little endian, bitwise big endian format such that the corresponding bits in each byte are in a non-sequential format to a bytewise little endian, bitwise little endian format such that the corresponding bits in each byte are in a sequential format on a bytewise basis and without regard to a number of bytes of the plurality of bytes;

a controller configured to cause the bits of the plurality of bytes in the bytewise little endian bitwise little endian format to be stored in a group of memory cells; and

sensing circuitry configured to perform a number of shift operations on the bits of the plurality of bytes in the bytewise little endian, bitwise little endian format stored in the group of memory cells;

wherein the reordering circuitry is configured to reverse an order of the bits of the plurality of bytes in the bytewise little endian, bitwise little endian format stored in the group of memory cells, such that the plurality of bytes are in the bytewise little endian, bitwise big endian format.

26. The apparatus of claim 25 , wherein the reordering circuitry resides in the controller.

27. The apparatus of claim 25 , wherein the sensing circuitry includes a number of compute components coupled to a number of corresponding sense lines of the memory array.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2015
From: WHEELER, KYLE B.; FINKBEINER, TIMOTHY P.; WILLCOCK, JEREMIAH J.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 036813/0282 →