Patents by Inventor Ruchirkumar D. Shah
Ruchirkumar D. Shah 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: 10592429Abstract: Cache memory for resistive switching memory modules is provided herein. The cache memory can reside on a separate DIMM from the resistive switching memory, in some embodiments, or can share a common DIMM with the resistive switching memory. Cache management protocols are provided to service read and write policies for managing interaction of data between the cache memory and the resistive switching memory. In various embodiments, memory controllers are optimized for physical characteristics of resistive switching memory, and cache management protocols can be implemented to take advantage of these characteristics.Type: GrantFiled: June 6, 2017Date of Patent: March 17, 2020Assignee: CROSSBAR, INC.Inventors: Mehdi Asnaashari, Robin Sarno, Ruchirkumar D. Shah
-
Patent number: 10169128Abstract: Resistive switching memory architectures disclosed herein are capable of achieving fast read/write times and, particularly in the case of multi-bank parallel processing, executing many read or write operations per second. Because resistive switching memory is not guaranteed to be error free, resistive memory controllers can be programmed for error management when paired with such memory architectures. To reduce error management overhead, a dedicated error pin is provided to mitigate or avoid the need for a status read in conjunction with each read or write operation issued to a memory device. A status read can be implemented in response to an error signal on the dedicated error pin, but otherwise can be avoided.Type: GrantFiled: June 5, 2017Date of Patent: January 1, 2019Assignee: CROSSBAR, INC.Inventors: Mehdi Asnaashari, Robin Sarno, Ruchirkumar D. Shah
-
Patent number: 9979540Abstract: A storage device contains a smart-card device and a memory device, both connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data in various partitions. One of these partitions may be a read-only partition that is normally accessible only for read accesses. However, it may sometimes be necessary to update or supplement the data stored in the read-only partition. This is accomplished by a host issuing an appropriate command to the storage device, which may be accompanied by an identifier for an appropriate level of authorization. The controller then changes the attribute of the read-only partition from “read-only” to “read/write” to allow data to be written to the partition. Upon completion, the controller changes the attribute of the partition back to read-only.Type: GrantFiled: June 12, 2015Date of Patent: May 22, 2018Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Patent number: 9792073Abstract: A method of managing logical unit numbers (LUNs) in a storage system includes identifying one or more LUN logical block address (LBA)-groups being affected. The one or more LUN LBA-groups defining a LUN. The method further determining the existence of an association of each of the affected LUN LBA-groups to a portion of a storage pool and maintaining a mapping table to track the association of the LUN LBA-groups to the storage pool.Type: GrantFiled: February 9, 2015Date of Patent: October 17, 2017Assignee: Avalanche Technology, Inc.Inventors: Mehdi Asnaashari, Siamack Nemazie, Ruchirkumar D. Shah
-
Patent number: 9727245Abstract: In accordance with a method of the invention, host data, accompanied by host LBA, is received from a host. If the host data is determined not to be a duplicate host data, an available intermediate LBA (iLBA) is identified and the host LBA is linked to the identified iLBA. During writing of the received host data to the SSDs, an available SLBA is identified and saved to a table at a location indexed by the identified iLBA. Accordingly, the next time the same host data is received, it is recognized as a duplicate host data and the host address accompanying it is linked to the same iLBA, which is already associated with the same SLBA. Upon this recognition, an actual write to the SSDs is avoided.Type: GrantFiled: May 26, 2015Date of Patent: August 8, 2017Assignee: Avalanche Technology, Inc.Inventors: Siamack Nemazie, Mehdi Asnaashari, Ruchirkumar D. Shah
-
Patent number: 9483632Abstract: A storage device contains a smart-card device and a memory device, both of which are accessed though a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data in various partitions corresponding to the protection level of the data stored therein. The smart-card device stores critical security parameters that are provided to the controller to protect access to some or all of the partitions of the memory device. A host connected to the controller issues commands, and the controller analyzes the commands and responds to them in various ways depending upon the nature of the command. In particular, depending upon the nature of the command, the controller may either pass the command to the smart-card device, or ignore the command either indefinitely or until a predetermined event has occurred.Type: GrantFiled: July 21, 2015Date of Patent: November 1, 2016Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Patent number: 9413535Abstract: A storage device contains a smart-card device and a memory device, which is connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data. The memory device may also be used to store data or instructions for use by the smart-card device. The controller includes a security engine that uses critical security parameters stored in, and received from, the smart-card device. The critical security parameters may be sent to the controller in a manner that protects them from being discovered. The critical security parameters may be encryption and/or decryption keys that may encrypt data written to the memory device and/or decrypt data read from the memory device, respectively. Data and instructions used by the smart-card device may therefore stored in the memory device in encrypted form.Type: GrantFiled: January 5, 2015Date of Patent: August 9, 2016Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150378884Abstract: In accordance with various embodiments of the invention, the storage processor 10, rather than the storage pool 26, determines locations within the storage pool 26 into which data from the host 12 is to be stored by controlling striping across the SSDs of the storage pool 26 thereby increasing performance of the overall system, i.e. storage system 10, storage pool 26 and host 12. Performance improvement is realized over that of prior art systems because the storage system 10 has a global view of data traffic of the overall system and is aware of what is going on with the overall system as opposed to the SSDs of the storage pool 26, which have comparatively limited view. In accordance with a method and apparatus of the invention, an exemplary manner in which the storage system 10 is capable of controlling addressing of the SSDs of the storage pool 26 is by maintaining geometry information of the SSDs in the memory 20 and maintaining virtual super blocks associated with the SSDs.Type: ApplicationFiled: April 6, 2015Publication date: December 31, 2015Inventors: Siamack Nemazie, Mehdi Asnaashari, Ruchirkumar D. Shah
-
Publication number: 20150378886Abstract: Flash geometry information of the solid state disk (SSD) is maintained as is a logically-addressable SSD (laSSD) geometry information of the SSD. Based on the flash geometry and the laSSD geometry, virtual super blocks are configured by dynamically binding logical SSD logical block addresses (SLBAs) of a virtual super block with a physical super block within the laSSD. A virtual super block is made of a number of virtual blocks and each virtual block made of a number of virtual pages. Each of the virtual blocks corresponds to a physical block of a physical super block within the laSSD such that the virtual pages of the virtual block correspond to like physical pages of a corresponding physical block. Host logical block addresses (LBAs) are assigned to laSSD LBAs (SLBAs), which identify the virtual super blocks used for striping across physical super blocks.Type: ApplicationFiled: April 6, 2015Publication date: December 31, 2015Inventors: Siamack Nemazie, Mehdi Asnaashari, Ruchirkumar D. Shah
-
Publication number: 20150324575Abstract: A storage device contains a smart-card device and a memory device, both of which are accessed though a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data in various partitions corresponding to the protection level of the data stored therein. The smart-card device stores critical security parameters that are provided to the controller to protect access to some or all of the partitions of the memory device. A host connected to the controller issues commands, and the controller analyzes the commands and responds to them in various ways depending upon the nature of the command. In particular, depending upon the nature of the command, the controller may either pass the command to the smart-card device, or ignore the command either indefinitely or until a predetermined event has occurred.Type: ApplicationFiled: July 21, 2015Publication date: November 12, 2015Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150280912Abstract: A storage device contains a smart-card device and a memory device, both connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data in various partitions. One of these partitions may be a read-only partition that is normally accessible only for read accesses. However, it may sometimes be necessary to update or supplement the data stored in the read-only partition. This is accomplished by a host issuing an appropriate command to the storage device, which may be accompanied by an identifier for an appropriate level of authorization. The controller then changes the attribute of the read-only partition from “read-only” to “read/write” to allow data to be written to the partition. Upon completion, the controller changes the attribute of the partition back to read-only.Type: ApplicationFiled: June 12, 2015Publication date: October 1, 2015Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150253999Abstract: In accordance with a method of the invention, host data, accompanied by host LBA, is received from a host. If the host data is determined not to be a duplicate host data, an available intermediate LBA (iLBA) is identified and the host LBA is linked to the identified iLBA. During writing of the received host data to the SSDs, an available SLBA is identified and saved to a table at a location indexed by the identified iLBA. Accordingly, the next time the same host data is received, it is recognized as a duplicate host data and the host address accompanying it is linked to the same iLBA, which is already associated with the same SLBA. Upon this recognition, an actual write to the SSDs is avoided.Type: ApplicationFiled: May 26, 2015Publication date: September 10, 2015Inventors: Siamack Nemazie, Mehdi Asnaashari, Ruchirkumar D. Shah
-
Patent number: 9111045Abstract: A storage device contains a smart-card device and a memory device, both of which are accessed though a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data in various partitions corresponding to the protection level of the data stored therein. The smart-card device stores critical security parameters that are provided to the controller to protect access to some or all of the partitions of the memory device. A host connected to the controller issues commands, and the controller analyzes the commands and responds to them in various ways depending upon the nature of the command. In particular, depending upon the nature of the command, the controller may either pass the command to the smart-card device, or ignore the command either indefinitely or until a predetermined event has occurred.Type: GrantFiled: April 16, 2012Date of Patent: August 18, 2015Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150212752Abstract: A storage system includes a storage processor coupled to solid state disks (SSDs) and a host, the SSDs are identified by SSD logical block addresses (SLBAs). The storage processor receives a command from the host to write data to the SSDs and further receives a location within the SSDs to write the data, the location being referred to as a host LBA. The storage processor includes a central processor unit (CPU) subsystem and maintains unassigned SLBAs of a corresponding SSD. The CPU subsystem upon receiving the command to write data, generates sub-commands based on a range of host LBAs derived from the received command and further based on a granularity. At least one of the host LBAs is non-sequential relative to the remaining host LBAs. The CPU subsystem assigns the sub-commands to unassigned SLBAs by assigning each sub-command to a distinct SSD of a stripe, the host LBAs being decoupled from the SLBAs.Type: ApplicationFiled: April 3, 2015Publication date: July 30, 2015Inventors: Siamack Nemazie, Mehdi Asnaashari, Ruchirkumar D. Shah
-
Patent number: 9088418Abstract: A storage device contains a smart-card device and a memory device, both connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may he used to store a relatively large amount of data in various partitions. One of these partitions may be a read-only partition that is normally accessible only for read accesses. However, it may sometimes be necessary to update or supplement the data stored in the read-only partition. This is accomplished by a host issuing an appropriate command to the storage device, which may he accompanied by an identifier for an appropriate level of authorization. The controller then changes the attribute of the read-only partition from “read-only” to “read/write” to allow data to be written to the partition. Upon completion, the controller changes the attribute of the partition back to read-only.Type: GrantFiled: April 18, 2014Date of Patent: July 21, 2015Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150169230Abstract: A method of managing logical unit numbers (LUNs) in a storage system includes identifying one or more LUN logical block address (LBA)-groups being affected. The one or more LUN LBA-groups defining a LUN. The method further determining the existence of an association of each of the affected LUN LBA-groups to a portion of a storage pool and maintaining a mapping table to track the association of the LUN LBA-groups to the storage pool.Type: ApplicationFiled: February 9, 2015Publication date: June 18, 2015Inventors: Mehdi Asnaashari, Siamack Nemazie, Ruchirkumar D. Shah
-
Publication number: 20150156022Abstract: A storage device contains a smart-card device and a memory device, which is connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data. The memory device may also be used to store data or instructions for use by the smart-card device. The controller includes a security engine that uses critical security parameters stored in, and received from, the smart-card device. The critical security parameters may be sent to the controller in a manner that protects them from being discovered. The critical security parameters may be encryption and/or decryption keys that may encrypt data written to the memory device and/or decrypt data read from the memory device, respectively. Data and instructions used by the smart-card device may therefore stored in the memory device in encrypted form.Type: ApplicationFiled: January 5, 2015Publication date: June 4, 2015Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna
-
Publication number: 20150095555Abstract: A method of thin provisioning in a storage system is disclosed. The method includes communicating to a user a capacity of a virtual storage, the virtual storage capacity being substantially larger than that of a storage pool. Further, the method includes assigning portions of the storage pool to logical unit number (LUN) logical block address (LBA)-groups only when the LUN LBA-groups are being written to and maintaining a mapping table to track the association of the LUN LBA-groups to the storage pool.Type: ApplicationFiled: February 3, 2014Publication date: April 2, 2015Applicant: Avalanche Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Siamack Nemazie
-
Patent number: 8954658Abstract: A method of managing logical unit numbers (LUNs) in a storage system includes identifying one or more LUN logical block address (LBA)-groups being affected. The one or more LUN LBA-groups defining a LUN. The method further determining the existence of an association of each of the affected LUN LBA-groups to a portion of a storage pool and maintaining a mapping table to track the association of the LUN LBA-groups to the storage pool.Type: GrantFiled: November 26, 2013Date of Patent: February 10, 2015Assignee: Avalanche Technology, Inc.Inventors: Mehdi Asnaashari, Siamack Nemazie, Ruchirkumar D. Shah
-
Patent number: 8930711Abstract: A storage device contains a smart-card device and a memory device, which is connected to a controller. The storage device may be used in the same manner as a conventional smart-card device, or it may be used to store a relatively large amount of data. The memory device may also be used to store data or instructions for use by the smart-card device. The controller includes a security engine that uses critical security parameters stored in, and received from, the smart-card device. The critical security parameters may be sent to the controller in a manner that protects them from being discovered. The critical security parameters may be encryption and/or decryption keys that may encrypt data written to the memory device and/or decrypt data read from the memory device, respectively. Data and instructions used by the smart-card device may therefore stored in the memory device in encrypted form.Type: GrantFiled: April 2, 2012Date of Patent: January 6, 2015Assignee: Micron Technology, Inc.Inventors: Mehdi Asnaashari, Ruchirkumar D. Shah, Sylvain Prevost, Ksheerabdhi Krishna