IP Library Granted Patent US 12,566,549
Granted Patent B2
US 12,566,549 · App. 18/773,320 · Granted Mar 3, 2026

Memory system with processor in memory (PIM)

Inventor: Jungwon Suh (San Diego, CA)
Assignee: Qualcomm Incorporated
G06F3/061G06F3/0659G06F3/0673
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,566,549
App. No.
18/773,320
Granted
Mar 3, 2026
Kind
B2
Abstract

A memory system includes a memory interface including a first sub-channel interface associated with a first plurality of memory banks and a first plurality of processor in memory (PIM) blocks and further including a second sub-channel interface associated with a second plurality of memory banks and a second plurality of PIM blocks. During a particular mode of operation associated with the memory system, the first sub-channel interface is configured to communicate, with a host device, one or more memory access commands associated with the first plurality of memory banks. During the particular mode of operation, the second plurality of PIM blocks are configured to perform, concurrently with communication of the one or more memory access commands, one or more PIM operations associated with the second plurality of memory banks. The second sub-channel interface is configured to be disabled during the particular mode of operation.

Claims (72)

1 . A memory system comprising:

a first plurality of memory banks;

a first plurality of processor in memory (PIM) blocks associated with the first plurality of memory banks;

a second plurality of memory banks;

a second plurality of PIM blocks associated with the second plurality of memory banks; and

a memory interface including a first sub-channel interface associated with the first plurality of memory banks and the first plurality of PIM blocks and further including a second sub-channel interface associated with the second plurality of memory banks and the second plurality of PIM blocks,

wherein, during a particular mode of operation associated with the memory system, the first sub-channel interface is configured to communicate one or more memory access commands with a host device, the one or more memory access commands associated with the first plurality of memory banks,

wherein, during the particular mode of operation, the second plurality of PIM blocks are configured to perform, concurrently with communication of the one or more memory access commands, one or more PIM operations associated with the second plurality of memory banks, and

wherein the second sub-channel interface is configured to be disabled during the particular mode of operation.

2 . The memory system of claim 1 , wherein the first plurality of PIM blocks is configured to perform, in accordance with a usage level associated with the first plurality of memory banks failing to exceed a threshold, first PIM operations concurrently with second PIM operations performed by the second plurality of PIM blocks.

3 . The memory system of claim 1 , wherein, during a first cycle of a sub-channel interleaving scheme corresponding to the particular mode of operation, the first plurality of memory banks are configured to perform memory access operations associated with the one or more memory access commands and the second plurality of PIM blocks are configured to perform PIM operations for the second plurality of memory banks.

4 . The memory system of claim 3 , wherein, during a second cycle of the sub-channel interleaving scheme, the second plurality of memory banks are configured to perform the memory access operations and the first plurality of PIM blocks are configured to perform the PIM operations for the first plurality of memory banks.

5 . The memory system of claim 3 , wherein, during the first cycle of the sub-channel interleaving scheme, the first sub-channel interface is further configured to receive the one or more memory access commands from the host device during execution of PIM commands from the host device.

6 . The memory system of claim 1 , further comprising a first plurality of memory dies associated with a first rank, wherein the first plurality of memory dies includes a first memory die and at least a second memory die, and wherein the first memory die includes the first sub-channel interface, the first plurality of memory banks, the first plurality of PIM blocks, the second sub-channel interface, the second plurality of memory banks, and the second plurality of PIM blocks.

7 . The memory system of claim 6 , further comprising a second plurality of memory dies associated with a second rank.

8 . The memory system of claim 7 , wherein the first rank of memory dies is homogeneous with respect to the second rank of memory dies.

9 . The memory system of claim 7 , wherein the first rank of memory dies is heterogeneous with respect to the second rank of memory dies.

10 . The memory system of claim 1 , wherein at least the first plurality of memory banks includes a partition reserved for PIM-related data.

11 . The memory system of claim 10 , wherein the partition reserved for the PIM-related data includes a first subset of the first plurality of memory banks and excludes a second subset of the first plurality of memory banks.

12 . The memory system of claim 10 , wherein the partition reserved for the PIM-related data includes, for each bank of the first plurality of memory banks, a first subset of rows of the memory bank and excludes a second subset of the rows of the memory bank.

13 . A method of operation of a memory system, comprising:

