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: 10740042Abstract: 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: GrantFiled: December 30, 2016Date of Patent: August 11, 2020Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Haining Liu, YungLi Ji, Yun-Tzuo Lai, Ming-Yu Tai
-
Publication number: 20200218679Abstract: 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: ApplicationFiled: March 23, 2020Publication date: July 9, 2020Inventors: Scott JINN, Yun-Tzuo LAI, Haining LIU, Yuriy PAVLENKO
-
Publication number: 20200159418Abstract: 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: ApplicationFiled: January 23, 2020Publication date: May 21, 2020Inventors: Haining LIU, Yuriy PAVLENKO, George G. ARTNAK, JR.
-
Patent number: 10635617Abstract: 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: GrantFiled: May 19, 2017Date of Patent: April 28, 2020Assignee: Western Digital Technologies, Inc.Inventors: Scott Jinn, Yun-Tzuo Lai, Haining Liu, Yuriy Pavlenko
-
Publication number: 20200097187Abstract: 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: ApplicationFiled: November 25, 2019Publication date: March 26, 2020Inventors: Yun-Tzuo LAI, Haining LIU, Subhash Balakrishna PILLAI
-
Publication number: 20200089563Abstract: 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: ApplicationFiled: November 22, 2019Publication date: March 19, 2020Inventors: Parvaneh ALAVI, Kai-Lung CHENG, Yun-Tzuo LAI, Haining LIU
-
Publication number: 20200064126Abstract: 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: ApplicationFiled: January 23, 2018Publication date: February 27, 2020Inventors: Yongqing WANG, Kuo LIU, Jiakun WU, Haibo LIU, Zhisong LIU, Haining LIU
-
Publication number: 20200064810Abstract: 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: ApplicationFiled: November 6, 2017Publication date: February 27, 2020Inventors: Kuo LIU, Yongqing WANG, Haibo LIU, Te LI, Haining LIU, Dawei LI
-
Patent number: 10552055Abstract: 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: GrantFiled: March 29, 2019Date of Patent: February 4, 2020Assignee: Western Digital Technologies, Inc.Inventors: Haining Liu, Yuriy Pavlenko, George G. Artnak, Jr.
-
Patent number: 10503412Abstract: 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: GrantFiled: May 24, 2017Date of Patent: December 10, 2019Assignee: Western Digital Technologies, Inc.Inventors: Yun-Tzuo Lai, Haining Liu, Subhash Balakrishna Pillai
-
Patent number: 10496470Abstract: 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: GrantFiled: December 30, 2016Date of Patent: December 3, 2019Assignee: Western Digital Technologies, Inc.Inventors: Parvaneh Alavi, Kai-Lung Cheng, Yun-Tzuo Lai, Haining Liu
-
Publication number: 20190317678Abstract: 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: ApplicationFiled: June 27, 2019Publication date: October 17, 2019Inventors: YungLi JI, Yun-Tzuo LAI, Haining LIU, Yuriy PAVLENKO
-
Publication number: 20190317700Abstract: 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: ApplicationFiled: June 27, 2019Publication date: October 17, 2019Inventors: Caesar Cheuk-Chow CHEUNG, Haining LIU, Subhash Balakrishna PILLAI
-
Patent number: 10380028Abstract: 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: GrantFiled: December 30, 2016Date of Patent: August 13, 2019Assignee: Western Digital Technologies, Inc.Inventors: Caesar Cheuk-Chow Cheung, Haining Liu, Subhash Balakrishna Pillai
-
Patent number: 10379765Abstract: 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: GrantFiled: August 15, 2017Date of Patent: August 13, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: YungLi Ji, Yun-Tzuo Lai, Haining Liu, Yuriy Pavlenko
-
Patent number: 10373695Abstract: 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: GrantFiled: December 30, 2016Date of Patent: August 6, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Richard David Barndt, Aldo Giovanni Cometti, Haining Liu, Jerry Lo
-
Patent number: 10372382Abstract: 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: GrantFiled: December 29, 2016Date of Patent: August 6, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Parvaneh Alavi, Hung-min Chang, Haining Liu, Jerry Lo, Hung-Cheng Yeh
-
Publication number: 20190227720Abstract: 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: ApplicationFiled: March 29, 2019Publication date: July 25, 2019Inventors: Haining LIU, Yuriy PAVLENKO, George G. Artnak, JR.
-
Patent number: 10289314Abstract: 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: GrantFiled: February 28, 2017Date of Patent: May 14, 2019Assignee: Western Digital Technologies, Inc.Inventors: Haining Liu, Yuriy Pavlenko, George G. Artnak, Jr.
-
Patent number: 10289317Abstract: 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: GrantFiled: December 31, 2016Date of Patent: May 14, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Ming-Yu Tai, Subhash Balakrishna Pillai, Yung-Li Ji, Haining Liu