IP Library Granted Patent US 8,990,660
Granted Patent B2
US 8,990,660 · App. 12/880,352 · Granted Mar 24, 2015

Data processing system having end-to-end error correction and method therefor

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 8,990,660
App. No.
12/880,352
Granted
Mar 24, 2015
Kind
B2
Abstract

In a data processing system having a plurality of error coding function circuitries, a method includes receiving an address which indicates a first storage location for storing a first data value; using a first portion of the address to select one of the plurality of error coding function circuitries as a selected error coding function circuitry; and using the selected error coding function circuitry to generate a first checkbit value, wherein the selected error coding function circuitry uses the first data value to generate the first checkbit value. When the first portion of the address has a first value, a first one of the plurality of error coding function circuitries is selected as the selected error coding function circuitry. When the first portion of the address has a second value, a second one of the plurality of error coding function circuitries is selected as the selected error coding function circuitry.

Claims (37)

1. In a data processing system having a plurality of error coding function circuitries, each implementing a different coding function, a method for generating a checkbit value, the method comprising:

receiving an address which indicates a first storage location for storing a first data value;

using a first portion of the address to select one of the plurality of error coding function circuitries as a selected error coding function circuitry, wherein:

when the first portion of the address has a first value, selecting a first one of the plurality of error coding function circuitries as the selected error coding function circuitry, and

when the first portion of the address has a second value, different from the first value, selecting a second one of the plurality of error coding function circuitries as the selected error coding function circuitry; and

using the selected error coding function circuitry to generate a first checkbit value, wherein the selected error coding function circuitry uses the first data value to generate the first checkbit value.

2. The method of claim 1 , wherein the selected error coding function circuitry uses the first data value and a second portion of the address to generate the first checkbit value.

3. The method of claim 2 , wherein the first portion of the address is further characterized as a more significant portion of the address than the second portion of the address.

4. The method of claim 2 , wherein the second portion of the address does not include the first portion of the address.

5. The method of claim 1 , further comprising:

storing the first data value and the first checkbit value.

6. The method of claim 5 , further comprising:

receiving a second address which indicates a second storage location for storing a second data value;

using a first portion of the second address to select another one of the plurality of error coding function circuitries as a second selected error coding function circuitry;

using the second selected error coding function circuitry to generate a second checkbit value, wherein the second selected error coding function circuitry uses the second data value to generate the second checkbit value;

storing the second data value and the second checkbit value;

accessing the stored first data value, first checkbit value, second data value, and second checkbit value;

transforming the first checkbit value and the second checkbit value into a third checkbit value which has a granularity to cover both the first and the second data value; and

storing the first data value concatenated with the second data value and the third checkbit value in a third storage location.

7. The method of claim 6 , further comprising:

transferring the first data value concatenated with the second data value over a system interconnect and using the third checkbit value to perform end to end error detection of the first data value concatenated with the second data value.

8. The method of claim 6 , wherein the step of transforming comprises:

performing a bit-wise exclusive OR of the first checkbit value with the second checkbit value to obtain the third checkbit value.

9. The method of claim 6 , wherein the step of transforming comprises:

performing a bit-wise exclusive OR of the first checkbit value with the second checkbit value to obtain a fourth checkbit value based on the first data value concatenated with the second data value;

providing a second portion of the address to address error coding function circuitry to generate a fifth checkbit value based on the second portion of the address; and

performing a bit-wise exclusive OR of the fourth checkbit value with the fifth checkbit value to obtain the third checkbit value.

10. In a data processing system having a processor and a memory coupled to the processor via a system interconnect, a method comprising:

accessing a cache of the processor to access a first storage location and an adjacent second storage location, wherein the first storage location comprises a first data value and a first checkbit value corresponding to the first data value and the second storage location comprises a second data value and a second checkbit value corresponding to the second data value;

transforming the first checkbit value and the second checkbit value into a third checkbit value which has a granularity to cover the first data value combined with the second data value wherein transforms includes:

performing a bit-wise XOR of the first checkbit value with the second checkbit value to obtain a fourth checkbit value based on the first data value concatenated with the second data value;

providing a second portion of an address to address error coding function circuitry to generate a fifth checkbit value based on the second portion address; and

performing a bit-wise exclusive OR of the fourth checkbit value with the fifth checkbit value to obtain the third checkbit value; and

storing the first data value concatenated with the second data value and the third checkbit value in a storage location of the memory.

11. The method of claim 10 , further comprising:

transferring the first data value concatenated with the second data value over the system interconnect from the memory to the processor; and

using the third checkbit value to perform end to end error detection of the first data value concatenated with the second data value.

Assignments (14)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NORTH STAR INNOVATIONS INC.
Reel/Frame 037694/0264 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0285 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0334 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0387 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →