Patents Assigned to Anobit Technologies
  • Publication number: 20090103358
    Abstract: A method for storing data in an array (28) of analog memory cells (32) includes defining a constellation of voltage levels (90A, 90B, 90C, 90D) to be used in storing the data. A part of the data is written to a first analog memory cell in the array by applying to the analog memory cell a first voltage level selected from the constellation. After writing the part of the data to the first analog memory cell, a second voltage level that does not belong to the constellation is read from the first analog memory cell. A modification to be made in writing to one or more of the analog memory cells in the array is determined responsively to the second voltage level, and data are written to the one or more of the analog memory cells subject to the modification.
    Type: Application
    Filed: May 10, 2007
    Publication date: April 23, 2009
    Applicant: Anobit Technologies Ltd.
    Inventors: Naftali Sommer, Ofir Shalvi
  • Publication number: 20090106485
    Abstract: A method for data storage includes storing data in a memory that includes multi-bit analog memory cells, each of which stores at least first and second data bits by assuming one of a predefined plurality of programming levels associated with respective storage values. The memory has at least a first built-in command for reading the first data bits of the memory cells by comparing the storage values of the memory cells to a first number of first thresholds, and a second built-in command for reading the second data bits of the memory cells by comparing the storage values of the memory cells to a second number of second thresholds, such that the first number is less than the second number. After storing the data, the first data bits are read from the memory cells by executing at least the second built-in command.
    Type: Application
    Filed: July 23, 2008
    Publication date: April 23, 2009
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventor: Micha Anholt
  • Publication number: 20090091979
    Abstract: A method for data storage includes programming a first group of analog memory cells at a first time at a known first temperature, so as to cause the analog memory cells in the first group to assume respective first analog storage values. Respective second analog storage values are read from the analog memory cells in the first group at a second time at which the analog memory cells are at a second temperature. A shift is estimated between the first analog storage values and the second analog storage values, and a memory access parameter is adjusted responsively to the estimated shift. A second group of the analog memory cells is accessed at the second temperature using the adjusted memory access parameter.
    Type: Application
    Filed: October 5, 2008
    Publication date: April 9, 2009
    Applicant: ANOBIT TECHNOLOGIES
    Inventor: OFIR SHALVI
  • Publication number: 20090043951
    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: August 6, 2008
    Publication date: February 12, 2009
    Applicant: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
  • Publication number: 20090024905
    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: Application
    Filed: May 10, 2007
    Publication date: January 22, 2009
    Applicant: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Ariel Maislos, Dotan Sokolov
  • Patent number: 7466575
    Abstract: A method for data storage includes accepting data for storage in a memory (28) that includes multiple analog memory cells (32). The data is converted to input values. The input values are filtered using a non-linear filtering operation to produce respective shaped values, and the shaped values are converted to output values using a linear spreading transformation with coefficients chosen so that each of the shaped values contributes to at least two of the output values. The non-linear filtering operation is selected so as to reduce a size of an output range in which the output values lie. The output values are stored in the respective analog memory cells.
    Type: Grant
    Filed: May 10, 2007
    Date of Patent: December 16, 2008
    Assignee: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer
  • Publication number: 20080282106
    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: Application
    Filed: May 12, 2008
    Publication date: November 13, 2008
    Applicant: Anobit Technologies Ltd
    Inventors: Ofir Shalvi, Dotan Sokolov, Eyal Gurgi, Oren Golov, Naftali Sommer
  • Publication number: 20080263262
    Abstract: A method for operating a memory device that includes a plurality of analog memory cells includes accepting at an input of the memory device a self-contained command to perform a memory access operation on at least one of the memory cells. The command includes an instruction specifying the memory access operation and one or more parameters that are indicative of analog settings to be applied to the at least one of the memory cells when performing the memory access operation. The self-contained command is executed in the memory device by extracting the parameters, applying the analog settings to the at least one of the memory cells responsively to the extracted parameters, and performing the specified memory access operation in accordance with the instruction on the at least one of the memory cells using the settings.
    Type: Application
    Filed: March 10, 2008
    Publication date: October 23, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Dotan Sokolov, Naftall Sommer
  • Publication number: 20080219050
    Abstract: A method for operating a memory that includes multiple analog memory cells includes storing data in the memory by writing first storage values to the cells, so as to cause the cells to hold respective electrical charge levels. After storing the data, second storage values are read from at least some of the cells, including at least one interfered cell that belongs to a group of cells. A Back Pattern Dependency (BPD) distortion caused by the electrical charge levels of one or more interfering cells in the group to at least one of the second storage values read from the at least one interfered cell is detected and canceled. The second storage values, including the at least one of the second storage values in which the BPD distortion was canceled, are processed so as to reconstruct the data.
    Type: Application
    Filed: February 26, 2008
    Publication date: September 11, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Ofir Shalvi, Zeev Cohen
  • Publication number: 20080198652
    Abstract: A method for data storage includes accepting data for storage in a memory (28) that includes multiple analog memory cells (32). The data is converted to input values. The input values are filtered using a non-linear filtering operation to produce respective shaped values, and the shaped values are converted to output values using a linear spreading transformation with coefficients chosen so that each of the shaped values contributes to at least two of the output values. The non-linear filtering operation is selected so as to reduce a size of an output range in which the output values lie. The output values are stored in the respective analog memory cells.
    Type: Application
    Filed: May 10, 2007
    Publication date: August 21, 2008
    Applicant: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer
  • Publication number: 20080198650
    Abstract: A method for operating a memory (28) includes storing data in a group of analog memory cells (32) of the memory as respective first voltage levels. After storing the data, second voltage levels are read from the respective analog memory cells. The second voltage levels are affected by cross-coupling interference causing the second voltage levels to differ from the respective first voltage levels. Cross-coupling coefficients, which quantify the cross-coupling interference among the analog memory cells, are estimated by processing the second voltage levels. The data stored in the group of analog memory cells is reconstructed from the read second voltage levels using the estimated cross-coupling coefficients.
    Type: Application
    Filed: May 10, 2007
    Publication date: August 21, 2008
    Applicant: Anobit Technologies Ltd.
    Inventors: Ofir Shalvi, Naftali Sommer, Eyal Gurgi, Ariel Maislos
  • Publication number: 20080181001
    Abstract: A method for data storage in a memory that includes a plurality of analog memory cells includes storing data in the memory by writing first storage values to the cells. One or more read reference levels are defined for reading the cells, such that at least one of the read reference levels is negative. After storing the data, second storage values are read from the cells using the read reference levels, so as to reconstruct the stored data. In another disclosed method, data is stored in the memory by mapping the data to first storage values selected from a set of the nominal storage values, and writing the first storage values to the cells. The set of nominal storage values is defined such that at least one of the nominal storage values is negative.
    Type: Application
    Filed: January 24, 2008
    Publication date: July 31, 2008
    Applicant: Anobit Technologies
    Inventor: Ofir Shalvi
  • Publication number: 20080158958
    Abstract: A method for data storage includes providing a memory, which includes first memory cells having a first reading latency and second memory cells having a second reading latency that is higher than the first reading latency. An item of data intended for storage in the memory is divided into first and second parts. The first part is stored in the first memory cells and the second part is stored in the second memory cells. In response to a request to retrieve the item of data from the memory, the first part is read from the first memory cells and provided as output. The second part is read from the second memory cells, and provided as output subsequently to outputting the first part.
    Type: Application
    Filed: December 17, 2007
    Publication date: July 3, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Dotan Sokolov, Gil Semo, Ofir Shalvi
  • Publication number: 20080148115
    Abstract: A method for operating a memory that includes a plurality of analog memory cells includes storing data in a first group of the memory cells by writing respective first cell values to the memory cells in the first group. After storing the data, respective second cell values are read from the memory cells in the first group, and differences are found between the respective first and second cell values for each of one or more of the memory cells in the first group. The differences are processed to produce error information, and the error information is stored in a second group of the memory cells.
    Type: Application
    Filed: December 17, 2007
    Publication date: June 19, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Dotan Sokolov, Ofir Shalvi
  • Publication number: 20080130341
    Abstract: A method for storing data in a memory that includes a plurality of analog memory cells includes mapping the data to programming values, which are selected from a set of nominal programming values. The set of nominal programming values includes at least a first nominal programming value and a second nominal programming value, which is higher than the first nominal programming value. A part of the data is stored in the analog memory cells by programming at least a first group of the cells using the first nominal programming value. A statistical characteristic of the first group of the cells is measured after programming the first group of the cells using the first nominal programming value. The second nominal programming value is modified responsively to the statistical characteristic, and at least a second group of the cells is programmed using the modified second nominal programming value.
    Type: Application
    Filed: December 3, 2007
    Publication date: June 5, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Ofir Shalvi, Zeev Cohen, Dotan Sokolov
  • Publication number: 20080126686
    Abstract: A method for storage includes collecting information regarding respective performance characteristics of a plurality of memory units in a memory array, each memory unit including one or more cells of the memory array. When data are received for storage in the memory array, a memory unit is selected responsively to the respective performance characteristics, and the received data are stored in the selected memory unit.
    Type: Application
    Filed: November 27, 2007
    Publication date: May 29, 2008
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventors: Dotan Sokolov, Ofir Shalvi