Patents by Inventor Dinesh Agarwal
Dinesh Agarwal 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: 20240103762Abstract: Processing commands received from a host computing device by a storage device can require a large amount of processing overhead. This demand for ever greater processing power increases as the size of storage devices increase. Traditional methods have added an increasing number of processors or CPUs to handle these requirements. However, by utilizing a fast path accelerated processing pipeline, additional processors may not be necessary. An accelerated processing pipeline can be configured to bypass one or more steps that are required by non-priority processing pipelines. Each received command can be parsed to determine if it is suitable for accelerated processing. The command can be required to access data in a limited region of the memory device, or to have any data necessary to process the command already in a cache memory. Upon completion of verifications, commands can be placed in a priority queue that is processed before a non-priority queue.Type: ApplicationFiled: September 23, 2022Publication date: March 28, 2024Inventors: Vijay Sivasankaran, Dinesh Agarwal, Mikhail Palityka
-
Patent number: 11934695Abstract: Aspects of a storage device including a memory and a controller are provided. The controller may convert unaligned write commands into aligned write commands and generate unaligned information associated with the unaligned write commands. In some aspects, the unaligned information indicates offset information for each unaligned write command. The controller may accumulate a threshold size of aligned write command transfer sizes in an aggregation command queue and fetch pre-pad or post-pad data for each unaligned write command in parallel based on the aggregation command queue having accumulated the threshold size of aligned write command transfer sizes. The controller may transfer host data for each unaligned write command to a data buffer at a corresponding offset within the data buffer based on the unaligned information. The controller may generate aligned data using the pre-pad or post-pad data combined with the host data and program the aligned data into a memory die.Type: GrantFiled: June 23, 2021Date of Patent: March 19, 2024Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.Inventors: Chandramani, Dinesh Agarwal, Sharath Shivakumar, Ruchir Sinha
-
Patent number: 11727704Abstract: A device may receive document image data that includes an image of a document to be digitized. The device may detect, from the document image data, a table of information that is depicted in the image. The device may determine a data extraction score associated with a table image, wherein the data extraction score is associated with using a data conversion technique to convert the table image to digitized table data. The device may perform, based on the data extraction score not satisfying a threshold, a morphological operation on the table image to generate an enhanced table image that corresponds to an enhanced table of information associated with the table of information. The device may process, using the data conversion technique, the enhanced table image to extract the information from the enhanced table. The device may perform an action associated with the extracted information.Type: GrantFiled: May 5, 2022Date of Patent: August 15, 2023Assignee: Verizon Patent and Licensing Inc.Inventors: Saravanan Shanmugasundaram, Krishna K. Talluri, Keerthi Mitta, Dinesh Agarwal
-
Publication number: 20220413756Abstract: Aspects of a storage device including a memory and a controller are provided. The controller may convert unaligned write commands into aligned write commands and generate unaligned information associated with the unaligned write commands. In some aspects, the unaligned information indicates offset information for each unaligned write command. The controller may accumulate a threshold size of aligned write command transfer sizes in an aggregation command queue and fetch pre-pad or post-pad data for each unaligned write command in parallel based on the aggregation command queue having accumulated the threshold size of aligned write command transfer sizes. The controller may transfer host data for each unaligned write command to a data buffer at a corresponding offset within the data buffer based on the unaligned information. The controller may generate aligned data using the pre-pad or post-pad data combined with the host data and program the aligned data into a memory die.Type: ApplicationFiled: June 23, 2021Publication date: December 29, 2022Inventors: CHANDRAMANI ., Dinesh AGARWAL, Sharath SHIVAKUMAR, Ruchir SINHA
-
Publication number: 20220262153Abstract: A device may receive document image data that includes an image of a document to be digitized. The device may detect, from the document image data, a table of information that is depicted in the image. The device may determine a data extraction score associated with a table image, wherein the data extraction score is associated with using a data conversion technique to convert the table image to digitized table data. The device may perform, based on the data extraction score not satisfying a threshold, a morphological operation on the table image to generate an enhanced table image that corresponds to an enhanced table of information associated with the table of information. The device may process, using the data conversion technique, the enhanced table image to extract the information from the enhanced table. The device may perform an action associated with the extracted information.Type: ApplicationFiled: May 5, 2022Publication date: August 18, 2022Applicant: Verizon Patent and Licensing Inc.Inventors: Saravanan SHANMUGASUNDARAM, Krishna K. TALLURI, Keerthi MITTA, Dinesh AGARWAL
-
Patent number: 11335110Abstract: A device may receive document image data that includes an image of a document to be digitized. The device may detect, from the document image data, a table of information that is depicted in the image. The device may determine a data extraction score associated with a table image, wherein the data extraction score is associated with using a data conversion technique to convert the table image to digitized table data. The device may perform, based on the data extraction score not satisfying a threshold, a morphological operation on the table image to generate an enhanced table image that corresponds to an enhanced table of information associated with the table of information. The device may process, using the data conversion technique, the enhanced table image to extract the information from the enhanced table. The device may perform an action associated with the extracted information.Type: GrantFiled: August 5, 2020Date of Patent: May 17, 2022Assignee: Verizon Patent and Licensing Inc.Inventors: Saravanan Shanmugasundaram, Krishna K. Talluri, Keerthi Mitta, Dinesh Agarwal
-
Publication number: 20220044011Abstract: A device may receive document image data that includes an image of a document to be digitized. The device may detect, from the document image data, a table of information that is depicted in the image. The device may determine a data extraction score associated with a table image, wherein the data extraction score is associated with using a data conversion technique to convert the table image to digitized table data. The device may perform, based on the data extraction score not satisfying a threshold, a morphological operation on the table image to generate an enhanced table image that corresponds to an enhanced table of information associated with the table of information. The device may process, using the data conversion technique, the enhanced table image to extract the information from the enhanced table. The device may perform an action associated with the extracted information.Type: ApplicationFiled: August 5, 2020Publication date: February 10, 2022Applicant: Verizon Patent and Licensing Inc.Inventors: Saravanan SHANMUGASUNDARAM, Krishna K. TALLURI, Keerthi MITTA, Dinesh AGARWAL
-
Patent number: 11023259Abstract: The present disclosure includes methods and apparatus for executing a single binary code version of an application including an application identifier, transmitting a variable value request including the requestor identifier and the application identifier via an application programming interface to a portal, the variable value request requesting variable value information relating to the variable of the application associated with the requestor identifier, receiving a variable value response including the variable value information relating to the variable associated with the requestor identifier, wherein the variable value information identifies one of the first variable value or the second variable value, executing the first set of code to provide the first experience within the application based on the variable value information identifying the first variable value, and executing the second set of code to provide the second experience within the application based on the variable value information identifyiType: GrantFiled: June 15, 2018Date of Patent: June 1, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Rohit Gupta, Dinesh Agarwal
-
Patent number: 10846017Abstract: A non-volatile memory system accepts Secure Digital (SD) Commands and manages a data buffer that buffers data for the SD commands. The SD Commands may be accepted over an SD bus of the non-volatile memory system. The SD Commands may be accepted over a PCIe bus of the non-volatile memory system. The memory system may generate one or more NVMe commands for each SD command, and submit the NVMe command(s) to an NVMe submission queue. Upon completion all of the NVMe commands that were generated for an SD command, the memory system may report completion status of the SD command to an SD host. The memory system ensures that the timing requirements for SD commands are met even though a conversion from SD commands to NVMe commands may be performed. The memory system makes efficient use of the depth of the NVMe submission queue.Type: GrantFiled: December 14, 2017Date of Patent: November 24, 2020Assignee: Western Digital Technologies, Inc.Inventor: Dinesh Agarwal
-
Patent number: 10635326Abstract: Apparatus and method for performing wear leveling are disclosed. An ordered list of references to each of a set of memory blocks is stored. A set of memory blocks in the ordered list is sequentially allocating. The allocated set of memory blocks in the ordered list are erased in the sequence in which they were allocated.Type: GrantFiled: December 20, 2017Date of Patent: April 28, 2020Assignee: SanDisk Technologies LLCInventors: Chetan Agrawal, Dinesh Agarwal, Vijay Sivasankaran
-
Publication number: 20190384618Abstract: The present disclosure includes methods and apparatus for executing a single binary code version of an application including an application identifier, transmitting a variable value request including the requestor identifier and the application identifier via an application programming interface to a portal, the variable value request requesting variable value information relating to the variable of the application associated with the requestor identifier, receiving a variable value response including the variable value information relating to the variable associated with the requestor identifier, wherein the variable value information identifies one of the first variable value or the second variable value, executing the first set of code to provide the first experience within the application based on the variable value information identifying the first variable value, and executing the second set of code to provide the second experience within the application based on the variable value information identifyiType: ApplicationFiled: June 15, 2018Publication date: December 19, 2019Inventors: Rohit GUPTA, Dinesh AGARWAL
-
Publication number: 20190187928Abstract: A non-volatile memory system accepts Secure Digital (SD) Commands and manages a data buffer that buffers data for the SD commands. The SD Commands may be accepted over an SD bus of the non-volatile memory system. The SD Commands may be accepted over a PCIe bus of the non-volatile memory system. The memory system may generate one or more NVMe commands for each SD command, and submit the NVMe command(s) to an NVMe submission queue. Upon completion all of the NVMe commands that were generated for an SD command, the memory system may report completion status of the SD command to an SD host. The memory system ensures that the timing requirements for SD commands are met even though a conversion from SD commands to NVMe commands may be performed. The memory system makes efficient use of the depth of the NVMe submission queue.Type: ApplicationFiled: December 14, 2017Publication date: June 20, 2019Applicant: Western Digital Technologies, Inc.Inventor: Dinesh Agarwal
-
Publication number: 20190163385Abstract: One or more control circuits of a storage system are configured to intelligently set a task readiness indicator for tasks on a task command queue. A memory controller may divide each of the tasks into one or more chunks. The memory controller initiates processing of at least some of the chunks for at least two tasks and determines a task readiness factor each of the tasks based on how far respective chunks have progressed in the processing. The memory controller sets a ready indicator in a task status register for a selected task based on the task readiness factor of the tasks. Therefore, task latency may be reduced. In one aspect, the memory controller allocates a ring buffer to chunks of an executing task. This ring buffer may assure that there will always be memory for the chunks of the task.Type: ApplicationFiled: November 28, 2017Publication date: May 30, 2019Applicant: Western Digital Technologies, Inc.Inventor: Dinesh Agarwal
-
Patent number: 10303384Abstract: One or more control circuits of a storage system are configured to intelligently set a task readiness indicator for tasks on a task command queue. A memory controller may divide each of the tasks into one or more chunks. The memory controller initiates processing of at least some of the chunks for at least two tasks and determines a task readiness factor each of the tasks based on how far respective chunks have progressed in the processing. The memory controller sets a ready indicator in a task status register for a selected task based on the task readiness factor of the tasks. Therefore, task latency may be reduced. In one aspect, the memory controller allocates a ring buffer to chunks of an executing task. This ring buffer may assure that there will always be memory for the chunks of the task.Type: GrantFiled: November 28, 2017Date of Patent: May 28, 2019Assignee: Western Digital Technologies, Inc.Inventor: Dinesh Agarwal
-
Patent number: 10269421Abstract: Technology is described herein for caching residual data in latches during a write operation of non-volatile storage. When writing data at the request of a host, it is possible for there to be some residual data that cannot be programmed at two (or more) bits per memory cell into a page of memory cells, given the programming scheme being used. This residual data may be cached in latches. The residual data from the latches may be combined with other data from the host to increase programming speed when programming, for example, sequential data using a full sequence programming scheme. Also, caching the residual data in latches keeps write amplification low.Type: GrantFiled: November 30, 2016Date of Patent: April 23, 2019Assignee: SanDisk Technologies LLCInventor: Dinesh Agarwal
-
Patent number: 10235223Abstract: Disclosed are various embodiments for a high-performance computing framework for cloud computing environments. A parallel computing application executable by at least one computing device of the cloud computing environment can call a message passing interface (MPI) to cause a first one of a plurality of virtual machines (VMs) of a cloud computing environment to store a message in a queue storage of the cloud computing environment, wherein a second one of the plurality of virtual machines (VMs) is configured to poll the queue storage of the cloud computing environment to access the message and perform a processing of data associated with the message. The parallel computing application can call the message passing interface (MPI) to access a result of the processing of the data from the queue storage, the result of the processing being placed in the queue storage by the second one of the plurality of virtual machines (VMs).Type: GrantFiled: May 20, 2015Date of Patent: March 19, 2019Assignee: Georgia State University Research Foundation, Inc.Inventors: Sushil K. Prasad, Sara Karamati, Dinesh Agarwal
-
Patent number: 10209914Abstract: A system and method for managing data writes in a non-volatile memory including SLC and MLC blocks of non-volatile memory and a MLC block health rating data structure tracking relative MLC block health. A controller in the system may be configured to select MLC blocks for receiving host data and then route the host data over a direct MLC write path for healthy blocks, or over a two-step indirect write path that includes a SLC write and a SLC-MLC fold for unhealthy MLC blocks. The method may include assigning a health designation based on BER determined for each MLC block and assigning a direct write number to healthy MLC blocks based on the determined BER that limits the number of program/erase cycles for direct writes for a particular MLC block until a re-assessment of block health is needed.Type: GrantFiled: January 31, 2017Date of Patent: February 19, 2019Assignee: SANDISK TECHNOLOGIES LLCInventors: Dinesh Agarwal, Hitesh Golechchha, Guruswamy Ganesh
-
Patent number: 10153046Abstract: A memory system comprises a plurality of non-volatile memory cells grouped into blocks of memory cells and a control circuit in communication with the memory cells. The control circuit is configured to program original data to a first block of memory cells and backup the original data by programming a copy of the original data across multiple blocks of memory cells at a word line offset. After being used to store backups of original data, blocks are rotated to be used for storing original data.Type: GrantFiled: October 30, 2017Date of Patent: December 11, 2018Assignee: Western DigitalTechnologies, Inc.Inventors: Dinesh Agarwal, Hitesh Golechchha
-
Publication number: 20180343971Abstract: The invention provides an apparatus and method for the prevention of VTE and related conditions to promote blood flow in a foot, the apparatus including: at least two inflatable bladders (20, 21) adapted to be disposed in use under the foot; and one or more pumps (31, 32) configured to repeatedly inflate and deflate the bladders with a fluid, applying compressive force to the foot in use.Type: ApplicationFiled: January 4, 2017Publication date: December 6, 2018Inventors: Rakesh Kumar AGGARWAL, Dinesh AGARWAL
-
Patent number: 10095556Abstract: Disclosed are various embodiments for a parallel priority queue implemented on one or more many-core processors and/or multi-core processors such as those in general-purpose graphics processing units (GPGPUs). According to various embodiments, a priority may be determined according to a timestamp of an item, such as an event or an entry, in a priority queue. A priority queue interface may comprise functions to insert and remove entries from the priority queue. Priority order of the entries may be maintained as the entries are inserted and removed from the queue.Type: GrantFiled: December 19, 2013Date of Patent: October 9, 2018Assignee: Georgia State University Research Foundation, Inc.Inventors: Sushil K. Prasad, Xi He, Dinesh Agarwal