Patents by Inventor Ashwin Narasimha

Ashwin Narasimha 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: 20190066801
    Abstract: A sequence of contiguous pages in an erase block in a non-volatile memory device is programmed and erased. Next, all of the pages in the erase block are programmed with data. Then, the data is read back and verified to determine whether there is an error in the data. When there is an error in the data, then the last page in the sequence is identified as being unstable. If there is no error in the data, then the last page in that sequence is identified as being stable. Thus, the recorded information identifies a point of instability in the erase block. Instabilities can be stabilized by performing additional writes to fill the partially filled word line.
    Type: Application
    Filed: August 29, 2018
    Publication date: February 28, 2019
    Inventors: Ajith Kumar BATTAJE, Mahesh Mandya VARDHAMANAIAH, Ashwin NARASIMHA, Sandeep SHARMA
  • Publication number: 20190050288
    Abstract: The present disclosure relates to methods and systems for implementing redundancy in memory controllers. The disclosed systems and methods utilize a row of memory blocks, such that each memory block in the row is associated with an independent media unit. Failures of the media units are not correlated, and therefore, a failure in one unit does not affect the data stored in the other units. Parity information associated with the data stored in the memory blocks is stored in a separate memory block. If the data in a single memory block has been corrupted, the data stored in the remaining memory blocks and the parity information is used to retrieve the corrupted data.
    Type: Application
    Filed: October 18, 2018
    Publication date: February 14, 2019
    Inventors: Ashish SINGHAI, Ashwin NARASIMHA, Kenneth Alan OKIN
  • Patent number: 10152389
    Abstract: An apparatus for inline compression and deduplication includes a memory unit and a processor coupled to the memory unit. The processor is configured to receive a subset of data from a data stream and select a reference data block corresponding to the subset of data, in which the reference data block is stored in a memory buffer resident in the memory unit. The processor is also configured to compare a first hash value computed for the subset of data to a second hash value computed for the reference data block, in which the first hash value and the second hash value are stored in separate hash tables and generate a compressed representation of the subset of data by modifying header data corresponding to the subset of data responsive to a detected match between the first hash value and the second hash value in one of the separate hash tables.
    Type: Grant
    Filed: June 19, 2015
    Date of Patent: December 11, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Ashwin Narasimha, Ashish Singhai, Vijay Karamcheti
  • Publication number: 20180349053
    Abstract: Various aspects for data deduplication in a storage system are provided. For instance, a storage controller may perform operations including receiving a data chunk including a set of data blocks, determining a signature for the data chunk, and comparing the signature and a set of reference signatures to determine a match. Responsive to a match, the operations may further include identifying a reference data chunk including a set of comparison blocks associated with the matched reference signature, performing a deduplication technique on the set of data blocks based on the set of comparison blocks, and identifying a subsequent reference data chunk for an estimated next data chunk based on identification of the reference data chunk and prior to receipt of the next data chunk.
    Type: Application
    Filed: June 2, 2017
    Publication date: December 6, 2018
    Inventors: Ajith Kumar Battaje, Tanay Goel, Kiran Shivanagoudar, Saurabh Manchanda, Ashwin Narasimha, Ashish Singhai
  • Patent number: 10133629
    Abstract: The present disclosure relates to methods and systems for implementing redundancy in memory controllers. The disclosed systems and methods utilize a row of memory blocks, such that each memory block in the row is associated with an independent media unit. Failures of the media units are not correlated, and therefore, a failure in one unit does not affect the data stored in the other units. Parity information associated with the data stored in the memory blocks is stored in a separate memory block. If the data in a single memory block has been corrupted, the data stored in the remaining memory blocks and the parity information is used to retrieve the corrupted data.
    Type: Grant
    Filed: April 10, 2017
    Date of Patent: November 20, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Ashish Singhai, Ashwin Narasimha, Kenneth Alan Okin
  • Patent number: 10089360
    Abstract: Embodiments of the present invention include a memory unit and a processor coupled to a memory unit. The processor is operable to group a plurality of subsets of data from an input data stream and compute a first hash value corresponding to a first grouped subset of data. Additionally, the processor is operable to detect a match between the first hash value and a second hash value stored in a hash table. Furthermore, the processor is also configured to monitor a hash value match frequency for the input data stream in which the processor is operable to increment a counter value responsive to a detection of the match and determine an entropy level for the input data stream based on the counter value relative to a frequent hash value match threshold.
    Type: Grant
    Filed: December 15, 2016
    Date of Patent: October 2, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Ashwin Narasimha, Ashish Singhai, Vijay Karamcheti, Krishanth Skandakumaran
  • Patent number: 10078646
    Abstract: An approach for fingerprinting large data objects at the wire speed has been disclosed. The techniques include Fresh/Shift pipelining, split Fresh, optimization, online channel sampling, and pipelined selection. The architecture can also be replicated to work in parallel for higher system throughput. Fingerprinting may provide an efficient mechanism for identifying duplication in a data stream, and deduplication based on the identified fingerprints may provide reduced storage costs, reduced network bandwidth consumption, reduced processing time and other benefits. In some embodiments, fingerprinting may be used to ensure or verify data integrity and may facilitate detection of corruption or tampering. An efficient manner of generating fingerprints (either via hardware, software, or a combination) may reduce a computation load and/or time required to generate fingerprints.
    Type: Grant
    Filed: August 25, 2015
    Date of Patent: September 18, 2018
    Assignee: HGST Netherlands B.V.
    Inventors: Zvonimir Bandic, Cyril Guyot, Dongyang Li, Ashwin Narasimha, Qingbo Wang, Ken Yang
  • Patent number: 10068650
    Abstract: A sequence of contiguous pages in an erase block in a non-volatile memory device is programmed and erased. Next, all of the pages in the erase block are programmed with data. Then, the data is read back and verified to determine whether there is an error in the data. When there is an error in the data, then the last page in the sequence is identified as being unstable. If there is no error in the data, then the last page in that sequence is identified as being stable. Thus, the recorded information identifies a point of instability in the erase block. Instabilities can be stabilized by performing additional writes to fill the partially filled word line.
    Type: Grant
    Filed: April 10, 2017
    Date of Patent: September 4, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Ajith Kumar Battaje, Mahesh Mandya Vardhamanaiah, Ashwin Narasimha, Sandeep Sharma
  • Patent number: 10067823
    Abstract: Systems and methods for managing the endurance of a solid state drive by assigning error corrective codes (ECC) to a plurality of solid state drive blocks are provided. The disclosed systems and methods can provide a plurality of error corrective codes, each code having a corresponding correction capability and assign to each solid state drive block an error corrective code, according to a reliability of the solid state drive block. Moreover, the disclosed systems and methods can group the solid state drive blocks into groups according to their assigned error corrective codes and apply, for each group of solid state drive block, a level of ECC correction according to the assigned error corrective code of each group.
    Type: Grant
    Filed: December 4, 2014
    Date of Patent: September 4, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Ashish Singhai, Ashwin Narasimha, Ajith Kumar
  • Patent number: 9940036
    Abstract: Techniques for controlling PCIe direct attached non-volatile memory storage system are disclosed. In one particular embodiment, the techniques may be realized as a method including monitoring a temperature of a memory attached via the PCIe interface, determining whether an operation implemented on the attached memory has caused the temperature of the memory to exceed a preset threshold, and controlling an I/O rate of the attached memory based on the determination such that the I/O rate is greater than zero.
    Type: Grant
    Filed: September 23, 2014
    Date of Patent: April 10, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Krishanth Skandakumaran, Arun Kumar Medapati, Sri Rama Namala, Ashwin Narasimha, Ajith Kumar B
  • Patent number: 9921896
    Abstract: A memory apparatus and methods are provided for preventing read errors on weak pages in a non-volatile memory system. In one example, a method includes identifying a weak page in a non-volatile memory device along a word line, wherein the weak page is partially written with at least some data; buffering data associated with the weak page to a weak page buffer that is coupled in communication with the non-volatile memory device; determining that an amount of data in the weak page buffer has reached a predetermined data level; and writing the data from the weak page buffer into the weak page along the word line in the non-volatile memory device.
    Type: Grant
    Filed: February 10, 2014
    Date of Patent: March 20, 2018
    Assignee: Virident Systems, LLC
    Inventors: Ashwin Narasimha, Vibhor Patale, Sandeep Sharma, Ajith Kumar Battaje
  • Publication number: 20180024759
    Abstract: A data storage system comprising, a storage device having segments that are configured to store data, and a storage logic coupled to the storage device that manages storage of data on the storage device using a translation table. The storage logic is executable to receive a first marker as part of a backup request, generate a second marker encapsulating a state of the storage device at a second time, calculate a difference between the first marker and the second marker, and generate a backup of data stored in the storage device based on the calculated difference between the first marker and the second marker.
    Type: Application
    Filed: May 5, 2017
    Publication date: January 25, 2018
    Inventors: Ashish Singhai, Vijay Karamcheti, Ashwin Narasimha
  • Publication number: 20180024767
    Abstract: By way of example, a data storage system may comprise a non-transitory storage device storing data blocks in chunks, and a storage logic coupled to the non-transitory storage device that manages storage of data on the storage device. The storage logic is executable to receive a data stream including one or more data blocks, identify a first chunk stored within the non-transitory storage device, retrieve a first local reference set from the first chunk, retrieve a global reference set from the non-transitory storage device, evaluate a performance of the first local reference set and the global reference set, select one of the first local reference set and the global reference set based on the evaluated performance, deduplicate each of the one or more data blocks using the selected reference set, and associate the deduplicated data blocks with the selected reference set.
    Type: Application
    Filed: May 24, 2017
    Publication date: January 25, 2018
    Inventors: Ashish Singhai, Ashwin Narasimha, Vijay Karamcheti, Tanay Goel
  • Publication number: 20180025046
    Abstract: By way of example, a data storage system may comprise, a non-transitory storage device storing data blocks in chunks, and a storage logic coupled to the non-transitory storage device that manages storage of data on the storage device. The storage logic is executable to receive a data stream for storage in a non-transitory storage device, the data stream including one or more data blocks, analyze the data stream to determine a domain, retrieve a pre-configured reference set based on the domain, and deduplicate the one or more data blocks of the data stream using the pre-configured reference set.
    Type: Application
    Filed: May 24, 2017
    Publication date: January 25, 2018
    Inventors: Ashish Singhai, Ashwin Narasimha, Vijay Karamcheti, Tanay Goel
  • Patent number: 9842660
    Abstract: A method for managing a non-volatile random-access memory (NVRAM)-based storage subsystem, the method including: monitoring, by a slave controller on a NVRAM device of the NVRAM-based storage subsystem, an I/O operation on the NVRAM device; identifying, by the slave controller and based on the monitoring, at least one occurrence of error data; comparing, by the slave controller, a numeric aspect of the at least one occurrence of error data with a threshold setting; reporting, by the slave controller on the NVRAM device and to a master controller of the NVRAM-based storage subsystem, the at least one occurrence of error data in response to the numeric aspect crossing the threshold setting; and ascertaining, by the master controller of the NVRAM-based storage system, a physical location of a defect region on the NVRAM device where the error data has occurred by analyzing the reported at least one occurrence of error data.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: December 12, 2017
    Assignee: VIRIDENT SYSTEMS, LLC
    Inventors: Vijay Karamcheti, Ashish Singhai, Ashwin Narasimha, Muthugopalkrishnan Adiseshan, Viswesh Sankaran, Ajith Kumar
  • Publication number: 20170351572
    Abstract: The present disclosure relates to methods and systems for implementing redundancy in memory controllers. The disclosed systems and methods utilize a row of memory blocks, such that each memory block in the row is associated with an independent media unit. Failures of the media units are not correlated, and therefore, a failure in one unit does not affect the data stored in the other units. Parity information associated with the data stored in the memory blocks is stored in a separate memory block. If the data in a single memory block has been corrupted, the data stored in the remaining memory blocks and the parity information is used to retrieve the corrupted data.
    Type: Application
    Filed: April 10, 2017
    Publication date: December 7, 2017
    Inventors: Ashish SINGHAI, Ashwin NARASIMHA, Kenneth Alan OKIN
  • Publication number: 20170255402
    Abstract: A method for implementing cross device redundancy schemes with a single commit by receiving, by a write page allocation unit, a request to allocate data grains; responsive to receiving the request, performing, by the write page allocation unit, an analysis of a predetermined data layout map associated with a grain memory to identify a memory segment; allocating, by the write page allocation unit, a number of data grains to the memory segment, while computing redundancy data associated with the number of data grains; storing the number of data grains and the redundancy data to the memory segment of the grain memory; determining, by the write page allocation unit, whether a storage threshold associated with the grain memory has been satisfied; and responsive to the storage threshold associated with the grain memory being satisfied, transmitting data grains and redundancy data stored in the memory segment to one or more storage devices.
    Type: Application
    Filed: March 2, 2016
    Publication date: September 7, 2017
    Inventors: Ashwin Narasimha, Krishanth Skandakumaran, Vijay Karamcheti, Ashish Singhai
  • Patent number: 9727112
    Abstract: In one embodiment of the invention, a memory apparatus for improved write performance is disclosed. The memory apparatus includes a base printed circuit board (PCB) having an edge connector for plugging into a host server system; a card level power source to provide card level power during a power failure; a memory controller coupled to the card level power source and having one or more memory channels; and one or more non-volatile memory devices (NVMDs) coupled to the card level power source and organized to respectively couple to the memory channels controlled by the memory controller. Each memory controller provides queuing and scheduling of memory operations on a channel for each NVMD in the memory channels. Responsive to power failure, the memory controller receives card level power and changes the scheduling of memory operations to the NVMDs in each memory channel.
    Type: Grant
    Filed: September 29, 2014
    Date of Patent: August 8, 2017
    Assignee: Virident Systems, LLC
    Inventors: Vijay Karamcheti, Ashwin Narasimha
  • Publication number: 20170206150
    Abstract: Techniques for controlling power on a PCIe direct attached non-volatile memory storage system are disclosed. In one particular embodiment, the techniques may be realized as a method for controlling power including providing power to a memory attached via the PCIe interface; monitoring a state of the attached memory; determining whether a new operation to be implemented on the attached memory would cause the power provided to the memory to exceed a preset threshold; and stalling execution of the new operation on the attached memory when it is determined that the new operation would exceed the preset threshold while continuing execution of preexisting operations on the attached memory.
    Type: Application
    Filed: April 3, 2017
    Publication date: July 20, 2017
    Inventors: Krishanth SKANDAKUMARAN, Arun Kumar MEDAPATI, Sri Rama NAMALA, Ashwin NARASIMHA, Ajith KUMAR B
  • Patent number: 9678665
    Abstract: Techniques for improving memory page allocation are disclosed. In some embodiments, the techniques may be realized as a method for improving memory page allocation including generating, using a compression unit, compressed grains associated with compressed blocks, identifying a write page allocation unit to query, receiving, at the write page allocation unit, a query for a flash memory location to store the compressed grains, determining a flash memory location for the compressed grains, determining a parity location for the compressed grains, returning offsets indicating the flash memory location and the parity location, sending the compressed grains to the free grain location and a parity bit to the parity location as part of an atomic transaction, and recording a start location of compressed grains in a mapping.
    Type: Grant
    Filed: March 6, 2015
    Date of Patent: June 13, 2017
    Assignee: Western Digital Technologies, Inc.
    Inventors: Vijay Karamcheti, Ashwin Narasimha, Ashish Singhai