Patents by Inventor Cyril Guyot
Cyril Guyot 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: 20210264958Abstract: An apparatus is provided that includes a memory device including a plurality of sub-arrays, and a memory controller. The memory controller is configured to determine a value of a parameter of a corresponding write pulse for each bit of a word based on a relative importance of each bit, and write each bit of the word to a corresponding one of the plurality of sub-arrays using the corresponding write pulses.Type: ApplicationFiled: May 13, 2021Publication date: August 26, 2021Applicant: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Yongjune Kim, Yoocharn Jeon, Won Ho Choi, Cyril Guyot, JR., Yuval Cassuto
-
Patent number: 11031061Abstract: A system and method include determining, by a memory controller associated with a memory device, a value of a parameter of a write pulse for a plurality of bits of a B-bit word to be stored in the memory device. The value of the parameter is based upon a relative importance of a bit position of the plurality of bits in the B-bit word to a performance of a machine learning or signal processing task involving the B-bit word, a fidelity metric, and a resource metric. The system and method also include writing each of the plurality of bits of the B-bit word in a different sub-array of the memory device using the write pulse generated based on the value of the parameter determined for a particular one of the plurality of bits.Type: GrantFiled: September 27, 2019Date of Patent: June 8, 2021Assignee: Western Digital Technologies, Inc.Inventors: Yongjune Kim, Yoocharn Jeon, Won Ho Choi, Cyril Guyot, Yuval Cassuto
-
Patent number: 11016905Abstract: A write request is received to write byte-addressable data corresponding to a first entry of a plurality of entries in a page table, and the byte-addressable data is written in a buffer of a host memory. A read request is received to read byte-addressable data corresponding to a second entry of the plurality of entries in the page table, and a read command is sent to a device using a memory device interface to read the byte-addressable data from a Storage Class Memory (SCM) of the device. According to another aspect, control circuitry of the device uses a block device interface for receiving commands from a host to read and write data in blocks in the SCM. The control circuitry also uses a memory device interface for receiving read commands from the host to read byte-addressable data from the SCM.Type: GrantFiled: November 13, 2019Date of Patent: May 25, 2021Assignee: Western Digital Technologies, Inc.Inventors: Adam Manzanares, Cyril Guyot
-
Publication number: 20210141736Abstract: A write request is received to write byte-addressable data corresponding to a first entry of a plurality of entries in a page table, and the byte-addressable data is written in a buffer of a host memory. A read request is received to read byte-addressable data corresponding to a second entry of the plurality of entries in the page table, and a read command is sent to a device using a memory device interface to read the byte-addressable data from a Storage Class Memory (SCM) of the device. According to another aspect, control circuitry of the device uses a block device interface for receiving commands from a host to read and write data in blocks in the SCM. The control circuitry also uses a memory device interface for receiving read commands from the host to read byte-addressable data from the SCM.Type: ApplicationFiled: November 13, 2019Publication date: May 13, 2021Inventors: Adam Manzanares, Cyril Guyot
-
Patent number: 10991414Abstract: A system and method for refreshing memory cells of a memory device includes storing each bit of a B-bit word in a different sub-array of a memory device. Each of the bits is associated with a bit position, and the memory device includes a plurality of sub-arrays. The system and method also include determining a refresh interval for a plurality of the bit positions based upon a relative importance of the plurality of the bit positions to a performance of a machine learning or signal processing task involving the B-bit word. The refresh interval is based upon a fidelity metric and a resource metric. The system and method further include refreshing the plurality of sub-arrays based upon the refresh interval determined for the plurality of bit positions, and dynamically updating the refresh interval for the plurality of bit positions upon receiving a new fidelity metric or a new resource metric.Type: GrantFiled: September 27, 2019Date of Patent: April 27, 2021Assignee: Western Digital Technologies, Inc.Inventors: Yongjune Kim, Won Ho Choi, Cyril Guyot, Yuval Cassuto
-
Publication number: 20210098041Abstract: A system and method include determining, by a memory controller associated with a memory device, a value of a parameter of a write pulse for a plurality of bits of a B-bit word to be stored in the memory device. The value of the parameter is based upon a relative importance of a bit position of the plurality of bits in the B-bit word to a performance of a machine learning or signal processing task involving the B-bit word, a fidelity metric, and a resource metric. The system and method also include writing each of the plurality of bits of the B-bit word in a different sub-array of the memory device using the write pulse generated based on the value of the parameter determined for a particular one of the plurality of bits.Type: ApplicationFiled: September 27, 2019Publication date: April 1, 2021Applicant: Western Digital Technologies, Inc.Inventors: Yongjune Kim, Yoocharn Jeon, Won Ho Choi, Cyril Guyot, Yuval Cassuto
-
Publication number: 20210073036Abstract: A system and method for allocating computational resources includes a plurality of classifiers, a memory array, and a memory controller to allocate memory from the memory array to each of the plurality of classifier. The system and method also include an optimization processor to determine an optimized bit precision value for at least one of the plurality of classifiers based upon a relative importance of the plurality of classifiers. The memory controller allocates the memory from the memory array to the plurality of classifiers based upon the determined optimized bit precision value.Type: ApplicationFiled: September 6, 2019Publication date: March 11, 2021Applicant: Western Digital Technologies, Inc.Inventors: Yongjune Kim, Yuval Cassuto, Robert Mateescu, Cyril Guyot
-
Publication number: 20200327928Abstract: A system and method for refreshing memory cells of a memory device includes storing each bit of a B-bit word in a different sub-array of a memory device. Each of the bits is associated with a bit position, and the memory device includes a plurality of sub-arrays. The system and method also include determining a refresh interval for a plurality of the bit positions based upon a relative importance of the plurality of the bit positions to a performance of a machine learning or signal processing task involving the B-bit word. The refresh interval is based upon a fidelity metric and a resource metric. The system and method further include refreshing the plurality of sub-arrays based upon the refresh interval determined for the plurality of bit positions, and dynamically updating the refresh interval for the plurality of bit positions upon receiving a new fidelity metric or a new resource metric.Type: ApplicationFiled: September 27, 2019Publication date: October 15, 2020Applicant: Western Digital Technologies, Inc.Inventors: Yongjune Kim, Won Ho Choi, Cyril Guyot, Yuval Cassuto
-
Patent number: 10540323Abstract: Various aspects for managing input/output operations in a storage network are described. For instance, a method may include applying a hash function on a target data object to calculate a hash key for the target data object and identifying a target storage bucket for the target data object based on the hash key and a hash table map. The method may further include reading a data object key for a data object stored in the target storage bucket and comparing the data object key and the hash key to determine a match. The method may also include determining that the data object is the target data object if the data object key and the hash key match and reading the target data object from the target storage bucket when there is a match. Some methods can be performed using a single remote direct access request.Type: GrantFiled: May 30, 2017Date of Patent: January 21, 2020Assignee: Western Digital Technologies, Inc.Inventors: Filip Blagojevic, Cyril Guyot
-
Patent number: 10481803Abstract: Technology is provided for updating a data set in a data storage system. In an example data storage system, the system stores a separate copy of an initial data set on each one of a plurality of storage devices, one of which is designated as a leader storage device. The system receives update data and transmits it to each other one of the plurality of replica storage devices. The system updates the copy of the initial data set stored on a replica storage device based on the updated data, resulting in an updated data set and adds a provisional marker to the updated data set. The system transmits an update notification to each of the other replica storage devices. Responsive to determining that update notifications have been received from a threshold number of replica storage, the system removes the provisional marker from the updated data set.Type: GrantFiled: June 16, 2017Date of Patent: November 19, 2019Assignee: Western Digital Technologies, Inc.Inventors: Arman Fazeli Chaghooshi, Lluis Pamies-Juarez, Cyril Guyot
-
Patent number: 10423339Abstract: A method may include writing data to a hard drive. In some examples, the method may include receiving, by an extent allocator module, a command to write data. The command may include data and a logical block address (LBA) specified by the host. The method may also include mapping, by the extent allocator module, the LBA specified by the host to a drive LBA. The method may further include sending, from the extent allocator module, a command to write the data at the drive LBA.Type: GrantFiled: October 6, 2015Date of Patent: September 24, 2019Assignee: Western Digital Technologies, Inc.Inventors: Zvonimir Z. Bandic, Cyril Guyot, Adam C. Manzanares, Noah Watkins
-
Patent number: 10379952Abstract: The disclosed technology can advantageously provide an efficient data recovery system including a plurality of storage nodes including a first storage node and a second storage node, and a storage logic that is coupled to the storage nodes and that manages storage of data on the storage nodes. The storage logic is executable to: receive a data set including data elements including a first set of data elements associated with the first storage node and a second set of data elements associated with the second storage node; generate a first parity of the data set, the first parity including a horizontal parity including a set of horizontal parity entries; and combine the data elements from the data set to produce a skipper parity including a set of skipper parity entries. Combining the data elements includes transforming a subset of the data elements from the data set using an invertible operation, the set of horizontal parity entries being different from the set of skipper parity entries.Type: GrantFiled: June 16, 2017Date of Patent: August 13, 2019Assignee: Western Digital Technologies, Inc.Inventors: Robert Eugeniu Mateescu, Cyril Guyot, Lluis Pamies-Juarez
-
Patent number: 10289489Abstract: Technology is provided for updating a data set at a data storage system. In an example storage system, the system stores a data set in a plurality of data storage devices. The system stores parity data at a plurality of parity devices. The system receives update data from a client system for a first section of the data set. The system generates updated parity data based on an original version of the first section of the data set and the update data. The system transmits update parity data to the plurality of parity devices. The system receives update notifications from a plurality of parity devices. The system determines that update notifications have been received from at least a threshold number of parity devices in the plurality of parity devices. In response, the system updates the first section of the data set at the leader data storage device.Type: GrantFiled: July 11, 2017Date of Patent: May 14, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Arman Fazeli Chaghooshi, Lluis Pamies-Juarez, Cyril Guyot, Robert Eugeniu Mateescu
-
Patent number: 10243583Abstract: Technology that detects computation errors is disclosed, in which a system may include one or more processors and storage logic. The storage logic may be executed by the one or more processors to perform operations comprising: receiving a data vector, the data vector including a plurality of ordered blocks; transposing the data vector into a set of sub vectors, each of the sub vectors including a corresponding data element from each of the ordered blocks; generating a set of discrete cyclic redundancy checks (CRCs) based on the set of sub vectors; transposing the set of discrete CRCs into a set of mixed CRCs, each of the mixed CRCs including a CRC data element from each of the discrete CRCs; and compacting the set of mixed CRCs into a reduced CRC.Type: GrantFiled: June 16, 2017Date of Patent: March 26, 2019Assignee: Western Digital Technologies, Inc.Inventors: Cyril Guyot, Lluis Pamies-Juarez
-
Patent number: 10228878Abstract: Technology is described for performing wear leveling in non-volatile storage. Mapping from logical addresses to intermediate addresses may be performed without the use of a mapping table having an entry for each page. Intermediate addresses may be mapped to physical addresses in a physical address space partitioned into a number of buckets. Wear-leveling may be performed within each bucket by, for example, rotating data within a bucket. The bucket size and rotation rate may be selected to keep wear on the memory cells well with tolerance. The mapping from logical addresses to intermediate addresses may periodically be changed, with an associated move of data from one bucket to another bucket to provide additional wear leveling.Type: GrantFiled: October 30, 2017Date of Patent: March 12, 2019Assignee: Western Digital Technologies, Inc.Inventors: Robert Mateescu, Cyril Guyot
-
Publication number: 20190018734Abstract: Technology is provided for updating a data set at a data storage system. In an example storage system, the system stores a data set in a plurality of data storage devices. The system stores parity data at a plurality of parity devices. The system receives update data from a client system for a first section of the data set. The system generates updated parity data based on an original version of the first section of the data set and the update data. The system transmits update parity data to the plurality of parity devices. The system receives update notifications from a plurality of parity devices. The system determines that update notifications have been received from at least a threshold number of parity devices in the plurality of parity devices. In response, the system updates the first section of the data set at the leader data storage device.Type: ApplicationFiled: July 11, 2017Publication date: January 17, 2019Inventors: Arman Fazeli Chaghooshi, Lluis Pamies-Juarez, Cyril Guyot, Robert Eugeniu Mateescu
-
Patent number: 10177785Abstract: An approach for generating updated error detecting code for a partial update of data is disclosed. The techniques include receiving data representing a change to a portion of a data object, the data object having a first error detecting code, and the portion of the data object having an offset from the beginning of the data object; generating a combination term by combining the data and the portion of the data object; and computing a second error detecting code based on the combination term. The techniques may further include computing a third error detecting code by combining the first error detecting code and the second error detecting code, the third error detecting code being configured to detect an error in the data object as changed by the data, and storing the data and the third error detecting code.Type: GrantFiled: August 23, 2016Date of Patent: January 8, 2019Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Cyril Guyot, Lluis Pamies-Juarez
-
Patent number: 10164655Abstract: Techniques for generating parities and repairing data erasures using a cache oblivious encoding algorithm are disclosed. The system includes an encoding module which receives a request to recreate data for a subset of a plurality of content stores from a storage manager. The encoding module generates a new first parity and a new second parity using the remaining content in the plurality of content stores. The encoding module generates a first portion of the requested data using the new first parity and a first parity for the plurality of content stores and a second portion of the requested data using the new second parity and a second parity for the plurality of content stores. The encoding module may recreate the data for the plurality of content stores using the first portion of the requested data and the second portion of the requested data.Type: GrantFiled: September 25, 2015Date of Patent: December 25, 2018Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Cyril Guyot, Robert Mateescu, Lluis Pamies-Juarez, Filip Blagojevic
-
Publication number: 20180367162Abstract: Technology that detects computation errors is disclosed, in which a system may include one or more processors and storage logic. The storage logic may be executed by the one or more processors to perform operations comprising: receiving a data vector, the data vector including a plurality of ordered blocks; transposing the data vector into a set of sub vectors, each of the sub vectors including a corresponding data element from each of the ordered blocks; generating a set of discrete cyclic redundancy checks (CRCs) based on the set of sub vectors; transposing the set of discrete CRCs into a set of mixed CRCs, each of the mixed CRCs including a CRC data element from each of the discrete CRCs; and compacting the set of mixed CRCs into a reduced CRC.Type: ApplicationFiled: June 16, 2017Publication date: December 20, 2018Inventors: Cyril Guyot, Lluis Pamies-Juarez
-
Publication number: 20180365107Abstract: The disclosed technology can advantageously provide an efficient data recovery system including a plurality of storage nodes including a first storage node and a second storage node, and a storage logic that is coupled to the storage nodes and that manages storage of data on the storage nodes. The storage logic is executable to: receive a data set including data elements including a first set of data elements associated with the first storage node and a second set of data elements associated with the second storage node; generate a first parity of the data set, the first parity including a horizontal parity including a set of horizontal parity entries; and combine the data elements from the data set to produce a skipper parity including a set of skipper parity entries. Combining the data elements includes transforming a subset of the data elements from the data set using an invertible operation, the set of horizontal parity entries being different from the set of skipper parity entries.Type: ApplicationFiled: June 16, 2017Publication date: December 20, 2018Inventors: Robert Eugeniu Mateescu, Cyril Guyot, Lluis Pamies-Juarez