IP Library › Granted Patent US 12,474,855
Granted Patent B2
US 12,474,855 · App. 18/187,900 · Granted Nov 18, 2025

Duplicating memory content with chipset attached memory

Inventors: William Robert Alverson (Del Valle, TX); Jerry Anton Ahrens (Sister Bay, WI); Anil Harwani (Austin, TX); Joshua Taylor Knight (Georgetown, TX); Grant Evan Ley (Eden, UT); Amitabh Mehra (Fort Collins, CO)
Assignee: Advanced Micro Devices, Inc.
G06F3/065G06F3/0619G06F3/0631G06F3/0683
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,474,855
App. No.
18/187,900
Granted
Nov 18, 2025
Kind
B2
Abstract

Duplicating memory content with chipset attached memory is described. In accordance with the described techniques, contents of a system memory are duplicated on a chipset attached memory over a chipset link. Memory requests are serviced using the contents of the system memory and the contents on the chipset attached memory. Servicing the memory requests includes servicing a first portion of a read request using the contents of the system memory and a second, remaining portion of the read request using the contents on the chipset attached memory. Servicing the memory requests further includes communicating a write request to the system memory and to the chipset attached memory.

Claims (46)

1 . An apparatus comprising:

a system memory attached to a first memory controller;

a chipset attached memory connected to the system memory via a southbridge; and

a second memory controller attached to the chipset attached memory to:

obtain contents of the system memory;

duplicate the contents of the system memory on the chipset attached memory over a chipset link; and

service memory requests using the contents of the system memory and the contents on the chipset attached memory in parallel.

2 . The apparatus of claim 1 , wherein to service the memory requests using the contents of the system memory and the contents on the chipset attached memory, the second memory controller is further configured to:

service a first portion of a read request using the contents of the system memory; and

service a second, remaining portion of the read request using the contents of the chipset attached memory.

3 . The apparatus of claim 1 , wherein to service the memory requests using the contents of the system memory and the contents on the chipset attached memory, the second memory controller is further configured to communicate a write request to the system memory and to the chipset attached memory.

4 . The apparatus of claim 1 , wherein the second memory controller duplicates the contents of the system memory on the chipset attached memory over the chipset link in response to receiving a request for a mirrored memory configuration.

5 . The apparatus of claim 1 , wherein the second memory controller is further configured to dynamically allocate and deallocate portions of the system memory and the chipset attached memory for storing the contents.

6 . The apparatus of claim 5 , wherein the second memory controller is configured to dynamically allocate and deallocate the portions of the system memory and the chipset attached memory for storing the contents in response to receiving an indication of at least one of a physical adjustment to the system memory or the chipset attached memory, a retraining of the system memory or the chipset attached memory, and a resetting of the system memory or the chipset attached memory.

7 . The apparatus of claim 1 , further comprising a processing unit, and wherein the memory requests are received by the second memory controller from one or more applications executing on the processing unit.

8 . The apparatus of claim 7 , wherein the processing unit is configured to execute one or more tasks of an operating system or the one or more applications using the contents on the chipset attached memory while the system memory is unavailable.

9 . The apparatus of claim 1 , wherein the second memory controller is further configured to identify corrupted data in the system memory based on discrepancies between a first read data stream from a memory section of the system memory and a second read data stream from a corresponding memory section of the chipset attached memory.

10 . The apparatus of claim 9 , wherein the second memory controller is further configured to correct the corrupted data by writing data from the corresponding memory section of the chipset attached memory to the memory section of the system memory.

11 . The apparatus of claim 1 , wherein the system memory comprises a type of random-access memory (RAM).

12 . The apparatus of claim 1 , wherein the chipset attached memory comprises dynamic random-access memory (DRAM) or non-volatile random-access memory (NVRAM).

13 . A method comprising:

obtaining contents of a system memory attached to a first memory controller;

writing duplicate contents of the system memory to a chipset attached memory that is attached to a second memory controller and is connected to the system memory via a southbridge;

