US 11,720,404 B2
Systems and methods for arbitrating access to a shared resource
Chun-Chu Chen-Jhy Archie Wu, San Carlos, CA (US)
Assigned to Samsung Electronics Co., Ltd., Yongin-si (KR)
Filed by Samsung Electronics Co., Ltd., Suwon-si (KR)
Filed on Oct. 21, 2020, as Appl. No. 17/76,681.
Claims priority of provisional application 63/052,899, filed on Jul. 16, 2020.
Prior Publication US 2022/0019471 A1, Jan. 20, 2022
Int. Cl. G06F 15/16 (2006.01); G06F 9/50 (2006.01)
CPC G06F 9/5027 (2013.01) 17 Claims
OG exemplary drawing
 
1. A method for arbitrating access of a shared resource, the method comprising:
receiving data from a plurality of sources;
storing the data in a plurality of queues, wherein a first queue of the plurality of queues is dedicated to a first source and a first destination, and a second queue of the plurality of queues is dedicated to a second source and a second destination;
generating a first data structure based on the data stored in the plurality of queues, the first data structure being associated with at least two dimensions, wherein the at least two dimensions include a first dimension associated with the plurality of sources and a second dimension associated with a plurality of destinations;
generating a second data structure based on the first data structure, the second data structure being associated with at least one dimension, wherein the at least one dimension includes the second dimension;
performing a first arbitration based on the second data structure, the first arbitration for selecting the first destination from the plurality of destinations;
in response to the selecting of the first destination based on the first arbitration, performing a second arbitration based on the first data structure and further based on the selecting of the first destination, the second arbitration for selecting the first source from the plurality of sources;
identifying the first queue in response to the selecting of the first destination based on the first arbitration and the selecting of the first source based on the second arbitration;
retrieving data stored in the first queue in response to the identifying of the first queue; and
providing the retrieved data to the shared resource.