Patentable/Patents/US-8468417
US-8468417

Data integrity in memory controllers and methods

PublishedJune 18, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

The present disclosure includes methods, devices, and systems for data integrity in memory controllers. One memory controller embodiment includes a host interface and first error detection circuitry coupled to the host interface. The memory controller can include a memory interface and second error detection circuitry coupled to the memory interface. The first error detection circuitry can be configured to calculate error detection data for data received from the host interface and to check the integrity of data transmitted to the host interface. The second error detection circuitry can be configured to calculate error correction data for data and first error correction data transmitted to the memory interface and to check integrity of data and first error correction data received from the memory interface.

Patent Claims
54 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A memory controller, comprising: a host interface; first error detection circuitry coupled to the host interface; a memory interface; and second error detection circuitry coupled to the memory interface; wherein the first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface.

Plain English Translation

A memory controller has a host interface for communicating with a host device, and a memory interface for communicating with a memory device. It includes a first error detection circuit connected to the host interface, and a second error detection circuit connected to the memory interface. The first error detection circuit calculates error detection data for data received from the host and checks the integrity of data sent to the host. The second error detection circuit calculates error correction data for data sent to memory, along with initial error detection data, and checks the integrity of data received from memory including any error correction data.

Claim 2

Original Legal Text

2. The memory controller of claim 1 , wherein the first error detection circuitry is configured to calculate error detection data per received sector of data.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, calculates error detection data for each sector of data received. This allows for granular error checking on incoming host data.

Claim 3

Original Legal Text

3. The memory controller of claim 2 , wherein: the data received from the host interface comprises a data payload including a number of sectors of data; and the data received from the host interface comprises streaming data.

Plain English Translation

The memory controller described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, that calculates error detection data for each sector of data received, handles data received from the host as a data payload consisting of multiple sectors or as streaming data providing flexibility in data handling.

Claim 4

Original Legal Text

4. The memory controller of claim 1 , wherein: the first error detection circuitry comprises a cyclic redundancy check (CRC) engine coupled to the host interface by a link layer and/or a transport layer; and the second error detection circuitry comprises an error correction code (ECC) engine.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, uses a Cyclic Redundancy Check (CRC) engine as the first error detection circuit, communicating with the host via a link or transport layer, and an Error Correction Code (ECC) engine as the second error detection circuit, implementing standard error detection/correction techniques.

Claim 5

Original Legal Text

5. The memory controller of claim 1 , wherein the memory controller includes: data transfer circuitry coupled to the host interface and to the first and the second error detection circuitries; and error detection memory coupled to the data transfer circuitry; wherein the error detection memory is configured to store the error detection data.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, includes data transfer circuitry connected to the host interface and both error detection circuits. Error detection memory is also coupled to the data transfer circuitry to store calculated error detection data facilitating error checking.

Claim 6

Original Legal Text

6. The memory controller of claim 5 , wherein the memory controller includes: a data buffer coupled to the data transfer circuitry and to the second error detection circuitry; wherein the data buffer is configured to buffer data for the second error detection circuitry.

Plain English Translation

The memory controller as described which includes data transfer circuitry connected to the host interface and both error detection circuits; and error detection memory coupled to the data transfer circuitry to store calculated error detection data, utilizes a data buffer connected to the data transfer circuitry and the second error detection circuit. This buffer temporarily stores data to be processed by the second error detection circuitry (ECC), allowing pipelining of data integrity operations to improve overall memory controller performance.

Claim 7

Original Legal Text

7. The memory controller of claim 1 , wherein the second error detection circuitry is configured to correct one or more errors in the data received from the memory interface.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, is capable of correcting one or more errors in the data received from the memory interface using the second error detection circuitry (ECC), enhancing data reliability.

Claim 8

Original Legal Text

8. The memory controller of claim 1 , wherein the memory controller is configured to transfer the data received from the host interface, the error detection data, and the error correction data across the memory interface.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, is configured to transfer data received from the host, the error detection data (CRC), and error correction data (ECC) across the memory interface, ensuring full data integrity during memory operations.

