US 11,789,645 B2
Methods and systems for memory bandwidth control
Ramkumar Srinivasan, Saratoga, CA (US); Amit Kumar, Fremont, CA (US); Vedaraman Geetha, Fremont, CA (US); Keith Robert Pflederer, Mountain View, CA (US); and Vikas Kumar Sinha, Austin, TX (US)
Assigned to QUALCOMM Incorporated, San Diego, CA (US)
Filed by QUALCOMM Incorporated, San Diego, CA (US)
Filed on Feb. 9, 2023, as Appl. No. 18/166,574.
Application 18/166,574 is a continuation of application No. 17/666,438, filed on Feb. 7, 2022.
Claims priority of provisional application 63/251,518, filed on Oct. 1, 2021.
Claims priority of provisional application 63/251,517, filed on Oct. 1, 2021.
Claims priority of provisional application 63/239,702, filed on Sep. 1, 2021.
Prior Publication US 2023/0195365 A1, Jun. 22, 2023
Int. Cl. G06F 12/00 (2006.01); G06F 3/06 (2006.01)
CPC G06F 3/0655 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0679 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for tracking memory usage at a memory system coupled to one or more processing clusters via a first memory in an electronic device, the memory system including a memory block, comprising:
receiving a set of data access requests associated with a plurality of clients to the memory block, wherein resources are partitioned to a plurality of resource portions to be utilized by the plurality of clients, each resource portion being assigned to a respective client and having a respective partition identifier (ID); and
for each resource portion having the respective partition ID:
identifying a subset of data access requests associated with the respective partition ID for accessing the memory block;
tracking a memory bandwidth usage state associated with the respective partition ID, wherein the memory bandwidth usage state indicates at least how much of a memory access bandwidth assigned to the respective partition ID to access the memory block is used; and
in response to each data access request of the set of data access requests, reporting the memory bandwidth usage state to the one or more processing clusters.