Patents by Inventor Arie Peled
Arie Peled 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: 10089041Abstract: A method for data storage includes, in a storage device that communicates with a host over a storage interface for executing a storage command in a memory of the storage device, estimating an expected data under-run between fetching data for the storage command from the memory and sending the data over the storage interface. A data size to be prefetched from the memory, in order to complete uninterrupted execution of the storage command, is calculated in the storage device based on the estimated data under-run. The storage command is executed in the memory while prefetching from the memory data of at least the calculated data size.Type: GrantFiled: February 3, 2016Date of Patent: October 2, 2018Assignee: Apple Inc.Inventor: Arie Peled
-
Publication number: 20180196750Abstract: A storage device includes a nonvolatile memory and a controller. The controller is configured to store in the nonvolatile memory data for a host, to generate messages having a message size to be cached in the host in a cache memory having a cache-line size larger than the message size, to aggregate two or more of the messages by producing an aggregated message that matches the cache-line size, and to send the aggregated message to the host.Type: ApplicationFiled: January 8, 2017Publication date: July 12, 2018Inventors: Ben Shilo, Arie Peled, Tal Ostro
-
Patent number: 9411540Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: GrantFiled: March 18, 2014Date of Patent: August 9, 2016Assignee: Apple Inc.Inventor: Arie Peled
-
Publication number: 20160154598Abstract: A method for data storage includes, in a storage device that communicates with a host over a storage interface for executing a storage command in a memory of the storage device, estimating an expected data under-run between fetching data for the storage command from the memory and sending the data over the storage interface. A data size to be prefetched from the memory, in order to complete uninterrupted execution of the storage command, is calculated in the storage device based on the estimated data under-run. The storage command is executed in the memory while prefetching from the memory data of at least the calculated data size.Type: ApplicationFiled: February 3, 2016Publication date: June 2, 2016Inventor: Arie Peled
-
Patent number: 9229525Abstract: A method includes, in a memory system that includes a host and a storage device connected by a bus interface, assessing in the storage device a power supply state of the memory system. In the storage device a latency tolerance is selected for the bus interface based on the assessed power supply state. The selected latency tolerance is indicated from the storage device to the host, for application to the bus interface.Type: GrantFiled: June 17, 2013Date of Patent: January 5, 2016Assignee: Apple Inc.Inventors: Idan Reller, Rachel Menes, Arie Peled, Guy Kushtai
-
Patent number: 8972614Abstract: A method includes receiving in a storage device multiple commands from a host, and sending responses to the commands from the storage device to the host, over a half-duplex link that does not enable simultaneous transmission by the host and by the storage device. An idle gap is inserted between two of the responses, during which the host has priority to send one or more subsequent commands on the half-duplex link.Type: GrantFiled: July 27, 2012Date of Patent: March 3, 2015Assignee: Apple Inc.Inventor: Arie Peled
-
Patent number: 8949475Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: GrantFiled: March 18, 2014Date of Patent: February 3, 2015Assignee: Apple Inc.Inventor: Arie Peled
-
Publication number: 20140372777Abstract: A method includes, in a memory system that includes a host and a storage device connected by a bus interface, assessing in the storage device a power supply state of the memory system. In the storage device a latency tolerance is selected for the bus interface based on the assessed power supply state. The selected latency tolerance is indicated from the storage device to the host, for application to the bus interface.Type: ApplicationFiled: June 17, 2013Publication date: December 18, 2014Inventors: Idan Reller, Rachel Menes, Arie Peled, Guy Kushtai
-
Publication number: 20140201440Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: ApplicationFiled: March 18, 2014Publication date: July 17, 2014Inventor: Arie Peled
-
Publication number: 20140201391Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: ApplicationFiled: March 18, 2014Publication date: July 17, 2014Inventor: Arie Peled
-
Patent number: 8719457Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: GrantFiled: April 5, 2012Date of Patent: May 6, 2014Assignee: Apple Inc.Inventor: Arie Peled
-
Patent number: 8713204Abstract: A method includes receiving from a host multiple commands for execution in a memory, in accordance with a storage protocol that supports processing of only a single command at any given time. At a first time, a first command is executed in the memory and data related to the first command is exchanged with the host, even though a second command, different from the first command, is selected to serve as the single command for which the processing is currently supported in accordance with the storage protocol. A progress of the first command is reported to the host at a second time, which is later than the first time, upon detecting that the first command is selected to serve as the single command for which the processing is currently supported.Type: GrantFiled: July 27, 2012Date of Patent: April 29, 2014Assignee: Apple Inc.Inventor: Arie Peled
-
Publication number: 20130166780Abstract: A method includes receiving in a storage device multiple commands from a host, and sending responses to the commands from the storage device to the host, over a half-duplex link that does not enable simultaneous transmission by the host and by the storage device. An idle gap is inserted between two of the responses, during which the host has priority to send one or more subsequent commands on the half-duplex link.Type: ApplicationFiled: July 27, 2012Publication date: June 27, 2013Inventor: Arie Peled
-
Publication number: 20130166781Abstract: A method includes receiving from a host multiple commands for execution in a memory, in accordance with a storage protocol that supports processing of only a single command at any given time. At a first time, a first command is executed in the memory and data related to the first command is exchanged with the host, even though a second command, different from the first command, is selected to serve as the single command for which the processing is currently supported in accordance with the storage protocol. A progress of the first command is reported to the host at a second time, which is later than the first time, upon detecting that the first command is selected to serve as the single command for which the processing is currently supported.Type: ApplicationFiled: July 27, 2012Publication date: June 27, 2013Inventor: Arie Peled
-
Publication number: 20120265962Abstract: A method for data storage includes, in a storage device that communicates with a host over a storage interface for executing a storage command in a memory of the storage device, estimating an expected data under-run between fetching data for the storage command from the memory and sending the data over the storage interface. A data size to be prefetched from the memory, in order to complete uninterrupted execution of the storage command, is calculated in the storage device based on the estimated data under-run. The storage command is executed in the memory while prefetching from the memory data of at least the calculated data size.Type: ApplicationFiled: April 5, 2012Publication date: October 18, 2012Applicant: ANOBIT TECHNOLOGIES LTD.Inventor: Arie Peled
-
Publication number: 20120265903Abstract: A method includes pre-configuring a hardware-implemented front-end of a storage device with multiple contexts of respective connections conducted between one or more hosts and the storage device. Storage commands, which are received in the storage device and are associated with the connections having the pre-configured contexts, are executed in a memory of the storage device using the hardware-implemented front-end. Upon identifying a storage command associated with a context that is not pre-configured in the hardware-implemented front-end, software of the storage device is triggered to configure the context in the hardware-implemented front-end, and the storage command is then executed using the hardware-implemented front-end in accordance with the context configured by the software.Type: ApplicationFiled: April 5, 2012Publication date: October 18, 2012Applicant: ANOBIT TECHNOLOGIES LTD.Inventor: Arie Peled