Patents by Inventor Roman Guy
Roman Guy 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: 11968091Abstract: Methods and apparatus for enabling detection of configuration changes in a network device. One method uses a configuration counter in a system database of the network device. In response to an atomic submission of CLI commands to a configuration agent and the storing of the corresponding configuration in a system database, the configuration counter is incremented. An OpenConfig module maintains an expected value of the configuration counter and, upon completion of its own command submissions, compares the expected value to the value in the configuration counter. If the two values do not match, it indicates that the configuration counter in the system database has been incremented as a result of a configuration change from a source other than the OpenConfig module. A configuration client can then be notified of the configuration change so that it can revert the configuration to a desired configuration.Type: GrantFiled: January 20, 2023Date of Patent: April 23, 2024Assignee: ARISTA NETWORKS, INC.Inventors: Roman Olegovich Chertov, Sebastian Sapa, Christopher Elisha Neilson, Francois Guy Maurice Ripault, Ronan Mac Fhlannchadha
-
Patent number: 10977119Abstract: Disclosed are techniques for managing parity information for data stored on a storage device. A method can be implemented at a computing device communicably coupled to the storage device, and include (1) receiving a request to write data into a data band of the storage device, (2) writing the data into stripes of the data band, comprising, for each stripe of the data band: (i) calculating first parity information for the data written into the stripe, (ii) writing the first parity information into a volatile memory, and (iii) in response to determining that a threshold number of stripes have been written: converting the first parity information into smaller second parity information, and (3) in response to determining that the data band is read-verified: (i) converting the second parity information into smaller third parity information, and (ii) storing the smaller third parity information into a parity band of the storage device.Type: GrantFiled: April 11, 2019Date of Patent: April 13, 2021Assignee: Apple Inc.Inventors: Eran Roll, Stas Mouler, Matthew J. Byom, Andrew W. Vogan, Muhammad N. Ashraf, Elad Harush, Roman Guy
-
Patent number: 10762967Abstract: A controller includes an interface and a processor. The interface is configured to communicate with a nonvolatile memory including multiple memory cells organized in multiple memory blocks that each includes multiple Word Lines (WLs). The processor is configured to store first data in one or more WLs of a memory block, the first data occupies less than a maximal number of WLs available in the memory block, to calculate redundancy data over the first data and store the redundancy data in a dedicated memory, to program second data to a selected WL of the memory block that was not programmed with the first data, to check a programming status resulting from the programming of the selected WL, and in response to identifying that programming the second data to the selected WL has corrupted at least part of the first data, to recover the first data using the redundancy data.Type: GrantFiled: November 28, 2018Date of Patent: September 1, 2020Assignee: APPLE INC.Inventors: Assaf Shappir, Barak Baum, Itay Sagron, Roman Guy, Guy Ben-Yehuda, Stas Mouler
-
Publication number: 20200104210Abstract: Disclosed are techniques for managing parity information for data stored on a storage device. A method can be implemented at a computing device communicably coupled to the storage device, and include (1) receiving a request to write data into a data band of the storage device, (2) writing the data into stripes of the data band, comprising, for each stripe of the data band: (i) calculating first parity information for the data written into the stripe, (ii) writing the first parity information into a volatile memory, and (iii) in response to determining that a threshold number of stripes have been written: converting the first parity information into smaller second parity information, and (3) in response to determining that the data band is read-verified: (i) converting the second parity information into smaller third parity information, and (ii) storing the smaller third parity information into a parity band of the storage device.Type: ApplicationFiled: April 11, 2019Publication date: April 2, 2020Inventors: Eran ROLL, Stas MOULER, Matthew J. BYOM, Andrew W. VOGAN, Muhammad N. ASHRAF, Elad HARUSH, Roman GUY
-
Publication number: 20200005874Abstract: A controller includes an interface and a processor. The interface is configured to communicate with a nonvolatile memory including multiple memory cells organized in multiple memory blocks that each includes multiple Word Lines (WLs). The processor is configured to store first data in one or more WLs of a memory block, the first data occupies less than a maximal number of WLs available in the memory block, to calculate redundancy data over the first data and store the redundancy data in a dedicated memory, to program second data to a selected WL of the memory block that was not programmed with the first data, to check a programming status resulting from the programming of the selected WL, and in response to identifying that programming the second data to the selected WL has corrupted at least part of the first data, to recover the first data using the redundancy data.Type: ApplicationFiled: November 28, 2018Publication date: January 2, 2020Inventors: Assaf Shappir, Barak Baum, Itay Sagron, Roman Guy, Guy Ben-Yehuda, Stas Mouler
-
Patent number: 10375526Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: GrantFiled: June 30, 2017Date of Patent: August 6, 2019Assignee: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Patent number: 10332608Abstract: A storage device includes storage circuitry and multiple memory blocks. The multiple memory blocks are arranged in an array, and each of the memory blocks includes multiple memory cells. A maximal number of programming cycles that a memory block of the multiple memory blocks sustains depends on a distance of the memory block from an edge of the array. The storage circuitry is configured to apply to the memory blocks programming cycles so that a number of programming cycles that can be applied to a respective memory block is based on a respective distance of the respective memory block from the edge of the array.Type: GrantFiled: May 30, 2018Date of Patent: June 25, 2019Assignee: APPLE INC.Inventors: Yael Shur, Assaf Shappir, Barak Baum, Roman Guy, Michael Tsohar
-
Publication number: 20180358103Abstract: A storage device includes storage circuitry and multiple memory blocks. The multiple memory blocks are arranged in an array, and each of the memory blocks includes multiple memory cells. A maximal number of programming cycles that a memory block of the multiple memory blocks sustains depends on a distance of the memory block from an edge of the array. The storage circuitry is configured to apply to the memory blocks programming cycles so that a number of programming cycles that can be applied to a respective memory block is based on a respective distance of the respective memory block from the edge of the array.Type: ApplicationFiled: May 30, 2018Publication date: December 13, 2018Inventors: Yael Shur, Assaf Shappir, Barak Baum, Roman Guy, Michael Tsohar
-
Patent number: 10008278Abstract: A storage device includes storage circuitry and multiple memory blocks. The multiple memory blocks are arranged in an array, and each of the memory blocks includes multiple memory cells. A maximal number of programming cycles that a memory block of the multiple memory blocks sustains depends on a distance of the memory block from an edge of the array. The storage circuitry is configured to apply to the memory blocks programming cycles so that a number of programming cycles that can be applied to a respective memory block is based on a respective distance of the respective memory block from the edge of the array.Type: GrantFiled: June 11, 2017Date of Patent: June 26, 2018Assignee: APPLE INC.Inventors: Yael Shur, Assaf Shappir, Barak Baum, Roman Guy, Michael Tsohar
-
Patent number: 9990023Abstract: Systems and methods for handling sudden power failures in non-volatile memory devices such as solid state drives are provided by having the non-volatile memory device boot up in a low power write mode, which limits substantially all programming operations to a single level cell (SLC) mode, as opposed to a normal mode in which the programming operations can be performed in a multi-level cell (MLC) mode. Thus, if the system experiences a sudden power failure when it is being powered solely by AC derived power and the battery is below a level sufficient for powering the device while it is programming in the SLC mode, data integrity will be preserved because the programming operation was being performed in SLC mode. The non-volatile memory device may be permitted to exit out the low power write mode into the normal mode when the charge level of the battery is sufficient for powering the system.Type: GrantFiled: July 26, 2016Date of Patent: June 5, 2018Assignee: APPLE INC.Inventors: Alexander Paley, Andrew W. Vogan, Eran Sandel, Lior Mouler, Liran Erez, Matthew J. Byom, Muhammad N. Ashraf, Roman Guy
-
Publication number: 20180091951Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: ApplicationFiled: June 30, 2017Publication date: March 29, 2018Applicant: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Publication number: 20170277245Abstract: Systems and methods for handling sudden power failures in non-volatile memory devices such as solid state drives are provided by having the non-volatile memory device boot up in a low power write mode, which limits substantially all programming operations to a single level cell (SLC) mode, as opposed to a normal mode in which the programming operations can be performed in a multi-level cell (MLC) mode. Thus, if the system experiences a sudden power failure when it is being powered solely by AC derived power and the battery is below a level sufficient for powering the device while it is programming in the SLC mode, data integrity will be preserved because the programming operation was being performed in SLC mode. The non-volatile memory device may be permitted to exit out the low power write mode into the normal mode when the charge level of the battery is sufficient for powering the system.Type: ApplicationFiled: July 26, 2016Publication date: September 28, 2017Inventors: Alexander Paley, Andrew W. Vogan, Eran Sandel, Lior Mouler, Liran Erez, Matthew J. Byom, Muhammad N. Ashraf, Roman Guy
-
Patent number: 9699617Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: GrantFiled: February 12, 2016Date of Patent: July 4, 2017Assignee: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Publication number: 20160249177Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: ApplicationFiled: February 12, 2016Publication date: August 25, 2016Applicant: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Patent number: 9294882Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: GrantFiled: March 23, 2015Date of Patent: March 22, 2016Assignee: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Publication number: 20150289108Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: ApplicationFiled: March 23, 2015Publication date: October 8, 2015Applicant: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Patent number: 8989773Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: GrantFiled: January 29, 2013Date of Patent: March 24, 2015Assignee: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Patent number: 8880786Abstract: A method includes, in a storage device that includes a non-volatile memory and a volatile memory, maintaining at least one data structure that stores management information used for managing data storage in the non-volatile memory, such that at least a portion of the data structure is stored in the volatile memory. A sequence of journaling chunks is created during operation of the storage device, each journaling chunk including a respective slice of the data structure and one or more changes that occurred in the data structure since a previous journaling chunk in the sequence. The sequence of the journaling chunks is stored in the non-volatile memory. Upon recovering from an electrical power interruption in the storage device, the data structure is reconstructed using the stored journaling chunks.Type: GrantFiled: September 28, 2012Date of Patent: November 4, 2014Assignee: Apple Inc.Inventors: Roman Guy, Eran Sandel, Elad Harush, Yair Schwartz
-
Publication number: 20140213280Abstract: Methods, systems, apparatus, and computer program products that include, on a first device executing a first instance of a location application, receiving an indication to begin sharing data describing a path traveled by the first device, receiving location data describing the path traveled by the first device, the location data received from a location system of the first device, and the location data including a plurality of locations of the first device, and transmitting the location data in a form usable to enable a user interface of a second instance of a location application executing on a second device to indicate the path traveled by the first device.Type: ApplicationFiled: January 29, 2013Publication date: July 31, 2014Applicant: Apple Inc.Inventors: Eran Sandel, Elad Harush, Roman Guy
-
Publication number: 20140095765Abstract: A method includes, in a storage device that includes a non-volatile memory and a volatile memory, maintaining at least one data structure that stores management information used for managing data storage in the non-volatile memory, such that at least a portion of the data structure is stored in the volatile memory. A sequence of journaling chunks is created during operation of the storage device, each journaling chunk including a respective slice of the data structure and one or more changes that occurred in the data structure since a previous journaling chunk in the sequence. The sequence of the journaling chunks is stored in the non-volatile memory. Upon recovering from an electrical power interruption in the storage device, the data structure is reconstructed using the stored journaling chunks.Type: ApplicationFiled: September 28, 2012Publication date: April 3, 2014Applicant: Apple Inc.Inventors: Roman Guy, Eran Sandel, Elad Harush, Yair Schwartz