Patents by Inventor Xuebin Yao

Xuebin Yao has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20210089477
    Abstract: According to one general aspect, a device may include a host interface circuit configured to communicate with a host device via a data protocol that employs data messages. The device may include a storage element configured to store data in response to a data message. The host interface circuit may be configured to detect when a tunneling command is embedded within the data message; extract a tunneled message address information from the data message; retrieve, via the tunneled message address information, a tunneled message stored in a memory of the host device; and route the tunneled message to an on-board processor and/or data processing logic. The on-board processor and/or data processing logic may be configured to execute one or more instructions in response to the tunneled message.
    Type: Application
    Filed: February 18, 2020
    Publication date: March 25, 2021
    Inventors: Ramdas P. KACHARE, Zvi GUZ, Son T. PHAM, Anahita SHAYESTEH, Xuebin YAO, Oscar Prem PINTO
  • Patent number: 10846155
    Abstract: A host machine is disclosed. The host machine may include a host processor, a memory, an operating system running on the host processor, and an application running under the operating system on the host processor. The host machine may also include a Peripheral Component Interconnect Express (PCIe) tunnel to a Non-Volatile Memory Express (NVMe) Solid State Drive (SSD) and an RPC capture module which may capture the RPC from the application and deliver a result of the RPC to the application as though from the host processor, where the NVMe SSD may execute the RPC to generate the result.
    Type: Grant
    Filed: March 22, 2019
    Date of Patent: November 24, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Ramdas P. Kachare, Zvi Guz, Son T. Pham, Anahita Shayesteh, Xuebin Yao, Oscar Prem Pinto
  • Publication number: 20200341933
    Abstract: A data storage device includes: a data storage medium; a processor comprising a plurality of processor cores; a plurality of application acceleration black-box (AABB) slots including reconfigurable logic blocks, interconnects, and memories; a host interface that receives a host command from a remote application running on a remote host computer, wherein the host command includes an image file including a register-transfer level (RTL) bitstream and a firmware driver; and a configuration controller that downloads the RTL bitstream to an AABB slot of the plurality of AABB slots and reconfigure the AABB slot, and load the firmware driver to a processor core of the processor. The processor core loaded with the firmware driver runs a data acceleration process of the remote application to access and process data stored in the data storage medium using the RTL bitstream downloaded in the AABB slot.
    Type: Application
    Filed: July 14, 2020
    Publication date: October 29, 2020
    Inventors: Ramdas Kachare, Fred Worley, Xuebin YAO
  • Patent number: 10761775
    Abstract: According to some example embodiments, a method includes receiving, a first command from a host device; determining, if the first command is part of an association group of commands by determining a first value of a first parameter of the first command in an association context table entry is greater than zero, the first parameter including a total number of commands in the association group of commands; determining, a first value of a second parameter of the first command, the second parameter including a tag value identifying the association group of commands; decrementing, the first value of the first parameter of the first command in the association context table entry; determining, if the first value of the first parameter in the association context table entry is zero; and executing, an action indicated in a third parameter of the first command.
    Type: Grant
    Filed: August 21, 2018
    Date of Patent: September 1, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Ramdas P. Kachare, Oscar P. Pinto, Xuebin Yao, Wentao Wu, Stephen G. Fischer, Fred Worley
  • Patent number: 10719474
    Abstract: A data storage device includes: a data storage medium; a processor comprising a plurality of processor cores; a plurality of application acceleration black-box (AABB) slots including reconfigurable logic blocks, interconnects, and memories; a host interface that receives a host command from a remote application running on a remote host computer, wherein the host command includes an image file including a register-transfer level (RTL) bitstream and a firmware driver; and a configuration controller that downloads the RTL bitstream to an AABB slot of the plurality of AABB slots and reconfigure the AABB slot, and load the firmware driver to a processor core of the processor. The processor core loaded with the firmware driver runs a data acceleration process of the remote application to access and process data stored in the data storage medium using the RTL bitstream downloaded in the AABB slot.
    Type: Grant
    Filed: March 14, 2018
    Date of Patent: July 21, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Ramdas Kachare, Fred Worley, Xuebin Yao
  • Publication number: 20200117525
    Abstract: A host machine is disclosed. The host machine may include a host processor, a memory, an operating system running on the host processor, and an application running under the operating system on the host processor. The host machine may also include a Peripheral Component Interconnect Express (PCIe) tunnel to a Non-Volatile Memory Express (NVMe) Solid State Drive (SSD) and an RPC capture module which may capture the RPC from the application and deliver a result of the RPC to the application as though from the host processor, where the NVMe SSD may execute the RPC to generate the result.
    Type: Application
    Filed: March 22, 2019
    Publication date: April 16, 2020
    Inventors: Ramdas P. KACHARE, Zvi GUZ, Son T. PHAM, Anahita SHAYESTEH, Xuebin YAO, Oscar Prem PINTO
  • Publication number: 20190250855
    Abstract: According to some example embodiments, a method includes receiving, a first command from a host device; determining, if the first command is part of an association group of commands by determining a first value of a first parameter of the first command in an association context table entry is greater than zero, the first parameter including a total number of commands in the association group of commands; determining, a first value of a second parameter of the first command, the second parameter including a tag value identifying the association group of commands; decrementing, the first value of the first parameter of the first command in the association context table entry; determining, if the first value of the first parameter in the association context table entry is zero; and executing, an action indicated in a third parameter of the first command.
    Type: Application
    Filed: August 21, 2018
    Publication date: August 15, 2019
    Inventors: Ramdas P. Kachare, Oscar P. Pinto, Xuebin Yao, Wentao Wu, Stephen G. Fischer, Fred Worley
  • Publication number: 20190107956
    Abstract: A data storage device includes: a data storage medium; a processor comprising a plurality of processor cores; a plurality of application acceleration black-box (AABB) slots including reconfigurable logic blocks, interconnects, and memories; a host interface that receives a host command from a remote application running on a remote host computer, wherein the host command includes an image file including a register-transfer level (RTL) bitstream and a firmware driver; and a configuration controller that downloads the RTL bitstream to an AABB slot of the plurality of AABB slots and reconfigure the AABB slot, and load the firmware driver to a processor core of the processor. The processor core loaded with the firmware driver runs a data acceleration process of the remote application to access and process data stored in the data storage medium using the RTL bitstream downloaded in the AABB slot.
    Type: Application
    Filed: March 14, 2018
    Publication date: April 11, 2019
    Inventors: Ramdas Kachare, Fred Worley, Xuebin YAO
  • Patent number: 7760626
    Abstract: Provided are techniques for static load balancing. For each data path in a network adapter team, a load balancing value is computed. A maximum value of the computed load balancing values is determined. A data path with the maximum value is selected for use in routing data. Also provided are techniques for dynamic load balancing in which, when a load balancing share of a data path is less than an actual load balancing share, the load balancing share of the data path is adjusted. Furthermore, provided are techniques for failover processing in which a command is routed through a second network adapter in response to determining that the command may not be routed through a first network adaptor.
    Type: Grant
    Filed: March 31, 2004
    Date of Patent: July 20, 2010
    Assignee: INTEL Corporation
    Inventors: Navneet Malpani, Xuebin Yao, Charles A. Musta
  • Patent number: 7373549
    Abstract: A command is received, at a network storage driver, from an operating system storage stack, wherein the command is for communication with a target storage device over a connection across a network. The command is selectively executed, a plurality of times over the connection, for communicating with the target storage device, in response to a determination that the command failed to successfully communicate with the target storage device within a threshold period of time.
    Type: Grant
    Filed: April 6, 2004
    Date of Patent: May 13, 2008
    Assignee: Intel Corporation
    Inventors: Navneet Malpani, Xuebin Yao, Charles A. Musta, Mikal N. Hart
  • Publication number: 20060194386
    Abstract: An SAS RAID adapter comprises an input-output processor (IOP) and at least two SAS input-output controllers (IOCs). Wherein SAS links coupled to each of the IOCs form “virtual ports” in order to increase performance and maintain availability. The virtual ports across the at least two IOCs have wide port SAS link capability so as to provide performance enhancements similar to a standard SAS wide port. Even if a single IOC failure occurs, downshifting to N/2 links is provided with degraded aggregated bandwidth (data throughput) instead of a failover and/or system shutdown.
    Type: Application
    Filed: February 25, 2005
    Publication date: August 31, 2006
    Inventors: Xuebin Yao, Gary Kotzur, Sompong Olarig
  • Publication number: 20050259632
    Abstract: Provided are techniques for static load balancing. For each data path in a network adapter team, a load balancing value is computed. A maximum value of the computed load balancing values is determined. A data path with the maximum value is selected for use in routing data. Also provided are techniques for dynamic load balancing. An actual load balancing share is computed for each data path in a network adapter team. For each data path, it is determined whether a load balancing share for the data path is less than the actual load balancing share for the data path and when the load balancing share is less than the actual load balancing share, the load balancing share of the data path is adjusted. Furthermore, provided are techniques for failover processing. It is determined whether a command may be routed through a first network adapter. The command is routed through the first network adapter in response to determining that the command may be routed through the first network adapter.
    Type: Application
    Filed: March 31, 2004
    Publication date: November 24, 2005
    Inventors: Navneet Malpani, Xuebin Yao, Charlie Musta
  • Publication number: 20050246443
    Abstract: A network storage driver requests a connection from an offload application, wherein the offload application interfaces with a first network stack implemented in an operating system and a second network stack implemented in a hardware device. The connection is received from the offload application, wherein the received connection is an offloaded connection and is reserved for the network storage driver. Data is communicated over the offloaded connection through the hardware device.
    Type: Application
    Filed: March 31, 2004
    Publication date: November 3, 2005
    Inventors: Xuebin Yao, Navneet Malpani
  • Publication number: 20050223279
    Abstract: A command is received, at a network storage driver, from an operating system storage stack, wherein the command is for communication with a target storage device over a connection across a network. The command is selectively executed, a plurality of times over the connection, for communicating with the target storage device, in response to a determination that the command failed to successfully communicate with the target storage device within a threshold period of time.
    Type: Application
    Filed: April 6, 2004
    Publication date: October 6, 2005
    Inventors: Navneet Malpani, Xuebin Yao, Charles Musta, Mikal Hart