Patents by Inventor Vuong Cao Nguyen

Vuong Cao Nguyen 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: 20220334985
    Abstract: Systems and methods relate to a bus adapter for a storage network. The bus adaptor includes a context memory comprising a first storage for uncacheable exchange resource indicators (XRI) and a second storage for cacheable XRI. The bus adapter also includes a host backing store unit configured to provide access to the different tier memories present locally or externally in the host memory extension using several caching sub-units and with the capability of an optional pinning operation for the cacheable XRI based upon at least one of input/output phase, first in line up to a limit, a region of a virtual context address associated with the cacheable XRI indicators, a protocol associated with the cacheable XRI, a size of a transaction, or work queue information.
    Type: Application
    Filed: April 16, 2021
    Publication date: October 20, 2022
    Inventors: Marc Pegolotti, Kenny Wu, Ravi Shenoy, Gregorio Gervasio, JR., Lalit Chhabra, Mark Karnowski, James Winston Smart, Vuong Cao Nguyen
  • Patent number: 9336154
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: May 10, 2016
    Assignee: Avago Technologies General IP (Singapore) Pte. Ltd.
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Publication number: 20150378923
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Application
    Filed: August 26, 2015
    Publication date: December 31, 2015
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Patent number: 9195605
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Grant
    Filed: April 15, 2015
    Date of Patent: November 24, 2015
    Assignee: EMULEX CORPORATION
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Publication number: 20150293865
    Abstract: Restoring retired transaction identifiers (TID) associated with Direct Memory Access (DMA) commands without waiting for all DMA traffic to terminate is disclosed. A scoreboard is used to track retired TIDs and selectively restore retired TIDs on the fly. DMA engines fetch a TID, and use it to tag every DMA request. If the request is completed, the TID can be recycled to be used to tag a subsequent request. However, if a request is not completed, the TID is retired. Retired TIDs can be restored without having to wait for DMA traffic to end. Any retired TID value may be mapped to a bit location inside a scoreboard. All processors in the system may have access to read and clear the scoreboard. Clearing the TID scoreboard may trigger a DMA engine to restore the TID mapped to that location, and the TID may be used again.
    Type: Application
    Filed: June 2, 2015
    Publication date: October 15, 2015
    Inventors: Daming Jin, Vuong Cao Nguyen, Sam Shan-Jan Su, John Sui-Kei Tang, Peter Mark Fiacco
  • Publication number: 20150220443
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Application
    Filed: April 15, 2015
    Publication date: August 6, 2015
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Patent number: 9075797
    Abstract: Restoring retired transaction identifiers (TID) associated with Direct Memory Access (DMA) commands without waiting for all DMA traffic to terminate is disclosed. A scoreboard is used to track retired TIDs and selectively restore retired TIDs on the fly. DMA engines fetch a TID, and use it to tag every DMA request. If the request is completed, the TID can be recycled to be used to tag a subsequent request. However, if a request is not completed, the TID is retired. Retired TIDs can be restored without having to wait for DMA traffic to end. Any retired TID value may be mapped to a bit location inside a scoreboard. All processors in the system may have access to read and clear the scoreboard. Clearing the TID scoreboard may trigger a DMA engine to restore the TID mapped to that location, and the TID may be used again.
    Type: Grant
    Filed: December 2, 2013
    Date of Patent: July 7, 2015
    Assignee: EMULEX CORPORATION
    Inventors: Daming Jin, Vuong Cao Nguyen, Sam Shan-Jan Su, John Sui-Kei Tang, Peter Mark Fiacco
  • Patent number: 9043558
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Grant
    Filed: October 17, 2014
    Date of Patent: May 26, 2015
    Assignee: EMULEX CORPORATION
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Publication number: 20150039839
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Application
    Filed: October 17, 2014
    Publication date: February 5, 2015
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Patent number: 8892823
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: November 18, 2014
    Assignee: Emulex Corporation
    Inventors: Steven Gerard LeMire, Vuong Cao Nguyen
  • Publication number: 20140095741
    Abstract: Restoring retired transaction identifiers (TID) associated with Direct Memory Access (DMA) commands without waiting for all DMA traffic to terminate is disclosed. A scoreboard is used to track retired TIDs and selectively restore retired TIDs on the fly. DMA engines fetch a TID, and use it to tag every DMA request. If the request is completed, the TID can be recycled to be used to tag a subsequent request. However, if a request is not completed, the TID is retired. Retired TIDs can be restored without having to wait for DMA traffic to end. Any retired TID value may be mapped to a bit location inside a scoreboard. All processors in the system may have access to read and clear the scoreboard. Clearing the TID scoreboard may trigger a DMA engine to restore the TID mapped to that location, and the TID may be used again.
    Type: Application
    Filed: December 2, 2013
    Publication date: April 3, 2014
    Applicant: Emulex Design & Manufacturing Corporation
    Inventors: Daming Jin, Vuong Cao Nguyen, Sam Shan-Jan Su, John Sui-Kei Tang, Peter Mark Fiacco
  • Patent number: 8631169
    Abstract: Restoring retired transaction identifiers (TID) associated with Direct Memory Access (DMA) commands without waiting for all DMA traffic to terminate is disclosed. A scoreboard is used to track retired TIDs and selectively restore retired TIDs on the fly. DMA engines fetch a TID, and use it to tag every DMA request. If the request is completed, the TID can be recycled to be used to tag a subsequent request. However, if a request is not completed, the TID is retired. Retired TIDs can be restored without having to wait for DMA traffic to end. Any retired TID value may be mapped to a bit location inside a scoreboard. All processors in the system may have access to read and clear the scoreboard. Clearing the TID scoreboard may trigger a DMA engine to restore the TID mapped to that location, and the TID may be used again.
    Type: Grant
    Filed: June 6, 2008
    Date of Patent: January 14, 2014
    Assignee: Emulex Design & Manufacturing Corporation
    Inventors: Daming Jin, Vuong Cao Nguyen, Sam Shan-Jan Su, John Sui-Kei Tang, Peter Mark Fiacco
  • Patent number: 8111696
    Abstract: A method is disclosed for indicating a status of a transfer of data from a first device to a second device over a network. In one embodiment, the data includes one or more data frames. Each frame includes a header having one or more bits. The method includes setting a last bit of the one or more bits in the header of a last frame of the one or more data frames to a first value if the status of the transfer of data is good and setting the value of the last bit of the last data frame to a second value if the transfer of data failed. This results in a less congested, more efficient network.
    Type: Grant
    Filed: October 14, 2008
    Date of Patent: February 7, 2012
    Assignee: Emulex Design & Manufacturing Corporation
    Inventors: Vuong Cao Nguyen, Steven Gerard Lemire, Raul Bersamin Oteyza, Jeff Junwei Zheng
  • Patent number: 7937188
    Abstract: Embodiments of the present invention are directed to systems and methods for controlling the temperature of an internal device while reducing or minimizing the involvement of the host. Thus, some of the heat monitoring and remediation work may be offloaded to the actual device itself. The device may monitor its own temperature and, in the event of high temperature, perform device specific heat reduction actions without involving the host. Furthermore, the device may, upon detecting temperature within a predefined range, alert the host of a high temperature condition in order to allow the host to perform temperature reduction measures. Also, the device may, upon detecting temperature within a predefined range, alert the host of an impending device shutdown and shut the device down. In addition, the device may periodically save its temperature into non-volatile memory in order to create a temperature log.
    Type: Grant
    Filed: May 23, 2007
    Date of Patent: May 3, 2011
    Assignee: Emulex Design & Manufacturing Corporation
    Inventors: Michael Yu Liu, Bradley Eugene Roach, Vuong Cao Nguyen, Peter Mark Fiacco, Shak Loong Kwok
  • Patent number: 7853735
    Abstract: This is directed to methods and systems for handling access requests from a device to a host. The device may be a device that is part of the host, such as an HBA, an NIC, etc. The device may include a processor which runs firmware and which may generate various host access requests. The host access requests may be, for example, memory access requests, or DMA requests. The device may include a module for executing the host access requests, such as a data transfer block (DXB). The DXB may process incoming host access requests and return notifications of completion to the processor. For various reasons, the processor may from time to time issue null or zero length requests. Embodiments of the present invention ensure that the notifications of completion for all requests, including the zero length requests, are sent to the processor in the same order as the requests.
    Type: Grant
    Filed: December 13, 2007
    Date of Patent: December 14, 2010
    Assignee: Emulex Design & Manufacturing Corporation
    Inventors: Daming Jin, Joe Chung-Ping Tien, Michael P. Yan, Vuong Cao Nguyen
  • Publication number: 20100091658
    Abstract: A method is disclosed for indicating a status of a transfer of data from a first device to a second device over a network. In one embodiment, the data includes one or more data frames. Each frame includes a header having one or more bits. The method includes setting a last bit of the one or more bits in the header of a last frame of the one or more data frames to a first value if the status of the transfer of data is good and setting the value of the last bit of the last data frame to a second value if the transfer of data failed. This results in a less congested, more efficient network.
    Type: Application
    Filed: October 14, 2008
    Publication date: April 15, 2010
    Inventors: Vuong Cao NGUYEN, Steven Gerard Lemire, Raul Bersamin Oteyza, Jeff Junwei Zheng
  • Publication number: 20090307386
    Abstract: Restoring retired transaction identifiers (TID) associated with Direct Memory Access (DMA) commands without waiting for all DMA traffic to terminate is disclosed. A scoreboard is used to track retired TIDs and selectively restore retired TIDs on the fly. DMA engines fetch a TID, and use it to tag every DMA request. If the request is completed, the TID can be recycled to be used to tag a subsequent request. However, if a request is not completed, the TID is retired. Retired TIDs can be restored without having to wait for DMA traffic to end. Any retired TID value may be mapped to a bit location inside a scoreboard. All processors in the system may have access to read and clear the scoreboard. Clearing the TID scoreboard may trigger a DMA engine to restore the TID mapped to that location, and the TID may be used again.
    Type: Application
    Filed: June 6, 2008
    Publication date: December 10, 2009
    Inventors: Daming JIN, Vuong Cao Nguyen, Sam Shan-Jan Su, John Sui-kei Tang, Peter Mark Fiacco
  • Publication number: 20090172287
    Abstract: Embodiments of the current invention permit a user to allocate cache memory to main memory more efficiently. The processor or a user allocates the cache memory and associates the cache memory to the main memory location, but suppresses or bypassing reading the main memory data into the cache memory. Some embodiments of the present invention permit the user to specify how many cache lines are allocated at a given time. Further, embodiments of the present invention may initialize the cache memory to a specified pattern. The cache memory may be zeroed or set to some desired pattern, such as all ones. Alternatively, a user may determine the initialization pattern through the processor.
    Type: Application
    Filed: December 28, 2007
    Publication date: July 2, 2009
    Inventors: Steven Gerard LeMIRE, Vuong Cao Nguyen
  • Publication number: 20090157918
    Abstract: This is directed to methods and systems for handling access requests from a device to a host. The device may be a device that is part of the host, such as an HBA, an NIC, etc. The device may include a processor which runs firmware and which may generate various host access requests. The host access requests may be, for example, memory access requests, or DMA requests. The device may include a module for executing the host access requests, such as a data transfer block (DXB). The DXB may process incoming host access requests and return notifications of completion to the processor. For various reasons, the processor may from time to time issue null or zero length requests. Embodiments of the present invention ensure that the notifications of completion for all requests, including the zero length requests, are sent to the processor in the same order as the requests.
    Type: Application
    Filed: December 13, 2007
    Publication date: June 18, 2009
    Applicant: Emulex Design & Manufacturing Corporation
    Inventors: Daming JIN, Joe Chung-Ping Tien, Michael P. Yan, Vuong Cao Nguyen
  • Publication number: 20080294296
    Abstract: Embodiments of the present invention are directed to systems and methods for controlling the temperature of an internal device while reducing or minimizing the involvement of the host. Thus, some of the heat monitoring and remediation work may be offloaded to the actual device itself. The device may monitor its own temperature and, in the event of high temperature, perform device specific heat reduction actions without involving the host. Furthermore, the device may, upon detecting temperature within a predefined range, alert the host of a high temperature condition in order to allow the host to perform temperature reduction measures. Also, the device may, upon detecting temperature within a predefined range, alert the host of an impending device shutdown and shut the device down. In addition, the device may periodically save its temperature into non-volatile memory in order to create a temperature log.
    Type: Application
    Filed: May 23, 2007
    Publication date: November 27, 2008
    Applicant: Emulex Design & Manufacturing Corporation
    Inventors: Michael Yu Liu, Bradley Eugene Roach, Vuong Cao Nguyen, Peter Mark Fiacco, Shak Loong Kwok