US 12,124,873 B2
Scoreboard for tracking completion of tasks
Priyanka Nilay Thakore, Mountain View, CA (US); Chen Xiu, Beijing (CN); Lyle E. Adams, San Jose, CA (US); and Deqiang Yang, Beijing (CN)
Assigned to Beijing Tenafe Electronic Technology Co., Ltd., (CN)
Filed by Beijing Tenafe Electronic Technology Co., Ltd., Beijing (CN)
Filed on Nov. 9, 2023, as Appl. No. 18/505,464.
Application 18/505,464 is a continuation of application No. 18/124,199, filed on Mar. 21, 2023, granted, now 11,853,795.
Claims priority of provisional application 63/392,321, filed on Jul. 26, 2022.
Prior Publication US 2024/0134689 A1, Apr. 25, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/48 (2006.01)
CPC G06F 9/4881 (2013.01) 20 Claims
OG exemplary drawing
 
1. A storage controller System On Chip (SOC) that interfaces with a host and a storage system, comprising:
a hardware functional module that:
performs a given task, wherein the given task is one of a plurality of tasks that are associated with a work item and the work item is managed by firmware in the SOC; and
sends, from the hardware functional module to a scoreboard module, a first notification that the given task has completed, wherein:
the scoreboard module is implemented in hardware on the SOC;
the firmware includes a host command module that interfaces with the host and a backend command module that interfaces with the storage system; and
the first notification includes a scoreboard identifier; and
the scoreboard module that:
in response to receiving the first notification:
selects one of a plurality of scoreboard counters based at least in part on the scoreboard identifier to obtain a selected scoreboard counter, wherein the plurality of scoreboard counters includes a first scoreboard counter associated with the host command module and a second scoreboard counter associated with the backend command module; and
increments the selected scoreboard counter;
determines whether the selected scoreboard counter exceeds a corresponding scoreboard threshold; and
in the event it is determined that the selected scoreboard counter exceeds the corresponding scoreboard threshold, sends, from the scoreboard module to the firmware, a second notification indicating that the plurality of tasks has completed, including by:
in the event the scoreboard identifier corresponds to the host command module, sending the second notification to the host command module; and
in the event the scoreboard identifier corresponds to the backend command module, sending the second notification to the backend command module.