Patents by Inventor Radu Ioan Stoica

Radu Ioan Stoica 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: 20240071542
    Abstract: Threshold voltage shift values, or TVS values, are calibrated for a non-volatile memory unit including strings of memory cells organized into memory pages, the memory pages being organized into blocks. The calibration involves a read operation to read a given page of the memory pages, based on given one or more TVS values for the given page. In response to a read failure of the read operation, the calibration determines one or more corrected TVS values based on one or more reference TVS values of one or more reference pages of the memory pages. The calibration subsequently performs a read operation to read the given page based on the one or more corrected TVS values. This calibration exploits TVS values of reference pages to determine corrected TVS values of the failing page, instead of finding appropriate TVS values by repeatedly re-reading the failing page.
    Type: Application
    Filed: August 23, 2022
    Publication date: February 29, 2024
    Inventors: Radu Ioan Stoica, Roman Alexander Pletka, Nikolas Ioannou, Nikolaos Papandreou, Charalampos Pozidis, Timothy J. Fisher, Aaron Daniel Fry
  • Patent number: 11908531
    Abstract: A non-volatile memory includes a plurality of cells each individually capable of storing multiple bits of data including bits of multiple physical pages. A controller of the non-volatile memory issues a command to perform a programming pass for a physical page among the multiple physical pages. The controller determines whether or not the programming pass took less than a minimum threshold time and no program fail status indication was received. Based on determining the programming pass took less than a minimum threshold time and no program fail status indication was received, the controller detects an under-programming error and performs mitigation for the detected under-programming error.
    Type: Grant
    Filed: October 6, 2021
    Date of Patent: February 20, 2024
    Assignee: International Business Machines Corporation
    Inventors: Nikolaos Papandreou, Roman Alexander Pletka, Radu Ioan Stoica, Nikolas Ioannou, Charalampos Pozidis, Timothy J. Fisher, Aaron Daniel Fry
  • Patent number: 11875831
    Abstract: A controller of a non-volatile memory detects errors in data read from a particular physical page of the non-volatile memory. Based on detecting the errors, the controller performs a read voltage threshold calibration for a page group including the particular physical page and a multiple other physical pages. Performing the read voltage threshold calibration includes calibrating read voltage thresholds based on only the particular physical page of the page group. After the controller performs the read voltage threshold calibration, the controller optionally validates the calibration. Validating the calibration includes determining whether bit error rates diverge within the page group and, if so, mitigating the divergence. Mitigating the divergence includes relocating data from the page group to another block of the non-volatile memory.
    Type: Grant
    Filed: December 27, 2021
    Date of Patent: January 16, 2024
    Assignee: International Business Machines Corporation
    Inventors: Roman Alexander Pletka, Radu Ioan Stoica, Nikolas Ioannou, Nikolaos Papandreou, Charalampos Pozidis, Timothy J. Fisher, Aaron Daniel Fry
  • Patent number: 11861175
    Abstract: A method, system, and computer program product are disclosed. The method includes receiving a write request to a system and calculating, based on operating parameters of the system, a total processing time associated with servicing the write request in the system. The method also includes determining an actual time taken to store data specified in the write request and, when the actual time is less than the total processing time, delaying sending a completion message for the write request to an I/O interface.
    Type: Grant
    Filed: March 10, 2022
    Date of Patent: January 2, 2024
    Assignee: International Business Machines Corporation
    Inventors: Radu Ioan Stoica, Aaron Daniel Fry, Nikolas Ioannou, Nikolaos Papandreou, Roman Alexander Pletka, Charalampos Pozidis, Jenny L Brown
  • Patent number: 11797199
    Abstract: A non-volatile memory includes a plurality of physical blocks each including a respective plurality of cells, where each cell is individually capable of storing multiple bits of data. A controller for the non-volatile memory maintains dynamically resizable pools of physical blocks, including at least a low-density pool of physical blocks in which cells are configured to store a fewer number of bits and a high-density pool of physical blocks in which cells are configured to store a greater number of bits. The controller detects an imbalance in utilization between the low-density and high-density pools and, based on detection of the pool imbalance, restricts data placement in the low-density pool, enables garbage collection from the low-density pool back into the low-density pool to compact the low-density pool, and re-enables data placement to the low-density pool based on availability of a threshold number of free physical blocks in the low-density pool.
    Type: Grant
    Filed: July 6, 2021
    Date of Patent: October 24, 2023
    Assignee: International Business Machines Corporation
    Inventors: Roman Alexander Pletka, Aaron Daniel Fry, Nikolaos Papandreou, Radu Ioan Stoica, Charalampos Pozidis, Nikolas Ioannou
  • Patent number: 11762569
    Abstract: A computer-implemented method, according to one embodiment, includes: maintaining a first subset of the plurality of blocks in a first pool, where the blocks maintained in the first pool are configured in SLC mode. A second subset of the plurality of blocks is maintained in a second pool, where the blocks maintained in the second pool are configured in multi-bit-per-cell mode. A current I/O rate for the memory is identified during runtime, and a determination is made as to whether the current I/O rate is outside a first range. In response to determining that the current I/O rate is not outside the first range, the blocks maintained in the first pool are used to satisfy incoming host writes. Moreover, in response to determining that the current I/O rate is outside the first range, the blocks maintained in the second pool are used to satisfy incoming host writes.
    Type: Grant
    Filed: October 29, 2019
    Date of Patent: September 19, 2023
    Assignee: International Business Machines Corporation
    Inventors: Radu Ioan Stoica, Roman Alexander Pletka, Timothy Fisher, Nikolaos Papandreou, Sasa Tomic, Nikolas Ioannou, Aaron Daniel Fry, Charalampos Pozidis, Andrew D. Walls
  • Publication number: 20230289061
    Abstract: A method, system, and computer program product are disclosed. The method includes receiving a write request to a system and calculating, based on operating parameters of the system, a total processing time associated with servicing the write request in the system. The method also includes determining an actual time taken to store data specified in the write request and, when the actual time is less than the total processing time, delaying sending a completion message for the write request to an I/O interface.
    Type: Application
    Filed: March 10, 2022
    Publication date: September 14, 2023
    Inventors: Radu Ioan Stoica, Aaron Daniel Fry, Nikolas Ioannou, Nikolaos Papandreou, Roman Alexander Pletka, Charalampos Pozidis, Jenny L. Brown
  • Patent number: 11756644
    Abstract: A memory controller receives a multi-plane read request and identifies a set of actual read offsets for a set of pages in the multi-plane read request. The memory controller calculates a common read offset using the set of actual read offsets. The memory controller calculates an offset difference for. Each page. Each offset difference reflects the difference between an actual read offset for that page and the common read offset. The memory controller compares a particular page's offset difference to an offset difference threshold. The memory controller categorizes, based on the comparing, a first subset of pages from the set of pages into a single plane group and a second subset of pages from the set of pages into a multi-plane group. The memory controller performs a multi-plane read on the multi-plane group.
    Type: Grant
    Filed: June 23, 2021
    Date of Patent: September 12, 2023
    Assignee: International Business Machines Corporation
    Inventors: Nikolaos Papandreou, Nikolas Ioannou, Roman Alexander Pletka, Radu Ioan Stoica, Charalampos Pozidis, Timothy J. Fisher, Andrew D. Walls
  • Publication number: 20230207023
    Abstract: A controller of a non-volatile memory detects errors in data read from a particular physical page of the non-volatile memory. Based on detecting the errors, the controller performs a read voltage threshold calibration for a page group including the particular physical page and a multiple other physical pages. Performing the read voltage threshold calibration includes calibrating read voltage thresholds based on only the particular physical page of the page group. After the controller performs the read voltage threshold calibration, the controller optionally validates the calibration. Validating the calibration includes determining whether bit error rates diverge within the page group and, if so, mitigating the divergence. Mitigating the divergence includes relocating data from the page group to another block of the non-volatile memory.
    Type: Application
    Filed: December 27, 2021
    Publication date: June 29, 2023
    Inventors: ROMAN ALEXANDER PLETKA, RADU IOAN STOICA, NIKOLAS IOANNOU, NIKOLAOS PAPANDREOU, CHARALAMPOS POZIDIS, TIMOTHY J. FISHER, AARON DANIEL FRY
  • Patent number: 11656792
    Abstract: A data storage system provides persistent storage in bulk non-volatile memory. A controller of the data storage system receives a host write command and buffers associated host write data in both a first write cache in non-volatile memory and a mirrored second write cache in volatile memory. The controller destages the host write data to the bulk non-volatile memory from the second write cache but not the first write cache. The controller services relocation write commands requesting data relocation within the bulk non-volatile memory by reference to the second write cache. Servicing the relocation write commands includes buffering relocation write data in the second write cache but not the first write cache and destaging the relocation write data to the bulk non-volatile memory from the second write cache.
    Type: Grant
    Filed: June 29, 2021
    Date of Patent: May 23, 2023
    Assignee: International Business Machines Corporation
    Inventors: Roman Alexander Pletka, Timothy J. Fisher, Adalberto Guillermo Yanes, Nikolaos Papandreou, Radu Ioan Stoica, Charalampos Pozidis, Nikolas Ioannou
  • Publication number: 20230108194
    Abstract: A non-volatile memory includes a plurality of cells each individually capable of storing multiple bits of data including bits of multiple physical pages. A controller of the non-volatile memory issues a command to perform a programming pass for a physical page among the multiple physical pages. The controller determines whether or not the programming pass took less than a minimum threshold time and no program fail status indication was received. Based on determining the programming pass took less than a minimum threshold time and no program fail status indication was received, the controller detects an under-programming error and performs mitigation for the detected under-programming error.
    Type: Application
    Filed: October 6, 2021
    Publication date: April 6, 2023
    Inventors: Nikolaos Papandreou, ROMAN ALEXANDER PLETKA, Radu Ioan Stoica, Nikolas Ioannou, Charalampos Pozidis, Timothy J. Fisher, Aaron Daniel Fry
  • Publication number: 20230057271
    Abstract: A data storage system includes a plurality of storage devices organized as a redundant array of inexpensive disks (RAID) storage array and a RAID controller. The RAID controller monitors the plurality of storage devices in the RAID storage array. The RAID controller also detects that a host read request of a host has a latency exceeding a latency threshold. Based on the monitoring, the RAID controller determines whether a proactive rebuild of a data requested by the host read request in absence of a data error would likely be beneficial to performance. Based on determining that a proactive rebuild of the data requested by the host read request would likely be beneficial to performance, the RAID controller initiates the proactive rebuild of the data and sends the requested data to the host.
    Type: Application
    Filed: August 18, 2021
    Publication date: February 23, 2023
    Inventors: RADU IOAN STOICA, NIKOLAS IOANNOU, ROMAN ALEXANDER PLETKA, NIKOLAOS PAPANDREOU, CHARALAMPOS POZIDIS
  • Patent number: 11567673
    Abstract: A data storage system includes a plurality of storage devices organized as a redundant array of inexpensive disks (RAID) storage array and a RAID controller. The RAID controller monitors the plurality of storage devices in the RAID storage array. The RAID controller also detects that a host read request of a host has a latency exceeding a latency threshold. Based on the monitoring, the RAID controller determines whether a proactive rebuild of a data requested by the host read request in absence of a data error would likely be beneficial to performance. Based on determining that a proactive rebuild of the data requested by the host read request would likely be beneficial to performance, the RAID controller initiates the proactive rebuild of the data and sends the requested data to the host.
    Type: Grant
    Filed: August 18, 2021
    Date of Patent: January 31, 2023
    Assignee: International Business Machines Corporation
    Inventors: Radu Ioan Stoica, Nikolas Ioannou, Roman Alexander Pletka, Nikolaos Papandreou, Charalampos Pozidis
  • Publication number: 20230010632
    Abstract: A non-volatile memory includes a plurality of physical blocks each including a respective plurality of cells, where each cell is individually capable of storing multiple bits of data. A controller for the non-volatile memory maintains dynamically resizable pools of physical blocks, including at least a low-density pool of physical blocks in which cells are configured to store a fewer number of bits and a high-density pool of physical blocks in which cells are configured to store a greater number of bits. The controller detects an imbalance in utilization between the low-density and high-density pools and, based on detection of the pool imbalance, restricts data placement in the low-density pool, enables garbage collection from the low-density pool back into the low-density pool to compact the low-density pool, and re-enables data placement to the low-density pool based on availability of a threshold number of free physical blocks in the low-density pool.
    Type: Application
    Filed: July 6, 2021
    Publication date: January 12, 2023
    Inventors: ROMAN ALEXANDER PLETKA, AARON DANIEL FRY, NIKOLAOS PAPANDREOU, RADU IOAN STOICA, CHARALAMPOS POZIDIS, NIKOLAS IOANNOU
  • Publication number: 20220415424
    Abstract: A memory controller receives a multi-plane read request and identifies a set of actual read offsets for a set of pages in the multi-plane read request. The memory controller calculates a common read offset using the set of actual read offsets. The memory controller calculates an offset difference for. Each page. Each offset difference reflects the difference between an actual read offset for that page and the common read offset. The memory controller compares a particular page's offset difference to an offset difference threshold. The memory controller categorizes, based on the comparing, a first subset of pages from the set of pages into a single plane group and a second subset of pages from the set of pages into a multi-plane group. The memory controller performs a multi-plane read on the multi-plane group.
    Type: Application
    Filed: June 23, 2021
    Publication date: December 29, 2022
    Inventors: Nikolaos Papandreou, Nikolas Ioannou, Roman Alexander Pletka, Radu Ioan Stoica, Charalampos Pozidis, Timothy J. Fisher, Andrew D. Walls
  • Publication number: 20220413762
    Abstract: A data storage system provides persistent storage in bulk non-volatile memory. A controller of the data storage system receives a host write command and buffers associated host write data in both a first write cache in non-volatile memory and a mirrored second write cache in volatile memory. The controller destages the host write data to the bulk non-volatile memory from the second write cache but not the first write cache. The controller services relocation write commands requesting data relocation within the bulk non-volatile memory by reference to the second write cache. Servicing the relocation write commands includes buffering relocation write data in the second write cache but not the first write cache and destaging the relocation write data to the bulk non-volatile memory from the second write cache.
    Type: Application
    Filed: June 29, 2021
    Publication date: December 29, 2022
    Inventors: ROMAN ALEXANDER PLETKA, TIMOTHY J. FISHER, ADALBERTO GUILLERMO YANES, NIKOLAOS PAPANDREOU, RADU IOAN STOICA, CHARALAMPOS POZIDIS, NIKOLAS IOANNOU
  • Patent number: 11360903
    Abstract: A computer-implemented method, according to one approach, includes: determining a current read heat value of each logical page which corresponds to write requests that have accumulated in a destage buffer. Each of the write requests is assigned to a respective write queue based on the current read heat value of each logical page which corresponds to the write requests. Moreover, each of the write queues correspond to a different page stripe which includes physical pages, the physical pages included in each of the respective page stripes being of a same type. Other systems, methods, and computer program products are described in additional approaches.
    Type: Grant
    Filed: February 3, 2021
    Date of Patent: June 14, 2022
    Assignee: International Business Machines Corporation
    Inventors: Roman Alexander Pletka, Timothy Fisher, Aaron Daniel Fry, Nikolaos Papandreou, Nikolas Ioannou, Sasa Tomic, Radu Ioan Stoica, Charalampos Pozidis, Andrew D. Walls
  • Patent number: 11334492
    Abstract: A computer-implemented method, according to one embodiment, is for calibrating read voltages for a block of memory. The computer-implemented method includes: determining a calibration read mode of the block, and using the calibration read mode to determine whether pages in the block should be read using full page read operations. In response to determining that the pages in the block should not be read using full page read operations, a current value of a partial page read indicator for the block is determined. The block is further calibrated by reading only a portion of each page in the block, where the current value of the partial page read indicator determines which portion of each respective page in the block is read. Moreover, the current value of the partial page read indicator is incremented.
    Type: Grant
    Filed: October 24, 2019
    Date of Patent: May 17, 2022
    Assignee: International Business Machines Corporation
    Inventors: Nikolaos Papandreou, Charalampos Pozidis, Roman Alexander Pletka, Sasa Tomic, Nikolas Ioannou, Radu Ioan Stoica
  • Patent number: 11302403
    Abstract: A computer-implemented method, according to one approach, is for calibrating read voltages associated with a block of memory having more than one word-line therein. The computer-implemented method includes: for each of the word-lines in the block: calculating an absolute shift value for a reference read voltage associated with the given word-line. A relative shift value is also determined for each of the remaining read voltages associated with the given word-line, and the relative shift values are determined with respect to the reference read voltage. Moreover, each of the read voltages associated with the given word-line are adjusted using the absolute shift value and each of the respective relative shift values.
    Type: Grant
    Filed: January 14, 2021
    Date of Patent: April 12, 2022
    Assignee: International Business Machines Corporation
    Inventors: Nikolaos Papandreou, Charalampos Pozidis, Nikolas Ioannou, Roman Alexander Pletka, Radu Ioan Stoica, Sasa Tomic, Timothy Fisher, Aaron Daniel Fry
  • Patent number: 11264103
    Abstract: A computer-implemented method, according to one embodiment, includes: determining a current operating state of a block of memory. The block includes more than one type of page therein, and at least one read voltage is associated with each of the page types. The current operating state of the block is further used to produce a hybrid calibration scheme for the block which identifies a first subset of the read voltages, and a second subset of the read voltages. The read voltages in the second subset are further organized in one or more groupings. A unique read voltage offset value is calculated for each of the read voltages in the first subset, and a common read voltage offset value is also calculated for each grouping of read voltages in the second subset.
    Type: Grant
    Filed: August 28, 2019
    Date of Patent: March 1, 2022
    Assignee: International Business Machines Corporation
    Inventors: Nikolaos Papandreou, Charalampos Pozidis, Nikolas Ioannou, Roman Alexander Pletka, Radu Ioan Stoica, Sasa Tomic, Timothy Fisher, Aaron Daniel Fry, Andrew D. Walls