servicing read requests, received from one or more applications, using the contents of the system memory and the duplicate contents of the chipset attached memory in parallel; and

storing write requests to the contents of the system memory and to the duplicate contents of the chipset attached memory.

14 . The method of claim 13 , wherein the writing the duplicate contents of the system memory to the chipset attached memory is performed over a chipset link in response to a request for a mirrored memory configuration.

15 . The method of claim 13 , further comprising dynamically allocating and deallocating portions of the system memory and the chipset attached memory for storing the contents and the duplicate contents, respectively.

16 . The method of claim 13 , wherein the servicing the read requests, received from the one or more applications, using the contents of the system memory and the duplicate contents of the chipset attached memory in parallel comprises:

servicing a first portion of the read requests using the contents of the system memory; and

while servicing the first portion of the read requests using the contents of the system memory, servicing a second, remaining portion of the read requests using the duplicate contents of the chipset attached memory.

17 . The method of claim 13 , further comprising:

executing, via a processing unit, one or more tasks of an operating system or an application using the duplicate contents of the chipset attached memory in response to an indication that the system memory is unavailable.

18 . A system comprising:

a system memory attached to a first memory controller and configured to store contents;

a chipset attached memory attached to a second memory controller and connected to the system memory via a southbridge to store the contents of the system memory in a mirrored manner; and

a processing unit to:

execute one or more tasks of an operating system using the contents of the system memory in response to a first indication that the system memory is available for servicing memory requests; and

continue executing the one or more tasks using the contents of the chipset attached memory in response to a second indication that the system memory is not available for servicing the memory requests.

19 . The system of claim 18 , further comprising a chipset link, and wherein the chipset attached memory is separate from the system memory and communicates with the processing unit via the chipset link.

20 . The system of claim 18 , wherein the second memory controller is configured to:

in response to the first indication that the system memory is available for servicing the memory requests:

communicate a first portion of a read request to the system memory and a second portion of the read request to the chipset attached memory over a chipset link; and

communicate a write request to the system memory and to the chipset attached memory over the chipset link; and

in response to the second indication that the system memory is not available for servicing the memory requests:

communicate the first portion and the second portion of the read request to the chipset attached memory over the chipset link; and

