Patents by Inventor Naftali Sommer

Naftali Sommer 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: 20120246443
    Abstract: A data storage method includes identifying, in a set of data items associated with respective logical addresses for storage in a memory, a first subset of the logical addresses associated with the data items containing application data, and a second subset of the logical addresses associated with the data items containing parity information that has been calculated over the application data. The data items associated with the first identified subset are stored in one or more first physical memory areas of the memory, and the data items associated with the second identified subset are stored in one or more second physical memory areas of the memory, different from the first physical memory areas. A memory management task is performed independently in the first physical memory areas and in the second physical memory areas.
    Type: Application
    Filed: March 14, 2012
    Publication date: September 27, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Avraham Meir, Oren Golov, Naftali Sommer, Moshe Neerman
  • Patent number: 8259497
    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: August 6, 2008
    Date of Patent: September 4, 2012
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Patent number: 8259506
    Abstract: A method for data storage includes storing multiple sets each including one or more read thresholds for use in reading data from a plurality of analog memory cells. The memory cells are arranged in multiple erasure blocks each including multiple pages, and each set of read thresholds is associated with a respective page in one of the erasure blocks. A first page, which belongs to a given erasure block and is not associated with any of the stored sets of read thresholds, is read by retrieving a stored set of read thresholds that is associated with a second page in the given erasure block, adapting the retrieved set of read thresholds to match the first page, and reading the first page using the adapted set of read thresholds.
    Type: Grant
    Filed: March 22, 2010
    Date of Patent: September 4, 2012
    Assignee: Apple Inc.
    Inventors: Naftali Sommer, Uri Perlmutter
  • Patent number: 8261159
    Abstract: A method for data storage includes defining a set of scrambling sequences, each sequence including bits in respective bit positions having bit values, such that a distribution of the bit values in any give bit position satisfies a predefined statistical criterion. Each data word is scrambled using a respective scrambling sequence selected from the set. The scrambled data words are stored in the memory device.
    Type: Grant
    Filed: October 28, 2009
    Date of Patent: September 4, 2012
    Assignee: Apple, Inc.
    Inventors: Naftali Sommer, Micha Anholt, Oren Golov, Uri Perlmutter, Shai Winter, Gil Semo
  • Publication number: 20120221913
    Abstract: A method includes accepting input including at least part of a codeword that has been encoded by an ECC defined by a set of parity check equations. The codeword includes data bits and parity bits. A decoding process is applied to the codeword using the data bits and only a first partial subset of parity bits in the input, and using only a second partial subset of equations. Upon a failure to decode the codeword using the partial subsets, the codeword is re-decoded using the data bits and all parity bits in the input, and using all equations. The set of parity check equations is defined such that any parity bit in the codeword appears in multiple equations, and any parity bit in the first partial subset of the parity bits appears in a plurality of equations in the second partial subset of the equations.
    Type: Application
    Filed: February 26, 2012
    Publication date: August 30, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Micha Anholt, Naftali Sommer
  • Patent number: 8248831
    Abstract: A method for data storage in a memory that includes multiple analog memory cells fabricated using respective physical media, includes identifying a group of the memory cells whose physical media have deteriorated over time below a given storage quality level. A rejuvenation process, which causes the physical media of the memory cells in the group to meet the given storage quality level, is applied to the identified group. Data is stored in the rejuvenated group of the memory cells.
    Type: Grant
    Filed: December 30, 2009
    Date of Patent: August 21, 2012
    Assignee: Apple Inc.
    Inventors: Barak Rotbard, Naftali Sommer, Shai Winter, Ofir Shalvi, Dotan Sokolov, Or Ordentlich, Micha Anholt
  • Publication number: 20120201078
    Abstract: A method for data storage includes accepting data for storage in a memory that includes multiple analog memory cells and supports a set of built-in programming commands. Each of the programming commands programs a respective page, selected from a group of N pages, in a subset of the memory cells. The subset of the memory cells is programmed to store M pages of the data, M>N, by performing a sequence of the programming commands drawn only from the set.
    Type: Application
    Filed: April 18, 2012
    Publication date: August 9, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Dotan Sokolov
  • Patent number: 8238157
    Abstract: A method for data storage includes defining, in a memory that includes multiple analog memory cells, an erased state, a set of non-erased programming states and a partial subset of the non-erased programming states. Data is initially stored in a first group of the analog memory cells by programming each of at least some of the memory cells in the first group from the erased state to a respective non-erased programming state selected from the set of non-erased programming states. After initially storing the data, a second group of the analog memory cells, which potentially cause interference to the first group, is programmed. After programming the second group, the first group is selectively re-programmed with the data by repeating programming of only the memory cells in the first group whose respective programming states belong to the partial subset.
    Type: Grant
    Filed: April 11, 2010
    Date of Patent: August 7, 2012
    Assignee: Apple Inc.
    Inventors: Naftali Sommer, Uri Perlmutter, Shai Winter
  • Patent number: 8234545
    Abstract: A method for operating a memory includes encoding input data with an Error Correction Code (ECC) to produce input encoded data including first and second sections, such that the ECC is decodable based on the first section at a first redundancy, and based on both the first and the second sections at a second redundancy that is higher than the first redundancy. Output encoded data is read and a condition is evaluated. The input data is reconstructed using a decoding level selected, responsively to the condition, from a first level, at which a first part of the output encoded data corresponding to the first section is processed to decode the ECC at the first redundancy, and a second level, at which the first part and a second part of the output encoded data corresponding to the second section are processed jointly to decode the ECC at the second redundancy.
    Type: Grant
    Filed: May 12, 2008
    Date of Patent: July 31, 2012
    Assignee: Apple Inc.
    Inventors: Ofir Shalvi, Dotan Sokolov, Eyal Gurgi, Oren Golov, Naftali Sommer
  • Patent number: 8228701
    Abstract: A method for data storage includes defining a first programming scheme that programs a group of analog memory cells while reducing interference caused by at least one memory cell that neighbors the group, and a second programming scheme that programs the group of the analog memory cells and does not reduce all of the interference reduced by the first programming scheme. One of the first and second programming schemes is selected based on a criterion defined with respect to the analog memory cells. Data is stored in the group of the analog memory cells using the selected programming scheme.
    Type: Grant
    Filed: February 28, 2010
    Date of Patent: July 24, 2012
    Assignee: Apple Inc.
    Inventors: Dotan Sokolov, Naftali Sommer, Uri Perlmutter, Ofir Shalvi
  • Patent number: 8225181
    Abstract: A method for data storage includes storing data, which is encoded with an Error Correction Code (ECC), in a group of analog memory cells by writing respective first storage values to the memory cells in the group. After storing the data, respective second storage values are read from the memory cells in the group, and the read second storage values are processed so as to decode the ECC. Responsively to a failure in decoding the ECC, one or more of the second storage values that potentially caused the failure are identified as suspect storage values. Respective third storage values are re-read from a subset of the memory cells that includes the memory cells holding the suspect storage values. The ECC is re-decoded using the third storage values so as to reconstruct the stored data.
    Type: Grant
    Filed: November 26, 2008
    Date of Patent: July 17, 2012
    Assignee: Apple Inc.
    Inventors: Uri Perlmutter, Naftali Sommer, Ofir Shalvi
  • Patent number: 8208304
    Abstract: A method for data storage includes accepting data for storage in a memory that includes multiple analog memory cells and supports a set of built-in programming commands. Each of the programming commands programs a respective page, selected from a group of N pages, in a subset of the memory cells. The subset of the memory cells is programmed to store M pages of the data, M>N, by performing a sequence of the programming commands drawn only from the set.
    Type: Grant
    Filed: November 15, 2009
    Date of Patent: June 26, 2012
    Assignee: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Dotan Sokolov
  • Publication number: 20120159281
    Abstract: A method for data storage in a memory including multiple memory cells arranged in blocks, includes storing first and second pages in respective first and second groups of the memory cells within a given block of the memory. A pattern of respective positions of one or more defective memory cells is identified in the first group. The second page is recovered by applying the pattern identified in the first group to the second group of the memory cells.
    Type: Application
    Filed: February 26, 2012
    Publication date: June 21, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Ofir Shalvi, Naftali Sommer, Oren Golov
  • Patent number: 8174857
    Abstract: A method for data readout includes storing two or more candidate sets of read thresholds for reading from a memory device that includes a plurality of analog memory cells. A group of the memory cells from which data is to be read is identified. An order is defined among the candidate sets of the read thresholds responsively to a criterion defined over the group of the memory cells. Data readout from the group of the memory cells is attempted by iterating over the candidate sets according to the order, until the data is read successfully.
    Type: Grant
    Filed: December 30, 2009
    Date of Patent: May 8, 2012
    Assignee: Anobit Technologies Ltd.
    Inventors: Naftali Sommer, Uri Perlmutter
  • Patent number: 8169825
    Abstract: A method for data storage in a non-volatile memory includes storing data in the non-volatile memory using a first storage configuration while the non-volatile memory is supplied with electrical power. After storing the data, an indication is accepted, indicating that shut-off of the electrical power is imminent. Responsively to the indication and before the shut-off, at least some of the data is re-programmed in the non-volatile memory using a second storage configuration.
    Type: Grant
    Filed: September 1, 2009
    Date of Patent: May 1, 2012
    Assignee: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Barak Rotbard, Oren Golov, Micha Anholt, Uri Perlmutter
  • Patent number: 8156403
    Abstract: A method for operating a memory device (24) includes encoding data using an Error Correction Code (ECC) and storing the encoded data as first analog values in respective analog memory cells (32) of the memory device. After storing the encoded data, second analog values are read from the respective memory cells of the memory device in which the encoded data were stored. At least some of the second analog values differ from the respective first analog values. A distortion that is present in the second analog values is estimated. Error correction metrics are computed with respect to the second analog values responsively to the estimated distortion. The second analog values are processed using the error correction metrics in an ECC decoding process, so as to reconstruct the data.
    Type: Grant
    Filed: May 10, 2007
    Date of Patent: April 10, 2012
    Assignee: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Ariel Maislos, Dotan Sokolov
  • Patent number: 8156398
    Abstract: A method for operating a memory, which includes analog memory cells, includes encoding data with an Error Correction Code (ECC) that is representable by a plurality of equations. The encoded data is stored in a group of the analog memory cells by writing respective input storage values to the memory cells in the group. Multiple sets of output storage values are read from the memory cells in the group using one or more different, respective read parameters for each set. Numbers of the equations, which are satisfied by the respective sets of the output storage values, are determined. A preferred setting of the read parameters is identified responsively to the respective numbers of the satisfied equations. The memory is operated on using the preferred setting of the read parameters.
    Type: Grant
    Filed: February 3, 2009
    Date of Patent: April 10, 2012
    Assignee: Anobit Technologies Ltd.
    Inventor: Naftali Sommer
  • Patent number: 8149925
    Abstract: A novel apparatus and method of differential decoding for use in a communication system such as a cable system. The differential decoding mechanism of the present invention enables the use of the Chase algorithm for Reed Solomon (RS) codes (i.e. non-binary codes). The mechanism is well suited for use in systems employing QAM data modulation/demodulation techniques and that also incorporate use of a differential encoder such as in DOCSIS capable cable modem systems. The differential decoding mechanism is operative to analyze the input to the differential decoder and adjust the decoding action accordingly. The mechanism generates the first and second candidate constellation points needed by the Chase algorithm. Considering the differential encoding, there are four possible constellation candidates. The differential decoder reduces these four possible options to two by eliminating from consideration two of them.
    Type: Grant
    Filed: March 21, 2007
    Date of Patent: April 3, 2012
    Assignee: Intel Corporation
    Inventors: Naor Goldman, Naftali Sommer
  • Patent number: 8145984
    Abstract: A method for operating a memory (28) includes storing data, which is encoded with an Error Correction Code (ECC), in analog memory cells (32) of the memory by writing respective analog input values selected from a set of nominal values to the analog memory cells. The stored data is read by performing multiple read operations that compare analog output values of the analog memory cells to different, respective read thresholds so as to produce multiple comparison results for each of the analog memory cells. At least two of the read thresholds are positioned between a pair of the nominal values that are adjacent to one another in the set of the nominal values. Soft metrics are computed responsively to the multiple comparison results. The ECC is decoded using the soft metrics, so as to extract the data stored in the analog memory cells.
    Type: Grant
    Filed: May 24, 2011
    Date of Patent: March 27, 2012
    Assignee: Anobit Technologies Ltd.
    Inventors: Naftali Sommer, Ofir Shalvi, Dotan Sokolov
  • Publication number: 20120044762
    Abstract: A method for data storage in a memory that includes multiple analog memory cells fabricated using respective physical media, includes identifying a group of the memory cells whose physical media have deteriorated over time below a given storage quality level. A rejuvenation process, which causes the physical media of the memory cells in the group to meet the given storage quality level, is applied to the identified group. Data is stored in the rejuvenated group of the memory cells.
    Type: Application
    Filed: October 30, 2011
    Publication date: February 23, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD
    Inventors: Barak Rotbard, Naftali Sommer, Shai Winter, Ofir Shalvi, Dotan Sokolov, Or Ordentlich, Micha Anholt