WO2024130890A1 - Procédé de récupération d'espace mémoire de disque statique à semiconducteurs, appareil d'accélération de récupération d'espace mémoire de disque statique à semiconducteurs, dispositif et support informatique - Google Patents
Procédé de récupération d'espace mémoire de disque statique à semiconducteurs, appareil d'accélération de récupération d'espace mémoire de disque statique à semiconducteurs, dispositif et support informatique Download PDFInfo
- Publication number
- WO2024130890A1 WO2024130890A1 PCT/CN2023/086117 CN2023086117W WO2024130890A1 WO 2024130890 A1 WO2024130890 A1 WO 2024130890A1 CN 2023086117 W CN2023086117 W CN 2023086117W WO 2024130890 A1 WO2024130890 A1 WO 2024130890A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- target
- command
- master controller
- ssd
- read command
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000007787 solid Substances 0.000 title claims abstract description 65
- 230000001133 acceleration Effects 0.000 title claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 36
- 230000004044 response Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims 1
- 230000003993 interaction Effects 0.000 abstract description 19
- 230000000875 corresponding effect Effects 0.000 description 63
- 238000010586 diagram Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 239000000203 mixture Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000013403 standard screening design Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Definitions
- the present application relates to the field of computer technology, and in particular to a solid state hard disk garbage recovery method, an acceleration device, equipment and a computer medium.
- GC Garbage Collection
- SSD Solid State Drives
- the GC function of SSD controller can be roughly understood as the defragmentation function of ordinary hard disk. It reads the valid data in SSD flash memory blocks into the external data cache in sequence. When the total length of the read data reaches the SSD page size, the valid data in the external cache is written to a new flash memory block, and then the old flash memory block is erased to obtain a new flash memory block.
- the data cache space can be released. This will cause frequent interaction between software and hardware (SSD master controller) during the entire GC process, and each software-hardware interaction will introduce software-hardware interaction latency, resulting in a longer interval from allocation to release of cache space, which in turn leads to a lower interest rate efficiency of the entire data cache space, affecting the GC efficiency of the SSD.
- SSD master controller software-hardware controller
- This application is to provide a solid state drive garbage collection method, which can solve the technical problem of how to improve the garbage collection efficiency of solid state drives to a certain extent.
- This application also provides a solid state drive garbage collection acceleration device, an electronic device and a computer-readable storage medium.
- a solid state drive garbage collection method applied to a solid state drive garbage collection acceleration device, comprising:
- the target write command is transmitted to the SSD master controller, so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- generating a target read command corresponding to an SSD master controller of the target solid state drive based on the target GC command includes:
- the parameter field in the command template is replaced with the read command parameter field to obtain the target read command.
- the method further includes:
- the target data read by the SSD master controller is acquired, and the target data is cached in the data cache space according to the storage address.
- determining the storage address of the target read command in the data cache space includes:
- the buffer area includes a storage space obtained by evenly dividing the data cache space.
- the method further includes:
- the target read command and the target data are recorded.
- the method further includes:
- the storage space corresponding to the storage address in the data cache space is released.
- the method further includes:
- a target GC response instruction corresponding to the target GC command is generated, and the target GC response instruction is transmitted to the GC management software.
- a solid state hard disk garbage collection acceleration device comprising:
- a receiving port used to receive a target GC command sent by the GC management software of the target solid state drive
- a command builder is used to generate a target read command corresponding to the SSD master controller of the target solid state drive based on the target GC command; transmit the target read command to the SSD master controller so that the SSD master controller reads the corresponding target data from the first flash memory block based on the target read command; generate a target write command corresponding to the SSD master controller based on the target GC command; transmit the target write command to the SSD master controller so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- An electronic device comprising:
- a processor is used to implement the steps of any of the solid state drive garbage collection methods described above when executing the computer program.
- a computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any of the solid-state hard disk garbage collection methods described above are implemented.
- the present application provides a solid-state hard disk garbage collection method, which is applied to a solid-state hard disk garbage collection acceleration device, receiving a target GC command sent by the GC management software of the target solid-state hard disk; based on the target GC command, generating a target read command corresponding to the SSD main controller of the target solid-state hard disk; transmitting the target read command to the SSD main controller, so that the SSD main controller reads the corresponding target data from the first flash memory block based on the target read command; based on the target GC command, generating a target write command corresponding to the SSD main controller; transmitting the target write command to the SSD main controller, so that the SSD main controller writes the target data to the second flash memory block based on the target write command.
- the solid-state hard disk garbage collection acceleration device after receiving the target GC command sent by the GC management software, can generate a corresponding target read command and send it to the SSD main controller for processing, and can generate a corresponding target write command based on the target GC command and send it to the SSD main controller for processing, so that the GC management software can complete the GC operation only by performing a hardware and software interaction with the SSD main controller once, reducing the hardware and software interaction latency introduced by the hardware and software interaction, and improving the garbage collection efficiency of the solid-state hard disk.
- the solid-state hard disk garbage collection acceleration device, electronic device and computer-readable storage medium provided in this application also solve corresponding technical problems.
- FIG1 is a schematic diagram of data reading during GC operation
- FIG2 is a schematic diagram of data writing during GC operation
- FIG3 is a schematic diagram of data erasure during GC operation
- FIG4 is a schematic diagram of executing a GC read command on a solid state drive with the aid of software
- FIG5 is a schematic diagram of executing a GC write command on a solid state drive with the aid of software
- FIG6 is a schematic diagram of the time composition of the entire GC in the prior art
- FIG7 is a first flow chart of a solid state drive garbage collection method provided by an embodiment of the present application.
- FIG8 is a schematic diagram of GC time composition in the solid state drive garbage collection method provided by the present application.
- FIG9 is a second flow chart of a solid state drive garbage collection method provided by an embodiment of the present application.
- FIG10 is a schematic diagram of the structure of a solid state drive garbage collection system provided in an embodiment of the present application.
- FIG11 is a diagram showing the interaction process between the solid state drive garbage collection acceleration device, the GC management software, and the SSD main controller;
- FIG12 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
- FIG. 13 is another schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
- GC Garbage Collection
- SSD Solid State Drives
- the GC function of SSD controller can be roughly understood as the defragmentation function of ordinary hard disk. It reads the valid data in SSD flash memory block to the external data cache in sequence. The process is shown in Figure 1. When the total length of the read data reaches the SSD page size, the valid data of the external cache is written to a new flash memory block. The process is shown in Figure 2. Then the old flash memory block is erased. The process is shown in Figure 3 to obtain a new flash memory block.
- FIG. 7 is a first flow chart of a solid state drive garbage collection method provided in an embodiment of the present application.
- Step S101 receiving a target GC command sent by the GC management software of the target solid state drive.
- the solid state drive garbage collection acceleration device can first receive the target GC command sent by the GC management software of the target solid state drive.
- the content of the target GC command can be determined according to the specific GC operation requirements, and this application does not make specific limitations here.
- Step S102 Based on the target GC command, a target read command corresponding to the SSD master controller of the target solid state drive is generated.
- the solid-state hard disk garbage collection acceleration device receives the target GC command sent by the GC management software of the target solid-state hard disk, it can first generate a target read command corresponding to the SSD main controller of the target solid-state hard disk based on the target GC command, so as to subsequently control the SSD main controller to perform corresponding data reading operations based on the target read command.
- Step S103 transmitting a target read command to the SSD master controller, so that the SSD master controller reads corresponding target data from the first flash memory block based on the target read command.
- the target read command can be transmitted to the SSD master controller, so that the SSD master controller reads the corresponding target data from the first flash memory block based on the target read command, that is, reads the valid data that needs to be retained from the first flash memory block as the target data.
- Step S104 Based on the target GC command, a target write command corresponding to the SSD master controller is generated.
- the solid-state drive garbage collection acceleration device transmits the target read command to the SSD master controller so that the SSD master controller reads the corresponding target data from the first flash memory block based on the target read command, it also needs to generate a target write command corresponding to the SSD master controller based on the target GC command, so as to control the SSD master controller to re-write the target data into the solid-state drive with the help of the target write command.
- Step S105 transmitting the target write command to the SSD master controller, so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- the solid-state drive garbage collection acceleration device generates a target write command corresponding to the SSD master controller based on the target GC command, and can transmit the target write command to the SSD master controller so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- the solid-state drive garbage collection acceleration device can also generate a target GC response instruction corresponding to the target GC command in order to promptly inform the GC management software that the GC operation has been completed, and transmit the target GC response instruction to the GC management software.
- the present application provides a solid-state hard disk garbage collection method, which is applied to a solid-state hard disk garbage collection acceleration device, receiving a target GC command sent by the GC management software of the target solid-state hard disk; based on the target GC command, generating a target read command corresponding to the SSD main controller of the target solid-state hard disk; transmitting the target read command to the SSD main controller, so that the SSD main controller reads the corresponding target data from the first flash memory block based on the target read command; based on the target GC command, generating a target write command corresponding to the SSD main controller; transmitting the target write command to the SSD main controller, so that the SSD main controller writes the target data to the second flash memory block based on the target write command.
- the solid-state hard disk garbage collection acceleration device can generate a corresponding target read command and send it to the SSD main controller for processing, and can generate a corresponding target write command based on the target GC command and send it to the SSD main controller for processing, so that the GC management software can complete the GC operation only by performing a hardware and software interaction with the SSD main controller once, reducing the hardware and software interaction latency introduced by the hardware and software interaction, and improving the garbage collection efficiency of the solid-state hard disk.
- FIG. 1 To facilitate understanding of the efficiency of the solid-state hard disk garbage collection method provided by the present application, please refer to FIG.
- FIG. 8 is a schematic diagram of the GC time composition in the solid-state hard disk garbage collection method provided by the present application.
- the present application In one GC process, the software and hardware interact with each other at most twice, which is at least one less software and hardware interaction than the prior art. That is, the present application can reduce the software and hardware interaction latency introduced by the software and hardware interaction and improve the garbage collection efficiency of the solid-state hard disk.
- FIG. 9 is a second flow chart of a solid state drive garbage collection method provided in an embodiment of the present application.
- Step S201 receiving a target GC command sent by the GC management software of the target solid state drive.
- Step S202 Acquire a pre-stored command template of the SSD master controller, where the command template includes a fixed field and a parameter field.
- Step S203 extracting the read command parameter field in the target GC command.
- Step S204 Replace the parameter field in the command template with the read command parameter field to obtain the target read command.
- the solid-state drive garbage collection acceleration device when the solid-state drive garbage collection acceleration device generates a target read command corresponding to the SSD master controller of the target solid-state drive based on the target GC command, taking into account the different read and write command formats of different SSD master controllers, in order to quickly generate the read and write commands corresponding to the SSD master controller, the solid-state drive garbage collection acceleration device can obtain a pre-stored command template of the SSD master controller.
- the command template includes a fixed field and a parameter field, and its format can be as shown in Table 1, wherein the light gray table represents the SSD controller parameter field, and the dark gray table represents the SSD controller command fixed field; extract the read command parameter field in the target GC command; replace the parameter field in the command template with the read command parameter field to obtain a target read command compatible with different SSD master controllers.
- the solid-state drive garbage collection acceleration device can generate the target read command in the process of: First read the command template and opcode.
- the opcode is used to describe the parameter fields in the read command template and replace them with the gc sq fields. For example, bit0 ⁇ bit3, bit4 ⁇ 8...are replaced with the fields in gc sq in sequence to generate the target read command, etc.
- the SSD master controller can parse the target read command in its own parsing method to respond, etc.
- the read command field includes ch, fq, cmd_type, cmd_sub_type, lc, 2mtc, bitmap and other fields, among which cmd_type, cmd_sub_type, lc, 2mtc, gc fields are fixed fields, because the contents of these fields are the same for each read command; the remaining fields are called parameter fields, and the contents of these fields are different for each read command, and need to be replaced with the parameters in gc sq.
- Step S205 transmitting the target read command to the SSD master controller, so that the SSD master controller reads the corresponding target data from the first flash memory block based on the target read command.
- Step S206 Based on the target GC command, a target write command corresponding to the SSD master controller is generated.
- the solid-state drive garbage collection acceleration device when a solid-state drive garbage collection acceleration device generates a target write command corresponding to an SSD master controller based on a target GC command, the solid-state drive garbage collection acceleration device can obtain a pre-stored command template of the SSD master controller, the command template including a fixed field and a parameter field; extract the write command parameter field in the target GC command; replace the parameter field in the command template with the write command parameter field to obtain the target write command, etc.
- Step S207 transmitting the target write command to the SSD master controller, so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- the solid-state hard disk garbage collection acceleration device can also determine the storage address of the target read command in the data cache space; obtain the target data read by the SSD main controller, and cache the target data to the data cache space according to the storage address, so as to store the target data with the help of the data cache space.
- the solid state drive garbage collection acceleration device can determine the buffer code corresponding to the target read command in the process of determining the storage address of the target read command in the data cache space. number; the product of the buffer number and the buffer size is determined as the storage address, so as to quickly determine the storage address; wherein the buffer includes the storage space obtained by equally dividing the data cache space.
- the solid-state drive garbage collection acceleration device can also record the target read command and target data, so as to determine whether all target data have been read completely based on the recorded information.
- the solid-state drive garbage collection acceleration device can also release the corresponding storage space of the storage address in the data cache space after transmitting the target write command to the SSD main controller, so that the data cache space can be prepared for the next data storage.
- FIG. 10 is a schematic diagram of the structure of a solid state drive garbage collection system provided in an embodiment of the present application.
- An embodiment of the present application provides a solid state hard disk garbage collection acceleration device, which may include:
- the receiving port 101 is used to receive a target GC command sent by the GC management software of the target solid state drive;
- the command builder 102 is used to generate a target read command corresponding to the SSD master controller of the target solid state drive based on the target GC command; transmit the target read command to the SSD master controller so that the SSD master controller reads the corresponding target data from the first flash memory block based on the target read command; generate a target write command corresponding to the SSD master controller based on the target GC command; transmit the target write command to the SSD master controller so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- An embodiment of the present application provides a solid state hard disk garbage collection acceleration device, and a command builder may include:
- a first acquisition module is used to acquire a pre-stored command template of the SSD master controller, where the command template includes a fixed field and a parameter field;
- a first extraction module used to extract a read command parameter field in a target GC command
- the first replacement module is used to replace the parameter field in the command template with the read command parameter field. Replace and get the target read command.
- a first determination module is used to determine the storage address of the target read command in the data cache space after the command builder transmits the target read command to the SSD master controller;
- the second acquisition module is used to acquire the target data read by the SSD main controller, and cache the target data into the data cache space according to the storage address.
- An embodiment of the present application provides a solid-state hard disk garbage collection acceleration device, in which the first determination module can be specifically used to: determine the buffer number corresponding to the target read command; determine the product value of the buffer number and the buffer size as the storage address; wherein the buffer includes the storage space obtained by evenly dividing the data cache space.
- the first recording module is used to record the target read command and target data after the command builder transmits the target read command to the SSD master controller.
- the first release module is used to release the corresponding storage space of the storage address in the data cache space after the command builder transmits the target write command to the SSD main controller.
- the first generation module is used to generate a target GC response instruction corresponding to the target GC command after the command builder transmits the target write command to the SSD main controller, and transmit the target GC response instruction to the GC management software.
- the interaction process between the solid state drive garbage collection acceleration device and the GC management software and the SSD main controller can be shown as 11, including the following steps:
- the command building module first receives the gc_sq sent by the GC management software;
- the command construction module applies for buf id from the data cache management module
- the command building module notifies the read command status recording module of the applied buf id, and the read command status recording module records the buf id;
- the command construction module reads the command and opcode from the command template, constructs the read command and sends it to the SSD controller;
- the SSD master controller parses the command, reads valid data from the nand and transmits it to the universal solid state drive garbage collection acceleration device;
- the read command status recording module After receiving the read command data, the read command status recording module writes the data to the data cache address corresponding to buf_id;
- the read command status recording module determines whether all the read command data has been written to the data cache. If all the data has been written to the data cache, the driving command construction module generates an SSD controller write command;
- the command construction module reads the write command template and opcode from the command template, constructs the write command and sends it to the SSD master;
- the SSD master controller parses the command and requests data from the general GC acceleration module
- the read command status recording module receives the data request, reads the data from the cache address corresponding to buf_id and transmits it to the SSD, and releases buf_id to the data cache management module;
- the SSD master controller After receiving the data, the SSD master controller writes it to the new location of the nand and notifies the general GC acceleration module that the write command has been executed;
- the solid state drive garbage collection acceleration device returns the software gc_cq to notify the GC management software that the gc command is completed.
- the present application also provides an electronic device and a computer-readable storage medium, both of which have the corresponding effects of an electronic method provided in an embodiment of the present application.
- Figure 12 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202.
- the memory 201 stores a computer program.
- the processor 202 executes the computer program, the following steps are implemented:
- the target write command is transmitted to the SSD master controller, so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- An electronic device includes a memory 201 and a processor 202.
- the memory 201 stores a computer program
- the processor 202 implements the following steps when executing the computer program: obtaining a pre-stored command template of the SSD master controller, the command template including a fixed field and a parameter field; extracting a read command parameter field in a target GC command; replacing the parameter field in the command template with the read command parameter field to obtain a target read command.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202.
- a computer program is stored in the memory 201.
- the processor 202 executes the computer program, the following steps are implemented: after transmitting a target read command to an SSD master controller, a storage address of the target read command in a data cache space is determined; target data read by the SSD master controller is obtained, and the target data is cached in the data cache space according to the storage address.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202, wherein a computer program is stored in the memory 201, and the processor 202 implements the following steps when executing the computer program: determining a buffer number corresponding to a target read command; determining the product value of the buffer number and the buffer size as a storage address; wherein the buffer includes a storage space obtained by evenly dividing the data cache space.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202.
- the memory 201 stores a computer program.
- the processor 202 executes the computer program, the following steps are implemented: after transmitting a target read command to an SSD main controller, the target read command and target data are recorded.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202.
- the memory 201 stores a computer program.
- the processor 202 executes the computer program, the following steps are implemented: after transmitting the target write command to the SSD main controller, the corresponding storage space of the storage address in the data cache space is released.
- An electronic device provided in an embodiment of the present application includes a memory 201 and a processor 202.
- a computer program is stored in the memory 201.
- the processor 202 executes the computer program, the following steps are implemented: after transmitting the target write command to the SSD main controller, a target GC response instruction corresponding to the target GC command is generated, and the target GC response instruction is transmitted to the GC management software.
- another electronic device may further include: an input port 203 connected to the processor 202, used to transmit commands input from the outside to the processor 202; a display unit 204 connected to the processor 202, used to display the processing results of the processor 202 to the outside; and a communication module 205 connected to the processor 202, used to realize communication between the electronic device and the outside.
- Display unit Element 204 can be a display panel, a laser scanning display, etc.; the communication method adopted by the communication module 205 includes but is not limited to mobile high-definition link technology (HML), universal serial bus (USB), high-definition multimedia interface (HDMI), wireless connection: wireless fidelity technology (WiFi), Bluetooth communication technology, low-power Bluetooth communication technology, and communication technology based on IEEE802.11s.
- HML mobile high-definition link technology
- USB universal serial bus
- HDMI high-definition multimedia interface
- WiFi wireless fidelity technology
- Bluetooth communication technology Bluetooth communication technology
- low-power Bluetooth communication technology low-power Bluetooth communication technology
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- a computer program is stored.
- the following steps are implemented:
- the target write command is transmitted to the SSD master controller, so that the SSD master controller writes the target data into the second flash memory block based on the target write command.
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- the computer program is executed by a processor, the following steps are implemented: obtaining a pre-stored command template of an SSD master controller, the command template including a fixed field and a parameter field; extracting a read command parameter field in a target GC command; replacing the parameter field in the command template with the read command parameter field to obtain a target read command.
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- the computer program is executed by a processor, the following steps are implemented: after transmitting a target read command to an SSD master controller, determining a storage address of the target read command in a data cache space; obtaining target data read by the SSD master controller, and caching the target data into the data cache space according to the storage address.
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- the computer program is executed by a processor, the following steps are implemented: determining a buffer number corresponding to a target read command; determining the product value of the buffer number and the buffer size as a storage address; wherein the buffer includes a storage space obtained by evenly dividing the data cache space.
- a computer-readable storage medium provided in an embodiment of the present application, a computer-readable storage medium
- a computer program is stored in the memory, and when the computer program is executed by the processor, the following steps are implemented: after transmitting the target read command to the SSD main controller, the target read command and the target data are recorded.
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- the computer program is executed by a processor, the following steps are implemented: after transmitting a target write command to an SSD master controller, the corresponding storage space of the storage address in the data cache space is released.
- An embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored.
- the computer program is executed by a processor, the following steps are implemented: after transmitting a target write command to an SSD master controller, a target GC response instruction corresponding to the target GC command is generated, and the target GC response instruction is transmitted to the GC management software.
- the computer-readable storage medium involved in the present application includes random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disks, removable disks, CD-ROMs, or any other form of storage medium known in the technical field.
- RAM random access memory
- ROM read-only memory
- electrically programmable ROM electrically erasable programmable ROM
- registers hard disks, removable disks, CD-ROMs, or any other form of storage medium known in the technical field.
- each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments.
- the same or similar parts between the embodiments can be referred to each other.
- the description is relatively simple, and the relevant parts can be referred to the method part.
- the steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two.
- the software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
L'invention concerne un procédé de récupération d'espace mémoire (GC) de disque statique à semiconducteurs (SSD), un appareil d'accélération de GC de SSD, et un dispositif ainsi qu'un support informatique. Le procédé est appliqué à un appareil d'accélération de GC de SSD, et consiste à : recevoir une commande de GC cible envoyée par un logiciel de gestion de GC d'un SSD cible ; sur la base de la commande de GC cible, générer une commande de lecture cible correspondant à un contrôleur maître de SSD du SSD cible ; transmettre la commande de lecture cible au contrôleur maître de SSD, de telle sorte que le contrôleur maître de SSD lise des données cibles correspondantes à partir d'un premier bloc de mémoire flash sur la base de la commande de lecture cible ; sur la base de la commande de GC cible, générer une commande d'écriture cible correspondant au contrôleur maître de SSD ; et transmettre la commande d'écriture cible au contrôleur maître de SSD, de telle sorte que le contrôleur maître de SSD écrive les données cibles dans un second bloc de mémoire flash sur la base de la commande d'écriture cible. Dans la présente demande, un logiciel de gestion de GC nécessite uniquement une instance d'interaction logiciel/matériel avec un contrôleur maître de SSD pour réaliser une opération de GC, ce qui permet de réduire la latence d'interaction logiciel/matériel, et d'améliorer l'efficacité de GC d'un SSD.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211666319.9A CN115934579A (zh) | 2022-12-23 | 2022-12-23 | 固态硬盘垃圾回收方法、加速装置、设备及计算机介质 |
CN202211666319.9 | 2022-12-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024130890A1 true WO2024130890A1 (fr) | 2024-06-27 |
Family
ID=86553871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/086117 WO2024130890A1 (fr) | 2022-12-23 | 2023-04-04 | Procédé de récupération d'espace mémoire de disque statique à semiconducteurs, appareil d'accélération de récupération d'espace mémoire de disque statique à semiconducteurs, dispositif et support informatique |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115934579A (fr) |
WO (1) | WO2024130890A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116775507B (zh) * | 2023-08-23 | 2023-10-20 | 四川云海芯科微电子科技有限公司 | 固态硬盘控制器垃圾回收中的硬件加速选块方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334284A (zh) * | 2017-01-20 | 2018-07-27 | 三星电子株式会社 | 尾延迟感知前台垃圾收集算法 |
US20200097403A1 (en) * | 2018-09-25 | 2020-03-26 | Western Digital Technologies, Inc. | Recency based victim block selection for garbage collection in a solid state device (ssd) |
CN113377278A (zh) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | 固态硬盘、垃圾回收及控制方法、设备、系统及存储介质 |
WO2022017002A1 (fr) * | 2020-07-22 | 2022-01-27 | 华为技术有限公司 | Procédé et dispositif de récupération d'espace de stockage |
CN114741327A (zh) * | 2022-04-22 | 2022-07-12 | 中科驭数(北京)科技有限公司 | 一种垃圾回收方法及装置 |
CN115391237A (zh) * | 2022-09-06 | 2022-11-25 | 山东华芯半导体有限公司 | 应用于闪存存储控制器中的垃圾回收系统及方法 |
-
2022
- 2022-12-23 CN CN202211666319.9A patent/CN115934579A/zh active Pending
-
2023
- 2023-04-04 WO PCT/CN2023/086117 patent/WO2024130890A1/fr unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334284A (zh) * | 2017-01-20 | 2018-07-27 | 三星电子株式会社 | 尾延迟感知前台垃圾收集算法 |
US20200097403A1 (en) * | 2018-09-25 | 2020-03-26 | Western Digital Technologies, Inc. | Recency based victim block selection for garbage collection in a solid state device (ssd) |
CN113377278A (zh) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | 固态硬盘、垃圾回收及控制方法、设备、系统及存储介质 |
WO2022017002A1 (fr) * | 2020-07-22 | 2022-01-27 | 华为技术有限公司 | Procédé et dispositif de récupération d'espace de stockage |
CN114741327A (zh) * | 2022-04-22 | 2022-07-12 | 中科驭数(北京)科技有限公司 | 一种垃圾回收方法及装置 |
CN115391237A (zh) * | 2022-09-06 | 2022-11-25 | 山东华芯半导体有限公司 | 应用于闪存存储控制器中的垃圾回收系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115934579A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8521949B2 (en) | Data deleting method and apparatus | |
US9927998B2 (en) | Flash memory compression | |
US9734085B2 (en) | DMA transmission method and system thereof | |
US8352676B2 (en) | Apparatus and method to store a plurality of data having a common pattern and guarantee codes associated therewith in a single page | |
US9395921B2 (en) | Writing data using DMA by specifying a buffer address and a flash memory address | |
TWI569139B (zh) | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 | |
US20130166818A1 (en) | Memory logical defragmentation during garbage collection | |
TW201118877A (en) | Flash memory device, data storage system, and operation method of a data storage system | |
JP2008198208A (ja) | ホストデータ処理装置の動作方法、ホストデータ処理装置並びにデータ格納装置 | |
US10585589B2 (en) | Data collation method, storage device, storage controller, and storage array | |
TWI715248B (zh) | 主機輸出入命令的執行裝置及方法及電腦程式產品 | |
WO2024130890A1 (fr) | Procédé de récupération d'espace mémoire de disque statique à semiconducteurs, appareil d'accélération de récupération d'espace mémoire de disque statique à semiconducteurs, dispositif et support informatique | |
CN113760185A (zh) | 内存块回收方法和装置 | |
CN102479549A (zh) | 半导体存储装置 | |
US9524236B1 (en) | Systems and methods for performing memory management based on data access properties | |
CN116257460A (zh) | 基于固态硬盘的Trim命令处理方法及固态硬盘 | |
KR101128594B1 (ko) | 기록가능 메모리 장치 | |
WO2022021280A1 (fr) | Contrôleur de stockage, procédé de contrôle de stockage, disque à semi-conducteurs et système de stockage | |
TWI805937B (zh) | 記憶體控制器與資料處理方法 | |
TW202137013A (zh) | 記憶體控制器與資料處理方法 | |
CN109284237A (zh) | 一种全闪存储阵列中的垃圾回收方法及系统 | |
KR101278591B1 (ko) | 플래시 메모리 시스템 및 그 동작 방법 | |
CN117492658A (zh) | 一种数据上电处理方法、系统、设备及计算机存储介质 | |
CN116243854A (zh) | 数据存储系统及数据存储方法 | |
CN117742582A (zh) | 一种高效率垃圾回收方法及存储装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23905082 Country of ref document: EP Kind code of ref document: A1 |