Patents by Inventor Moshe Twitto

Moshe Twitto 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: 11914470
    Abstract: A method for error correction of logical pages of an erase block of a solid state drive (SSD) memory, the method may include determining an erase block score of the erase block, wherein the calculating is based on a program erase (PE) cycle of the erase block and one or more erase block error correction parameter; determining, based on (a) the erase block score, and (b) a mapping between the erase block score and one or more page error correction parameters for each page type out of multiple pages types, the one or more page error correction parameter for each page type; and allocating, within each page of the erase block, an overprovisioning space and an error correction space, based on at least one page error correction parameter related to a page type of the page.
    Type: Grant
    Filed: December 20, 2021
    Date of Patent: February 27, 2024
    Assignee: PLIOPS LTD.
    Inventor: Moshe Twitto
  • Patent number: 11860844
    Abstract: A method for managing a log structured merged (LSM) tree of key value (KV) pairs, the LSM tree is stored in a non-volatile memory, the method may include merging runs of the LSM tree to provide merged runs; writing merged runs to the non-volatile memory; adding new runs to the LSM tree, wherein the adding comprises writing runs to the non-volatile memory; and updating at least one management data structure (MDS) to reflect the merging and the adding; wherein an MDS of the at least one MDS stores a mapping between keys of the KV pairs of the LSM tree, fingerprints associated with the KV pairs of the LSM tree, and compressed run identifiers that identify runs of the LSM tree.
    Type: Grant
    Filed: October 27, 2020
    Date of Patent: January 2, 2024
    Assignee: PLIOPS LTD.
    Inventors: Niv Dayan, Moshe Twitto
  • Publication number: 20230385158
    Abstract: A method for performing a backup in relation to a separated database, the method includes creating, by a processing circuit, a new backup log structured merge (LSM) tree of the separated database, wherein the new backup LSM tree is associated with a new point in time (PIT) and belongs to a group of LSM trees that comprise a primary LSM tree and one or more backup LSM trees that are associated with different PITs, and share a key value (KV) database that is mutable and is separated from the group; wherein the creating comprises storing the new backup LSM tree to a destination.
    Type: Application
    Filed: August 14, 2023
    Publication date: November 30, 2023
    Applicant: Pliops Ltd.
    Inventors: Roey Maor, Edward Bortnikov, Eshcar Hillel, Michael Pan, Moshe Twitto
  • Patent number: 11809744
    Abstract: There may be provided, systems, method and non-transitory computer readable media for accessing a key value pair stored in a solid state drive (SSD) memory, the method may include calculating, by a SSD memory controller and based on an input key, a first bucket identifier and a first inter-bucket value; determining a block cluster that stores the key pair value, based on the first bucket identifier, the first inter-bucket value and first metadata of a first data structure; calculating, based on the input key, a second bucket identifier and a second inter-bucket value; determining at least one of a key pair value retrieval information and a representative key pair value retrieval information, based on the second bucket identifier, the second inter-bucket value and second metadata of a second data structure; wherein the second data structure is allocated to the block cluster; wherein the second metadata comprises second logical slots, a second slot locator and second collision separation metadata; wherein at le
    Type: Grant
    Filed: November 5, 2020
    Date of Patent: November 7, 2023
    Assignee: Pliops Ltd.
    Inventors: Moshe Twitto, Yuval Rochman, Avraham Meir
  • Publication number: 20230229651
    Abstract: A method for updating a log structured merged (LSM) tree, the method includes (a) performing preemptive full merge operations at first LSM tree levels; and (b) performing capacity triggered merge operations at second LSM tree levels while imposing one or more restrictions; wherein the second LSM tree levels comprise a largest LSM tree level and one or more other second LSM tree levels that are larger from each first LSM tree level; wherein files of the one or more other second LSM tree levels are aligned with files of the largest LSM tree level.
    Type: Application
    Filed: January 18, 2023
    Publication date: July 20, 2023
    Applicant: Pliops Ltd.
    Inventors: Niv Dayan, Edward Bortnikov, Moshe Twitto
  • Patent number: 11604604
    Abstract: A method for accessing a block of information stored in a SSD memory, the method may include obtaining, by an SSD controller, an identifier associated with the block of information; accessing, using the identifier, a first data structure that maps identifiers to cluster maps; wherein the first data structure comprises block sequence metadata, wherein for at least one cluster map, the block sequence metadata comprises a sequence identifier of a sequence of blocks of information that are sequentially written to the SSD memory and are stored together in a cluster of the SSD memory; accessing a cluster map of a cluster that is associated with the sequence provide block retrieval information; and retrieving the block of information from the SSD memory, using the block retrieval information.
    Type: Grant
    Filed: July 29, 2020
    Date of Patent: March 14, 2023
    Assignee: PLIOPS LTD.
    Inventors: Yuval Rochman, Moshe Twitto
  • Publication number: 20220188188
    Abstract: A method for error correction of logical pages of an erase block of a solid state drive (SSD) memory, the method may include determining an erase block score of the erase block, wherein the calculating is based on a program erase (PE) cycle of the erase block and one or more erase block error correction parameter; determining, based on (a) the erase block score, and (b) a mapping between the erase block score and one or more page error correction parameters for each page type out of multiple pages types, the one or more page error correction parameter for each page type; and allocating, within each page of the erase block, an overprovisioning space and an error correction space, based on at least one page error correction parameter related to a page type of the page.
    Type: Application
    Filed: December 20, 2021
    Publication date: June 16, 2022
    Applicant: Pliops Ltd.
    Inventor: Moshe Twitto
  • Patent number: 11360683
    Abstract: A method for protecting objects, the method may include receiving, by a storage controller, a request to write a new object to a storage-system that may include multiple nodes, each node may include at least one storage element; the new object may include a key value pair; writing the new object to a target node and to another node of the multiple nodes; and generating a new stripe that may include multiple sets of objects, different sets of objects are stored at different nodes of the multiple nodes, a certain set of objects of the multiple sets of objects may include the new object and is stored in a first node of the target node and the other node, any set of objects of the multiple sets of objects is reconstructible using other sets of objects of the multiple set of objects.
    Type: Grant
    Filed: July 28, 2020
    Date of Patent: June 14, 2022
    Inventors: Avraham Meir, Moshe Twitto
  • Publication number: 20220075552
    Abstract: A method for managing a log structured merged (LSM) tree of key value (KV) pairs, the LSM tree is stored in a non-volatile memory, the method may include writing a current run from a buffer to a current run location within the LSM tree, the current run comprises current KV pairs; generating or receiving current fingerprints that are indicative of the current KV pairs; performing a run writing update of a management data structure (MDS) by adding to the MDS, mappings between the current KV pairs, the current fingerprints and a current run identifier; updating the LSM tree by merging at least some runs of the LSM tree; and performing a merge update of the MDS to represent the merging.
    Type: Application
    Filed: October 27, 2020
    Publication date: March 10, 2022
    Applicant: Pliops Ltd.
    Inventors: Niv Dayan, Moshe Twitto
  • Publication number: 20220075765
    Abstract: A method for managing a log structured merged (LSM) tree of key value (KV) pairs, the LSM tree is stored in a non-volatile memory, the method may include merging runs of the LSM tree to provide merged runs; writing merged runs to the non-volatile memory; adding new runs to the LSM tree, wherein the adding comprises writing runs to the non-volatile memory; and updating at least one management data structure (MDS) to reflect the merging and the adding; wherein an MDS of the at least one MDS stores a mapping between keys of the KV pairs of the LSM tree, fingerprints associated with the KV pairs of the LSM tree, and compressed run identifiers that identify runs of the LSM tree
    Type: Application
    Filed: October 27, 2020
    Publication date: March 10, 2022
    Applicant: Pliops Ltd.
    Inventors: Niv Dayan, Moshe Twitto
  • Patent number: 11210166
    Abstract: A method for error correction of logical pages of an erase block of a solid state drive (SSD) memory, the method may include determining an erase block score of the erase block, wherein the calculating is based on a program erase (PE) cycle of the erase block and one or more erase block error correction parameter; determining, based on (a) the erase block score, and (b) a mapping between the erase block score and one or more page error correction parameters for each page type out of multiple pages types, the one or more page error correction parameter for each page type; and allocating, within each page of the erase block, an overprovisioning space and an error correction space, based on at least one page error correction parameter related to a page type of the page.
    Type: Grant
    Filed: December 21, 2018
    Date of Patent: December 28, 2021
    Assignee: Pliops Ltd.
    Inventor: Moshe Twitto
  • Publication number: 20210055886
    Abstract: There may be provided, systems, method and non-transitory computer readable media for accessing a key value pair stored in a solid state drive (SSD) memory, the method may include calculating, by a SSD memory controller and based on an input key, a first bucket identifier and a first inter-bucket value; determining a block cluster that stores the key pair value, based on the first bucket identifier, the first inter-bucket value and first metadata of a first data structure; calculating, based on the input key, a second bucket identifier and a second inter-bucket value; determining at least one of a key pair value retrieval information and a representative key pair value retrieval information, based on the second bucket identifier, the second inter-bucket value and second metadata of a second data structure; wherein the second data structure is allocated to the block cluster; wherein the second metadata comprises second logical slots, a second slot locator and second collision separation metadata; wherein at le
    Type: Application
    Filed: November 5, 2020
    Publication date: February 25, 2021
    Applicant: Pliops Ltd.
    Inventors: Moshe Twitto, Yuval Rochman, Avraham Meir
  • Patent number: 10860249
    Abstract: There may be provided, systems, method and non-transitory computer readable media for accessing a key value pair stored in a solid state drive (SSD) memory, the method may include calculating, by a SSD memory controller and based on an input key, a first bucket identifier and a first inter-bucket value; determining a block cluster that stores the key pair value, based on the first bucket identifier, the first inter-bucket value and first metadata of a first data structure; calculating, based on the input key, a second bucket identifier and a second inter-bucket value; determining key pair value retrieval information, based on the second bucket identifier, the second inter-bucket value and second metadata of a second data structure; wherein the second data structure is allocated to the block cluster; and retrieving at least the value of the key pair value based on the key pair value retrieval information.
    Type: Grant
    Filed: December 24, 2018
    Date of Patent: December 8, 2020
    Assignee: Pliops Ltd.
    Inventors: Moshe Twitto, Yuval Rochman, Avraham Meir
  • Patent number: 10769064
    Abstract: A method for accessing a key-value pair stored in a SSD memory, the method may include receiving, by a SSD memory controller, an input key; applying a first hash function on an input key to provide a first address; reading, using the first address, an indicator that indicates whether (a) the input key is associated with a group of key-value pairs or whether (b) the input key is associated only with the key-value pair; retrieving, from the SSD memory, the values of the group associated with the input key, and extracting the value of the key-value pair, when the indicator indicates that the input key is associated with the group; and retrieving, from the SSD memory, a value of a key-value pair, when the indicator indicates that the input key is associated with the key-value pair.
    Type: Grant
    Filed: December 20, 2018
    Date of Patent: September 8, 2020
    Assignee: Pliops Ltd
    Inventor: Moshe Twitto
  • Patent number: 10606760
    Abstract: A memory system includes a nonvolatile memory device having a plurality of physical sectors, a mapping table, and a memory controller including a plurality of hash functions. The memory controller is configured to access the physical sectors using the mapping table and the hash functions. The memory controller is configured to receive a sequence of logical block addresses (LBAs) from a host and logical sector data for each of the LBAs, generate a first virtual address by operating a selected hash function among the hash functions on a first logical block address (LBA) among the sequence, compress the logical sector data to generate compressed data, and store the compressed data in a first physical sector among the physical sectors that is associated with the first virtual address.
    Type: Grant
    Filed: August 23, 2017
    Date of Patent: March 31, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Elona Erez, Avner Dor, Moshe Twitto, Jun Jin Kong
  • Patent number: 10528466
    Abstract: A method of operating a storage device including a nonvolatile memory can be provided by receiving, from a host, address change information including changing logical addresses for data to be stored in the nonvolatile memory. Physical addresses can be sequentially allocated to the changing logical addresses included in the address change information to provide a first journal. A portion of at least one physical address allocated to the changing logical addresses can be removed to provide a second journal and the second journal can be stored in the nonvolatile memory.
    Type: Grant
    Filed: June 7, 2018
    Date of Patent: January 7, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Jong-Won Lee, Dashevsky Shmuel, Moshe Twitto, Elona Erez, Eran Hof, Jun-Jin Kong, Avner Dor, Michael Erlihson
  • Patent number: 10523367
    Abstract: A method of storing survivor data generated while decoding channel polarization codes in a memory module includes setting a list size that corresponds to a number of decoder units used to decode the channel polarization codes, inputting a stream of input bits to the decoder units, and sequentially decoding the input bits. Each input bit is decoded using all previous input bits decoded before the each input bit. The method further includes selecting a plurality of survivor bits from among the decoded input bits, and storing the selected survivor bits in the memory module in a binary tree configuration. The number of edges in each level of the binary tree configuration does not exceed the list size.
    Type: Grant
    Filed: August 18, 2017
    Date of Patent: December 31, 2019
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Eran Hof, Moshe Twitto, Jun Jin Kong
  • Publication number: 20190384530
    Abstract: There may be provided, systems, method and non-transitory computer readable media for accessing a key value pair stored in a solid state drive (SSD) memory, the method may include calculating, by a SSD memory controller and based on an input key, a first bucket identifier and a first inter-bucket value; determining a block cluster that stores the key pair value, based on the first bucket identifier, the first inter-bucket value and first metadata of a first data structure; calculating, based on the input key, a second bucket identifier and a second inter-bucket value; determining key pair value retrieval information, based on the second bucket identifier, the second inter-bucket value and second metadata of a second data structure; wherein the second data structure is allocated to the block cluster; and retrieving at least the value of the key pair value based on the key pair value retrieval information.
    Type: Application
    Filed: December 24, 2018
    Publication date: December 19, 2019
    Inventors: Moshe Twitto, Yuval Rochman, Avraham Meir
  • Patent number: 10387254
    Abstract: A method of encoding generalized concatenated error-correcting codes includes providing a parity matrix {tilde over (H)}j of a j-th layer code and predefined syndrome {tilde over (s)} of length n?{tilde over (k)}j, where the first n-kl coordinates are zero, n is a length of a codeword c of a first layer BCH code Cl of dimension {tilde over (k)}j, codeword c satisfies {tilde over (H)}jc={tilde over (s)}, a first layer code includes only a BCH code, and each subsequent layer includes a Reed-Solomon (RS) stage followed by a BCH code; finding a square matrix R, of dimension (n?{tilde over (k)}j)(n?{tilde over (k)}j) such that Rj{tilde over (H)}j=(A|I), where A is an arbitrary matrix, Rj=(Qj|Tj), where Q has n?kl columns Tj and has k1?{tilde over (k)}j columns; finding a vector c?(a b) where a is a vector of length {tilde over (k)}j and b is a vector of length n?{tilde over (k)}j; and solving ( A | I ) ? ( a b ) = ( Q j | T j ) ? s ~ = T j ? s ? ? where ? ? a = 0 ?
    Type: Grant
    Filed: October 12, 2017
    Date of Patent: August 20, 2019
    Assignee: SAMSUNG ELECTRONICS CO, LTD.
    Inventors: Moshe Twitto, Yaron Shany, Avner Dor, Elona Erez, Jun Jin Kong
  • Patent number: 10333554
    Abstract: A method for generating a binary GTP codeword, comprised of N structure stages and each stage comprises at least one BCH codeword with error correction capability greater than a prior stage and smaller than a next stage, includes: receiving a syndrome vector s of a new stage 0 binary BCH codeword y over a field GF(2m) that comprises ?t syndromes of length m bits, wherein the syndrome vector s comprises l-th Reed-Solomon (RS) symbols of ?t RS codewords whose information symbols are delta syndromes of all BCH codewords from stage 0 until stage n?1; and multiplying s by a right submatrix ? of a matrix U, wherein U is an inverse of a parity matrix of an BCH code defined by tn, wherein the new binary BCH codeword is y=?·s.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: June 25, 2019
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Moshe Twitto, Moshe Ben Ari, Avner Dor, Elona Erez, Jun Jin Kong, Yaron Shany