US 11,983,441 B2
Arbitration of commands between non-volatile memory storage and remote hosts
Ramesh Ramaiya Subramanian, Hyderabad (IN); and Chaitanya Kallakuri, Hyderabad (IN)
Assigned to XILINX, INC., San Jose, CA (US)
Filed by XILINX, INC., San Jose, CA (US)
Filed on Mar. 24, 2022, as Appl. No. 17/703,890.
Prior Publication US 2023/0305747 A1, Sep. 28, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0659 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0679 (2013.01)] 20 Claims
OG exemplary drawing
 
1. An integrated circuit comprising:
a front-end interface configured for communication with a remote host over a front-end fabric;
a back-end interface configured for communication with nonvolatile memory (NVM) subsystems over a back-end fabric;
a controller coupled between the front-end interface and the back-end interface, the controller configured to:
receive commands from the remote host for the NVM subsystems; and
store the commands in queue pairs associated with the NVM subsystems; and
arbiter circuitry configured to:
receive queue pair data associated with the NVM subsystems and a status of buffers storing command and completion data; and
select a command from a first queue pair of the queue pairs based on a comparison of the queue pair data and the command and completion data to one or more thresholds, wherein the selected command is outputted to one or more of the NVM subsystems.