Patents by Inventor Simon Litsyn

Simon Litsyn 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: 7990766
    Abstract: To store a plurality of input bits, the bits are mapped to a corresponding programmed state of one or more memory cells and the cell(s) is/are programmed to that corresponding programmed state. The mapping may be many-to-one or may be an “into” generalized Gray mapping. The cell(s) is/are read to provide a read state value that is transformed into a plurality of output bits, for example by maximum likelihood decoding or by mapping the read state value into a plurality of soft bits and then decoding the soft bits.
    Type: Grant
    Filed: November 5, 2009
    Date of Patent: August 2, 2011
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Simon Litsyn, Eran Sharon, Idan Alrod
  • Publication number: 20110182118
    Abstract: Each of a plurality of flash memory cells is programmed to a respective one of L?2 threshold voltage states within a threshold voltage window. Values of parameters of threshold voltage functions are adjusted in accordance with comparisons of the threshold voltages of some or all of the cells to two or more of m?2 threshold voltage intervals within the threshold voltage window. Reference voltages for reading the cells are selected based on the values. Alternatively, the m threshold voltage intervals span the threshold voltage window, and respective threshold voltage states are assigned to the cells based on numbers of cells whose threshold voltages are in the intervals, without re-reading the cells.
    Type: Application
    Filed: February 20, 2011
    Publication date: July 28, 2011
    Applicant: Ramot At Tel Aviv University Ltd.
    Inventors: Simon Litsyn, Idan Alrod, Eran Sharon
  • Patent number: 7984360
    Abstract: To store an input string of M N-tuples of bits, a substitution transformation is selected in accordance with the input string and is applied to the input string to provide a transformed string of M N-tuples of bits. M or more memory cells are programmed to represent the transformed string and preferably also to represent a key of the transformation. Alternatively, the memory selectively programs each of M or more cells to a respective one of 2N states. A mapping that maps the binary numbers in [0,2N?1] into respective states is selected in accordance with the input string and is used to program M cells to represent the input string. Preferably, a key of the mapping is stored in the memory in association with the M cells.
    Type: Grant
    Filed: October 23, 2007
    Date of Patent: July 19, 2011
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Eran Sharon, Simon Litsyn, Idan Alrod
  • Patent number: 7903468
    Abstract: Each of a plurality of flash memory cells is programmed to a respective one of L?2 threshold voltage states within a threshold voltage window. Values of parameters of threshold voltage functions are adjusted in accordance with comparisons of the threshold voltages of some or all of the cells to two or more of m?2 threshold voltage intervals within the threshold voltage window. Reference voltages for reading the cells are selected based on the values. Alternatively, the m threshold voltage intervals span the threshold voltage window, and respective threshold voltage states are assigned to the cells based on numbers of cells whose threshold voltages are in the intervals, without re-reading the cells.
    Type: Grant
    Filed: November 18, 2007
    Date of Patent: March 8, 2011
    Assignee: Ramot At Telaviv University Ltd.
    Inventors: Simon Litsyn, Idan Alrod, Eran Sharon
  • Publication number: 20110029754
    Abstract: To store a plurality of input bits, the bits are mapped to a corresponding programmed state of one or more memory cells and the cell(s) is/are programmed to that corresponding programmed state. The mapping may be many-to-one or may be an “into” generalized Gray mapping. The cell(s) is/are read to provide a read state value that is transformed into a plurality of output bits, for example by maximum likelihood decoding or by mapping the read state value into a plurality of soft bits and then decoding the soft bits.
    Type: Application
    Filed: October 17, 2010
    Publication date: February 3, 2011
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Simon LITSYN, Eran SHARON, Idan ALROD
  • Publication number: 20110022922
    Abstract: k input bits are encoded according to a code with which is associated a m×n=m+k parity check matrix H. The resulting codeword is punctured, with n?<n bits. The punctured codeword is exported to a corrupting medium such as a communication channel or a memory. A representation of the punctured codeword is imported from the corrupting medium and is decoded using a matrix H? that is smaller than H. For example, H? is m?=m?(n?n?)×n? and is derived by merging selected rows of H.
    Type: Application
    Filed: July 21, 2009
    Publication date: January 27, 2011
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Eran SHARON, Idan ALROD, Simon LITSYN
  • Publication number: 20110022927
    Abstract: k information bits are encoded according to a code with which is associated a parity check matrix H that has n columns. The entire resulting codeword is stored in a storage medium. At least n?<n bits of a representation of the codeword are read from the storage medium and an attempt is made to decode only the n? bits using a matrix H? that has fewer columns than H. Typically, H has m=n?k rows and H? has m?(n?n?) rows and n? columns. If the attempt fails, one or more additional bits are read from the storage medium, if necessary, and are combined with the n? bits, and the decoding attempt is repeated using a matrix H?? that has more columns than H?.
    Type: Application
    Filed: September 3, 2009
    Publication date: January 27, 2011
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Eran Sharon, Idan Alrod, Simon Litsyn
  • Publication number: 20110022921
    Abstract: k input bits are encoded according to a code with which is associated a m×n=m+k parity check matrix H. The resulting codeword is punctured, with n?<n bits. The punctured codeword is exported to a corrupting medium such as a communication channel or a memory. A representation of the punctured codeword is imported from the corrupting medium and is decoded using a matrix H? that is smaller than H. For example, H has at most m rows and fewer than n columns but more than n? columns.
    Type: Application
    Filed: July 21, 2009
    Publication date: January 27, 2011
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Eran SHARON, Idan ALROD, Simon LITSYN
  • Publication number: 20110022920
    Abstract: k input bits are encoded according to a code with which is associated a m×n=m+k parity check matrix H. The resulting codeword is punctured, with n?<n bits. The punctured codeword is exported to a corrupting medium such as a communication channel or a memory. A representation of the punctured codeword is imported from the corrupting medium and is decoded using a matrix H? that is smaller than H. For example, H has fewer than m?=m?(n?n?) rows and fewer than n? columns.
    Type: Application
    Filed: July 21, 2009
    Publication date: January 27, 2011
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Eran Sharon, Idan Alrod, Simon Litsyn
  • Patent number: 7844877
    Abstract: Data bits to be encoded are split into a plurality of subgroups. Each subgroup is encoded separately to generate a corresponding codeword. Selected subsets are removed from the corresponding codewords, leaving behind shortened codewords, and are many-to-one transformed to condensed bits. The final codeword is a combination of the shortened codewords and the condensed bits. A representation of the final codeword is decoded by being partitioned to a selected subset and a plurality of remaining subsets. Each remaining subset is decoded separately. If one of the decodings fails, the remaining subset whose decoding failed is decoded at least in part according to the selected subset. If the encoding and decoding are systematic then the selected subsets are of parity bits.
    Type: Grant
    Filed: September 1, 2006
    Date of Patent: November 30, 2010
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Simon Litsyn, Eran Sharon, Idan Alrod, Menahem Lasser
  • Publication number: 20100287440
    Abstract: A plurality of information bits are encoded using a parity-check matrix that is equivalent to a modular code matrix. The modular code matrix is a diagonal sub-matrix structure immediately above a connection layer that includes a plurality of diverse connection layer sub-matrices, all but at most one of which are below corresponding diagonal matrix structure sub-matrices. The information bits are assembled with a plurality of parity bits produced by the encoding to provide a codeword that is exported to a medium. Preferably, all the diagonal matrix structure sub-matrices are identical. Preferably, some of the parity bits are computed using only diagonal matrix structure sub-matrices.
    Type: Application
    Filed: May 6, 2010
    Publication date: November 11, 2010
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Idan Alrod, Eran Sharon, Simon Litsyn
  • Patent number: 7822129
    Abstract: A plurality of bits is transmitted by partitioning the bits among n subsets; encoding each subset as a respective symbol; selecting a balancing vector, in accordance with the symbols, from a set of size 2p of codewords of length n in {?1,1}; multiplying each symbol by a corresponding element of the balancing vector; and transmitting the symbols substantially simultaneously. Preferably, the set of codewords has a strength of at most about 2 ln ?n?. The balancing vector is selected either deterministically or probabilistically.
    Type: Grant
    Filed: July 20, 2006
    Date of Patent: October 26, 2010
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Simon Litsyn, Alexander Shpunt
  • Patent number: 7814401
    Abstract: To read one or more flash memory cells, the threshold voltage of each cell is compared to at least one integral reference voltage and to at least one fractional reference voltage. Based on the comparisons, a respective estimated probability measure of each bit of an original bit pattern of each cell is calculated. This provides a plurality of estimated probability measures. Based at least in part on at least two of the estimated probability measures, respective original bit patterns of the cells are estimated. Preferably, the estimated probability measures are initial probability measures that are transformed to final probability measures under the constraint that the bit pattern(s) (collectively) is/are a member of a candidate set, e.g. a set of codewords.
    Type: Grant
    Filed: December 21, 2006
    Date of Patent: October 12, 2010
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Idan Alrod, Eran Sharon, Simon Litsyn, Menahem Lasser
  • Publication number: 20100192042
    Abstract: To read memory cells that have been programmed to store an ECC codeword, with each cell storing a respective plurality of bits of the codeword, a respective value of an operational parameter such as a threshold voltage of each cell is measured. Each bit is assigned a respective metric, such as a LLR estimate of the bit, based at least in part on the respective value of the operational parameter of the bit's cell. The metrics are decoded with reference both to the ECC and to mutual constraints of the metrics within each cell that are independent of the ECC.
    Type: Application
    Filed: December 23, 2009
    Publication date: July 29, 2010
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Eran SHARON, Idan ALROD, Simon LITSYN
  • Publication number: 20100192043
    Abstract: While decoding a representation, imported from a channel, of a codeword that encodes K information bits as N>K codeword bits, by updating estimates of the codeword bits in a plurality of iterations, the iterations are interrupted upon satisfaction of an interruption criterion that is either an order-dependent interruption criterion or an interruption criterion that includes an estimate of mutual information of the codeword and a vector that is used in the decoding iterations. Either the iterations are terminated or the iterations are resumed after one or more elements of one or more vectors used in the iterations is/are modified.
    Type: Application
    Filed: December 24, 2009
    Publication date: July 29, 2010
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Idan ALROD, Eran SHARON, Simon LITSYN
  • Publication number: 20100169737
    Abstract: Data bits to be encoded are split into a plurality of subgroups. Each subgroup is encoded separately to generate a corresponding codeword. Selected subsets are removed from the corresponding codewords, leaving behind shortened codewords, and are many-to-one transformed to condensed bits. The final codeword is a combination of the shortened codewords and the condensed bits. A representation of the final codeword is decoded by being partitioned to a selected subset and a plurality of remaining subsets. Each remaining subset is decoded separately. If one of the decodings fails, the remaining subset whose decoding failed is decoded at least in part according to the selected subset. If the encoding and decoding are systematic then the selected subsets are of parity bits.
    Type: Application
    Filed: December 29, 2009
    Publication date: July 1, 2010
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Simon LITSYN, Eran SHARON, Idan ALROD, Menahem LASSER
  • Publication number: 20100082885
    Abstract: Bits are stored by attempting to set parameter value(s) of (a) cell(s) to represent some of the bits. In accordance with the attempt, an adaptive mapping of the bits to value ranges is provided and the value(s) is/are adjusted accordingly as needed. Or, to store (a) bit(s) in (a) cell(s), a default mapping of the bit(s) to a predetermined set of value ranges is provided and an attempt is made to set the cell value(s) accordingly. If, for one of the cells, the attempt sets the value such that the desired range is inaccessible, an adaptive mapping is provided such that the desired range is accessible. Or, to store (a) bit(s) in (a) cell(s), several mappings of the bit(s) to a predetermined set of ranges is provided. Responsive to an attempt to set the cell value(s) according to one of the mappings, the mapping to actually use is selected.
    Type: Application
    Filed: September 27, 2009
    Publication date: April 1, 2010
    Applicant: RAMOT AT TEL AVIV UNIVERSITY LTD.
    Inventors: Simon LITSYN, Eran SHARON, Idan ALROD, Menahem LASSER
  • Publication number: 20100070692
    Abstract: To store a plurality of input bits, the bits are mapped to a corresponding programmed state of one or more memory cells and the cell(s) is/are programmed to that corresponding programmed state. The mapping may be many-to-one or may be an “into” generalized Gray mapping. The cell(s) is/are read to provide a read state value that is transformed into a plurality of output bits, for example by maximum likelihood decoding or by mapping the read state value into a plurality of soft bits and then decoding the soft bits.
    Type: Application
    Filed: November 5, 2009
    Publication date: March 18, 2010
    Applicant: Ramot At Tel Aviv University Ltd.
    Inventors: Simon LITSYN, Eran Sharon, Idan Alrod
  • Patent number: 7681109
    Abstract: A plurality of logical pages is stored in a MBC flash memory along with corresponding ECC bits, with at least one of the MBC cells storing bits from more than one logical page, and with at least one of the ECC bits applying to two or more of the logical pages. When the pages are read from the memory, the data bits as read are corrected using the ECC bits as read. Alternatively, a joint, systematic or non-systematic ECC codeword is computed for two or more of the logical pages and is stored instead of those logical pages. When the joint codeword is read, the logical bits are recovered from the codeword as read. The scope of the invention also includes corresponding memory devices, the controllers of such memory devices, and also computer-readable storage media bearing computer-readable code for implementing the methods.
    Type: Grant
    Filed: January 11, 2006
    Date of Patent: March 16, 2010
    Assignee: Ramot at Tel Aviv University Ltd.
    Inventors: Simon Litsyn, Idan Alrod, Eran Sharon, Mark Murin, Menahem Lasser
  • Publication number: 20100005367
    Abstract: Data that are stored in cells of a multi-bit-per cell memory, according to a systematic or non-systematic ECC, are read and corrected (systematic ECC) or recovered (non-systematic ECC) in accordance with estimated probabilities that one or more of the read bits are erroneous. In one method of the present invention, the estimates are a priori. In another method of the present invention, the estimates are based only on aspects of the read bits that include significances or bit pages of the read bits. In a third method of the present invention, the estimates are based only on values of the read bits. Not all the estimates are equal.
    Type: Application
    Filed: March 11, 2009
    Publication date: January 7, 2010
    Applicant: Ramot At Tel Aviv University Ltd.
    Inventors: Simon LITSYN, Idan Alrod, Eran Sharon, Mark Murin, Menahem Lasser