Patents by Inventor Hanan Weingarten

Hanan Weingarten 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: 20110161775
    Abstract: A system, method and computer readable medium for performing a first read attempt of multiple codeword portions while using a first read threshold candidate to provide multiple first read results, wherein the multiple codeword portions are stored in multiple flash memory cells; calculating a first read threshold candidate error correction decoding based score; wherein the calculating comprises error correction decoding of the multiple first read results; performing a second read attempt of the multiple codeword portions while using a second read threshold candidate to provide multiple second read results; calculating a second read threshold candidate error correction decoding based score; wherein the calculating comprises error correction decoding of the multiple second read results; and selecting a first read threshold out of the first and second read threshold candidates based on a relationship between the first and second read threshold candidate error correction decoding based scores.
    Type: Application
    Filed: December 20, 2010
    Publication date: June 30, 2011
    Inventor: Hanan WEINGARTEN
  • Publication number: 20110119562
    Abstract: A device, method, and computer readable medium for programming a codeword are presented. The method includes writing a first codeword portion to portions of nonvolatile memory rows, and writing a second codeword portion to portions of nonvolatile memory rows, wherein the first group of memory rows and the second group belong to non-overlapping groups. The device includes multiple nonvolatile memory rows, and a controller receiving a codeword comprising a first codeword portion and a second codeword portion. The controller writing the first codeword portion to portions of nonvolatile memory rows, and writing the second codeword portion to portions of nonvolatile memory rows, wherein the first group of nonvolatile memory rows differs and the second group of nonvolatile memory rows belong to non-overlapping groups, and the first and second groups of memory rows belong to multiple rows. A computer readable medium having stored thereon instructions performing methods described herein.
    Type: Application
    Filed: November 9, 2010
    Publication date: May 19, 2011
    Inventors: Avi Steiner, Hanan Weingarten
  • Publication number: 20110096612
    Abstract: A system, method and computer readable medium for programming and reading flash memory cells. Respective first and second read operations may be performed while supplying respective first and second bias voltage to multiple flash memory cells, to provide respective first and second read results, where the first bias voltage may be higher then the second bias voltage, and providing a read outcome that may be responsive to the first read results and to the second read results. A programming method may include performing first and second programming operations while supplying respective first and second bias voltages to multiple flash memory cells. The programming method may further include performing the first programming operation while programming information mapped to a highest least significant bit positive lobe, and performing the second programming operation while programming information mapped to at least one other least significant bit positive lobe.
    Type: Application
    Filed: August 27, 2010
    Publication date: April 28, 2011
    Inventors: Avi STEINER, Hanan Weingarten
  • Publication number: 20110055461
    Abstract: A system, computer readable program, and method for programming flash memory, the method includes: providing multiple pairs of most significant bit (MSB) page uncoded bit error rates (UBERs) and least significant bit (LSB) page UBERs; selecting a selected MSB page code rate and a selected LSB page code rate so that a selected MSB page UBER associated with the selected MSB page code rate and a selected LSB page UBER associated with the selected LSB page code rate support a highest average UBER out of the multiple pairs of MSB page UBERs and LSB page UBERs, wherein the selected MSB page code rate and the selected LSB page code rate are obtainable under a desired code rate constraint; and determining an encoding and programming scheme that may be based on the selected MSB page UBER, the selected MSB code rate, the selected LSB page UBER and the selected LSB code rate.
    Type: Application
    Filed: July 15, 2010
    Publication date: March 3, 2011
    Inventors: Avi STEINER, Hanan WEINGARTEN
  • Publication number: 20100293321
    Abstract: A system and method for merging sectors of a flash memory module, the method includes: receiving multiple sectors, each received sector is associated with a current erase block out of multiple (L) erase blocks; accumulating the received sectors in a sector buffer, the sector buffer is stored in a non-volatile memory module; maintaining a merged sector map indicative of a sectors of the sector buffer that have been merged and sectors of the sector buffer waiting to be merged; finding a first sector waiting to be merged according to the merged sector map; merging the first sector and other sectors that belong to a same erase block as the first sector; and updating the merged sector map to indicate that that the first second and the other sectors that belonged to the same erase block were merged.
    Type: Application
    Filed: May 10, 2010
    Publication date: November 18, 2010
    Inventor: Hanan WEINGARTEN
  • Publication number: 20100253555
    Abstract: A decoder, an encoder, a decoding method and an encoding method are provided. The encoding method includes receiving data; generating a set of first codewords by applying a first encoding process on the received data; and performing a second encoding process on a folded version of each first codeword to provide a set of second codewords, wherein a folded version of a first codeword is representative of a storage of the first codeword in a two dimensional memory space, wherein the second codeword comprises redundancy bits.
    Type: Application
    Filed: January 4, 2010
    Publication date: October 7, 2010
    Inventors: Hanan WEINGARTEN, Ofir Avraham Kanter, Avi Steiner, Erez Sabbag
  • Publication number: 20100257433
    Abstract: A method and an apparatus that has Chien search capabilities, the apparatus includes a first hardware circuit and a second hardware circuit. The first hardware circuit evaluates an error locator polynomial for a first element of a finite field over which the error locator polynomial is defined to provide a first set of intermediate results and a first Chien search result and provides the first set of intermediate results to the second hardware circuit; the second hardware circuit evaluates the error locator polynomial for a second element of the finite field to provide a second Chien search result in response to the first set of intermediate results.
    Type: Application
    Filed: July 27, 2009
    Publication date: October 7, 2010
    Inventors: Hanan WEINGARTEN, Ofir Avraham KANTER, Avi STEINER, Erez SABBAG
  • Publication number: 20100211856
    Abstract: Apparatus and methods for operating a flash device characterized by use of Lee distance based codes in a flash device so as to increase the number of errors that can be corrected for a given number of redundancy cells, compared with Hamming distance based codes.
    Type: Application
    Filed: September 17, 2008
    Publication date: August 19, 2010
    Inventor: Hanan Weingarten
  • Publication number: 20100211724
    Abstract: Systems and methods for determining program levels useful for reading cells of a flash memory, such as but not limited to detecting charge levels for the cells, obtaining joint conditional probability densities for a plurality of combinations of program levels of the cells; and determining program levels for the cells respectively such that an aggregated joint probability value of the joint conditional probability densities is maximized.
    Type: Application
    Filed: September 17, 2008
    Publication date: August 19, 2010
    Inventor: Hanan Weingarten
  • Publication number: 20100211833
    Abstract: A system for storing a plurality of logical pages in a set of at least one flash device, each flash device including a set of at least one erase block, the system comprising apparatus for distributing at least one of the plurality of logical pages over substantially all of the erase blocks in substantially all of the flash devices, thereby to define, for at least one logical page, a sequence of pagelets thereof together including all information on the logical page and each being stored within a different erase block in the set of erase blocks; and apparatus for reading each individual page from among the plurality of logical pages including apparatus for calling and ordering the sequence of pagelets from different erase blocks in the set of erase blocks.
    Type: Application
    Filed: September 17, 2008
    Publication date: August 19, 2010
    Inventor: Hanan Weingarten
  • Publication number: 20100199149
    Abstract: A method for decoding a plurality of flash memory cells which are error-correction-coded as a unit, the method comprising providing a hard-decoding success indication indicating whether or not hard-decoding is at least likely to be successful; and soft-decoding the plurality of flash memory cells at a first resolution only if the hard-decoding success indication indicates that the hard-decoding is not at least likely to be successful.
    Type: Application
    Filed: September 17, 2008
    Publication date: August 5, 2010
    Inventors: Hanan Weingarten, Shmuel Levy, Michael Katz
  • Publication number: 20100180073
    Abstract: A method for determining thresholds useful for converting cell physical levels into cell logical values in an array of digital memory cells storing physical levels which diminish over time, the method comprising determining extent of deterioration of the physical levels and determining thresholds accordingly for at least an individual cell in said array; and reading the individual cell including reading a physical level in the cell and converting the physical level into a logical value using the thresholds, wherein the determining comprises storing predefined physical levels rather than data-determined physical levels in each of a plurality of cells and computing extent of deterioration by determining deterioration of the predefined physical levels.
    Type: Application
    Filed: September 17, 2008
    Publication date: July 15, 2010
    Inventors: Hanan Weingarten, Shmuel Levy, Michael Katz
  • Publication number: 20100146192
    Abstract: A method for programming a plurality of data sequences into a corresponding plurality of flash memory functional units using a programming process having at least one selectable programming duration-controlling parameter controlling the duration of the programming process for a given data sequence, the method comprising providing at least one indication of at least one varying situational characteristic and determining a value for said at least one selectable programming duration-controlling parameter controlling the duration of the programming process for a given data sequence, for each flash memory functional unit, depending at least partly on said indication of said varying characteristic; and, for each individual flash memory functional unit from among said plurality of flash memory functional units, programming a sequence of bits into said individual flash memory functional unit using a programming process having at least one selectable parameter, said at least one selectable parameter being set at said
    Type: Application
    Filed: September 17, 2008
    Publication date: June 10, 2010
    Inventors: Hanan Weingarten, Erez Sabbag, Michael Katz
  • Publication number: 20100131806
    Abstract: A method and system for writing in flash memory, the system operative for, and the method comprising, writing data onto a plurality of logical pages characterized by a plurality of different probabilities of error respectively, the writing including encoding data intended for each of the plurality of physical pages using a redundancy code with a different code rate for each individual physical page, the code rate corresponding to the probability of error in the individual logical page.
    Type: Application
    Filed: September 17, 2008
    Publication date: May 27, 2010
    Inventors: Hanan Weingarten, Shmuel Levy, Ilan Bar
  • Publication number: 20100131831
    Abstract: A low power Chien searching method employing Chien search circuitry comprising at least two hardware components that compute at least two corresponding bits comprising a Chien search output, the method comprising activating only a subset of the hardware components thereby to compute only a subset of the bits of the Chien search output; and activating hardware components other than those in the subset of hardware components, to compute additional bits of the Chien search output other than the bits in the subset of bits, only if a criterion on the subset of the bits of the Chien search output is satisfied.
    Type: Application
    Filed: September 17, 2008
    Publication date: May 27, 2010
    Inventors: Hanan Weingarten, Eli Sterin, Ofir Avraham Kanter, Michael Katz
  • Publication number: 20100122113
    Abstract: A flash memory system comprising temporary memory, writing apparatus for writing first logical data from the temporary memory into flash memory cells having at least two levels, thereby to generate a physical representation of the first logical data including known errors, reading apparatus for reading the physical representation from the cells, thereby to generate, and store in the temporary memory, second logical data which if read immediately is identical to the first logical data other than the known errors; and controlling apparatus controlling the writing apparatus and the reading apparatus and including known error ID apparatus operative to identify the known errors by comparing the first logical data to second logical data read immediately after the physical representation is generated, to store information characterizing the known errors and to use the information, when the second logical data is next read, to correct the known errors.
    Type: Application
    Filed: September 17, 2008
    Publication date: May 13, 2010
    Inventors: Hanan Weingarten, Shmuel Levy
  • Publication number: 20100095186
    Abstract: A system and a method for reprogramming a non volatile memory (NVM) portion, the method includes: receiving an initial content of an NVM portion; wherein the initial content differs from an erase content of the NVM portion; processing the previously programmed content in response to input content that should be represented by an initial content of the NVM portion; wherein the processing is characterized by a write limitation that prevents a non-erase value of a bit to be changed to an erase value; wherein the processing comprises at least one out of skip value based encoding, generating error correction information and error correction code based encoding; and writing the processed content of the NVM portion to the NVM portion.
    Type: Application
    Filed: August 5, 2009
    Publication date: April 15, 2010
    Inventor: Hanan WEINGARTEN
  • Publication number: 20100088557
    Abstract: A system and method for encoding information arriving from a host in order to store the coded information in flash memory, the method comprising encoding information arriving from a host for storage at a flash memory location including generating a number of redundancy bytes, the encoding proceeding at an encoding rate which is a function of the number of redundancy bytes generated, the encoding including determining an effective error rate, including an anticipated rate of expected reading errors, for the flash memory location; and selecting the encoding rate as a function of the effective error rate such that the number of redundancy bytes is sufficient to overcome the anticipated rate of expected reading errors with a predetermined degree of certainty.
    Type: Application
    Filed: September 17, 2008
    Publication date: April 8, 2010
    Inventors: Hanan Weingarten, Michael Katz
  • Publication number: 20100064096
    Abstract: Flash memory apparatus including a plurality of memory portions, and a controller operative to reserve for data retention purposes, for at least a first duration of time, only certain portions from among said plurality of memory portions including allocating data, during the first duration of time, only to the certain portions, thereby to define at least one of the plurality of memory portions other than the certain portions as a retired memory portion for the first duration of time.
    Type: Application
    Filed: September 17, 2008
    Publication date: March 11, 2010
    Inventors: Hanan Weingarten, Shmuel Levy, Michael Katz
  • Publication number: 20100058146
    Abstract: Chien search apparatus operative to evaluate an error locator polynomial having a known rank and including a sequence of terms for each element in a finite field whose elements correspond respectively to bits in each of a stream of data blocks to be decoded, the apparatus comprising a sequence of functional units each operative to compute a corresponding term in the sequence of terms included in the error locator polynomial, each term having a degree; and a power saving unit operative to de-activate at least one individual functional unit from among the sequence of functional units, the individual functional unit being operative, when active, to compute a term whose degree exceeds the rank.
    Type: Application
    Filed: September 17, 2008
    Publication date: March 4, 2010
    Inventors: Hanan Weingarten, Eli Sterin, Ofir Avraham Kanter