Claim 9

Original Legal Text

9. The memory controller of claim 1 , wherein the memory controller includes: data transfer circuitry coupled to the memory interface and to the first and the second error detection circuitries; wherein the data transfer circuitry is configured to receive data and corresponding error detection data from the memory interface and to transfer the data and the corresponding error detection data to the first error detection circuitry.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, uses data transfer circuitry coupled to the memory interface, and both the first and second error detection circuits. This allows receiving data and corresponding error detection data from the memory interface, and transferring them to the first error detection circuitry.

Claim 10

Original Legal Text

10. The memory controller of claim 9 , wherein the first error detection circuitry is configured to: calculate error detection data for the data received from the data transfer circuitry; and compare the calculated error detection data for the data received from the data transfer circuitry to the corresponding error detection data received from the data transfer circuitry.

Plain English Translation

The memory controller with data transfer circuitry coupled to the memory interface, and both the first and second error detection circuits for receiving data and corresponding error detection data from the memory interface, and transferring them to the first error detection circuitry, uses the first error detection circuitry to calculate error detection data for the received data from the data transfer circuitry, and then compares the calculated data with the received data to verify data integrity.

Claim 11

Original Legal Text

11. The memory controller of claim 9 , wherein the memory controller includes: more than one channel; channel data transfer circuitry coupled to the data transfer circuitry; a data buffer coupled to the channel data transfer circuitry and the second error detection circuitry; and error detection memory coupled to the memory interface.

Plain English Translation

The memory controller with data transfer circuitry coupled to the memory interface, and both the first and second error detection circuits for receiving data and corresponding error detection data from the memory interface, and transferring them to the first error detection circuitry, has multiple channels and channel data transfer circuitry, a data buffer connecting the channel data transfer circuitry to the second error detection circuitry, and error detection memory connecting to the memory interface allowing parallel data handling.

Claim 12

Original Legal Text

12. The memory controller of claim 9 , wherein the memory controller includes: more than one channel; and a channel processor and a channel memory.

Plain English Translation

The memory controller with data transfer circuitry coupled to the memory interface, and both the first and second error detection circuits for receiving data and corresponding error detection data from the memory interface, and transferring them to the first error detection circuitry, includes multiple channels, a channel processor, and channel memory allowing more complex parallel data processing.

Claim 13

Original Legal Text

13. The memory controller of claim 1 , wherein the memory controller includes: a host buffer coupled to the host interface; and encryption circuitry coupled to the host buffer; wherein the encryption circuitry is configured to process the data optionally for providing an encrypted output.

Plain English Translation

The memory controller as described where first error detection circuitry is configured to: calculate error detection data for data received from the host interface; and check integrity of data transmitted to the host interface; and wherein the second error detection circuitry is configured to: calculate error correction data for data and first error correction data transmitted to the memory interface; and check integrity of data and first error correction data received from the memory interface, utilizes a host buffer coupled to the host interface and encryption circuitry, to optionally encrypt data, securing data transmission between the host and the memory controller.

Claim 14

Original Legal Text

14. The memory controller of claim 13 , wherein the encryption circuitry comprises an advanced encryption standard (AES) engine.

Plain English Translation

The memory controller with a host buffer coupled to the host interface and encryption circuitry optionally encrypting data, uses an Advanced Encryption Standard (AES) engine as the encryption circuitry, implementing a well-known and secure encryption algorithm.

Claim 15

Original Legal Text

15. A memory controller, comprising: a host interface; front end error detection circuitry coupled to the host interface; a memory interface; and back end error detection circuitry coupled to the memory interface; wherein the front end error detection circuitry is configured to calculate first error detection data for corresponding data; and wherein the back end error detection circuitry is configured to: calculate second error detection data for the corresponding data; and compare the first error detection data with the second error detection data to check integrity of the corresponding data.

Plain English Translation

