Patents by Inventor Haining Liu

Haining Liu 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: 10740042
    Abstract: Systems and methods are disclosed for scheduling access commands for a data storage device. A data storage device determines a layout of a plurality of non-volatile memory arrays. The data storage device also determine completed access statistics and pending access statistics for a first set of the plurality of non-volatile memory arrays during a monitoring period. The data storage device further generates a schedule based on the layout of the plurality of non-volatile memory arrays, the completed access statistics, and the pending access statistics and executes access commands based on schedule.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: August 11, 2020
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Haining Liu, YungLi Ji, Yun-Tzuo Lai, Ming-Yu Tai
  • Publication number: 20200218679
    Abstract: The subject technology provides for managing a data storage system. Commands are identified into as a first command type or a second command type. The commands identified as the first command type are assigned to a first queue, and the commands identified as the second command type are assigned to a second queue. After the commands from the first queue and the commands from the second queue are processed based on a scheduling ratio over a predetermined period of time, a write amplification factor, number of host read commands, and number of host write commands during the predetermined period of time are determined. The scheduling ratio is updated based on the write amplification, the number of host read commands, the number of host write commands, and a predetermined scheduling ratio factor. Subsequent commands are processed from the first queue and the second queue based on the updated scheduling ratio.
    Type: Application
    Filed: March 23, 2020
    Publication date: July 9, 2020
    Inventors: Scott JINN, Yun-Tzuo LAI, Haining LIU, Yuriy PAVLENKO
  • Publication number: 20200159418
    Abstract: A storage device may include a controller and a memory array including a plurality of dies arranged into a plurality of channels. In some examples, the controller may be configured to define, from the memory array, a plurality of die-sets based on respective chip enable lines associated with the plurality of dies, wherein each die-set of the plurality of die-sets includes at least one die from each of the plurality of channels; define, from a selected die-set of the plurality of die-sets, a plurality of blocksets, wherein each blockset includes a block from each die of the selected die-set; receive a unit of data to be stored; and issue commands that cause the unit of data to be stored in blocks of a selected blockset of the plurality of blocksets.
    Type: Application
    Filed: January 23, 2020
    Publication date: May 21, 2020
    Inventors: Haining LIU, Yuriy PAVLENKO, George G. ARTNAK, JR.
  • Patent number: 10635617
    Abstract: The subject technology provides for managing a data storage system. Commands are identified into as a first command type or a second command type. The commands identified as the first command type are assigned to a first queue, and the commands identified as the second command type are assigned to a second queue. After the commands from the first queue and the commands from the second queue are processed based on a scheduling ratio over a predetermined period of time, a write amplification factor, number of host read commands, and number of host write commands during the predetermined period of time are determined. The scheduling ratio is updated based on the write amplification, the number of host read commands, the number of host write commands, and a predetermined scheduling ratio factor. Subsequent commands are processed from the first queue and the second queue based on the updated scheduling ratio.
    Type: Grant
    Filed: May 19, 2017
    Date of Patent: April 28, 2020
    Assignee: Western Digital Technologies, Inc.
    Inventors: Scott Jinn, Yun-Tzuo Lai, Haining Liu, Yuriy Pavlenko
  • Publication number: 20200097187
    Abstract: A data storage device that provides priority-based internal data movement includes a controller communicatively coupled to volatile memory and to non-volatile memory circuits, where the controller is configured to queue requests in a plurality of queues in the volatile memory, where each of the requests is associated with one of a plurality of internal data movement command types. The controller is also configured to select one of the plurality of queues based on a prioritization of the plurality of internal data movement command types. The controller is also configured to determine that the selected queue includes at least one request of the associated internal data movement command type. The controller is also configured to issue the at least one request from the selected queue to at least one of the non-volatile memory circuits.
    Type: Application
    Filed: November 25, 2019
    Publication date: March 26, 2020
    Inventors: Yun-Tzuo LAI, Haining LIU, Subhash Balakrishna PILLAI
  • Publication number: 20200089563
    Abstract: A device that provides error recovery handling includes a processor that is configured to receive an error recovery request including error type information and a page address, where the error type information is mapped to a first error recovery technique. The processor may be configured to determine whether an error count associated with the flash memory circuit satisfies a first criterion and an error map associated with the flash memory circuit satisfies a second criterion, where the error count indicates a number of read errors that have occurred and the error map indicates blocks in which the read errors have occurred. The processor may be configured to utilize a second technique to attempt to recover data when the first and second criterions are satisfied, otherwise utilize the first technique to attempt to recover data, where the second technique is associated with recovering data stored in an offline flash memory circuit.
    Type: Application
    Filed: November 22, 2019
    Publication date: March 19, 2020
    Inventors: Parvaneh ALAVI, Kai-Lung CHENG, Yun-Tzuo LAI, Haining LIU
  • Publication number: 20200064126
    Abstract: A method for the rapid detection of the linear axis angular error of an NC machine tool, belongs to the technical field of NC machine tool testing. Firstly, the measuring device is mounted on the linear axis. Then, the linear axis moves at three different speeds at a constant speed, and the upper measurement system automatically performs multi-channel acquisition and storage of the motion measurement's point measurement data. Then, based on the same geometric error signal, it is decomposed into the different frequency components, and the measurement angle error is filtered at the different speeds. Finally, the measurement angle errors at the three speeds after filtering are superimposed to complete the rapid measurement of the linear axis angular error of the machine tool. The measurement efficiency is high and data processing capability is strong.
    Type: Application
    Filed: January 23, 2018
    Publication date: February 27, 2020
    Inventors: Yongqing WANG, Kuo LIU, Jiakun WU, Haibo LIU, Zhisong LIU, Haining LIU
  • Publication number: 20200064810
    Abstract: The invention provides a method for modeling and compensating for the spindle's radial thermal drift error in a horizontal CNC lathe, which belongs to the field of error compensation technology of CNC machine tools. Firstly, the thermal drift error of two points in the radial direction of the spindle and the corresponding temperature of the key points are tested; then the thermal inclination angle of the spindle is obtained based on the thermal tilt deformation mechanism of the spindle, and the correlation between the thermal inclination angle and the temperature difference between the left and right sides of the spindle box is analyzed. According to the positive or negative thermal drift error of the two points that have been measured and the elongation or shortening of the spindle box on the left and right sides, the thermal deformation of the spindle is then classified and the thermal drift error model under various thermal deformation attitudes is then established.
    Type: Application
    Filed: November 6, 2017
    Publication date: February 27, 2020
    Inventors: Kuo LIU, Yongqing WANG, Haibo LIU, Te LI, Haining LIU, Dawei LI
  • Patent number: 10552055
    Abstract: A storage device may include a controller and a memory array including a plurality of dies arranged into a plurality of channels. In some examples, the controller may be configured to define, from the memory array, a plurality of die-sets based on respective chip enable lines associated with the plurality of dies, wherein each die-set of the plurality of die-sets includes at least one die from each of the plurality of channels; define, from a selected die-set of the plurality of die-sets, a plurality of blocksets, wherein each blockset includes a block from each die of the selected die-set; receive a unit of data to be stored; and issue commands that cause the unit of data to be stored in blocks of a selected blockset of the plurality of blocksets.
    Type: Grant
    Filed: March 29, 2019
    Date of Patent: February 4, 2020
    Assignee: Western Digital Technologies, Inc.
    Inventors: Haining Liu, Yuriy Pavlenko, George G. Artnak, Jr.
  • Patent number: 10503412
    Abstract: A data storage device that provides priority-based internal data movement includes a controller communicatively coupled to volatile memory and to non-volatile memory circuits, where the controller is configured to queue requests in a plurality of queues in the volatile memory, where each of the requests is associated with one of a plurality of internal data movement command types. The controller is also configured to select one of the plurality of queues based on a prioritization of the plurality of internal data movement command types. The controller is also configured to determine that the selected queue includes at least one request of the associated internal data movement command type. The controller is also configured to issue the at least one request from the selected queue to at least one of the non-volatile memory circuits.
    Type: Grant
    Filed: May 24, 2017
    Date of Patent: December 10, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Yun-Tzuo Lai, Haining Liu, Subhash Balakrishna Pillai
  • Patent number: 10496470
    Abstract: A device that provides error recovery handling includes a processor that is configured to receive an error recovery request including error type information and a page address, where the error type information is mapped to a first error recovery technique. The processor may be configured to determine whether an error count associated with the flash memory circuit satisfies a first criterion and an error map associated with the flash memory circuit satisfies a second criterion, where the error count indicates a number of read errors that have occurred and the error map indicates blocks in which the read errors have occurred. The processor may be configured to utilize a second technique to attempt to recover data when the first and second criterions are satisfied, otherwise utilize the first technique to attempt to recover data, where the second technique is associated with recovering data stored in an offline flash memory circuit.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: December 3, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Parvaneh Alavi, Kai-Lung Cheng, Yun-Tzuo Lai, Haining Liu
  • Publication number: 20190317678
    Abstract: Command scheduling for die sets of non-volatile memory may be performed based on command states of the die sets. Upon receiving an erase command to erase data stored in a first block set of non-volatile memory, a command state of the first die set of the non-volatile memory is determined, where the first die set contains the first block set. If the first die set is determined to be in a pending command state, the erase command is queued in a wait queue. If the first die set is determined to be in an idle command state, the erase command is scheduled to erase the data stored in the first block set.
    Type: Application
    Filed: June 27, 2019
    Publication date: October 17, 2019
    Inventors: YungLi JI, Yun-Tzuo LAI, Haining LIU, Yuriy PAVLENKO
  • Publication number: 20190317700
    Abstract: The subject technology provides for recovering a validity table for a data storage system. A set of logical addresses in a mapping table is partitioned into subsets of logical addresses. Each of the subsets of logical addresses is assigned to respective processor cores in the data storage system. Each of the processor cores is configured to check each logical address of the assigned subset of logical addresses in the mapping table for a valid physical address mapped to the logical address, for each valid physical address mapped to a logical address of the assigned subset of logical addresses, increment a validity count in a local validity table associated with a blockset of the non-volatile memory corresponding to the valid physical address, and update validity counts in a global validity table associated with respective blocksets of the non-volatile memory with the validity counts in the local validity table.
    Type: Application
    Filed: June 27, 2019
    Publication date: October 17, 2019
    Inventors: Caesar Cheuk-Chow CHEUNG, Haining LIU, Subhash Balakrishna PILLAI
  • Patent number: 10380028
    Abstract: The subject technology provides for recovering a validity table for a data storage system. A set of logical addresses in a mapping table is partitioned into subsets of logical addresses. Each of the subsets of logical addresses is assigned to respective processor cores in the data storage system. Each of the processor cores is configured to check each logical address of the assigned subset of logical addresses in the mapping table for a valid physical address mapped to the logical address, for each valid physical address mapped to a logical address of the assigned subset of logical addresses, increment a validity count in a local validity table associated with a blockset of the non-volatile memory corresponding to the valid physical address, and update validity counts in a global validity table associated with respective blocksets of the non-volatile memory with the validity counts in the local validity table.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: August 13, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Caesar Cheuk-Chow Cheung, Haining Liu, Subhash Balakrishna Pillai
  • Patent number: 10379765
    Abstract: Command scheduling for die sets of non-volatile memory may be performed based on command states of the die sets. Upon receiving an erase command to erase data stored in a first block set of non-volatile memory, a command state of the first die set of the non-volatile memory is determined, where the first die set contains the first block set. If the first die set is determined to be in a pending command state, the erase command is queued in a wait queue. If the first die set is determined to be in an idle command state, the erase command is scheduled to erase the data stored in the first block set.
    Type: Grant
    Filed: August 15, 2017
    Date of Patent: August 13, 2019
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: YungLi Ji, Yun-Tzuo Lai, Haining Liu, Yuriy Pavlenko
  • Patent number: 10373695
    Abstract: Aspects of the disclosure provide methods and apparatus for handling Read Disturb and block errors in a non-volatile memory (NVM) device. An error level of both an aggressor page that causes Read Disturb errors and an error level of adjacent victim pages are obtained. The error level of the victim page is compared against a predetermined threshold error level to determine if the victim page is experiencing a high level of bit errors. If so, then the error level of the aggressor page is compared to the error level of the victim page to determine whether Read Disturb errors are actually occurring due to host reads of the aggressor page. By looking at both the aggressor and victim error levels, a more accurate determination of Read Disturb errors may be obtained, resulting in less unnecessary relocations of pages and blocks within an NVM for mitigating Read Disturb effects.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: August 6, 2019
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Richard David Barndt, Aldo Giovanni Cometti, Haining Liu, Jerry Lo
  • Patent number: 10372382
    Abstract: Aspects of the disclosure provide methods and apparatus that monitor and mitigate Read Disturb errors in non-volatile memory (NVM) devices such as NAND flash memories. The disclosed methods and apparatus determine which logical block addresses (LBAs) in the NVM device are frequently accessed by a host, rather than looking a physical address accesses. The potential Read Disturb errors may then be mitigated by triggering Read Disturb mitigation when the numbers of access of one or more of the frequently accessed LBAs exceeds a predefined number of accesses.
    Type: Grant
    Filed: December 29, 2016
    Date of Patent: August 6, 2019
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Parvaneh Alavi, Hung-min Chang, Haining Liu, Jerry Lo, Hung-Cheng Yeh
  • Publication number: 20190227720
    Abstract: A storage device may include a controller and a memory array including a plurality of dies arranged into a plurality of channels. In some examples, the controller may be configured to define, from the memory array, a plurality of die-sets based on respective chip enable lines associated with the plurality of dies, wherein each die-set of the plurality of die-sets includes at least one die from each of the plurality of channels; define, from a selected die-set of the plurality of die-sets, a plurality of blocksets, wherein each blockset includes a block from each die of the selected die-set; receive a unit of data to be stored; and issue commands that cause the unit of data to be stored in blocks of a selected blockset of the plurality of blocksets.
    Type: Application
    Filed: March 29, 2019
    Publication date: July 25, 2019
    Inventors: Haining LIU, Yuriy PAVLENKO, George G. Artnak, JR.
  • Patent number: 10289314
    Abstract: A storage device may include a controller and a memory array including a plurality of dies arranged into a plurality of channels. In some examples, the controller may be configured to define, from the memory array, a plurality of die-sets based on respective chip enable lines associated with the plurality of dies, wherein each die-set of the plurality of die-sets includes at least one die from each of the plurality of channels; define, from a selected die-set of the plurality of die-sets, a plurality of blocksets, wherein each blockset includes a block from each die of the selected die-set; receive a unit of data to be stored; and issue commands that cause the unit of data to be stored in blocks of a selected blockset of the plurality of blocksets.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: May 14, 2019
    Assignee: Western Digital Technologies, Inc.
    Inventors: Haining Liu, Yuriy Pavlenko, George G. Artnak, Jr.
  • Patent number: 10289317
    Abstract: A method of wear leveling receives a write request. The write request indicates received data to be written to memory blocks. The method detects a system condition. Example system conditions include a random write condition, a garbage collection start condition, and/or a sequential write condition. Based on the system condition, the method determines whether the received data comprises hot data or cold data. Some embodiments use a write amplification value to determine the system condition. If the received data comprises hot data, the method writes the received data to a cold block. If the received data comprises cold data, the method writes the received data to a hot block.
    Type: Grant
    Filed: December 31, 2016
    Date of Patent: May 14, 2019
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Ming-Yu Tai, Subhash Balakrishna Pillai, Yung-Li Ji, Haining Liu