IP Library Granted Patent US 9,703,622
Granted Patent B2
US 9,703,622 · App. 14/898,278 · Granted Jul 11, 2017

Detection of data corruption in a data processing device

Inventors: Florian Mayer (Munich, DE); Frank Steinert (Rosenheim, DE)
Assignee: NXP USA, INC.
G06F11/079G06F11/0751G06F11/1004
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 9,703,622
App. No.
14/898,278
Granted
Jul 11, 2017
Kind
B2
Abstract

A method of operating a data processing system comprises: processing data words and switching between contexts; assigning a context signature Sig to any pair formed of a data word and a context; reading, within a current context, a data record from a memory unit, the data record comprising a payload data word and a protection signature; providing, as a verification signature, the context signature Sig of the payload data word and the current context; checking the verification signature against the protection signature; and generating an error signal if the verification signature differs from the protection signature.

Claims (29)

1. A data processing device capable of processing data words and of switching between contexts, the data processing device comprises:

a signature unit, wherein the signature unit is arranged to

assign a context signature Sig to any pair formed of a data word and a context; wherein said data words and said contexts include a first data word, a first context, and a second context different from the first context, and wherein the context signature Sig of the first data word and the first context differs from the context signature Sig of the first data word and the second context;

a memory access unit, wherein the memory access unit is arranged to read, within a current context, a data record from a memory unit, the data record comprising a payload data word and a protection signature;

a signature unit, wherein the signature unit is arranged to provide, as a verification signature, the context signature Sig of the payload data word and the current context; and

a comparison unit, wherein the comparison unit is arranged to check the verification signature against the protection signature and to generate an error signal if the protection signature and the verification signature differ.

2. The data processing device of claim 1 , wherein

the signature unit is further arranged to provide, as a second protection signature, the context signature Sig of a second payload data word and the current context; and

the memory access unit is arranged to write a second data record to the memory unit, the second data record comprising the second payload data word and the second protection signature Sig.

3. The data processing device of claim 1 , wherein said data words and said contexts include a second data word, a third data word, and a third context and the context signature Sig of the second data word and the third context differs from the context signature Sig of the third data word and the third context.

4. The data processing device of claim 1 , wherein the context signature Sig is a context-dependent checksum of the data word.

5. The data processing device of claim 4 , wherein the signature unit is arranged to associate with each context a context-specific generator polynomial, and to generate the checksum on the basis of the generator polynomial.

6. The data processing device of claim 1 , wherein the context signature Sig depends on the context but not on the data word.

7. The data processing device of claim 1 , wherein the context signature Sig is an identifier of the context.

8. The data processing device of claim 1 , arranged to execute a program comprising one or more subroutines and arranged to perform a context switch with each jump to or from a subroutine.

9. The data processing device of claim 1 , wherein said payload data word is an executable instruction.

10. The data processing device of claim 1 , wherein the memory unit comprises a plurality of registers, each register is arranged to store a payload data word along with a protection signature associated with that payload data word.

11. The data processing device of claim 1 , wherein the context signature has the same length for every data word and every context.

12. The data processing device of claim 1 , wherein different contexts have different signatures for any payload data word.

13. A method of operating a data processing system, comprising:

processing data words and switching between contexts;

assigning a context signature Sig to any pair formed of a data word and a context; wherein said data words and said contexts include a first data word, a first context, and a second context different from the first context and wherein the context signature Sig of the first data word and the first context differs from the context signature Sig of the first data word and the second context;

reading, within a current context, a data record from a memory unit, the data record comprising a payload data word and a protection signature;

providing, as a verification signature, the context signature Sig of the payload data word and the current context;

checking the verification signature against the protection signature; and

generating an error signal if the verification signature differs from the protection signature.

14. The method of claim 13 , further comprising:

providing, as a second protection signature, the context signature Sig of a second payload data word and the current context; and

writing a second data record to the memory unit, the second data record comprising the second payload data word and the second protection signature Sig.

Assignments (7)
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 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040626 FRAME: 0683. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME EFFECTIVE NOVEMBER 7, 2016. Recorded Jan 12, 2017
From: NXP SEMICONDUCTORS USA, INC. (MERGED INTO); FREESCALE SEMICONDUCTOR, INC. (UNDER)
To: NXP USA, INC.
Reel/Frame 041414/0883 →
CHANGE OF NAME Recorded Nov 16, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040626/0683 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2015
From: MAYER, FLORIAN; STEINERT, FRANK
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037283/0798 →
Continuity (1)
Related Publication 20160132374A1 · May 12, 2016