-
公开(公告)号:US20210358540A1
公开(公告)日:2021-11-18
申请号:US16875281
申请日:2020-05-15
Applicant: Advanced Micro Devices, Inc.
Inventor: Kevin M. Brandl , Kedarnath Balakrishnan , Jing Wang , Guanhao Shen
IPC: G11C11/406
Abstract: A memory controller interfaces with a dynamic random access memory (DRAM) over a memory channel. A refresh control circuit monitors an activate counter which counts a rolling number of activate commands sent over the memory channel to a memory region of the DRAM. In response to the activate counter being above an intermediate management threshold value, the refresh control circuit only issue a refresh management (RFM) command if there is no REF command currently held at the refresh command circuit for the memory region.
-
公开(公告)号:US20210200468A1
公开(公告)日:2021-07-01
申请号:US16730092
申请日:2019-12-30
Applicant: Advanced Micro Devices, Inc.
Inventor: Jing Wang , James R. Magro , Kedarnath Balakrishnan
IPC: G06F3/06
Abstract: Memory access commands are placed in a memory interface queue and transmitted from the memory interface queue to a heterogeneous memory channel coupled to a volatile dual in-line memory module (DIMM) and a non-volatile DIMM. Selected memory access commands that are placed in the memory interface queue are stored in a replay queue. The non-volatile reads that are placed in the memory interface queue are in a non-volatile command queue (NV queue). The method detects, based on information received over the heterogeneous memory channel, that an error has occurred requiring a recovery sequence. In response to the error, the method initiates the recovery sequence including (i) transmitting selected memory access commands that are stored in the replay queue, and (ii) transmitting non-volatile reads that are stored in the NV queue.
-
43.
公开(公告)号:US10535393B1
公开(公告)日:2020-01-14
申请号:US16041778
申请日:2018-07-21
Applicant: Advanced Micro Devices, Inc.
Inventor: Kedarnath Balakrishnan
IPC: G11C11/406 , G11C11/409
Abstract: An electronic device including a memory functional block having multiple ranks of memory and a memory controller functional block coupled to the memory. The memory controller includes refresh logic that detects, based on buffered memory accesses for each rank of memory of the ranks of memory, two or more ranks of memory for which a refresh is to be performed during a refresh interval. Based at least in part on one or more properties of buffered memory accesses for the two or more ranks of memory, the refresh logic determines a refresh order for performing refreshes for the two or more ranks of memory during the refresh interval. The memory controller then performs, in the refresh order, refreshes for the two or more ranks of memory during the refresh interval.
-
公开(公告)号:US20180018291A1
公开(公告)日:2018-01-18
申请号:US15211815
申请日:2016-07-15
Applicant: Advanced Micro Devices, Inc.
Inventor: James R. Magro , Kedarnath Balakrishnan , Jackson Peng , Hideki Kanayama
Abstract: In one form, a memory controller includes a command queue and an arbiter. The command queue receives and stores memory access requests. The arbiter includes a plurality of sub-arbiters for providing a corresponding plurality of sub-arbitration winners from among the memory access requests during a controller cycle, and for selecting among the plurality of sub-arbitration winners to provide a plurality of memory commands in a corresponding controller cycle. In another form, a data processing system includes a memory accessing agent for providing memory accesses requests, a memory system, and the memory controller coupled to the memory accessing agent and the memory system.
-
公开(公告)号:US20240370387A1
公开(公告)日:2024-11-07
申请号:US18772708
申请日:2024-07-15
Applicant: ADVANCED MICRO DEVICES, INC.
Inventor: James R. Magro , Kedarnath Balakrishnan , BRENDAN T. MANGAN
IPC: G06F13/16 , G06F9/30 , G06F12/02 , G06F12/1009
Abstract: A memory controller includes a memory channel controller that uses multiple groups of command queue and arbiter pairs. Each arbiter is coupled to a respective command queue to select memory access commands from each command queue according to predetermined criteria. Each arbiter selects from among the memory access requests in each command queue independently based on the predetermined criteria and sends selected memory access requests to a selector that serves as a second level arbiter which sends the request to a memory subchannel.
-
公开(公告)号:US20230325326A1
公开(公告)日:2023-10-12
申请号:US17714596
申请日:2022-04-06
Applicant: Advanced Micro Devices, Inc.
Inventor: Kedarnath Balakrishnan
CPC classification number: G06F12/1408 , G06F2212/1052 , H04L9/0631
Abstract: A memory controller includes encryption circuits for encrypting write data to be written to an address in a RAM memory. A tweak value is provided based at least on the address. The tweak value is encrypted with Advanced Encryption Standard (AES) encryption using a first key. A first block write data is encrypted by manipulating it based on the encrypted tweak value, AES encrypting with a second key, and then manipulating the result based on the encrypted tweak value again. For subsequent blocks of write data, the encrypted tweak value is modified, and a similar operation is performed.
-
公开(公告)号:US11748034B2
公开(公告)日:2023-09-05
申请号:US17409099
申请日:2021-08-23
Applicant: Advanced Micro Devices, Inc.
Inventor: James R. Magro , Kedarnath Balakrishnan
CPC classification number: G06F3/0659 , G06F3/0611 , G06F3/0679
Abstract: A memory controller selects from among a plurality of memory access commands including volatile memory reads, volatile memory writes, non-volatile memory reads, and non-volatile memory writes. The selected memory access commands are transmitted to a heterogenous memory channel coupled to a non-volatile memory and a volatile memory. The non-volatile read commands that are transmitted are stored in a non-volatile command queue (NV queue). A ready response is received from the non-volatile memory indicating that responsive data is available for an associated one of the non-volatile read commands. In response to receiving the ready response, a send command is transmitted for commanding the non-volatile memory to send the responsive data.
-
公开(公告)号:US20230125792A1
公开(公告)日:2023-04-27
申请号:US18084350
申请日:2022-12-19
Applicant: Advanced Micro Devices, Inc.
Inventor: Jing Wang , James R. Magro , Kedarnath Balakrishnan
Abstract: A memory controller includes a command queue, a memory interface queue, at least one storage queue, and a replay control circuit. The command queue has a first input for receiving memory access commands. The memory interface queue receives commands selected from the command queue and couples to a heterogeneous memory channel which is coupled to at least one non-volatile storage class memory (SCM) module. The at least one storage queue stores memory access commands that are placed in the memory interface queue. The replay control circuit detects that an error has occurred requiring a recovery sequence, and in response to the error, initiates the recovery sequence. In the recovery sequence, the replay control circuit transmits selected memory access commands from the at least one storage queue by grouping non-volatile read commands together separately from all pending volatile reads, volatile writes, and non-volatile writes.
-
公开(公告)号:US11526278B2
公开(公告)日:2022-12-13
申请号:US15851414
申请日:2017-12-21
Applicant: Advanced Micro Devices, Inc.
Inventor: Guanhao Shen , Ravindra N. Bhargava , James Raymond Magro , Kedarnath Balakrishnan , Kevin M. Brandl
IPC: G06F3/06
Abstract: Systems, apparatuses, and methods for performing efficient memory accesses for a computing system are disclosed. In various embodiments, a computing system includes one or more computing resources and a memory controller coupled to a memory device. The memory controller determines a memory access request targets a given bank of multiple banks. An access history is updated for the given bank based on whether the memory access request hits on an open page within the given bank and a page hit rate for the given bank is determined. The memory controller sets an idle cycle limit based on the page hit rate. The idle cycle limit is a maximum amount of time the given bank will be held open before closing the given bank while the bank is idle. The idle cycle limit is based at least in part on a page hit rate for the bank.
-
公开(公告)号:US20220317923A1
公开(公告)日:2022-10-06
申请号:US17218676
申请日:2021-03-31
Applicant: Advanced Micro Devices, Inc.
Inventor: Kedarnath Balakrishnan
IPC: G06F3/06
Abstract: A memory controller includes an arbiter for selecting memory requests from a command queue for transmission to a DRAM memory. The arbiter includes a bank group tracking circuit that tracks bank group numbers of three or more prior write requests selected by the arbiter. The arbiter also includes a selection circuit that selects requests to be issued from the command queue, and prevents selection of write requests and associated activate commands to the tracked bank group numbers unless no other write request is eligible in the command queue. The bank group tracking circuit indicates that a prior write request and associated activate commands are eligible to be issued after a number of clock cycles has passed corresponding to a minimum write-to-write timing period for the bank group of the prior write request.
-
-
-
-
-
-
-
-
-