IP Library Granted Patent US 12,411,779
Granted Patent B2
US 12,411,779 · App. 17/901,846 · Granted Sep 9, 2025

High bandwidth memory system

Inventors: Krishna T. Malladi (San Jose, CA); Dimin Niu (Sunnyvale, CA); Hongzhong Zheng (Los Gatos, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F13/1642G06F12/0646G06F2212/251
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,411,779
App. No.
17/901,846
Granted
Sep 9, 2025
Kind
B2
Abstract

A high-bandwidth memory (HBM) includes a memory and a controller. The controller receives a data write request from a processor external to the HBM and the controller stores an entry in the memory indicating at least one address of data of the data write request and generates an indication that a data bus is available for an operation during a cycle time of the data write request based on the data write request comprising sparse data or data-value similarity. Sparse data includes a predetermined percentage of data values equal to zero, and data-value similarity includes a predetermined amount of spatial value locality of the data values. The predetermined percentage of data values equal to zero of sparse data and the predetermined amount of spatial value locality of the special-value pattern are both based on a predetermined data granularity.

Claims (51)

1. A memory system, comprising:

a data bus configured to transfer data to a memory;

cache media; and

a controller configured to:

receive a data write request to transfer, using the data bus, the data to the memory;

determine that the data comprises one or more characteristics that allows the data bus to perform a different request than the data write request;

communicate, based on one or more characteristics of the data, first information relating to the determining;

store, based on the determining, to the cache media, second information relating to one or more addresses corresponding to at least a portion of the data; and

generate, based on the determining, an indication that the data bus is available for the different request during a cycle time of the data write request.

2. The memory system of claim 1 , wherein the one or more characteristics of the data indicates that the at least a portion of the data comprises sparse data.

3. The memory system of claim 2 , wherein the one or more characteristics of the at least a portion of the data indicates, based on a data granularity, that the data comprises sparse data.

4. The memory system of claim 1 , wherein the data comprises a first value and a second value, wherein the first value is similar to the second value.

5. The memory system of claim 1 , wherein the memory is a first memory;

wherein the cache media is second memory; and

the controller is further configured to process, using the second memory, a data read request for the at least a portion of the data.

6. The memory system of claim 5 , wherein the controller is configured to process, based on the one or more addresses, using the second memory, the data read request for the at least a portion of the data.

7. The memory system of claim 5 , wherein the controller is further configured to:

generate modified data based on the at least a portion of the data; and

store the modified data in the second memory.

8. A method comprising:

receiving, at a controller, a data write request to transfer, using a data bus, data to a memory coupled to the controller using the data bus;

determining that the data comprises one or more characteristics that allows the data bus to perform a different request than the data write request;

communicating, by the controller, based on one or more characteristics of of the data, first information relating to the determining;

storing, based on the determining, to cache media, second information relating to one or more addresses corresponding to at least a portion of the data; and

generating, based on the determining, an indication that the data bus is available for the different request during a cycle time of the data write request.

9. The method of claim 8 , wherein the one or more characteristics indicate that comprises sparse data.

10. The method of claim 9 , wherein the one or more characteristics indicates, based on a data granularity, that the data comprises sparse data.

11. The method of claim 8 , wherein the data comprises a first value and a second value, wherein the first value is similar to the second value.

12. The method of claim 8 , wherein the memory is a first memory;

wherein the cache media is second memory; and

wherein the method further comprises processing, using the second memory, a data read request for the at least a portion of the data.

13. The method of claim 12 , wherein the method further comprises processing, based on the one or more addresses, using the second memory, the data read request for the at least a portion of the data.

14. The method of claim 12 , further comprising:

generating modified data based on the at least a portion of the data; and

storing the modified data in the second memory.

15. An apparatus, comprising:

a controller configured to:

receive a data write request to transfer, using a data bus, data to a memory;

determine that the data comprises one or more characteristics that allows the data bus to perform a different request than the data write request;

communicate, based on one or more characteristics of the data, first information relating to detection the determining;

store, based on the determining, to cache media, second information relating to one or more addresses corresponding to at least a portion of the data; and

generate, based on the determining, an indication that the data bus is available for the different request during a cycle time of the data write request.

16. The apparatus of claim 15 , wherein the one or more characteristics indicate that the data comprises sparse data.

17. The apparatus of claim 15 , wherein the data comprises a first value and a second value, wherein the first value is similar to the second value.

18. The apparatus of claim 15 , wherein the memory is a first memory;

wherein the cache media is second memory; and

the controller is further configured to process, using the second memory, a data read request for the at least a portion of the data.

19. The apparatus of claim 18 , wherein the controller is configured to process, based on the one or more addresses, using the second memory, the data read request for the at least a portion of the data.

20. The apparatus of claim 18 , wherein the controller is configured to:

generate modified data based on the at least a portion of the data; and

store the modified data in the second memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2023
From: MALLADI, KRISHNA T.; NIU, DIMIN; ZHENG, HONGZHONG
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 063408/0678 →
Continuity (3)
Continuation 16569657 · Sep 12, 2019
Provisional Application 62841815 · May 1, 2019
Related Publication 20220414030A1 · Dec 29, 2022
References Cited (45)
US 4757396A · Ishiguro · 1988 [cited by examiner]
US 5489949A · Jeong et al. · 1996 [cited by applicant]
US 5793992A · Steele et al. · 1998 [cited by applicant]
US 5987556A · Nakagawa · 1999 [cited by examiner]
US 8788788B2 · Colgrove et al. · 2014 [cited by applicant]
US 9223511B2 · Rudelic · 2015 [cited by applicant]
US 9990288B2 · Usui et al. · 2018 [cited by applicant]
US 10162554B2 · Zheng et al. · 2018 [cited by applicant]
US 10387037B2 · Venkatesh et al. · 2019 [cited by applicant]
US 10387384B1 · Bent et al. · 2019 [cited by applicant]
US 10496597B2 · Chen et al. · 2019 [cited by applicant]
US 10684946B2 · Guo et al. · 2020 [cited by applicant]
US 20050141501A1 · Kadambi et al. · 2005 [cited by applicant]
US 20110161556A1 · Strope · 2011 [cited by examiner]
US 20120260021A1 · Rudelic · 2012 [cited by applicant]
US 20130174176A1 · Kopylovitz · 2013 [cited by examiner]
US 20130321677A1 · Cote et al. · 2013 [cited by applicant]
US 20130322752A1 · Lim et al. · 2013 [cited by applicant]
US 20160054930A1 · Dor et al. · 2016 [cited by applicant]
US 20160291884A1 · Halaharivi · 2016 [cited by examiner]
US 20170371593A1 · Li et al. · 2017 [cited by applicant]
US 20180101742A1 · Burge · 2018 [cited by examiner]
US 20180189032A1 · Nurvitadhi et al. · 2018 [cited by applicant]
US 20180189234A1 · Nurvitadhi et al. · 2018 [cited by applicant]
US 20180315158A1 · Nurvitadhi et al. · 2018 [cited by applicant]
US 20190065902A1 · Yoneoka · 2019 [cited by examiner]
US 20190095339A1 · Seningen · 2019 [cited by examiner]
US 20200278941A1 · Bavishi · 2020 [cited by examiner]
CN 1881191A · 2006 [cited by applicant]
CN 105843775A · 2016 [cited by applicant]
CN 105912476A · 2016 [cited by applicant]
CN 107688436A · 2018 [cited by applicant]
CN 108268423A · 2018 [cited by applicant]
JP 2013041625A · 2013 [cited by applicant]
JP 2014513345A · 2014 [cited by applicant]
JP 2014529126A · 2014 [cited by applicant]
JP 2015176245A · 2015 [cited by applicant]
JP 2018022487A · 2018 [cited by applicant]
Final Office Action for U.S. Appl. No. 16/569,657, mailed Nov. 13, 2020. [cited by applicant]
Final Office Action for U.S. Appl. No. 16/569,657, mailed Nov. 15, 2021. [cited by applicant]
Nguyen, Tri Minh, “Exploring Data Compression and Random-Access Reduction to Mitigate the Bandwidth Wall for Manycore Architectures,” Princeton University, ProQuest Dissertations Publishing, 2018, 10936059, Sep. 1, 2018… [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/569,657, mailed Apr. 29, 2022. [cited by applicant]
Office Action for U.S. Appl. No. 16/569,657, mailed Apr. 3, 2020. [cited by applicant]
Office Action for U.S. Appl. No. 16/569,657, mailed Apr. 30, 2021. [cited by applicant]
Sadi, Fazle, “Accelerating Sparse Matrix Kernels with Co-Optimized Architecture,” Doctor of Philosophy in Electrical and Computer Engineering, Carnegie Mellon University, Dec. 1, 2018, 208 pages. [cited by applicant]