US 11,989,444 B2
Memory controller
Daisuke Uchida, Fujisawa Kanagawa (JP)
Assigned to Kioxia Corporation, Tokyo (JP)
Filed by Kioxia Corporation, Tokyo (JP)
Filed on Jun. 16, 2023, as Appl. No. 18/336,443.
Application 18/336,443 is a continuation of application No. 17/321,188, filed on May 14, 2021, granted, now 11,726,700.
Application 17/321,188 is a continuation of application No. 16/552,821, filed on Aug. 27, 2019, granted, now 11,042,321, issued on Jun. 22, 2021.
Claims priority of application No. 2019-038260 (JP), filed on Mar. 4, 2019.
Prior Publication US 2023/0333773 A1, Oct. 19, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0655 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0679 (2013.01); G06F 3/067 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A memory controller comprising:
a memory interface connectable to a nonvolatile memory;
a host interface connectable to a host; and
a processor configured to:
control the memory interface to transmit write data to the nonvolatile memory and receive read data from the nonvolatile memory based on commands received from the host through the host interface; and
control the host interface to transmit, to the host, transfer packets, each including at least one of the read data or data generated in the memory controller, wherein
the host interface includes a first transfer queue, a second transfer queue, a first buffer, and a second buffer,
the host interface is configured to:
determine whether or not a transfer packet to be transmitted to the host is a priority packet,
store a corresponding packet data in an application layer in the first transfer queue, upon determining that the transfer packet is a priority packet,
store the corresponding packet data in the application layer in the second transfer queue, upon determining that the transfer packet is not a priority packet,
store a priority packet, which includes the corresponding packet data in the application layer stored in the first transfer queue and data in a transport layer, a network layer, and a data link layer, in the first buffer,
store a non-priority packet, which includes the corresponding packet data in the application layer stored in the second transfer queue and data in the transport layer, the network layer, and the data link layer, in the second buffer, and
transmit priority packets in the first buffer with prioritization over non-priority packets in the second buffer, to the host.