IP Library Granted Patent US 10,733,050
Granted Patent B2
US 10,733,050 · App. 16/105,663 · Granted Aug 4, 2020

Progressive length error control code

Inventor: J. Thomas Pawlowski (Boise, ID)
Assignee: Micron Technology, Inc.
G06F11/1076G06F3/0619G06F3/0659G06F3/0673
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,733,050
App. No.
16/105,663
Granted
Aug 4, 2020
Kind
B2
Abstract

Devices and methods may be used to append a scalable ( 1 ) of parity bits in a data packet that scales with a number of data bits in a payload of the data packet. The parity bits may be generated utilizing a table of entries. In some examples, each entry in the table corresponds to a number of the data bits to be included in the payload; and each column of the table may be used to generate a corresponding parity bit of the one or more parity bits.

Claims (36)

1. A network device coupled to a network, comprising:

a memory component configured to store instructions; and

one or more processors, that when executing the instructions, are configured to:

generate one or more data packets, wherein each data packet of the one or more data packets comprises:

a payload field comprising one or more data bits as a payload for the data packet; and

an error control code field comprising one or more parity bits,

wherein the one or more processors use a table of entries to generate the error control field, wherein each entry in the table corresponds to a possible quantity of data bits to be included in the payload field, and each column of the table is used to generate a corresponding parity bit of the one or more parity bits, wherein the one or more processors are configured to generate the table of entries with a quantity of entries equal to a maximum possible transmission size of the one or more data packets; and

transmit the one or more data packets over the network.

2. The network device of claim 1 , wherein a first entry in the table corresponds to a first number satisfying a rule for the entries, and a successive entry in the table corresponds to a next number satisfying an entry number rule.

3. The network device of claim 2 , wherein the entry number rule requires each entry in the table, in binary form, includes at least two ones.

4. The network device of claim 3 , wherein the error control field comprises a hamming distance of three.

5. The network of claim 2 , wherein the entry number rule requires each entry in the table, in binary form, includes at least three ones and comprises an odd number of ones.

6. The network device of claim 5 , wherein the error control field comprises a hamming distance of four.

7. The network device of claim 1 , wherein the one or more processors utilize only a portion of the table to generate the parity bits of the one or more data packets, wherein a size of the portion is based at least in part on a quantity of data bits in the payload.

8. The network device of claim 7 , wherein a quantity of the one or more parity bits generated is equal to a quantity of non-zero columns in the table of entries.

9. A network device coupled to a network, comprising:

a memory component configured to store instructions;

error control code generation circuitry that is configured to generate an error control code comprising one or more parity bits, wherein the error control code is configured to generate the error control code based at least in part on a number of data bits in a data packet, wherein the error control code generation circuitry generates the error control code from a sequence of error control codes that sequentially correspond to numbers for the number of data bits, wherein the sequence of error control codes comprises a sequence of integers in numerical order, wherein each integer in the sequence of integers comprises at least two ones in binary, and each successive integer of the error control codes is incremented from a lower integer in the sequence of integers to a next binary integer including at least two ones; and

one or more processors, that when executing the instructions, that are configured to transmit one or more data packets over the network, wherein the one or more data packets comprise the error control code and the data bits.

10. The network device of claim 9 , wherein the error control generation circuitry comprises a plurality of XOR gates configured to generate the error control code from the number of data bits.

11. The network device of claim 9 , wherein the each integer in the sequence of integers comprises at least three ones and an odd quantity of ones in binary, and each successive integer in the possible error control codes is incremented from a lower integer in the sequence of integers to a next binary integer including at least three ones and an odd quantity of ones from the lowerinteger.

12. The network device of claim 9 , wherein the one or more data packets comprises a transaction type field comprising data indicative of a first quantity of data bits in a payload of the respective data packet of the one or more data packets and a second quantity of parity bits in the error control code in the respective data packet.

13. The network device of claim 12 , wherein the data comprises a binary value that corresponds to one of a plurality of transaction types, wherein each of the plurality of transaction types is associated with a data operation for the network device.

14. The network device of claim 9 , wherein a quantity of the one or more parity bits generated is equal to a quantity of non-zero values in the error control codes.

15. An electronic device, comprising:

an input configured to receive, via a network connection, a data packet comprising data bits and parity bits;

calculation circuitry comprises determining the parity bits based at least in part on a number of the data bits in the data packet, wherein the calculation circuitry is configured to determine the parity bits from a sequence of possible parity bits that sequentially correspond to possible numbers of a number of the data bits;

one or more processors configured to:

receive the data packet from the input; and

determine whether any errors have occurred in transmission of the data packet by:

for each parity bit included in the data packet, derive a verification calculation from a column of the possible parity bits ;

generate a corresponding transmission result for each parity bit based at least in part on the respective verification calculation; and

combine the transmission results to form an overall error indicator that indicates whether transmission of the data packet has introduced errors into the data packet; and

act on the data packet based at least in part on the overall error indicator.

16. The electronic device of claim 15 , wherein the calculation circuitry comprises performing exclusive OR (XOR) functions on data bits of the data bits corresponding to a non-zero value in a respective place of the possible parity bits.

17. The electronic device of claim 16 , wherein generating the corresponding transmission result comprises determining whether a result of the XOR functions is equal to a respective parity bit.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 14, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 051028/0835 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050719/0550 →
SUPPLEMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A.., AS COLLATERAL AGENT
Reel/Frame 047630/0756 →
SUPPLEMENT NO. 10 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 048102/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2018
From: PAWLOWSKI, J. THOMAS
To: MICRON TECHNOLOGY, INC.
Reel/Frame 046654/0464 →
Continuity (2)
Continuation 15988962 · May 24, 2018
Related Publication 20190361776A1 · Nov 28, 2019