Patents by Inventor Chi-Kong Lee

Chi-Kong Lee 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).

  • Patent number: 8645656
    Abstract: A method includes, in at least one aspect, asserting a control signal to one or more devices, determining an initial wait time after asserting the control signal, issuing a first command based on the initial wait time, determining a first interval time associated with the first command and a second command, and issuing the second command based on the first interval time.
    Type: Grant
    Filed: April 30, 2013
    Date of Patent: February 4, 2014
    Assignee: Marvell World Trade Ltd.
    Inventors: Tony Yoon, Akio Goto, Chi Kong Lee, Masayuki Urabe
  • Patent number: 8626995
    Abstract: In some implementations, a method includes receiving commands from a host device, sending the commands to one or more flash memory devices, receiving information associated with at least one of the commands from the one or more flash memory devices, and selectively sending the information to the host device based on whether one or more parameters in the at least one command include a request to receive the information from the one or more flash memory devices.
    Type: Grant
    Filed: August 27, 2012
    Date of Patent: January 7, 2014
    Assignee: Marvell International Ltd.
    Inventors: Tony Yoon, Hyunsuk Shin, Chi-Kong Lee
  • Publication number: 20130290614
    Abstract: A method includes, in at least one aspect, asserting a control signal to one or more devices, determining an initial wait time after asserting the control signal, issuing a first command based on the initial wait time, determining a first interval time associated with the first command and a second command, and issuing the second command based on the first interval time.
    Type: Application
    Filed: April 30, 2013
    Publication date: October 31, 2013
    Inventors: Tony Yoon, Akio Goto, Chi Kong Lee, Masayuki Urabe
  • Publication number: 20130246890
    Abstract: Systems, methods, apparatus, and techniques are provided for writing data to a storage medium. A stripe of the storage medium is interfaced via one or more data transfer channels, where the stripe comprises a plurality of pages of the storage medium. A data stream is received and the data stream is portioned into a plurality of allocation units (AUs), where each AU in the plurality of AUs has a pre-determined byte length. A first portion of a selected AU from the plurality of AUs is written to a first page of the plurality of pages and a second portion of the selected AU is written to a second page of the plurality of pages by consecutively writing bytes of the selected AU from a starting byte on the first page to an ending byte on the second page.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 19, 2013
    Applicant: MARVELL WORLD TRADE LTD.
    Inventors: Siu-Hung Frederick Au, Fei Sun, Hyunsuk Shin, Chi Kong Lee
  • Publication number: 20130246892
    Abstract: Systems, methods, apparatus, and techniques are provided for processing data from a storage medium. A stripe of data stored on the storage medium is read, where the stripe comprises a plurality of data allocation units (AUs) and a parity AU. Error correction decoding is applied to each of the plurality of data AUs to produce a plurality of decoded data AUs. It is determined whether a value of the parity AU is satisfied by values of bytes in the plurality of decoded data AUs. The plurality of decoded data AUs are output in response to a determination that the value of the parity AU is satisfied by the values of bytes in the plurality of decoded data AUs.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 19, 2013
    Applicant: MARVELL WORLD TRADE LTD.
    Inventors: Siu-Hung Frederick Au, Fei Sun, Hyunsuk Shin, Chi Kong Lee
  • Patent number: 8539195
    Abstract: A system includes chips and a control module. Each of the chips includes an array of memory cells. Each of the arrays of memory cells includes rows of memory cells. Each of the rows of memory cells is configured to store a predetermined amount of data. The control module is configured to receive data, encode the data to generate blocks of encoded data, store a first portion of one of the blocks of encoded data in a first selected number row of a first chip, and store a remaining portion of the one of the blocks of encoded data in a second selected number row of a second chip. An amount of data in each of the blocks of encoded data is more than the predetermined amount of data. The second selected number row is a same number row or a higher number row than the first selected number row.
    Type: Grant
    Filed: July 10, 2012
    Date of Patent: September 17, 2013
    Assignee: Marvell World Trade Ltd.
    Inventors: Zining Wu, Lau Nguyen, Pantas Sutardja, Chi-Kong Lee, Tony Yoon
  • Patent number: 8438356
    Abstract: Methods, systems and computer program products for implementing a polling process among one or more flash memory devices are described. In some implementations, the polling process may include sending a read status command to a flash memory device to detect the ready or busy state of the flash memory device. A status register may be included in the flash memory device for storing a status signal indicating an execution state of a write (or erase) operation. A solid state drive system may perform the polling process by reading the status register of the flash memory device.
    Type: Grant
    Filed: September 29, 2008
    Date of Patent: May 7, 2013
    Assignee: Marvell World Trade Ltd.
    Inventors: Tony Yoon, Akio Goto, Chi Kong Lee, Masayuki Urabe
  • Publication number: 20120278545
    Abstract: A memory system including a nonvolatile memory, and a memory control module. The nonvolatile memory includes memory cells arranged among physical memory blocks, wherein each physical memory block is of a predetermined size. The memory control module includes a write path module and a read path module. In response to the memory control module receiving data in a first format such that the data is evenly distributable among the physical memory blocks, the write path module modifies the first format of the data into a second format prior to writing the data to the physical memory blocks. The second format of the data is such that the data is no longer evenly distributable among the physical memory blocks. The read path module is configured to read the data from the nonvolatile memory in accordance with the second format.
    Type: Application
    Filed: July 10, 2012
    Publication date: November 1, 2012
    Inventors: Zining Wu, Lau Nguyen, Pantas Sutardja, Chi-Kong Lee, Tony Yoon
  • Patent number: 8296487
    Abstract: A first storage controller includes a first memory controller, a first interface controller, and a second interface controller. The first memory controller is configured to control a connection between the first storage controller and a first storage device. The first interface controller is configured as a device, and is configured to control a connection between the first storage controller and a first host. The second interface controller is configurable to function as a host or a device. The second interface controller is configured to control a connection between the first storage controller and a secondary device, function as a host when the secondary device is a second storage controller, and function as a device when the secondary device is a second host.
    Type: Grant
    Filed: March 13, 2012
    Date of Patent: October 23, 2012
    Assignee: Marvell International Ltd.
    Inventors: Tony Yoon, Chi Kong Lee
  • Patent number: 8255615
    Abstract: Methods, systems and computer program products for sending one or more commands to one or more flash memory devices using a solid state controller and receiving information associated with the commands from the flash memory devices are described. In some implementations, the solid state controller includes a sequencer to forward the commands to the flash memory devices on behalf of the firmware.
    Type: Grant
    Filed: September 29, 2009
    Date of Patent: August 28, 2012
    Assignee: Marvell International Ltd.
    Inventors: Tony Yoon, Hyunsuk Shin, Chi-Kong Lee
  • Patent number: 8219775
    Abstract: A memory system including a nonvolatile memory, and a memory control module. The nonvolatile memory includes a plurality of memory cells arranged among a plurality of physical memory blocks, wherein each physical memory block is of a predetermined size. The memory control module includes a write path module and a read path module. In response to the memory control module receiving data in a first format such that the data is evenly distributable among the plurality of physical memory blocks, the write path module modifies the first format of the data into a second format prior to writing the data to the plurality of physical memory blocks. The second format of the data is such that the data is no longer evenly distributable among the plurality of physical memory blocks. The read path module is configured to read the data from the nonvolatile memory in accordance with the second format.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: July 10, 2012
    Assignee: Marvell World Trade Ltd.
    Inventors: Zining Wu, Lau Nguyen, Pantas Sutardja, Chi-Kong Lee, Tony Yoon
  • Publication number: 20120159052
    Abstract: Methods, systems and computer program products for providing a sequencer that schedules job descriptors are described. The sequencer can manage the scheduling of the job descriptors for execution based on the availability of their respective segments and channels. For example, the sequencer can check the status of the segments, and identify one or more segments that are in busy or full state, or one or more segments that are in non-busy or empty state. Based on the status check, the sequencer can execute job descriptors out of order, and in particular, give priorities to job descriptors whose associated segments are available over job descriptors whose associated segments are in busy or full state. In doing so, pending job descriptors can be processed quicker and unnecessary latency can be avoided.
    Type: Application
    Filed: December 20, 2011
    Publication date: June 21, 2012
    Inventors: Chi Kong Lee, Siu-Hung Fred Au, Jungil Park, Hyunsuk Shin
  • Patent number: 8185713
    Abstract: A method and apparatus for controlling access to solid state memory devices which may allow maximum parallelism on accessing solid state memory devices with minimal interventions from firmware. To reduce the waste of host time, multiple flash memory devices may be connected to each channel. A job/descriptor architecture may be used to increase parallelism by allowing each memory device to operate separately. A job may be used to represent a read, write or erase operation. When firmware wants to assign a job to a device, it may issue a descriptor, which may contain information about the target channel, the target device, the type of operation, etc. The firmware may provide descriptors without waiting for a response from a memory device, and several jobs may be issued continuously to form a job queue. After the firmware finishes programming descriptors, a sequencer may handle the remaining work so that the firmware may concentrate on other tasks.
    Type: Grant
    Filed: September 17, 2008
    Date of Patent: May 22, 2012
    Assignee: Marvell World Travel Ltd.
    Inventors: Hyunsuk Shin, Chi Kong Lee, Tony Yoon
  • Patent number: 8140724
    Abstract: A hybrid controller and a method for coupling a plurality of host and memory devices with a hybrid controller are provided. In one embodiment, a hybrid controller may couple one or more host devices to one or more memory devices via multiple interface controllers, each interface controller configurable as a host or as a device. In one embodiment, interface controllers may have access to data across coupled devices as arbitrated by a buffer manager.
    Type: Grant
    Filed: August 18, 2009
    Date of Patent: March 20, 2012
    Assignee: Marvell International Ltd.
    Inventors: Tony Yoon, Chi Kong Lee
  • Publication number: 20120023284
    Abstract: A memory system including a nonvolatile memory, and a memory control module. The nonvolatile memory includes a plurality of memory cells arranged among a plurality of physical memory blocks, wherein each physical memory block is of a predetermined size. The memory control module includes a write path module and a read path module. In response to the memory control module receiving data in a first format such that the data is evenly distributable among the plurality of physical memory blocks, the write path module modifies the first format of the data into a second format prior to writing the data to the plurality of physical memory blocks. The second format of the data is such that the data is no longer evenly distributable among the plurality of physical memory blocks. The read path module is configured to read the data from the nonvolatile memory in accordance with the second format.
    Type: Application
    Filed: September 12, 2011
    Publication date: January 26, 2012
    Inventors: Zining Wu, Lau Nguyen, Pantas Sutardja, Chi-Kong Lee, Tony Yoon
  • Publication number: 20120011298
    Abstract: A control system includes a control module configured to control data transfer events of blocks of data between an interface management module and a non-volatile semiconductor memory based on at least two descriptors for each one of the data transfer events. The non-volatile semiconductor memory is prepared for a read event or a program event of the data transfer event. The interface management module and the non-volatile semiconductor memory are configured to operate within a solid-state memory drive. A command management module is configured to generate a parameter signal based on the at least two descriptors. The interface management module is configured to generate instruction signals based on the parameter signal and transmit the instruction signals to the non-volatile semiconductor memory to perform the read event or the program event.
    Type: Application
    Filed: June 22, 2011
    Publication date: January 12, 2012
    Inventors: Chi Kong Lee, Siu-Hung Fred Au, Jungil Park, Hyunsuk Shin
  • Patent number: 8019959
    Abstract: A nonvolatile (NV) memory system includes a memory control module that encodes data to provide encoded logical data structures. The system also includes NV memory that includes X arrays that include physical data structures that differ in size from the encoded logical data structures. The memory control module writes/reads from the NV memory according to the encoded logical data structures. X is an integer greater than or equal to 1.
    Type: Grant
    Filed: February 4, 2008
    Date of Patent: September 13, 2011
    Assignee: Marvell World Trade Ltd.
    Inventors: Zining Wu, Lau Nguyen, Pantas Sutardja, Chi-Kong Lee, Tony Yoon
  • Publication number: 20100058003
    Abstract: Systems, methods and computer program products for programming data into a multi-plane memory device employ a multi-plane data order. To allow multiple data pages to be programmed without a need to increase the size of page buffers, in some implementations, a data transfer scheme at which the data pages are programmed can be manipulated. Specifically, data across all channels can first be programmed into a first plane of the multi-plane flash memory device in parallel. While the data transfer program operation is in progress, data to be programmed into a succeeding plane (e.g., plane “1”) can be read into and cached in one or more page buffers. After the data transfer program for the first plane is complete, data cached in the page buffers can be immediately latched and programmed into the multi-plane flash memory device.
    Type: Application
    Filed: September 1, 2009
    Publication date: March 4, 2010
    Inventors: Akio Goto, Chi Kong Lee, Masayuki Urabe
  • Publication number: 20090089492
    Abstract: Methods, systems and computer program products for implementing a polling process among one or more flash memory devices are described. In some implementations, the polling process may include sending a read status command to a flash memory device to detect the ready or busy state of the flash memory device. A status register may be included in the flash memory device for storing a status signal indicating an execution state of a write (or erase) operation. A solid state drive system may perform the polling process by reading the status register of the flash memory device.
    Type: Application
    Filed: September 29, 2008
    Publication date: April 2, 2009
    Inventors: Tony Yoon, Akio Goto, Chi Kong Lee, Masayuki Urabe
  • Publication number: 20090077305
    Abstract: A method and apparatus for controlling access to solid state memory devices which may allow maximum parallelism on accessing solid state memory devices with minimal interventions from firmware. To reduce the waste of host time, multiple flash memory devices may be connected to each channel. A job/descriptor architecture may be used to increase parallelism by allowing each memory device to operate separately. A job may be used to represent a read, write or erase operation. When firmware wants to assign a job to a device, it may issue a descriptor, which may contain information about the target channel, the target device, the type of operation, etc. The firmware may provide descriptors without waiting for a response from a memory device, and several jobs may be issued continuously to form a job queue. After the firmware finishes programming descriptors, a sequencer may handle the remaining work so that the firmware may concentrate on other tasks.
    Type: Application
    Filed: September 17, 2008
    Publication date: March 19, 2009
    Inventors: Hyunsuk Shin, Chi Kong Lee, Tony Yoon