Patents by Inventor Ofir Shalvi
Ofir Shalvi 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: 20210385295Abstract: A method for content delivery includes selecting one or more time intervals. During each time interval among the selected time intervals, given content is prefetched from a content source to a communication terminal using a guaranteed prefetching mode, by continuously tracking the given content on the content source, so as to detect changes to the given content as they occur during the selected time interval, and maintaining the communication terminal continuously synchronized with the content source with respect to the given content, throughout the selected time interval, notwithstanding the changes that occur during the selected time interval, by continuously prefetching at least part of the given content from the content source to the communication terminal. Outside of the one or more selected time intervals, the given content is prefetched using a best-effort prefetching mode, by tracking the given content less frequently than the guaranteed prefetching mode.Type: ApplicationFiled: August 17, 2021Publication date: December 9, 2021Inventors: Daniel Yellin, Ofir Shalvi, David Ben Eli, Eilon Regev, Shimon Moshavi
-
Patent number: 11128729Abstract: A method for content delivery includes selecting one or more time intervals. During each time interval among the selected time intervals, given content is prefetched from a content source to a communication terminal using a guaranteed prefetching mode, by continuously tracking the given content on the content source, so as to detect changes to the given content as they occur during the selected time interval, and maintaining the communication terminal continuously synchronized with the content source with respect to the given content, throughout the selected time interval, notwithstanding the changes that occur during the selected time interval, by continuously prefetching at least part of the given content from the content source to the communication terminal. Outside of the one or more selected time intervals, the given content is prefetched using a best-effort prefetching mode, by tracking the given content less frequently than the guaranteed prefetching mode.Type: GrantFiled: August 11, 2019Date of Patent: September 21, 2021Assignee: TENSERA NETWORKS LTD.Inventors: Daniel Yellin, Ofir Shalvi, David Ben Eli, Eilon Regev, Shimon Moshavi
-
Publication number: 20190364129Abstract: A method for content delivery includes selecting one or more time intervals. During each time interval among the selected time intervals, given content is prefetched from a content source to a communication terminal using a guaranteed prefetching mode, by continuously tracking the given content on the content source, so as to detect changes to the given content as they occur during the selected time interval, and maintaining the communication terminal continuously synchronized with the content source with respect to the given content, throughout the selected time interval, notwithstanding the changes that occur during the selected time interval, by continuously prefetching at least part of the given content from the content source to the communication terminal. Outside of the one or more selected time intervals, the given content is prefetched using a best-effort prefetching mode, by tracking the given content less frequently than the guaranteed prefetching mode.Type: ApplicationFiled: August 11, 2019Publication date: November 28, 2019Inventors: Daniel Yellin, Ofir Shalvi, David Ben Eli, Eilon Regev, Shimon Moshavi
-
Patent number: 10432748Abstract: A method for content delivery includes selecting one or more time intervals. During each time interval among the selected time intervals, given content is prefetched from a content source to a communication terminal using a guaranteed prefetching mode, by continuously tracking the given content on the content source, so as to detect changes to the given content as they occur during the selected time interval, and maintaining the communication terminal continuously synchronized with the content source with respect to the given content, throughout the selected time interval, notwithstanding the changes that occur during the selected time interval, by continuously prefetching at least part of the given content from the content source to the communication terminal. Outside of the one or more selected time intervals, the given content is prefetched using a best-effort prefetching mode, by tracking the given content less frequently than the guaranteed prefetching mode.Type: GrantFiled: March 27, 2018Date of Patent: October 1, 2019Assignee: TENSERA NETWORKS LTD.Inventors: Daniel Yellin, Ofir Shalvi, David Ben Eli, Eilon Regev, Shimon Moshavi
-
Patent number: 10157013Abstract: A method for data storage includes storing data in a group of analog memory cells by writing respective input storage values to the memory cells in the group. After storing the data, respective output storage values are read from the analog memory cells in the group. Respective confidence levels of the output storage values are estimated, and the confidence levels are compressed. The output storage values and the compressed confidence levels are transferred from the memory cells over an interface to a memory controller.Type: GrantFiled: May 23, 2017Date of Patent: December 18, 2018Assignee: Apple Inc.Inventors: Uri Perlmutter, Dotan Sokolov, Ofir Shalvi, Oren Golov
-
Patent number: 10056135Abstract: 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: GrantFiled: September 6, 2016Date of Patent: August 21, 2018Assignee: Apple Inc.Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
-
Publication number: 20180219965Abstract: A method for content delivery includes selecting one or more time intervals. During each time interval among the selected time intervals, given content is prefetched from a content source to a communication terminal using a guaranteed prefetching mode, by continuously tracking the given content on the content source, so as to detect changes to the given content as they occur during the selected time interval, and maintaining the communication terminal continuously synchronized with the content source with respect to the given content, throughout the selected time interval, notwithstanding the changes that occur during the selected time interval, by continuously prefetching at least part of the given content from the content source to the communication terminal. Outside of the one or more selected time intervals, the given content is prefetched using a best-effort prefetching mode, by tracking the given content less frequently than the guaranteed prefetching mode.Type: ApplicationFiled: March 27, 2018Publication date: August 2, 2018Inventors: Daniel Yellin, Ofir Shalvi, David Ben Eli, Eilon Regev, Shimon Moshavi
-
Patent number: 9983929Abstract: A method for data storage includes storing data in a memory that includes one or more memory units, each memory unit including memory blocks. The stored data is compacted by copying at least a portion of the data from a first memory block to a second memory block, and subsequently erasing the first memory block. Upon detecting a failure in the second memory block after copying the portion of the data and before erasure of the first memory block, the portion of the data is recovered by reading the portion from the first memory block.Type: GrantFiled: June 23, 2016Date of Patent: May 29, 2018Assignee: Apple Inc.Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Julian Vlaiko, Moshe Neerman
-
Patent number: 9961159Abstract: A method for content delivery includes defining a guaranteed prefetching mode, in which content is continuously prefetched from a content source to a communication terminal of a user so as to maintain the communication terminal synchronized with the content source. One or more time-of-day intervals, during which the user is expected to access given content, are identified. During the identified time-of-day intervals, the given content is prefetched from the content source to the communication terminal using the guaranteed prefetching mode.Type: GrantFiled: April 21, 2015Date of Patent: May 1, 2018Assignee: TENSERA NETWORKS LTD.Inventors: Daniel Yellin, Ofir Shalvi
-
Patent number: 9781027Abstract: Various systems and methods to facilitate general communication, via a memory network, between compute elements and external destinations, while at the same time facilitating low latency communication between compute elements and memory modules storing data sets, without impacting negatively the latency of the communication between the compute elements and the memory modules. General communication messages between compute nodes and a gateway compute node are facilitated with a first communication protocol adapted for low latency transmissions. Such general communication messages are then transmitted to external destinations with a second communication protocol that is adapted for the general communication network and which may or may not be low latency, but such that the low latency between the compute elements and the memory modules is not negatively impacted. The memory modules may be based on RAM or DRAM or another structure allowing low latency access by the compute elements.Type: GrantFiled: April 2, 2015Date of Patent: October 3, 2017Assignee: Parallel Machines Ltd.Inventors: Avner Braverman, Ofir Shalvi, Lior Khermosh, Ofer Bar-Or, Eyal Benjamin Raz Oren, Gal Zuckerman
-
Publication number: 20170269866Abstract: A method for data storage includes storing data in a group of analog memory cells by writing respective input storage values to the memory cells in the group. After storing the data, respective output storage values are read from the analog memory cells in the group. Respective confidence levels of the output storage values are estimated, and the confidence levels are compressed. The output storage values and the compressed confidence levels are transferred from the memory cells over an interface to a memory controller.Type: ApplicationFiled: May 23, 2017Publication date: September 21, 2017Inventors: Uri Perlmutter, Dotan Sokolov, Ofir Shalvi, Oren Golov
-
Patent number: 9697077Abstract: A method for operating a memory includes storing data in a plurality of analog memory cells that are fabricated on a first semiconductor die by writing input storage values to a group of the analog memory cells. After storing the data, multiple output storage values are read from each of the analog memory cells in the group using respective, different threshold sets of read thresholds, thus providing multiple output sets of the output storage values corresponding respectively to the threshold sets. The multiple output sets of the output storage values are preprocessed by circuitry that is fabricated on the first semiconductor die, to produce preprocessed data. The preprocessed data is provided to a memory controller, which is fabricated on a second semiconductor die that is different from the first semiconductor die. so as to enable the memory controller to reconstruct the data responsively to the preprocessed data.Type: GrantFiled: June 15, 2015Date of Patent: July 4, 2017Assignee: Apple Inc.Inventors: Dotan Sokolov, Naftali Sommer, Uri Perlmutter, Ofir Shalvi
-
Patent number: 9671972Abstract: A method for data storage includes storing data in a group of analog memory cells by writing respective input storage values to the memory cells in the group. After storing the data, respective output storage values are read from the analog memory cells in the group. Respective confidence levels of the output storage values are estimated, and the confidence levels are compressed. The output storage values and the compressed confidence levels are transferred from the memory cells over an interface to a memory controller.Type: GrantFiled: January 4, 2016Date of Patent: June 6, 2017Assignee: Apple Inc.Inventors: Uri Perlmutter, Dotan Sokolov, Ofir Shalvi, Oren Golov
-
Patent number: 9547553Abstract: Various systems to achieve data resiliency in a shared memory pool are presented. Multiple memory modules are associated with multiple data interfaces, one or multiple erasure-coding interfaces are communicatively connected with the multiple data interfaces, and multiple compute elements are communicatively connected with one or multiple erasure-coding interfaces. Data sets are erasure-coded, and the resulting fragments are stored in random access memory modules distributed throughout the system. Storage in RAM allows real-time fetching of fragments using random-access read cycles and streaming of fragments using random-access write cycles, in which read operations include reconstruction of data sets from fetched data fragments, and write operations allow conversion of data sets into fragments which are then streamed and distributively stored.Type: GrantFiled: March 8, 2015Date of Patent: January 17, 2017Assignee: Parallel Machines Ltd.Inventors: Lior Khermosh, Avner Braverman, Ofir Shalvi, Ofer Bar-Or, Gal Zuckerman
-
Publication number: 20160372184Abstract: 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: ApplicationFiled: September 6, 2016Publication date: December 22, 2016Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
-
Publication number: 20160299814Abstract: A method for data storage includes storing data in a memory that includes one or more memory units, each memory unit including memory blocks. The stored data is compacted by copying at least a portion of the data from a first memory block to a second memory block, and subsequently erasing the first memory block. Upon detecting a failure in the second memory block after copying the portion of the data and before erasure of the first memory block, the portion of the data is recovered by reading the portion from the first memory block.Type: ApplicationFiled: June 23, 2016Publication date: October 13, 2016Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Julian Vlaiko, Moshe Neerman
-
Patent number: 9449705Abstract: 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: GrantFiled: February 6, 2014Date of Patent: September 20, 2016Assignee: Apple Inc.Inventors: Ofir Shalvi, Naftali Sommer, Dotan Sokolov, Yoav Kasorla
-
Patent number: 9400710Abstract: A method for data storage includes storing data in a memory that includes one or more memory units, each memory unit including memory blocks. The stored data is compacted by copying at least a portion of the data from a first memory block to a second memory block, and subsequently erasing the first memory block. Upon detecting a failure in the second memory block after copying the portion of the data and before erasure of the first memory block, the portion of the data is recovered by reading the portion from the first memory block.Type: GrantFiled: March 19, 2015Date of Patent: July 26, 2016Assignee: Apple Inc.Inventors: Ofir Shalvi, Naftali Sommer, Uri Perlmutter, Julian Vlaiko, Moshe Neerman
-
Publication number: 20160117130Abstract: A method for data storage includes storing data in a group of analog memory cells by writing respective input storage values to the memory cells in the group. After storing the data, respective output storage values are read from the analog memory cells in the group. Respective confidence levels of the output storage values are estimated, and the confidence levels are compressed. The output storage values and the compressed confidence levels are transferred from the memory cells over an interface to a memory controller.Type: ApplicationFiled: January 4, 2016Publication date: April 28, 2016Inventors: Uri Perlmutter, Dotan Sokolov, Ofir Shalvi, Oren Golov
-
Patent number: RE46346Abstract: 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: GrantFiled: March 26, 2014Date of Patent: March 21, 2017Assignee: Apple Inc.Inventors: Naftali Sommer, Ofir Shalvi, Dotan Sokolov