A memory controller uses a host interface and memory interface. It employs front-end error detection circuitry connected to the host interface, and back-end error detection circuitry connected to the memory interface. The front-end circuitry calculates first error detection data for incoming data. The back-end circuitry calculates second error detection data for the same data and compares the first and second error detection data to verify data integrity.

Claim 16

Original Legal Text

16. The memory controller of claim 15 , wherein the memory controller includes: data transfer circuitry coupled to the front end error detection circuitry; a back end error detection memory coupled to the data transfer circuitry and to the back end error detection circuitry; wherein the data transfer circuitry is configured to transfer the first error detection data from the front end error detection circuitry to the back end error detection memory; and wherein the back end error detection circuitry is configured to compare the first error detection data from the error detection memory with the second error detection data to check integrity of the corresponding data.

Plain English Translation

The memory controller with front-end error detection circuitry connected to the host interface, and back-end error detection circuitry connected to the memory interface, that calculates first error detection data for incoming data and compares the first and second error detection data to verify data integrity, also includes data transfer circuitry connected to the front-end detection circuitry and back-end error detection memory. The front-end data is transferred to the back-end memory for the back-end error detection circuit to use to check integrity.

Claim 17

Original Legal Text

17. The memory controller of claim 15 , wherein: the front end error detection circuitry comprises a cyclic redundancy check (CRC) engine; the back end error detection circuitry comprises a CRC engine; and wherein the memory controller includes an error correction code (ECC) engine coupled to the back end error detection circuitry and to the memory interface; and wherein the ECC engine is configured to calculate error correction data for the corresponding data.

Plain English Translation

The memory controller with front-end error detection circuitry connected to the host interface, and back-end error detection circuitry connected to the memory interface, that calculates first error detection data for incoming data and compares the first and second error detection data to verify data integrity, uses Cyclic Redundancy Check (CRC) engines for both front-end and back-end error detection. Additionally, it has an Error Correction Code (ECC) engine connected to the back-end circuitry and memory interface to calculate ECC data.

Claim 18

Original Legal Text

18. The memory controller of claim 17 , wherein the memory controller is configured to transfer the error correction data and the corresponding data across the memory interface without the first and/or the second error detection data.

Plain English Translation

The memory controller that includes Cyclic Redundancy Check (CRC) engines for both front-end and back-end error detection and an Error Correction Code (ECC) engine connected to the back-end circuitry and memory interface to calculate ECC data, transfers error correction data and associated data across the memory interface without transmitting first or second error detection data improving transfer efficiency.

Claim 19

Original Legal Text

19. The memory controller of claim 15 , wherein: the corresponding data comprises a direct memory access (DMA) payload; the front end error detection circuitry is configured to calculate first error detection data per sector of the DMA payload; and the back end error detection circuitry is configured to calculate second error detection data per sector of the DMA payload.

Plain English Translation

The memory controller with front-end error detection circuitry connected to the host interface, and back-end error detection circuitry connected to the memory interface, that calculates first error detection data for incoming data and compares the first and second error detection data to verify data integrity, handles Direct Memory Access (DMA) payloads where first and second error detection data is calculated per sector of the DMA payload offering granular integrity checks.

Claim 20

Original Legal Text

20. A memory system, comprising: one or more solid state memory devices; and a memory controller coupled to the one or more solid state memory devices, wherein the memory controller includes: front end error detection circuitry configured to calculate first error detection data for a sector of data; and back end error detection circuitry configured to: calculate second error detection data for the sector of data; and check integrity of the sector of data; and wherein the memory controller is configured to store the sector of data without the first and/or the second error detection data in the one or more solid state memory devices.

Plain English Translation

A memory system contains one or more solid-state memory devices and a connected memory controller. The controller uses front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity. The system then stores the sector in memory, excluding the first and/or second error detection data to save space.

Claim 21

Original Legal Text

21. The system of claim 20 , wherein the back end error detection circuitry comprises a cyclic redundancy check (CRC) engine configured to compare the first error detection data with the second error detection data to check integrity of the sector of data.

Plain English Translation

