-
公开(公告)号:US11960729B2
公开(公告)日:2024-04-16
申请号:US16432287
申请日:2019-06-05
Applicant: SAMSUNG ELECTRONICS CO., LTD.
IPC: G06F3/06
CPC classification number: G06F3/0616 , G06F3/0647 , G06F3/0659 , G06F3/0679
Abstract: A method includes updating a first metadata log in an NVRAM of a host device corresponding to one or more recent input/output (I/O) operations received by the host device, periodically checking whether the size of the updated first metadata log is greater than a flush limit maintained in the host device, triggering a meta flush thread when the updated first metadata log size exceeds the flush limit maintained in the host device, sending, by a non-volatile memory express (NVMe) driver, a first command for synchronizing the updated first metadata log to one or more solid state drives (SSDs) for updating a second metadata log in the one or SSDs, and discarding, by the host device, metadata of the first metadata log updated in the host device after receiving a second command for acknowledging synchronization completion from the one or more SSDs.
-
2.
公开(公告)号:US20220334768A1
公开(公告)日:2022-10-20
申请号:US17459539
申请日:2021-08-27
Applicant: SAMSUNG ELECTRONICS CO., LTD.
Inventor: Tushar Tukaram Patil , Anantha Sharma , Sharath Kumar Kodase
Abstract: A method for reading data in a storage device is provided. The method includes receiving a read command from a host device, wherein the read command indicates stored data in the storage device and a Logical Block Address (LBA) of the stored data; obtaining a Physical Block Number (PBN) based on the LBA and a Logical to Physical (L2P) mapping; determining whether the PBN corresponds to a volatile memory of the storage device; reading the stored data directly from the volatile memory based on the PBN corresponding to the volatile memory; incrementing a read counter associated with the PBN based on the stored data being read directly from the volatile memory; and reading the stored data from a non-volatile memory of the storage device based on the PBN not corresponding to the volatile memory.
-
公开(公告)号:US20240256144A1
公开(公告)日:2024-08-01
申请号:US18603941
申请日:2024-03-13
Applicant: SAMSUNG ELECTRONICS CO., LTD.
IPC: G06F3/06
CPC classification number: G06F3/0616 , G06F3/0647 , G06F3/0659 , G06F3/0679
Abstract: A method includes updating a first metadata log in an NVRAM of a host device corresponding to one or more recent input/output (I/O) operations received by the host device, periodically checking whether the size of the updated first metadata log is greater than a flush limit maintained in the host device, triggering a meta flush thread when the updated first metadata log size exceeds the flush limit maintained in the host device, sending, by a non-volatile memory express (NVMe) driver, a first command for synchronizing the updated first metadata log to one or more solid state drives (SSDs) for updating a second metadata log in the one or SSDs, and discarding, by the host device, metadata of the first metadata log updated in the host device after receiving a second command for acknowledging synchronization completion from the one or more SSDs.
-
4.
公开(公告)号:US11886741B2
公开(公告)日:2024-01-30
申请号:US17459539
申请日:2021-08-27
Applicant: SAMSUNG ELECTRONICS CO., LTD.
Inventor: Tushar Tukaram Patil , Anantha Sharma , Sharath Kumar Kodase
CPC classification number: G06F3/0659 , G06F3/0611 , G06F3/0631 , G06F3/0656 , G06F3/0679 , G06F11/1004 , G06F12/10 , G06F2212/657
Abstract: A method for reading data in a storage device is provided. The method includes receiving a read command from a host device, wherein the read command indicates stored data in the storage device and a Logical Block Address (LBA) of the stored data; obtaining a Physical Block Number (PBN) based on the LBA and a Logical to Physical (L2P) mapping; determining whether the PBN corresponds to a volatile memory of the storage device; reading the stored data directly from the volatile memory based on the PBN corresponding to the volatile memory; incrementing a read counter associated with the PBN based on the stored data being read directly from the volatile memory; and reading the stored data from a non-volatile memory of the storage device based on the PBN not corresponding to the volatile memory.
-
公开(公告)号:US20230400987A1
公开(公告)日:2023-12-14
申请号:US17884018
申请日:2022-08-09
Applicant: SAMSUNG ELECTRONICS CO., LTD.
IPC: G06F3/06
CPC classification number: G06F3/0617 , G06F3/0679 , G06F3/0655
Abstract: Provided are methods, apparatuses, systems, and computer-readable storage media for reducing an open time of a solid-state drive (SSD). In an embodiment, a method includes dividing a logical-to-physical (L2P) address mapping table of the SSD into a plurality of segments. The method further includes assigning one journal buffer of a plurality of journal buffers to each segment of the plurality of segments. The method further includes recreating, during a power on sequence of the SSD, a portion of the plurality of segments by replaying a first subset of the plurality of journal buffers. The method further includes sending, to a host device, a device-ready signal upon successful recreation of the portion of the plurality of segments. The method further includes recreating, in a background mode, a remaining portion of the plurality of segments by replaying a second subset of the plurality of journal buffers.
-
公开(公告)号:US11941252B2
公开(公告)日:2024-03-26
申请号:US17884018
申请日:2022-08-09
Applicant: SAMSUNG ELECTRONICS CO., LTD.
IPC: G06F3/06
CPC classification number: G06F3/0617 , G06F3/0655 , G06F3/0679
Abstract: Provided are methods, apparatuses, systems, and computer-readable storage media for reducing an open time of a solid-state drive (SSD). In an embodiment, a method includes dividing a logical-to-physical (L2P) address mapping table of the SSD into a plurality of segments. The method further includes assigning one journal buffer of a plurality of journal buffers to each segment of the plurality of segments. The method further includes recreating, during a power on sequence of the SSD, a portion of the plurality of segments by replaying a first subset of the plurality of journal buffers. The method further includes sending, to a host device, a device-ready signal upon successful recreation of the portion of the plurality of segments. The method further includes recreating, in a background mode, a remaining portion of the plurality of segments by replaying a second subset of the plurality of journal buffers.
-
7.
公开(公告)号:US11645153B2
公开(公告)日:2023-05-09
申请号:US17872379
申请日:2022-07-25
Applicant: Samsung Electronics Co., Ltd.
Inventor: Srikanth Tumkur Shivanand , Sharath Kumar Kodase , Vikram Singh
CPC classification number: G06F11/1084 , G06F3/065 , G06F3/0619 , G06F3/0689 , G06F11/1076 , G06F11/1448 , G06F11/1469 , G06F2201/84
Abstract: Embodiments herein provide a method for controlling operations of a Redundant Array of Independent Disks (RAID) data storage system comprising a host device and a plurality of solid-state drives (SSDs). The method includes performing, by the at least one SSD, recovery of lost data by performing the auto-rebuild operation. The method also includes performing by the at least one SSD, the auto-error correction operation based on the IO error. The method also includes creating a snapshot of an address mapping table by all SSDs of the plurality of SSDs in the RAID data storage system. The auto-rebuild operation, the auto-error correction operation and the creation the snapshot of the address mapping table are all performed without the intervention from the host device.
-
公开(公告)号:US10459661B2
公开(公告)日:2019-10-29
申请号:US15687167
申请日:2017-08-25
Applicant: SAMSUNG ELECTRONICS CO., LTD.
Inventor: Srikanth Tumkur Shivanand , Sharath Kumar Kodase , Rajeev Verma
Abstract: A storage system for managing an array of SSDs includes the array of SSDs and a host controller. Each of the SSDs is operable to store data. The host controller is configured to manage the array of SSDs as multiple logical volumes. Each of the logical volumes is associated with at least one stream ID. At least one of the SSDs and the host controller stores a system code configured to execute stream ID commands to access each of the logical volumes. Each of the logical volumes is dedicated to a memory region of each of the SSDs. Each of the logical volumes corresponding to the memory region of each of the SSDs are combined to form a logical volume group using the at least one stream ID. The host controller uses the stream ID commands to communicate with logical volumes of the logical volume group.
-
-
-
-
-
-
-