IP Library Granted Patent US 10,447,316
Granted Patent B2
US 10,447,316 · App. 14/423,343 · Granted Oct 15, 2019

Apparatuses and methods for pipelining memory operations with error correction coding

Inventors: Wei Bing Shang (Shanghai, CN); Yu Zhang (Shanghai, CN); Hong Wen Li (Shanghai, CN); Yu Peng Fan (Shanghai, CN); Zhong Lai Liu (Shanghai, CN); En Peng Gao (Shanghai, CN); Liang Zhang (Shanghai, CN)
Assignee: Micron Technology, Inc.
H03M13/45G06F9/38H03M13/611
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,447,316
App. No.
14/423,343
Granted
Oct 15, 2019
Kind
B2
Abstract

Apparatuses and methods for pipelining memory operations with error correction coding are disclosed. A method for pipelining consecutive write mask operations is disclosed wherein a second read operation of a second write mask operation occurs during error correction code calculation of a first write mask operation. The method may further including writing data from the first write mask operation during the error correction code calculation of the second write mask operation. A method for pipelining consecutive operations is disclosed where a first read operation may be cancelled if the first operation is not a write mask operation. An apparatus including a memory having separate global read and write input-output lines is disclosed.

Claims (62)

1. A method, comprising:

executing a first read operation in a memory to read first read data;

determining errors in the first read data;

correcting the errors in the first read data;

pre-charging a local input-output line after the first read operation has executed;

executing a second read operation in the memory to read second read data during the determining of the errors in the first read data;

merging the corrected first read data with first write data to provide first merged data;

calculating a first new error correction code for the first merged data;

executing a first write operation to write the first merged data in the memory;

determining errors in the second read data during the merging of the corrected first read data with the first write data;

correcting the errors in the second read data;

merging the corrected second read data with second write data to provide second merged data;

calculating a second new error correction code for the second merged data; and

executing a second write operation to write the second merged data in the memory.

2. The method of claim 1 , wherein writing the first merged data in the memory is completed before the determining of the errors in the second read data.

3. The method of claim 1 , further comprising pre-charging the local input-output line after the second write operation has executed.

4. The method of claim 1 , further comprising:

pre-charging the local input-output line after the second read operation has executed; and

executing a third read operation in the memory to read third data during the determining of the errors in the second read data.

5. The method of claim 1 , wherein the first and second new error correction codes are stored at first and second addresses in the memory, respectively.

6. The method of claim 1 , further comprising storing the first and second new error correction codes in error control code circuit.

7. A method, comprising:

receiving a first data signal at a memory;

reading first read data from a first address in the memory;

calculating a first error correction code for the first read data;

merging data from the first data signal with the first read data to generate first new data;

calculating a first new error correction code for the first new data;

receiving a second data signal at the memory;

reading second read data from a second address in the memory during the calculating of the first new error correction code for the first new data;

calculating a second error correction code for the second read data;

merging data from the second data signal with the second read data to generate second new data;

calculating a second new error correction code for the second new data;

writing the first new data to the first address in the memory; and

writing the second new data to the second address in the memory.

8. The method of claim 7 , wherein writing the first new data to the first address in the memory occurs after reading the second read data from a second address in the memory.

9. The method of claim 7 , wherein reading the first read data from the first address in memory occurs during receiving the first data signal.

10. The method of claim 7 , further comprising receiving a first write command and receiving a second write command, and wherein the reading of the first read data from a first address in the memory occurs after receiving the second write command.

11. The method of claim 7 , wherein a time period between reading first read data from the first address in the memory and writing the first new data to the first address in the memory is based, at least in part on completion of calculating the first new error correction code for the first new data.

12. The method of claim 10 , wherein reading the first read data from the first address in the memory is triggered by a clock signal received at the memory.

13. A method, comprising:

receiving a first write command at a memory;

receiving a second write command at the memory;

receiving a first data signal at the memory;

receiving a first mask data signal at the memory;

executing a first read operation at a first address in the memory after the first data signal and the first mask data signal have been received;

calculating a first error correction code for data read from the first address;

merging data from the first data signal with the data read from the first address to generate first new data;

calculating a first new error correction code for the first new data;

receiving a second data signal at the memory;

receiving a second mask data signal at the memory;

executing a second read operation at a second address in the memory;

calculating a second error correction code for data read from the second address;

merging data from the second data signal with the data read from the second address to generate second new data;

calculating a second new error correction code for the second new data;

executing a first write operation at the first address to store the first new data; and

executing a second write operation at the second address to store the second new data.

14. The method of claim 13 , further comprising cancelling the first read operation at the first address if the first mask data signal is not received.

15. The method of claim 13 , wherein executing the first read operation is triggered by a clock signal received at the memory.

16. The method of claim 15 , wherein executing the second read operation is triggered by the first read operation.

17. The method of claim 15 , wherein receiving the first data signal at the memory occurs after a desired number of clock cycles provided by the clock signal after receiving the first write command.

18. The method of claim 13 , wherein executing the first and second write operations are triggered by completion of calculating the first new error correction code and the second new error correction code for the first and second new data, respectively.

19. The method of claim 13 , wherein the data read from the second address is received before the second data signal is received at the memory.

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 Feb 23, 2015
From: SHANG, WEI BING; ZHANG, YU; LI, HONG WEN; FAN, YU PENG; LIU, ZHONG LAI; GAO, EN PENG; ZHANG, LIANG
To: MICRON TECHNOLOGY, INC.
Reel/Frame 035008/0178 →
Cited By (2)
US 12,500,610 US 12,625,822