The memory system with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data and uses a Cyclic Redundancy Check (CRC) engine in the back-end to compare the first and second sets of error detection data verifying integrity.

Claim 22

Original Legal Text

22. The system of claim 20 , wherein the system includes a physical interface coupled to a host interface of the memory controller.

Plain English Translation

The memory system with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data, also includes a physical interface connecting to the memory controller's host interface, enabling communication between the system and a host device.

Claim 23

Original Legal Text

23. The system of claim 22 , wherein the front end error detection circuitry comprises a cyclic redundancy check (CRC) engine coupled to the host interface by a link layer and/or a transport layer.

Plain English Translation

The memory system that includes a physical interface connecting to the memory controller's host interface with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data, uses a Cyclic Redundancy Check (CRC) engine at the front-end, connected to the host through a link or transport layer.

Claim 24

Original Legal Text

24. The system of claim 22 , wherein the physical interface comprises a serial interface selected from the group of serial interfaces including: universal serial bus (USB); serial advanced technology attachment (SATA); and peripheral component interconnect express (PCIe).

Plain English Translation

The memory system that includes a physical interface connecting to the memory controller's host interface with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data, offers serial interface options such as Universal Serial Bus (USB), Serial Advanced Technology Attachment (SATA), or Peripheral Component Interconnect Express (PCIe).

Claim 25

Original Legal Text

25. The system of claim 20 , wherein the memory controller includes an error correction code (ECC) engine coupled to the back end error detection circuitry and to a memory interface, wherein the ECC engine is configured to calculate error correction data for the sector of data.

Plain English Translation

The memory system with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data, also utilizes an Error Correction Code (ECC) engine, linked to the back-end circuitry and memory interface, to calculate error correction data improving data reliability.

Claim 26

Original Legal Text

26. The system of claim 25 , wherein the memory controller is configured to store the sector of data and the error correction data without the error detection data in the one or more solid state memory devices when the first error detection data matches the second error detection data.

Plain English Translation

The memory system with an Error Correction Code (ECC) engine, linked to the back-end circuitry and memory interface, to calculate error correction data, includes front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, stores the sector and ECC data without storing the error detection data when the first and second checks match reducing storage overhead.

Claim 27

Original Legal Text

27. The system of claim 20 , wherein the front end error detection circuitry is configured to compare the first error detection data with the second error detection data to check integrity of the sector of data.

Plain English Translation

The memory system with front-end error detection circuitry for calculating first error detection data on a data sector, and back-end error detection circuitry calculating second error detection data to verify the sector's integrity, where the sector is then stored in memory, excludes error detection data and the front-end circuitry compares both the first and second sets of data to ensure integrity.

Claim 28

Original Legal Text

28. A method for operating a memory controller, comprising: calculating, with first error detection circuitry, error detection data for data received from a host interface coupled to the first error detection circuitry; checking integrity, with the first error detection circuitry, of data transmitted to the host interface; calculating, with second error detection circuitry, error correction data for data and first error detection data transmitted to a memory interface coupled to the second error detection circuitry; and checking integrity, with the second error detection circuitry, of data and first error correction data received from the memory interface.

Plain English Translation

A method for operating a memory controller involves calculating error detection data for data received from a host interface using a first error detection circuit, checking the integrity of data transmitted to the host using the first error detection circuit, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking the integrity of data received from the memory interface including any ECC data using the second error detection circuit.

Claim 29

Original Legal Text

29. The method of claim 28 , wherein calculating the error detection data for the data received from the host interface comprises calculating error detection data per sector of data received from the host interface.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface includes calculating error detection data for each sector of data received from the host.

Claim 30

Original Legal Text

30. The method of claim 29 , wherein: the data received from the host interface comprises a data payload including a number of sectors of data; and the data received from the host interface comprises streaming data.

Plain English Translation

The memory controller operation calculating error detection data for each sector of data received from the host with checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, handles data either as a payload consisting of sectors, or as streaming data.

Claim 31

Original Legal Text

