IP Library › Granted Patent US 12,461,819
Granted Patent B2
US 12,461,819 · App. 18/490,478 · Granted Nov 4, 2025

Apparatus and methods for memory data integrity within die architectures

Inventors: Subham Panda (Balasore, IN); Nileshkumar Chandrakantbhai Motawala (Surat, IN); Radhakrishna Mugada (Hyderabad, IN); Sri Ananda Sai Jannabhatla (Hyderabad, IN); Muzaffaruddin Mohammed (Hyderabad, IN); Jyothi Ramidi (Hyderabad, IN); Venkatesh Petnikota (Kurnool, IN)
Assignee: Qualcomm Incorporated
G06F11/1076H03M13/00
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 12,461,819
App. No.
18/490,478
Granted
Nov 4, 2025
Kind
B2
Abstract

Methods and apparatuses directed to improving performance and data integrity within die architectures. In some examples, a die package includes a memory device, and a processor coupled to the memory device. The memory device may serve as a cache for another memory device. The processor receives a signal indicating that a number of errors have been detected. In response to the signal, the processor reads an error count corresponding to each of multiple memory rows of the memory device. Further, the processor determines a first memory row of the memory rows based on the error counts. The processor also determines a second memory row of the memory rows based on access data characterizing memory accesses of the plurality of rows. The processor further writes data stored at the first memory row to the second memory row of the memory device, and disables the first memory row.

Claims (62)

1 . A die comprising:

a row decoding logic coupled to a memory array and configured to:

receive address data; and

generate a row selection signal;

a row error count buffer configured to maintain an error count for each row of the memory array; and

a processor configured to write data stored at a first memory row of the memory array to a second memory row of the memory array.

2 . The die of claim 1 , wherein the processor is configured to:

receive a signal indicating that decoding errors have been detected;

in response to the signal, read an error count for each row of the memory array from the row error count buffer;

determine the first memory row of the memory array based on the error counts; and

determine the second memory row of the memory array based on access data characterizing memory accesses of the rows of the memory array.

3 . The die of claim 2 comprising decoding logic, wherein the decoding logic is configured to generate the signal in response to determining a number of error correcting code errors over a time interval.

4 . The die of claim 3 , wherein the decoding logic is configured to:

compare the number of error correcting code errors to a threshold error value;

determine, based on the comparison, that the number of error correcting code errors are greater than or equal to the threshold error value; and

generate the signal in response to the determination.

5 . The die of claim 1 , wherein the processor is configured to disable the first memory row.

6 . The die of claim 5 , wherein the processor is configured to enable the first memory row after a predetermined amount of time.

7 . The die of claim 1 , wherein the processor is configured to:

determine a greatest error count from the error counts; and

determine the first memory row based on the greatest error count.

8 . The die of claim 1 , wherein the processor is configured to determine a mapping of the error counts to each of row of the memory array based on a hashing filter.

9 . The die of claim 8 , wherein the processor is configured to:

receive a memory address;

receive a second signal indicating that an error correcting code error has been detected;

apply the hashing filter to the memory address to determine a corresponding row of the memory array; and

increment the error count within the row error count buffer for the corresponding row of the memory array.

10 . The die of claim 1 , wherein the processor is configured to:

compare the error count for the first memory row to a threshold error count; and

determine the error count is greater than or equal to the threshold error count.

11 . The die of claim 1 , wherein the processor is configured to:

read access data for each row of the memory array from an access buffer;

determine, based on the access data, a least recent memory access of the rows of the memory array; and

determine the second memory row based on the least recent memory access.

12 . The die of claim 11 , wherein the access buffer is a circular buffer, and wherein the processor is configured to determine the least recent memory access based on a position of the access data within the circular buffer.

13 . The die of claim 1 , wherein the data stored at the first memory row comprises tag data and user data.

14 . A method by a processor comprising:

receiving a signal indicating that decoding errors have been detected;

in response to the signal, receiving an error count corresponding to each of a plurality of memory rows of a memory device;

determining a first memory row of the plurality of memory rows based on the error counts;

determining a second memory row of the plurality of memory rows based on access data characterizing memory accesses of the plurality of memory rows; and

writing data stored at the first memory row to the second memory row of the memory device.

15 . The method of claim 14 , further comprising disabling the first memory row.

16 . The method of claim 15 , further comprising enabling the first memory row after a predetermined amount of time.

17 . The method of claim 14 , further comprising:

determining a greatest error count from the error counts; and

determining the first memory row based on the greatest error count.

18 . The method of claim 14 , further comprising:

comparing the error count for the first memory row to a threshold error count; and

determining the error count is greater than or equal to the threshold error count.

19 . The method of claim 14 , further comprising:

reading the access data for each of the plurality of memory rows from an access buffer;

determining, based on the access data, a least recent memory access of the plurality of memory rows; and

determining the second memory row based on the least recent memory access.

20 . A die package comprising:

a memory device; and

a processor communicatively coupled to the memory device, the processor configured to:

receive a signal indicating that decoding errors have been detected;

in response to the signal, receive an error count corresponding to each of a plurality of memory rows of the memory device;

determine a first memory row of the plurality of memory rows based on the error counts;

determine a second memory row of the plurality of memory rows based on access data characterizing memory accesses of the plurality of memory rows; and

write data stored at the first memory row to the second memory row of the memory device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2023
From: PANDA, SUBHAM; MOTAWALA, NILESHKUMAR CHANDRAKANTBHAI; MUGADA, RADHAKRISHNA; JANNABHATLA, SRI ANANDA SAI; MOHAMMED, MUZAFFARUDDIN; RAMIDI, JYOTHI; PETNIKOTA, VENKATESH
To: QUALCOMM INCORPORATED
Reel/Frame 065737/0886 →
Continuity (1)
Related Publication 20250130898A1 · Apr 24, 2025
References Cited (7)
US 6967878B2 · Dono · 2005 [cited by examiner]
US 9489263B2 · Hyun · 2016 [cited by examiner]
US 9502128B2 · Lee · 2016 [cited by examiner]
US 10811078B2 · Cha · 2020 [cited by examiner]
US 11626181B2 · Kim · 2023 [cited by examiner]
US 11907062B2 · Choi · 2024 [cited by examiner]
US 11955159B2 · Cho · 2024 [cited by examiner]