Patents by Inventor Yoav Kasorla

Yoav Kasorla 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: 10936456
    Abstract: A controller includes an interface and storage circuitry. The interface communicates with one or more memory devices, each of the memory devices includes multiple memory cells organized in memory blocks. The storage circuitry is configured to perform multiple storage operations to the memory cells in the one or more memory devices, and mark memory blocks in which one or more storage operations have failed as bad blocks. The controller is further configured to identify a pattern of multiple bad blocks occurring over a sequence of multiple consecutive storage operations, the pattern is indicative of a system-level malfunction in a memory system including the controller, and in response to identifying the pattern, to perform a corrective action to the memory system.
    Type: Grant
    Filed: February 20, 2019
    Date of Patent: March 2, 2021
    Assignee: APPLE INC.
    Inventors: Yael Shur, Assaf Shappir, Stas Mouler, Yoav Kasorla
  • Patent number: 10115476
    Abstract: A method for data storage includes receiving in a memory device data for storage in a group of memory cells. The data is stored in the group by performing a Program and Verify (P&V) process, which applies to the memory cells in the group a sequence of programming pulses and compares respective analog values of the memory cells in the group to respective verification thresholds. Immediately following successful completion of the P&V process, a mismatch between the stored data and the received data is detected in the memory device. An error in storage of the data is reported responsively to the mismatch.
    Type: Grant
    Filed: July 28, 2016
    Date of Patent: October 30, 2018
    Assignee: Apple Inc.
    Inventors: Eyal Gurgi, Yoav Kasorla, Barak Rotbard, Shai Ojalvo
  • Patent number: 10073634
    Abstract: A method includes storing data encoded with an Error Correction Code (ECC) in analog memory cells, by buffering the data in a volatile buffer and then writing the buffered data to the analog memory cells while overwriting at least some of the data in the volatile buffer with success indications. Upon detecting a failure in writing the buffered data to the analog memory cells, recovered data is produced by reading both the volatile buffer and the analog memory cells, assigning reliability metrics to respective bits of the recovered data depending on whether the bits were read from the volatile buffer or from the analog memory cells, and applying ECC decoding to the recovered data using the reliability metrics. The recovered data is re-programmed.
    Type: Grant
    Filed: August 7, 2015
    Date of Patent: September 11, 2018
    Assignee: Apple Inc.
    Inventors: Shai Ojalvo, Eyal Gurgi, Yoav Kasorla
  • Patent number: 10056135
    Abstract: A method for data storage includes storing first data bits in a set of multi-bit analog memory cells at a first time by programming the memory cells to assume respective first programming levels. Second data bits are stored in the set of memory cells at a second time that is later than the first time by programming the memory cells to assume respective second programming levels that depend on the first programming levels and on the second data bits. A storage strategy is selected responsively to a difference between the first and second times. The storage strategy is applied to at least one group of the data bits, selected from among the first data bits and the second data bits.
    Type: Grant
    Filed: September 6, 2016
    Date of Patent: August 21, 2018
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Patent number: 9817751
    Abstract: A method for data storage includes defining an end-to-end mapping between data bits to be stored in a memory device that includes multiple memory cells and predefined programming levels. The data bits are mapped into mapped bits, so that the number of the mapped bits is smaller than the number of the data bits. The data bits are stored in the memory device by programming the mapped bits in the memory cells using a programming scheme that guarantees the end-to-end mapping. After storing the data bits, the data bits are read from the memory device in accordance with the end-to-end mapping.
    Type: Grant
    Filed: September 3, 2014
    Date of Patent: November 14, 2017
    Assignee: Apple Inc.
    Inventors: Stas Mouler, Shai Ojalvo, Yoav Kasorla, Eyal Gurgi
  • Patent number: 9811413
    Abstract: A system for data storage includes one or more non-volatile memory (NVM) devices, each device including multiple memory blocks, and a processor. The processor is configured to assign the memory blocks into groups, to apply a redundant data storage scheme in each of the groups, to identify a group of the memory blocks including at least one bad block that renders remaining memory blocks in the group orphan blocks, to select a type of data suitable for storage in the orphan blocks, and to store the data of the identified type in the orphan blocks.
    Type: Grant
    Filed: July 30, 2014
    Date of Patent: November 7, 2017
    Assignee: Apple Inc.
    Inventors: Shai Ojalvo, Yair Schwartz, Eyal Gurgi, Yoav Kasorla
  • Patent number: 9779038
    Abstract: A method includes executing a first memory access operation in a memory. A progress indication, which is indicative of a progress of execution of the first memory access operation, is obtained from the memory. Based on the progress indication, a decision is made whether to suspend the execution of the first memory access operation in order to execute a second memory access operation.
    Type: Grant
    Filed: January 31, 2013
    Date of Patent: October 3, 2017
    Assignee: Apple Inc.
    Inventors: Yoav Kasorla, Asaf Schushan, Asaf Vega, Eyal Gurgi, Shai Ojalvo
  • Patent number: 9671968
    Abstract: A method includes, in a memory device, receiving a command that specifies a peak power consumption that is not to be exceeded by the memory device. A memory of the memory device is configured in accordance with the peak power consumption specified in the command. A data storage operation in the configured memory is performed, while complying with the specified peak power consumption.
    Type: Grant
    Filed: May 16, 2016
    Date of Patent: June 6, 2017
    Assignee: Apple Inc.
    Inventors: Yoav Kasorla, Avraham Poza Meir
  • Patent number: 9632706
    Abstract: A method includes, in a memory system that includes multiple memory units, holding information indicative of respective programming durations of the memory units. Data is stored in a stripe that includes a plurality of the memory units, by programming the memory units in the stripe in an order that is set based on the information.
    Type: Grant
    Filed: January 4, 2015
    Date of Patent: April 25, 2017
    Assignee: APPLE INC.
    Inventors: Shai Ojalvo, Eyal Gurgi, Yoav Kasorla
  • Patent number: 9583199
    Abstract: A method includes, in a plurality of memory cells that share a common isolation layer and store in the common isolation layer quantities of electrical charge representative of data values, assigning a first group of the memory cells for data storage, and assigning a second group of the memory cells for protecting the electrical charge stored in the first group from retention drift. Data is stored in the memory cells of the first group. Protective quantities of the electrical charge that protect from the retention drift in the memory cells of the first group are stored in the memory cells of the second group.
    Type: Grant
    Filed: June 23, 2016
    Date of Patent: February 28, 2017
    Assignee: Apple Inc.
    Inventors: Avraham Poza Meir, Eyal Gurgi, Naftali Sommer, Yoav Kasorla
  • Publication number: 20160372184
    Abstract: A method for data storage includes storing first data bits in a set of multi-bit analog memory cells at a first time by programming the memory cells to assume respective first programming levels. Second data bits are stored in the set of memory cells at a second time that is later than the first time by programming the memory cells to assume respective second programming levels that depend on the first programming levels and on the second data bits. A storage strategy is selected responsively to a difference between the first and second times. The storage strategy is applied to at least one group of the data bits, selected from among the first data bits and the second data bits.
    Type: Application
    Filed: September 6, 2016
    Publication date: December 22, 2016
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Patent number: 9502120
    Abstract: A method for data storage includes accepting data for storage in an array of memory cells, which are arranged in rows associated with respective word lines. Data is stored in one or more memory cells of the array using one or more programming levels. In response to a determination that a first memory cell of the one or more memory cells is subject to distortion, a second memory cell may be programmed to a predetermined programming level.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: November 22, 2016
    Assignee: Apple Inc
    Inventors: Yoav Kasorla, Naftali Sommer, Eyal Gurgi, Micha Anholt
  • Publication number: 20160336078
    Abstract: A method for data storage includes receiving in a memory device data for storage in a group of memory cells. The data is stored in the group by performing a Program and Verify (P&V) process, which applies to the memory cells in the group a sequence of programming pulses and compares respective analog values of the memory cells in the group to respective verification thresholds. Immediately following successful completion of the P&V process, a mismatch between the stored data and the received data is detected in the memory device. An error in storage of the data is reported responsively to the mismatch.
    Type: Application
    Filed: July 28, 2016
    Publication date: November 17, 2016
    Inventors: Eyal Gurgi, Yoav Kasorla, Barak Rotbard, Shai Ojalvo
  • Patent number: 9490023
    Abstract: A method includes storing data values in a group of memory cells that share a common isolating layer, by producing quantities of electrical charge representative of the data values at respective regions of the common isolating layer that are associated with the memory cells. A function, which relates a drift of the electrical charge in a given memory cell in the group to the data values stored in one or more other memory cells in the group, is estimated. The drift is compensated for using the estimated function.
    Type: Grant
    Filed: March 19, 2014
    Date of Patent: November 8, 2016
    Assignee: Apple Inc.
    Inventors: Naftali Sommer, Avraham Poza Meir, Yoav Kasorla, Eyal Gurgi
  • Publication number: 20160307631
    Abstract: A method includes, in a plurality of memory cells that share a common isolation layer and store in the common isolation layer quantities of electrical charge representative of data values, assigning a first group of the memory cells for data storage, and assigning a second group of the memory cells for protecting the electrical charge stored in the first group from retention drift. Data is stored in the memory cells of the first group. Protective quantities of the electrical charge that protect from the retention drift in the memory cells of the first group are stored in the memory cells of the second group.
    Type: Application
    Filed: June 23, 2016
    Publication date: October 20, 2016
    Inventors: Avraham Poza Meir, Eyal Gurgi, Naftali Sommer, Yoav Kasorla
  • Patent number: 9455040
    Abstract: A method in a non-volatile memory, which includes multiple memory cells that store data using a predefined set of programming levels including an erased level, includes receiving a storage operation indicating a group of the memory cells that are to be retained without programming for a long time period. The memory cells in the group are set to a retention programming level that is different from the erased level. Upon preparing to program the group of memory cells with data, the group of memory cells is erased to the erased level and the data is then programmed in the group of memory cells.
    Type: Grant
    Filed: December 8, 2015
    Date of Patent: September 27, 2016
    Assignee: Apple Inc.
    Inventors: Yael Shur, Yoav Kasorla, Moshe Neerman, Naftali Sommer, Avraham Poza Meir, Etai Zaltsman, Eyal Gurgi, Meir Dalal
  • Patent number: 9449705
    Abstract: A method for data storage includes storing first data bits in a set of multi-bit analog memory cells at a first time by programming the memory cells to assume respective first programming levels. Second data bits are stored in the set of memory cells at a second time that is later than the first time by programming the memory cells to assume respective second programming levels that depend on the first programming levels and on the second data bits. A storage strategy is selected responsively to a difference between the first and second times. The storage strategy is applied to at least one group of the data bits, selected from among the first data bits and the second data bits.
    Type: Grant
    Filed: February 6, 2014
    Date of Patent: September 20, 2016
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Publication number: 20160266835
    Abstract: A method includes, in a memory device, receiving a command that specifies a peak power consumption that is not to be exceeded by the memory device. A memory of the memory device is configured in accordance with the peak power consumption specified in the command. A data storage operation in the configured memory is performed, while complying with the specified peak power consumption.
    Type: Application
    Filed: May 16, 2016
    Publication date: September 15, 2016
    Inventors: Yoav Kasorla, Avraham Poza Meir
  • Patent number: 9423961
    Abstract: An apparatus includes an interface and a processor. The interface is configured to communicate with a memory device. The processor is configured to send to the memory device, via the interface, a sequence of write commands that program multiple types of memory pages that incur respective different programming durations in the memory device, while inserting in the sequence suspension periods for permitting execution of storage commands that are not part of the sequence, such that at least some of the suspension periods are followed by write commands of types that do not have a shortest programming duration among the programming durations.
    Type: Grant
    Filed: September 8, 2014
    Date of Patent: August 23, 2016
    Assignee: Apple Inc.
    Inventors: Atai Levy, Yoav Kasorla, Stas Mouler, Alex Borisenkov, Dmitry Koyfman
  • Patent number: 9417948
    Abstract: A method for data storage includes receiving in a memory device data for storage in a group of memory cells. The data is stored in the group by performing a Program and Verify (P&V) process, which applies to the memory cells in the group a sequence of programming pulses and compares respective analog values of the memory cells in the group to respective verification thresholds. Immediately following successful completion of the P&V process, a mismatch between the stored data and the received data is detected in the memory device. An error in storage of the data is reported responsively to the mismatch.
    Type: Grant
    Filed: March 19, 2015
    Date of Patent: August 16, 2016
    Assignee: Apple Inc.
    Inventors: Eyal Gurgi, Yoav Kasorla, Barak Rotbard, Shai Ojalvo