31. The method of claim 28 , wherein: the first error detection circuitry comprises a cyclic redundancy check (CRC) engine coupled to the host interface by a link layer and/or a transport layer; and the second error detection circuitry comprises an error correction code (ECC) engine.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, implements a Cyclic Redundancy Check (CRC) engine connected by a link or transport layer to the host as the first error detection circuit and uses an Error Correction Code (ECC) engine as the second.

Claim 32

Original Legal Text

32. The method of claim 28 , wherein the method includes storing the error detection data in error detection memory coupled to data transfer circuitry, which is coupled to the host interface and to the first and the second error detection circuitries.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, includes storing the error detection data in memory connected to data transfer circuitry which is in turn connected to the host and the error detection circuits.

Claim 33

Original Legal Text

33. The method of claim 32 , wherein the method includes buffering data for the second error detection circuitry with a data buffer coupled to the data transfer circuitry and to the second error detection circuitry.

Plain English Translation

The memory controller operation including storing the error detection data in memory connected to data transfer circuitry which is in turn connected to the host and the error detection circuits in calculating error detection data for data received from a host interface, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, also buffers data for the second detection circuit using a buffer coupled to the transfer and detection circuits.

Claim 34

Original Legal Text

34. The method of claim 28 , wherein the method includes correcting, with the second error detection circuitry, one or more errors in the data received from the memory interface.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, corrects errors in the received data from the memory interface using the second detection circuit.

Claim 35

Original Legal Text

35. The method of claim 28 , wherein the method includes transferring the data received from the host interface, the error detection data, and the error correction data across the memory interface.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, includes transferring all host data, detection data, and correction data across the memory interface.

Claim 36

Original Legal Text

36. The method of claim 28 , wherein the method includes receiving, with data transfer circuitry coupled to the memory interface and to the first and the second error detection circuitries, data and corresponding error detection data from the memory interface; and transferring, with data transfer circuitry, the data and the corresponding error detection data to the first error detection circuitry.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, receives data from the memory interface with corresponding error detection data, using transfer circuitry connected to the memory interface and both the first and second error detection circuits, and then transfers data and corresponding detection data to the first error detection circuit.

Claim 37

Original Legal Text

37. The method of claim 36 , wherein calculating with the first error detection circuitry includes calculating error detection data for the data received from the data transfer circuitry; and wherein the method includes comparing, with the first error detection circuitry, the calculated error detection data for the data received from the data transfer circuitry to the corresponding error detection data received from the data transfer circuitry.

Plain English Translation

The memory controller operation that receives data from the memory interface with corresponding error detection data, using transfer circuitry connected to the memory interface and both the first and second error detection circuits, and then transfers data and corresponding detection data to the first error detection circuit calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, also involves calculating error detection data for the data received from the data transfer circuitry, and then comparing the two sets of error detection data.

Claim 38

Original Legal Text

38. The method of claim 36 , wherein receiving includes receiving with the data transfer circuitry coupled to more than one channel and to channel data transfer circuitry, wherein the channel data transfer circuitry is coupled to a data buffer and to the second error detection circuitry; and wherein receiving includes receiving with the data transfer circuitry coupled to the memory interface, which is coupled to error detection memory.

Plain English Translation

The memory controller operation that receives data from the memory interface with corresponding error detection data, using transfer circuitry connected to the memory interface and both the first and second error detection circuits, and then transfers data and corresponding detection data to the first error detection circuit calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, receives the data with transfer circuitry connected to multiple channels and channel data transfer circuitry. It also couples channel data transfer circuitry to a data buffer and the second detection circuit, and transfer circuitry is coupled to error detection memory.

Claim 39

Original Legal Text

39. The method of claim 36 , wherein receiving includes receiving with the data transfer circuitry coupled to more than one channel and to a channel processor and a channel memory.

Plain English Translation

The memory controller operation that receives data from the memory interface with corresponding error detection data, using transfer circuitry connected to the memory interface and both the first and second error detection circuits, and then transfers data and corresponding detection data to the first error detection circuit calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, uses transfer circuitry coupled to multiple channels, a channel processor, and channel memory.