communicate the write request to the chipset attached memory over the chipset link.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2023
From: ALVERSON, WILLIAM ROBERT; AHRENS, JERRY ANTON; HARWANI, ANIL; KNIGHT, JOSHUA TAYLOR; LEY, GRANT EVAN; MEHRA, AMITABH
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 063437/0513 →
Continuity (1)
Related Publication 20240319903A1 · Sep 26, 2024
References Cited (90)
US 6295591B1 · Bealkowski et al. · 2001 [cited by applicant]
US 6467048B1 · Olarig et al. · 2002 [cited by applicant]
US 6714891B2 · Dendinger · 2004 [cited by applicant]
US 9886987B1 · Brahmadathan et al. · 2018 [cited by applicant]
US 10691570B1 · Lui et al. · 2020 [cited by applicant]
US 11262924B2 · Alverson et al. · 2022 [cited by applicant]
US 11493389B2 · Horng et al. · 2022 [cited by applicant]
US 11720266B2 · Alverson et al. · 2023 [cited by applicant]
US 11740944B2 · Mehra et al. · 2023 [cited by applicant]
US 12399846B2 · Ahrens et al. · 2025 [cited by applicant]
US 20020010875A1 · Johnson et al. · 2002 [cited by applicant]
US 20020129186A1 · Emerson et al. · 2002 [cited by applicant]
US 20030074591A1 · Mcclendon et al. · 2003 [cited by applicant]
US 20030154428A1 · Pelner · 2003 [cited by applicant]
US 20030206050A1 · Huard et al. · 2003 [cited by applicant]
US 20030208650A1 · Depew et al. · 2003 [cited by applicant]
US 20030208654A1 · Krontz et al. · 2003 [cited by applicant]
US 20040133756A1 · Shaw et al. · 2004 [cited by applicant]
US 20040153723A1 · Depew · 2004 [cited by examiner]
US 20050283561A1 · Lee et al. · 2005 [cited by applicant]
US 20060136763A1 · Jorgenson et al. · 2006 [cited by applicant]
US 20060161375A1 · Duberstein et al. · 2006 [cited by applicant]
US 20080028236A1 · Capps et al. · 2008 [cited by applicant]
US 20080317086A1 · Santos et al. · 2008 [cited by applicant]
US 20090150660A1 · Yao et al. · 2009 [cited by applicant]
US 20100131221A1 · Chien · 2010 [cited by applicant]
US 20110131400A1 · Chiu et al. · 2011 [cited by applicant]
US 20130205130A1 · Hallowell et al. · 2013 [cited by applicant]
US 20130262728A1 · Wong · 2013 [cited by applicant]
US 20140032949A1 · Kim et al. · 2014 [cited by applicant]
US 20140159806A1 · Kim et al. · 2014 [cited by applicant]
US 20150063420A1 · Cho et al. · 2015 [cited by applicant]
US 20150242154A1 · Yang et al. · 2015 [cited by applicant]
US 20150378745A1 · He · 2015 [cited by examiner]
US 20160011802A1 · Berke · 2016 [cited by applicant]
US 20160179643A1 · Sun et al. · 2016 [cited by applicant]
US 20170160956A1 · Chinnakkonda et al. · 2017 [cited by applicant]
US 20170262388A1 · Lin · 2017 [cited by examiner]
US 20180088638A1 · Nguyen et al. · 2018 [cited by applicant]
US 20180107591A1 · Smith · 2018 [cited by applicant]
US 20180217005A1 · Kanodia · 2018 [cited by applicant]
US 20180253317A1 · Pan et al. · 2018 [cited by applicant]
US 20190310947A1 · Raisch et al. · 2019 [cited by applicant]
US 20190369683A1 · Vishnubhatla et al. · 2019 [cited by applicant]
US 20200065022A1 · Itagaki · 2020 [cited by examiner]
US 20210089461A1 · Choi et al. · 2021 [cited by applicant]
US 20210182121A1 · Mehra et al. · 2021 [cited by applicant]
US 20210255966A1 · Chen et al. · 2021 [cited by applicant]
US 20210326232A1 · Partiwala et al. · 2021 [cited by applicant]
US 20210349730A1 · Lee et al. · 2021 [cited by applicant]
US 20220155982A1 · Alverson et al. · 2022 [cited by applicant]
US 20220179756A1 · Fan et al. · 2022 [cited by applicant]
US 20220357855A1 · Narasingarayanapeta · 2022 [cited by examiner]
US 20230418590A1 · Gunyuzlu et al. · 2023 [cited by applicant]
US 20240211160A1 · Ahrens et al. · 2024 [cited by applicant]
US 20240211416A1 · Ahrens et al. · 2024 [cited by applicant]
US 20240319712A1 · Ahrens et al. · 2024 [cited by applicant]
US 20240330076A1 · Ahrens et al. · 2024 [cited by applicant]
US 20240330134A1 · Ahrens et al. · 2024 [cited by applicant]
CN 114780473A · 2022 [cited by applicant]
WO 2024144870A1 · 2024 [cited by applicant]
U.S. Appl. No. 16/711,875 , “Corrected Notice of Allowability”, U.S. Appl. No. 16/711,875, Apr. 27, 2023, 2 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Final Office Action”, U.S. Appl. No. 16/711,875, Sep. 2, 2021, 17 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Final Office Action”, U.S. Appl. No. 16/711,875, Oct. 27, 2022, 17 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Non-Final Office Action”, U.S. Appl. No. 16/711,875, Jan. 25, 2021, 16 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Non-Final Office Action”, U.S. Appl. No. 16/711,875, Feb. 17, 2022, 16 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Notice of Allowance”, U.S. Appl. No. 16/711,875, Apr. 14, 2023, 5 pages. [cited by applicant]
U.S. Appl. No. 17/591,924 , “Non-Final Office Action”, U.S. Appl. No. 17/591,924, Oct. 20, 2022, 12 pages. [cited by applicant]
U.S. Appl. No. 17/591,924 , “Notice of Allowance”, U.S. Appl. No. 17/591,924, Mar. 15, 2023, 5 pages. [cited by applicant]
Ahrens, Jerry Anton, et al., “US Application as Filed”, U.S. Appl. No. 18/187,848, filed Mar. 22, 2023, 44 pages. [cited by applicant]
Ahrens, Jerry Anton, et al., “US Application as Filed”, U.S. Appl. No. 18/190,664, filed Mar. 27, 2023, 37 pages. [cited by applicant]
Ahrens, Jerry Anton, et al., “US Application as Filed”, U.S. Appl. No. 18/190,521, filed Mar. 27, 2023, 45 pages. [cited by applicant]
Ahrens, Jerry Anton, et al., “US Application as Filed”, U.S. Appl. No. 18/146,929, filed Dec. 27, 2022, 42 pages. [cited by applicant]
Ahrens, Jerry Anton, et al., “US Application as Filed”, U.S. Appl. No. 18/146,920, filed Dec. 27, 2022, 43 pages. [cited by applicant]
U.S. Appl. No. 18/146,920 , “Final Office Action”, U.S. Appl. No. 18/146,920, Apr. 25, 2024, 15 pages. [cited by applicant]
U.S. Appl. No. 16/711,875 , “Corrected Notice of Allowability”, U.S. Appl. No. 16/711,875, Jun. 8, 2023, 4 pages. [cited by applicant]
U.S. Appl. No. 18/146,920 , “Non-Final Office Action”, U.S. Appl. No. 18/146,920, Jan. 26, 2024, 12 pages. [cited by applicant]
U.S. Appl. No. 18/146,929 , “Non-Final Office Action”, U.S. Appl. No. 18/146,929, Mar. 28, 2024, 24 pages. [cited by applicant]
PCT/US2023/036376 , “International Seach Report and Written Opinion”, PCT Application No. PCT/US2023/036376, Feb. 29, 2024, 8 pages. [cited by applicant]
“Corrected Notice of Allowability”, U.S. Appl. No. 18/146,920, May 7, 2025, 2 pages. [cited by applicant]
“Final Office Action”, U.S. Appl. No. 18/146,920, Nov. 22, 2024, 15 pages. [cited by applicant]
“Notice of Allowance”, U.S. Appl. No. 18/146,920, Apr. 23, 2025, 9 pages. [cited by applicant]
“FInal Office Action”, U.S. Appl. No. 18/146,929, Oct. 23, 2024, 26 pages. [cited by applicant]
“Final Office Action”, U.S. Appl. No. 18/190,664, Feb. 26, 2025, 13 pages. [cited by applicant]
“Non-Final Office Action”, U.S. Appl. No. 18/190,664, Nov. 13, 2024, 13 pages. [cited by applicant]
“Corrected Notice of Allowability”, U.S. Appl. No. 18/146,920, Jun. 3, 2025, 2 pages. [cited by applicant]
“Corrected Notice of Allowability”, U.S. Appl. No. 18/146,920, Jul. 29, 2025, 2 pages. [cited by applicant]
“Notice of Allowance”, U.S. Appl. No. 18/146,929, Aug. 29, 2025, 8 pages. [cited by applicant]
“Non-Final Office Action”, U.S. Appl. No. 18/187,848, Jun. 26, 2025, 20 pages. [cited by applicant]
“Non-Final Office Action”, U.S. Appl. No. 18/190,664, Jun. 24, 2025, 14 pages. [cited by applicant]