during a particular mode of operation associated with the memory system, communicating one or more memory access commands with a host device using a first sub-channel interface, the one or more memory access commands associated with a first plurality of memory banks of the memory system, the first plurality of memory banks associated with a first plurality of processor in memory (PIM) blocks;

during the particular mode of operation, performing, concurrently with communication of the one or more memory access commands, one or more PIM operations using a second plurality of PIM blocks associated with a second plurality of memory banks of the memory system, wherein a memory interface of the memory system includes the first sub-channel interface and a second sub-channel interface, and wherein the second sub-channel interface is disabled during the particular mode of operation; and

sending, during the particular mode of operation, results of the one or more PIM operations to the host device via the first sub-channel interface.

14 . The method of claim 13 , further comprising, in accordance with a usage level associated with the first plurality of memory banks failing to exceed a threshold, performing first PIM operations using the first plurality of PIM blocks concurrently with second PIM operations using the second plurality of PIM blocks.

15 . The method of claim 13 , further comprising:

during a first cycle of a sub-channel interleaving scheme:

performing, by the first plurality of memory banks, memory access operations associated with the one or more memory access commands; and

performing, by the second plurality of PIM blocks, PIM operations for the second plurality of memory banks.

16 . The method of claim 15 , further comprising:

during a second cycle of the sub-channel interleaving scheme:

performing, by the second plurality of memory banks, the memory access operations; and

performing, by the first plurality of PIM blocks, the PIM operations for the first plurality of memory banks.

17 . The method of claim 15 , further comprising:

during the first cycle of the sub-channel interleaving scheme, receiving the one or more memory access commands via the first sub-channel interface from the host device; and

during the first cycle of the sub-channel interleaving scheme, executing PIM commands from the host device.

18 . The method of claim 13 , wherein the first sub-channel interface is included in a first memory die of a plurality of memory dies associated with a first rank, the plurality of memory dies included in the memory system.

19 . The method of claim 18 , wherein the first sub-channel interface is coupled to another sub-channel interface of another memory die included in a second plurality of memory dies associated with a second rank.

20 . The method of claim 19 , wherein the first rank of memory dies is homogeneous with respect to the second rank of memory dies.

21 . The method of claim 19 , wherein the first rank of memory dies is heterogeneous with respect to the second rank of memory dies.

22 . The method of claim 13 , wherein at least the first plurality of memory banks includes a partition reserved for PIM-related data.

23 . The method of claim 22 , wherein the partition reserved for the PIM-related data includes a first subset of the first plurality of memory banks and excludes a second subset of the first plurality of memory banks.

24 . The method of claim 22 , wherein the partition reserved for the PIM-related data includes, for each bank of the first plurality of memory banks, a first subset of rows of the memory bank and excludes a second subset of the rows of the memory bank.

25 . An apparatus comprising:

a processing system including one or more processors and one or more memories, the processing system configured to:

during a particular mode of operation associated with a memory system, communicate one or more memory access commands with the memory system using a sub-channel physical (PHY) interface, the one or more memory access commands associated with a first plurality of memory banks of the memory system, the first plurality of memory banks associated with a first plurality of processor in memory (PIM) blocks; and

receive, during the particular mode of operation, results of one or more PIM operations via the sub-channel PHY interface, the one or more PIM operations performed concurrently with communication of the one or more memory access commands using a second plurality of PIM blocks associated with a second plurality of memory banks of the memory system.

26 . The apparatus of claim 25 , wherein the processing system is further configured to:

detect that a usage level associated with the first plurality of memory banks fails to exceed a threshold; and

in accordance with detecting that the usage level fails to exceed the threshold, initiate first PIM operations using the first plurality of PIM blocks concurrently with second PIM operations using the second plurality of PIM blocks.

27 . The apparatus of claim 25 , wherein the processing system is further configured to initiate, via the sub-channel PHY interface and during a first cycle of a sub-channel interleaving scheme, memory access operations associated with the one or more memory access commands at the first plurality of memory banks concurrently with performance of PIM operations by the second plurality of PIM blocks.

28 . The apparatus of claim 27 , wherein the processing system is further configured to initiate, via the sub-channel PHY interface and during a second cycle of the sub-channel interleaving scheme, the memory access operations at the second plurality of memory banks concurrently with performance of the PIM operations by the first plurality of PIM blocks.