Claim 40

Original Legal Text

40. The method of claim 28 , wherein the method includes processing, with encryption circuitry coupled to a host buffer that is coupled to the host interface, the data optionally for providing an encrypted output.

Plain English Translation

The memory controller operation calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, includes optionally encrypting the data with encryption circuitry connected to a host buffer that is connected to the host interface.

Claim 41

Original Legal Text

41. The method of claim 40 , wherein processing includes processing with the encryption circuitry comprising an advanced encryption standard (AES) engine.

Plain English Translation

The memory controller operation optionally encrypting the data with encryption circuitry connected to a host buffer that is connected to the host interface with calculating error detection data for data received from a host interface using a first error detection circuit, checking integrity of data transmitted to the host, calculating error correction data for data transmitted to a memory interface using a second error detection circuit and any pre-existing error detection data, and checking integrity of data received from the memory interface, uses an Advanced Encryption Standard (AES) engine as the encryption circuitry.

Claim 42

Original Legal Text

42. A method for operating a memory controller, comprising: calculating, with front end error detection circuitry coupled to a host interface, first error detection data for corresponding data; calculating, with back end error detection circuitry coupled to a memory interface, second error detection data for the corresponding data; and comparing, with the back end error detection circuitry, the first error detection data with the second error detection data to check integrity of the corresponding data.

Plain English Translation

A method for operating a memory controller calculates first error detection data for corresponding data using front-end error detection circuitry connected to a host interface, calculates second error detection data for the same data using back-end error detection circuitry connected to a memory interface, and compares the two sets of data using the back-end circuitry to verify data integrity.

Claim 43

Original Legal Text

43. The method of claim 42 , wherein the method includes: transferring the first error detection data from the front end error detection circuitry to a back end error detection memory via data transfer circuitry coupled to the front end error detection circuitry and to the back end error detection memory; and comparing, with the back end error detection circuitry, the first error detection data from the error detection memory with the second error detection data to check integrity of the corresponding data.

Plain English Translation

The memory controller operation calculating first error detection data for corresponding data using front-end error detection circuitry connected to a host interface, calculating second error detection data for the same data using back-end error detection circuitry connected to a memory interface, and comparing the two sets of data using the back-end circuitry to verify data integrity, includes transferring the first error data from the front-end circuitry to back-end memory using data transfer circuitry, and then comparing the two sets of data using the back-end circuitry.

Claim 44

Original Legal Text

44. The method of claim 42 , wherein: the front end error detection circuitry comprises a cyclic redundancy check (CRC) engine; the back end error detection circuitry comprises a CRC engine; and the method includes calculating, with an error correction code (ECC) engine coupled to the back end error detection circuitry and to the memory interface, error correction data from the corresponding data.

Plain English Translation

The memory controller operation calculating first error detection data for corresponding data using front-end error detection circuitry connected to a host interface, calculating second error detection data for the same data using back-end error detection circuitry connected to a memory interface, and comparing the two sets of data using the back-end circuitry to verify data integrity, utilizes Cyclic Redundancy Check (CRC) engines for both front and back-end circuitry, and calculates error correction data using ECC coupled to the back-end and the memory interface.

Claim 45

Original Legal Text

45. The method of claim 44 , wherein the method includes transferring the error correction data and the corresponding data across the memory interface without the first and/or the second error detection data.

Plain English Translation

The memory controller operation calculating first error detection data for corresponding data using front-end error detection circuitry connected to a host interface, calculating second error detection data for the same data using back-end error detection circuitry connected to a memory interface, and comparing the two sets of data using the back-end circuitry to verify data integrity with Cyclic Redundancy Check (CRC) engines for both front and back-end circuitry, and calculating error correction data using ECC coupled to the back-end and the memory interface, transfers ECC data and corresponding data across the memory interface without transferring the detection data.

Claim 46

Original Legal Text

