Patents by Inventor Kevin E. Sallese
Kevin E. Sallese 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: 11880299Abstract: Provided are a method, an apparatus, and a memory controller coupled to a plurality of storage dies, wherein the memory controller implements logic to perform operations with respect to the storage dies, the operations comprising: maintaining a calendar based scheduling mechanism that is programmed by a firmware to support a quality of service scheduling in a solid state drive in which the memory controller is included; and determining, by a flash command scheduler, from the calendar based scheduling mechanism, which traffic class to service.Type: GrantFiled: March 3, 2022Date of Patent: January 23, 2024Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Kevin E. Sallese
-
Patent number: 11880300Abstract: Provided are a memory controller, system, and method for generating multi-plane reads to read pages on planes of a storage die for a page to read. A memory controller determines planes for a read to a page. A storage die of the storage dies includes a plurality of planes having a plurality of blocks and the blocks have pages. The page to read is implemented in pages on the planes. The memory controller determines threshold voltages for the pages in the determined planes and determines a derived threshold voltage from the determined threshold voltages. The derived threshold voltage is used to perform multi-plane reads of the pages from the determined planes.Type: GrantFiled: March 1, 2022Date of Patent: January 23, 2024Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Adalberto Guillermo Yanes, Timothy J. Fisher, Cyril Varkey, Kevin E. Sallese
-
Publication number: 20230281119Abstract: Provided are a memory controller, system, and method for generating multi-plane reads to read pages on planes of a storage die for a page to read. A memory controller determines planes for a read to a page. A storage die of the storage dies includes a plurality of planes having a plurality of blocks and the blocks have pages. The page to read is implemented in pages on the planes. The memory controller determines threshold voltages for the pages in the determined planes and determines a derived threshold voltage from the determined threshold voltages. The derived threshold voltage is used to perform multi-plane reads of the pages from the determined planes.Type: ApplicationFiled: March 1, 2022Publication date: September 7, 2023Inventors: Adalberto Guillermo Yanes, Timothy J. Fisher, Cyril Varkey, Kevin E. Sallese
-
Publication number: 20230281115Abstract: Provided are a method, an apparatus, and a memory controller coupled to a plurality of storage dies, wherein the memory controller implements logic to perform operations with respect to the storage dies, the operations comprising: maintaining a calendar based scheduling mechanism that is programmed by a firmware to support a quality of service scheduling in a solid state drive in which the memory controller is included; and determining, by a flash command scheduler, from the calendar based scheduling mechanism, which traffic class to service.Type: ApplicationFiled: March 3, 2022Publication date: September 7, 2023Inventor: Kevin E. Sallese
-
Patent number: 11301170Abstract: A computer-implemented method, according to one embodiment, includes: receiving a sub-logical page read command for data stored in NVRAM at a first LBA, and creating a searchable entry which includes the first LBA. Data read from the NVRAM is also received, where the received data corresponds to a given LBA. In response to determining that the given LBA matches the first LBA of the searchable entry, a copy of the received data is stored in a buffer. Moreover, in response to determining that a received sub-logical page write command is for data stored in the NVRAM at the first LBA, the copy of the received data in the buffer is coalesced with data included in the sub-logical page write command to form a full-logical page write. Furthermore, instructions to perform the full-logical page write in the NVRAM are sent.Type: GrantFiled: March 5, 2020Date of Patent: April 12, 2022Assignee: International Business Machines CorporationInventors: Kevin E. Sallese, Timothy Fisher, Andrew D. Walls
-
Publication number: 20210278996Abstract: A computer-implemented method, according to one embodiment, includes: receiving a sub-logical page read command for data stored in NVRAM at a first LBA, and creating a searchable entry which includes the first LBA. Data read from the NVRAM is also received, where the received data corresponds to a given LBA. In response to determining that the given LBA matches the first LBA of the searchable entry, a copy of the received data is stored in a buffer. Moreover, in response to determining that a received sub-logical page write command is for data stored in the NVRAM at the first LBA, the copy of the received data in the buffer is coalesced with data included in the sub-logical page write command to form a full-logical page write. Furthermore, instructions to perform the full-logical page write in the NVRAM are sent.Type: ApplicationFiled: March 5, 2020Publication date: September 9, 2021Inventors: Kevin E. Sallese, Timothy Fisher, Andrew D. Walls
-
Patent number: 11086565Abstract: A computer-implemented method, according to one embodiment, includes: receiving a stream of data, and selecting more than one block of memory to write the stream of data to. The selected blocks of memory are in a memory that includes a plurality of blocks. Moreover, the data is written across the selected blocks of memory in parallel. The blocks of memory are also selected such that no two or more of the selected blocks of memory have an effect on a read apparent voltage of a same one of the plurality of blocks in the memory. Other systems, methods, and computer program products are described in additional embodiments.Type: GrantFiled: October 1, 2018Date of Patent: August 10, 2021Assignee: International Business Machines CorporationInventors: Kevin E. Sallese, Timothy J. Fisher, Adalberto G. Yanes, Jason Szecheong Ma, Charles A. Keller, Aaron D. Fry, Van Huynh, Nikolaos Papandreou
-
Patent number: 11048571Abstract: A computer-implemented method, according to one embodiment, includes: receiving a multi-page read request and predicting whether using a multi-plane read operation to read pages of storage space in memory which correspond to the multi-page read request will result in a bit error rate that is in a predetermined range. In response to predicting that using the multi-plane read operation to read the pages will not result in a bit error rate that is in the predetermined range, a threshold voltage shift (TVS) value is computed for the multi-plane read operation. Furthermore, the pages are read using the multi-plane read operation with the computed TVS. Other systems, methods, and computer program products are described in additional embodiments.Type: GrantFiled: December 12, 2018Date of Patent: June 29, 2021Assignee: International Business Machines CorporationInventors: Nikolas Ioannou, Nikolaos Papandreou, Roman A. Pletka, Sasa Tomic, Charalampos Pozidis, Aaron D. Fry, Timothy J. Fisher, Kevin E. Sallese
-
Patent number: 11036427Abstract: A computer-implemented method, according to one embodiment, includes: receiving a data access command which corresponds to data stored on NVRAM at a logical block address, and using content-addressable memory (CAM) to determine whether the logical block address corresponds to an active read modify write operation. In response to determining that the logical block address corresponds to an active read modify write operation, the data access command is satisfied using a first procedure. However, in response to determining that the logical block address does not correspond to an active read modify write operation, the data access command is satisfied using a second procedure. Moreover, using the CAM to determine whether the logical block address corresponds to an active read modify write operation is completed in a single clock cycle of the CAM.Type: GrantFiled: April 4, 2019Date of Patent: June 15, 2021Assignee: International Business Machines CorporationInventors: Kevin E. Sallese, Timothy J. Fisher
-
Publication number: 20200319821Abstract: A computer-implemented method, according to one embodiment, includes: receiving a data access command which corresponds to data stored on NVRAM at a logical block address, and using content-addressable memory (CAM) to determine whether the logical block address corresponds to an active read modify write operation. In response to determining that the logical block address corresponds to an active read modify write operation, the data access command is satisfied using a first procedure. However, in response to determining that the logical block address does not correspond to an active read modify write operation, the data access command is satisfied using a second procedure. Moreover, using the CAM to determine whether the logical block address corresponds to an active read modify write operation is completed in a single clock cycle of the CAM.Type: ApplicationFiled: April 4, 2019Publication date: October 8, 2020Inventors: Kevin E. Sallese, Timothy J. Fisher
-
Patent number: 10770155Abstract: Read Apparent Voltage (RAV) is an anomality in which an apparent threshold voltage of a storage cell transistor does not equal the actual threshold voltage of that same transistor by a large enough magnitude that the binary state of transistor is not read correctly. An infector page may cause the RAV anomality within a different infected page. To determine whether any page is an infector, each page is programmed, a page within each block is read, an acting infector page within an acting infector block is set, a possible infected page within a possible infected block is set, the acting infector page is read a predetermined plurality of instances, the possible infected page is read, a raw bit error rate (RBER) of the read of the possible infected page is determined, and the acting infector page is set as an actual infector page based upon the determined RBER.Type: GrantFiled: October 11, 2018Date of Patent: September 8, 2020Assignee: International Business Machines CorporationInventors: Timothy Fisher, Aaron D. Fry, Van Huynh, Charles A. Keller, Jason Szecheong Ma, Kevin E. Sallese, Adalberto G. Yanes
-
Publication number: 20200192735Abstract: A computer-implemented method, according to one embodiment, includes: receiving a multi-page read request and predicting whether using a multi-plane read operation to read pages of storage space in memory which correspond to the multi-page read request will result in a bit error rate that is in a predetermined range. In response to predicting that using the multi-plane read operation to read the pages will not result in a bit error rate that is in the predetermined range, a threshold voltage shift (TVS) value is computed for the multi-plane read operation. Furthermore, the pages are read using the multi-plane read operation with the computed TVS. Other systems, methods, and computer program products are described in additional embodiments.Type: ApplicationFiled: December 12, 2018Publication date: June 18, 2020Inventors: Nikolas Ioannou, Nikolaos Papandreou, Roman A. Pletka, Sasa Tomic, Charalampos Pozidis, Aaron D. Fry, Timothy J. Fisher, Kevin E. Sallese
-
Publication number: 20200117371Abstract: Read Apparent Voltage (RAV) is an anomality in which an apparent threshold voltage of a storage cell transistor does not equal the actual threshold voltage of that same transistor by a large enough magnitude that the binary state of transistor is not read correctly. An infector page may cause the RAV anomality within a different infected page. To determine whether any page is an infector, each page is programmed, a page within each block is read, an acting infector page within an acting infector block is set, a possible infected page within a possible infected block is set, the acting infector page is read a predetermined plurality of instances, the possible infected page is read, a raw bit error rate (RBER) of the read of the possible infected page is determined, and the acting infector page is set as an actual infector page based upon the determined RBER.Type: ApplicationFiled: October 11, 2018Publication date: April 16, 2020Inventors: Timothy Fisher, Aaron D. Fry, Van Huynh, Charles A. Keller, Jason Szecheong Ma, Kevin E. Sallese, Adalberto G. Yanes
-
Publication number: 20200104071Abstract: A computer-implemented method, according to one embodiment, includes: receiving a stream of data, and selecting more than one block of memory to write the stream of data to. The selected blocks of memory are in a memory that includes a plurality of blocks. Moreover, the data is written across the selected blocks of memory in parallel. The blocks of memory are also selected such that no two or more of the selected blocks of memory have an effect on a read apparent voltage of a same one of the plurality of blocks in the memory. Other systems, methods, and computer program products are described in additional embodiments.Type: ApplicationFiled: October 1, 2018Publication date: April 2, 2020Inventors: Kevin E. Sallese, Timothy J. Fisher, Adalberto G. Yanes, Jason Szecheong Ma, Charles A. Keller, Aaron D. Fry, Van Huynh, Nikolaos Papandreou
-
Patent number: 10552243Abstract: Technology for handling page size mismatches when DPL-CLR is performed at multiple levels of a data storage system (for example, RAID level and flash card level). A “corrective DPL” corrects only a portion of the data that would make up a page at the level at which the data is stored (that is, the “initial DPL level”), and, after that, a partially corrected page of data is formed and stored in data storage, with the partially corrected page: (i) having a page size characteristic of the initial DPL; (ii) including the part of the data corrected by the corrective DPL; and (iii) further including other data. In some embodiments, the other data has a pattern that indicates that it is invalid, erroneous data, such that an error message will be returned if this portion of the data is attempted to be read.Type: GrantFiled: October 12, 2017Date of Patent: February 4, 2020Assignee: International Business Machines CorporationInventors: Roman A. Pletka, Timothy J. Fisher, Robert E. Galbraith, Kevin E. Sallese, Christopher M. Dennett
-
Patent number: 10489086Abstract: A data storage system includes a non-volatile memory array controlled by a controller that records a number of a plurality of like operations targeting a first block among a plurality of blocks in the non-volatile memory array. In response to the number of the plurality of like operations satisfying a threshold, the controller initiates a mitigation read request by recording an identifier of a second block in a high priority request in a mitigation data structure. The controller initiates other mitigation read requests by recording identifiers of other blocks of the non-volatile memory in low priority requests in the mitigation data structure. The controller preferentially services the high priority request from the mitigation data structure over the low priority requests, where servicing the high priority request includes performing a mitigation read to the second block.Type: GrantFiled: May 2, 2018Date of Patent: November 26, 2019Assignee: International Business Machines CorporationInventors: Adalberto G. Yanes, Timothy Fisher, Charles A. Keller, Jason S. Ma, Kevin E. Sallese, Aaron D. Fry, Van Huynh, Nikolaos Papandreou
-
Publication number: 20190339902Abstract: A data storage system includes a non-volatile memory array controlled by a controller that records a number of a plurality of like operations targeting a first block among a plurality of blocks in the non-volatile memory array. In response to the number of the plurality of like operations satisfying a threshold, the controller initiates a mitigation read request by recording an identifier of a second block in a high priority request in a mitigation data structure. The controller initiates other mitigation read requests by recording identifiers of other blocks of the non-volatile memory in low priority requests in the mitigation data structure. The controller preferentially services the high priority request from the mitigation data structure over the low priority requests, where servicing the high priority request includes performing a mitigation read to the second block.Type: ApplicationFiled: May 2, 2018Publication date: November 7, 2019Inventors: ADALBERTO G. YANES, TIMOTHY FISHER, CHARLES A. KELLER, JASON S. MA, KEVIN E. SALLESE, AARON D. FRY, VAN HUYNH, NIKOLAOS PAPANDREOU
-
Patent number: 10289304Abstract: A storage system includes a controller connected to a solid state memory device. The controller releases the physical address for reassignment when no pending reads are associated with the physical address. In certain embodiments, a read status table may be included within the storage system. In certain embodiments, subsequent to the release of the physical address, erase operations may erase data at the physical address and the physical address may be reassigned to a new logical address by ensuing host write operations.Type: GrantFiled: March 5, 2018Date of Patent: May 14, 2019Assignee: International Business Machines CorporationInventors: Charles J. Camp, Timothy J. Fisher, Kevin E. Sallese
-
Publication number: 20190114217Abstract: Technology for handling page size mismatches when DPL-CLR is performed at multiple levels of a data storage system (for example, RAID level and flash card level). A “corrective DPL” corrects only a portion of the data that would make up a page at the level at which the data is stored (that is, the “initial DPL level”), and, after that, a partially corrected page of data is formed and stored in data storage, with the partially corrected page: (i) having a page size characteristic of the initial DPL; (ii) including the part of the data corrected by the corrective DPL; and (iii) further including other data. In some embodiments, the other data has a pattern that indicates that it is invalid, erroneous data, such that an error message will be returned if this portion of the data is attempted to be read.Type: ApplicationFiled: October 12, 2017Publication date: April 18, 2019Inventors: Roman A. Pletka, Timothy J. Fisher, Robert E. Galbraith, Kevin E. Sallese, Christopher M. Dennett
-
Patent number: 10169145Abstract: According to one embodiment, a method includes issuing a read request to read one or more units of data from at least one non-volatile random access memory (NVRAM) device. The read request includes one or more read voltage thresholds. The method also includes receiving the one or more data units and read command parameters used to read the one or more data units from the at least one NVRAM device. Moreover, the method includes storing error-free data units, the read command parameters used to read the error-free data units from the at least one NVRAM device, and a read completion status to one of a plurality of read buffers. The read completion status indicates a completed read when a data unit is error-free and indicates an incomplete read when a data unit is errored.Type: GrantFiled: March 10, 2016Date of Patent: January 1, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Charles J. Camp, Timothy J. Fisher, Aaron D. Fry, Ashwitha Krishna Kumar, David A. Pierce, Kevin E. Sallese, Lincoln T. Simmons