29 . The apparatus of claim 27 , wherein the processing system is further configured to send, during the first cycle of the sub-channel interleaving scheme, the one or more memory access commands to the memory system during execution of PIM commands by the second plurality of PIM blocks.

30 . The apparatus of claim 25 , wherein the processing system is further configured to:

allocate a logical address space for an artificial intelligence (AI) engine; and

convert the logical address space to a physical address space that corresponds to a partition reserved for PIM-related data.

31 . The apparatus of claim 30 , wherein the partition reserved for the PIM-related data includes a first subset of the first plurality of memory banks and excludes a second subset of the first plurality of memory banks.

32 . The apparatus of claim 30 , wherein the partition reserved for the PIM-related data includes, for each bank of the first plurality of memory banks, a first subset of rows of the memory bank and excludes a second subset of the rows of the memory bank.

33 . A method of operation of a host device, comprising:

during a particular mode of operation associated with a memory system, communicating one or more memory access commands with the memory system using a sub-channel physical (PHY) interface, the one or more memory access commands associated with a first plurality of memory banks of the memory system, the first plurality of memory banks associated with a first plurality of processor in memory (PIM) blocks; and

receiving, during the particular mode of operation, results of one or more PIM operations via the sub-channel PHY interface, the one or more PIM operations performed concurrently with communication of the one or more memory access commands using a second plurality of PIM blocks associated with a second plurality of memory banks of the memory system.

34 . The method of claim 33 , further comprising:

detecting that a usage level associated with the first plurality of memory banks fails to exceed a threshold; and

in accordance with detecting that the usage level fails to exceed the threshold, initiating first PIM operations using the first plurality of PIM blocks concurrently with second PIM operations using the second plurality of PIM blocks.

35 . The method of claim 33 , further comprising initiating, via the sub-channel PHY interface and during a first cycle of a sub-channel interleaving scheme, memory access operations associated with the one or more memory access commands at the first plurality of memory banks concurrently with performance of PIM operations by the second plurality of PIM blocks.

36 . The method of claim 35 , further comprising initiating, via the sub-channel PHY interface and during a second cycle of the sub-channel interleaving scheme, the memory access operations at the second plurality of memory banks concurrently with performance of the PIM operations by the first plurality of PIM blocks.

37 . The method of claim 35 , further comprising sending, during the first cycle of the sub-channel interleaving scheme, the one or more memory access commands to the memory system during execution of PIM commands by the second plurality of PIM blocks.

38 . The method of claim 33 , further comprising:

allocating a logical address space for an artificial intelligence (AI) engine; and

converting the logical address space to a physical address space that corresponds to a partition reserved for PIM-related data.

39 . The method of claim 38 , wherein the partition reserved for the PIM-related data includes a first subset of the first plurality of memory banks and excludes a second subset of the first plurality of memory banks.

40 . The method of claim 38 , wherein the partition reserved for the PIM-related data includes, for each bank of the first plurality of memory banks, a first subset of rows of the memory bank and excludes a second subset of the rows of the memory bank.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2024
From: SUH, JUNGWON
To: QUALCOMM INCORPORATED
Reel/Frame 068135/0852 →
Continuity (1)
Related Publication 20260016957A1 · Jan 15, 2026
References Cited (11)
US 20150089112A1 · Lo et al. · 2015 [cited by applicant]
US 20200294558A1 · Yu et al. · 2020 [cited by applicant]
US 20200294575A1 · O et al. · 2020 [cited by applicant]
US 20210157516A1 · Niu et al. · 2021 [cited by applicant]
US 20210389907A1 · Alsop · 2021 [cited by examiner]
US 20230138048A1 · Kwon et al. · 2023 [cited by applicant]
US 20240070068A1 · Kim et al. · 2024 [cited by applicant]
US 20240103745A1 · Madan et al. · 2024 [cited by applicant]
US 20240103755A1 · Jeong et al. · 2024 [cited by applicant]
International Search Report and Written Opinion PCT/US2025/031382 ISA/EPO Sep. 19, 2025. [cited by applicant]
Lee S., et al., “Hardware Architecture and Software Stack for PIM Based on Commercial DRAM Technology: Industrial Product”, 2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA), IEEE, Jun. 1… [cited by applicant]