46. The method of claim 42 , wherein: the corresponding data comprises a direct memory access (DMA) payload; calculating, with the front end error detection circuitry, comprises calculating first error detection data per sector of the DMA payload; and calculating, with the back end error detection circuitry, comprises calculating second error detection data per sector of the DMA payload.

Plain English Translation

The memory controller operation calculating first error detection data for corresponding data using front-end error detection circuitry connected to a host interface, calculating second error detection data for the same data using back-end error detection circuitry connected to a memory interface, and comparing the two sets of data using the back-end circuitry to verify data integrity, handles Direct Memory Access (DMA) payloads and calculates the first and second data on a per-sector basis.

Claim 47

Original Legal Text

47. A method for operating a memory system, comprising: calculating, with front end error detection circuitry in a memory controller coupled to one or more solid state memory devices, first error detection data for a sector of data; calculating, with back end error detection circuitry in the memory controller, second error detection data for the sector of data; checking integrity, with back end error detection circuitry, of the sector of data; storing the sector of data without the first and/or the second error detection data in the one or more solid state memory devices.

Plain English Translation

A method for operating a memory system with a memory controller connected to solid-state memory devices involves calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data.

Claim 48

Original Legal Text

48. The method of claim 47 , wherein the method includes comparing, with the back end error detection circuitry comprising a cyclic redundancy check (CRC) engine, the first error detection data with the second error detection data to check integrity of the sector of data.

Plain English Translation

The memory system operation calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, uses a CRC in the back-end circuitry to compare both sets of error data and ensure integrity.

Claim 49

Original Legal Text

49. The method of claim 47 , wherein operating the memory system includes operating a physical interface coupled to a host interface of the memory controller.

Plain English Translation

The memory system operation calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, also involves operating a physical interface connected to the host interface of the memory controller.

Claim 50

Original Legal Text

50. The method of claim 49 , wherein the front end error detection circuitry comprises a cyclic redundancy check (CRC) engine coupled to the host interface by a link layer and/or a transport layer.

Plain English Translation

The memory system operation including operating a physical interface connected to the host interface of the memory controller with calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, utilizes a CRC in the front-end circuitry and is connected via a link or transport layer.

Claim 51

Original Legal Text

51. The method of claim 49 , wherein the physical interface comprises a serial interface selected from the group of serial interfaces including: universal serial bus (USB); serial advanced technology attachment (SATA); and peripheral component interconnect express (PCIe).

Plain English Translation

The memory system operation including operating a physical interface connected to the host interface of the memory controller with calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, and utilizes a serial interface for the physical layer such as USB, SATA, or PCIe.

Claim 52

Original Legal Text

52. The method of claim 47 , wherein the method includes calculating, with an error correction code (ECC) engine coupled to the back end error detection circuitry and to a memory interface, error correction data for the sector of data.

Plain English Translation

The memory system operation calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, also calculates error correction data with an ECC connected to both the back-end and the memory interface.

Claim 53

Original Legal Text

53. The method of claim 52 , wherein storing comprises storing the sector of data and the error correction data without the error detection data in the one or more solid state memory devices when the first error detection data matches the second error detection data.

Plain English Translation

The memory system operation that also calculates error correction data with an ECC connected to both the back-end and the memory interface with calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, stores the data sector and ECC data in memory but not the error detection data, if the two data sets match.

Claim 54

Original Legal Text

54. The method of claim 47 , wherein the method includes comparing, with the front end error detection circuitry, the first error detection data with the second error detection data to check integrity of the sector of data.

Plain English Translation

The memory system operation calculating first error detection data for a data sector using front-end circuitry in the controller, calculating second error detection data for the sector using back-end circuitry, verifying the sector's integrity using the back-end circuitry, and storing the data sector in memory without storing either set of error detection data, compares both sets of error data in the front-end circuitry.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

February 18, 2009

Publication Date

June 18, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Data integrity in memory controllers and methods” (US-8468417). https://patentable.app/patents/US-8468417

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-8468417. See llms.txt for full attribution policy.