Nothing Special   »   [go: up one dir, main page]

CN112540726B - Data reading method, system, device and medium of solid-state storage device - Google Patents

Data reading method, system, device and medium of solid-state storage device Download PDF

Info

Publication number
CN112540726B
CN112540726B CN202011393116.8A CN202011393116A CN112540726B CN 112540726 B CN112540726 B CN 112540726B CN 202011393116 A CN202011393116 A CN 202011393116A CN 112540726 B CN112540726 B CN 112540726B
Authority
CN
China
Prior art keywords
data
solid
read
state storage
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011393116.8A
Other languages
Chinese (zh)
Other versions
CN112540726A (en
Inventor
余云锋
吴大畏
李晓强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN SILICONGO MICROELECTRONICS CO Ltd
Original Assignee
SHENZHEN SILICONGO MICROELECTRONICS CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN SILICONGO MICROELECTRONICS CO Ltd filed Critical SHENZHEN SILICONGO MICROELECTRONICS CO Ltd
Priority to CN202011393116.8A priority Critical patent/CN112540726B/en
Publication of CN112540726A publication Critical patent/CN112540726A/en
Application granted granted Critical
Publication of CN112540726B publication Critical patent/CN112540726B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a data reading method, a system, a terminal device and a computer storage medium of a solid-state storage device, wherein a physical storage address of storage data in the solid-state storage device is transmitted to the terminal device through the solid-state storage device which is in communication connection with the terminal device, so that the terminal device can buffer the physical storage address in an operation memory; when a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction changes; and if the data to be read is not changed, reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment. The invention releases the dependence of the solid-state storage device on the random access memory, so that the solid-state storage device still has good data reading performance under the condition of not configuring the random access memory so as to reduce the production cost.

Description

Data reading method, system, device and medium of solid-state storage device
Technical Field
The present invention relates to the field of data storage technologies, and in particular, to a data reading method and system for a solid state storage device, a terminal device, and a computer storage medium.
Background
Currently, solid state storage devices such as SSD (Solid STATE DRIVES) are widely used in the market due to their fast data access speed. When a user writes a logical address to store data based on the solid-state storage device, the main control of the solid-state storage device can find a physical page to write the user data into the physical page for storage, and record the mapping relation between the logical address and the physical storage address of the data on the physical page, so that a mapping table L2P (L2P, namely mapping from the logical address to the physical storage address) between the logical address and the physical storage address is established, and therefore, the solid-state storage device can use the L2P table to detect the physical storage address of the data for fast data reading when the data reading is carried out subsequently.
However, the size of the L2P table is typically one thousandth of that of the solid-state storage device, so even if the capacity of the solid-state storage device itself is only 128GB, the size of the entire L2P table reaches 128MB, and thus, most solid-state storage devices in the market use a larger capacity on-board DRAM (Dynamic Random AccessMemory ) or SRAM (Static Random Access Memory) to save the L2P table, so that the SSD extracts the L2P table from the DRAM or SRAM when reading data. In this way, even if the data reading performance of the solid-state storage device can be ensured by enabling the solid-state storage device to quickly extract the L2P table for data reading, the production and manufacturing costs of the solid-state storage device are greatly increased due to the relatively expensive random access memory such as DRAM or SRAM.
Disclosure of Invention
The invention mainly aims to provide a data reading method, a system, a terminal device and a computer storage medium of a solid-state storage device, aiming at releasing the dependence of the solid-state storage device on random access memories such as DRAM (dynamic random access memory), SRAM (static random access memory), and the like, so that the solid-state storage device can still have higher data reading performance under the condition that the random access memories such as DRAM or SRAM are not configured, thereby reducing the production and manufacturing cost.
In order to achieve the above object, the present invention provides a data reading method of a solid-state storage device, the data reading method of the solid-state storage device being applied to a solid-state storage device of a terminal device, the solid-state storage device being communicatively connected to the terminal device, the data reading method of the solid-state storage device comprising:
transmitting a physical storage address of storage data in solid-state storage equipment to the terminal equipment so that the terminal equipment caches the physical storage address in an operation memory;
When a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction changes;
And if the data to be read is not changed, reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment.
Further, the step of transferring the physical storage address of the stored data in the solid state storage device to the terminal device includes:
detecting data to be read pointed by a second data reading instruction when the second data reading instruction issued by the terminal equipment is received;
extracting the data to be read from the storage data stored in the solid-state storage device;
And returning the data to be read and the physical storage address of the data to be read to the terminal equipment.
Further, the step of transferring the physical storage address of the stored data in the solid-state storage device to the terminal device further includes:
and traversing the physical storage address of the stored data in the solid-state storage device and uploading the physical storage address to the terminal device when the communication connection between the solid-state storage device and the terminal device is detected to meet the preset communication conditions.
Further, the step of determining whether the physical storage address of the data to be read carried in the first data reading instruction changes includes:
Extracting the physical storage address of the data to be read carried in the first data reading instruction, and detecting the available state of the physical storage address;
If the available state is available, determining that the physical storage address is unchanged;
And if the available state is unavailable, determining that the physical storage address changes.
Further, after the step of determining whether the physical storage address of the data to be read carried in the first data reading instruction changes, the method further includes:
And if the change is determined to occur, extracting the data to be read from the storage data stored in the solid-state storage device, and returning the data to be read and the new physical storage address of the data to be read to the terminal device.
In addition, to achieve the above object, the present invention also provides a data reading method of a solid-state storage device, the data reading method of the solid-state storage device being applied to the terminal device as described above, the data reading method of the solid-state storage device comprising:
receiving a physical storage address of storage data transmitted by the solid-state storage device, and caching the physical storage address in an operation memory;
generating a first data reading instruction according to the physical storage address in the running memory;
And issuing the first data reading instruction to the solid-state storage device, so that when the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction is unchanged, the data to be read is read according to the physical storage address and returned.
Further, the data reading method of the solid-state storage device further includes:
when the communication connection between the solid-state storage device and the solid-state storage device is detected to meet a preset communication condition, generating a second data reading instruction according to the data to be read;
And sending the second data reading instruction to the solid-state storage device so that the solid-state storage device traverses the storage data in the solid-state storage device to extract the data to be read, and returning the data to be read and the physical storage address of the data to be read.
In addition, to achieve the above object, the present invention also provides a data reading system of a solid-state storage device, the data reading system of the solid-state storage device including:
the data reading system of the solid-state storage device is applied to the solid-state storage device of the terminal device, the solid-state storage device is in communication connection with the terminal device, and the data reading system of the solid-state storage device comprises:
The transfer module is used for transferring the physical storage address of the storage data in the solid-state storage device to the terminal device so that the terminal device can buffer the physical storage address in the running memory;
the determining module is used for determining whether the physical storage address of the data to be read carried in the first data reading instruction changes or not when the first data reading instruction issued by the terminal equipment is received;
the reading module is used for reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment if the data to be read is not changed;
wherein the data reading system of the solid-state storage device is further applied to the terminal device, the data reading system of the solid-state storage device further comprises:
the cache module is used for receiving the physical storage address of the storage data transmitted by the solid-state storage device and caching the physical storage address in the running memory;
the generation module is used for generating a first data reading instruction according to the physical storage address in the running memory;
And the issuing module is used for issuing the first data reading instruction to the solid-state storage equipment so that the solid-state storage equipment can read the data to be read according to the physical storage address and return the data to be read when determining that the physical storage address of the data to be read carried in the first data reading instruction is unchanged.
The functional modules of the data reading system of the solid-state storage device of the present invention implement the steps of the data reading method of the solid-state storage device described above when running.
In addition, to achieve the above object, the present invention also provides a terminal device including: the data reading method comprises the steps of a memory, a processor and a data reading program of a solid-state storage device, wherein the data reading program of the solid-state storage device is stored in the memory and can run on the processor, and the data reading program of the solid-state storage device is executed by the processor.
In addition, to achieve the above object, the present invention also provides a computer storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the data reading method of the solid state storage device as described above.
According to the data reading method, the system, the terminal equipment and the computer storage medium of the solid-state storage equipment, the physical storage address of the stored data in the solid-state storage equipment is transmitted to the terminal equipment through the solid-state storage equipment in communication connection with the terminal equipment, so that the terminal equipment can buffer the physical storage address in an operation memory; when a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction changes; and if the data to be read is not changed, reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment.
The invention transmits the respective physical storage addresses of the storage data stored in the solid-state storage device to the terminal device through the solid-state storage device in communication with the terminal device, so that the terminal device caches the physical storage addresses in the running memory of the terminal device, thereby, after receiving a first data reading instruction which is issued by the terminal device and carries the physical storage addresses of the data to be read, the solid-state storage device determines whether the physical storage addresses change or not, and then extracts the data to be read directly according to the physical storage addresses when the physical storage addresses are not changed, and returns the extracted data to be read to the terminal device.
Compared with the existing mode of configuring random access memories such as DRAM or SRAM on solid-state storage equipment to improve the data reading performance of the solid-state memory, the invention is based on the fact that the physical storage address of the data stored in the solid-state storage equipment is cached in the running memory of the terminal equipment, so that the terminal equipment can directly issue the physical storage address of the data to be read to the solid-state storage equipment from the running memory together when issuing a data reading instruction, and the solid-state storage equipment can directly read the data according to the physical storage address.
Drawings
Fig. 1 is a schematic structural diagram of hardware operation of a terminal device according to an embodiment of the present invention;
FIG. 2 is a flow chart of a method for reading data from a solid-state storage device according to an embodiment of the present invention;
FIG. 3 is a schematic block diagram of a data reading system of a solid-state storage device according to the present invention.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
As shown in fig. 1, fig. 1 is a schematic structural diagram of a hardware running environment related to a terminal device according to an embodiment of the present invention.
It should be noted that fig. 1 may be a schematic structural diagram of a hardware operating environment of a terminal device. The terminal equipment of the embodiment of the invention can be data storage control terminals, PCs, portable computers and other terminal equipment.
As shown in fig. 1, the terminal device may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, a memory 1005, a communication bus 1002. Wherein the communication bus 1002 is used to enable connected communication between these components. The user interface 1003 may include a Display, an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may further include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., WI-FI interface). The memory 1005 may be a nonvolatile memory (e.g., flash memory), a high-speed RAM memory, or a stable memory (non-volatile memory), such as a disk memory. The memory 1005 may also optionally be a storage device separate from the processor 1001 described above.
It will be appreciated by those skilled in the art that the terminal device structure shown in fig. 1 is not limiting of the terminal device and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components.
As shown in fig. 1, an operating system, a network communication module, a user interface module, and a processing program of distributed tasks may be included in a memory 1005 as one type of computer storage medium. The operating system is a program for managing and controlling hardware and software resources of the sample terminal device, and supports the running of processing programs of distributed tasks and other software or programs.
In the terminal device shown in fig. 1, the user interface 1003 is mainly used for data communication with each terminal; the network interface 1004 is mainly used for connecting a background server and carrying out data communication with the background server; and the processor 1001 may be configured to call a data reading program of the solid state storage device stored in the memory 1005, and perform the following operations:
transmitting a physical storage address of storage data in solid-state storage equipment to the terminal equipment so that the terminal equipment caches the physical storage address in an operation memory;
When a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction changes;
And if the data to be read is not changed, reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment.
Further, the processor 1001 may call a data reading program of the solid state storage device stored in the memory 1005, and further perform the following operations:
detecting data to be read pointed by a second data reading instruction when the second data reading instruction issued by the terminal equipment is received;
extracting the data to be read from the storage data stored in the solid-state storage device;
And returning the data to be read and the physical storage address of the data to be read to the terminal equipment.
Further, the processor 1001 may call a data reading program of the solid state storage device stored in the memory 1005, and further perform the following operations:
and traversing the physical storage address of the stored data in the solid-state storage device and uploading the physical storage address to the terminal device when the communication connection between the solid-state storage device and the terminal device is detected to meet the preset communication conditions.
Further, the processor 1001 may call a data reading program of the solid state storage device stored in the memory 1005, and further perform the following operations:
Extracting the physical storage address of the data to be read carried in the first data reading instruction, and detecting the available state of the physical storage address;
If the available state is available, determining that the physical storage address is unchanged;
And if the available state is unavailable, determining that the physical storage address changes.
Further, the processor 1001 may call a data reading program of the solid-state storage device stored in the memory 1005, and after executing the determination of whether the physical storage address of the data to be read carried in the first data reading instruction changes, further execute the following operations:
And if the change is determined to occur, extracting the data to be read from the storage data stored in the solid-state storage device, and returning the data to be read and the new physical storage address of the data to be read to the terminal device.
Further, the processor 1001 may call a data reading program of the solid state storage device stored in the memory 1005, and further perform the following operations:
receiving a physical storage address of storage data transmitted by the solid-state storage device, and caching the physical storage address in an operation memory;
generating a first data reading instruction according to the physical storage address in the running memory;
And issuing the first data reading instruction to the solid-state storage device, so that when the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction is unchanged, the data to be read is read according to the physical storage address and returned.
Further, the usage characteristic parameters include, but are not limited to: the processor 1001 may call a data reading program of the solid-state storage device stored in the memory 1005, and further perform the following operations of:
when the communication connection between the solid-state storage device and the solid-state storage device is detected to meet a preset communication condition, generating a second data reading instruction according to the data to be read;
And sending the second data reading instruction to the solid-state storage device so that the solid-state storage device traverses the storage data in the solid-state storage device to extract the data to be read, and returning the data to be read and the physical storage address of the data to be read.
Based on the above-described structure, various embodiments of a data reading method of a solid-state storage device of the present invention are presented.
Referring to fig. 2, fig. 2 is a flowchart illustrating a data reading method of a solid-state storage device according to a first embodiment of the invention.
Embodiments of the present invention provide embodiments of a method of data reading for a solid state storage device, it being noted that although a logical sequence is illustrated in the flowchart, in some cases the steps illustrated or described may be performed in a different order than that illustrated herein.
The data reading method of the solid-state storage device according to the embodiment of the invention is applied to the terminal device for controlling the data storage and the solid-state storage device which is in communication connection with the terminal device.
The data reading method of the solid-state storage device of the embodiment comprises the following steps:
Step S100, transmitting a physical storage address of storage data in a solid-state storage device to the terminal device so that the terminal device caches the physical storage address in a running memory;
the terminal equipment receives a physical storage instruction of the stored data, and then caches the physical storage address in an operation memory for subsequent direct calling.
It should be noted that, in this embodiment, the solid-state storage device may be an SSD, and it should be understood that, based on different design requirements of practical applications, in other possible implementations, the solid-state storage device may be a solid-state memory of another type, and the data reading method of the solid-state storage device in this embodiment of the present invention does not specifically limit the type of the solid-state storage device.
Specifically, for example, when the terminal device writes a Logical storage address (LBA, logical Block Address) of data storage to store data by accessing a basic unit-Logical page (Logical page) of the solid-state storage device-SSD, a master control of the solid-state storage device-SSD writes data transferred by the terminal device into an internal physical page (PHYSICAL PAGE) (or referred to as a flash memory page) to store the data, and then records a physical storage address of the data on the flash memory page to establish a mapping relationship between the physical storage address and the Logical storage address, so that after the solid-state storage device-SSD is powered on by the terminal device to have a condition of mutual communication with the terminal device, the solid-state storage device-SSD can issue a data reading instruction based on the terminal device, and after the data reading instruction is executed to return the data to be read pointed by the data reading instruction to the terminal device, upload the physical storage address of the data to be read in the solid-state storage device-SSD to the terminal device; or the solid-state storage device-SSD can actively upload the physical storage address of the data stored in the solid-state storage device-SSD to the terminal device after the terminal device is powered on so as to have the condition of mutual communication with the terminal device; after receiving the physical storage address uploaded by the solid-state storage device-SSD, the terminal device can store the physical storage address and the mapped logical storage address together in the running memory of the terminal device in a relevant mode for direct calling when the data is read later.
Further, in a possible embodiment, the step of "transferring the physical storage address of the storage data in the solid-state storage device to the terminal device" in the step S100 may include:
Step S101, when a second data reading instruction issued by the terminal equipment is received, detecting data to be read pointed by the second data reading instruction;
if the solid-state storage device receives the instruction receiving state after the terminal device is powered on, the solid-state storage device receives a second data reading instruction issued by the terminal device, and then the solid-state storage device detects that the second data reading instruction points to the data to be read which is required to be read currently.
It should be noted that, in this embodiment, after the terminal device is powered on, the solid-state storage device will immediately enter an instruction receiving state in which the receiving terminal device issues a data storage instruction or a data reading instruction based on communication connection; in addition, in this embodiment, the second data reading instruction is an instruction for reading data issued to the solid-state storage device for the first time after the terminal device is powered on.
Specifically, for example, when the terminal device is powered on, the physical storage address of the storage data uploaded by the solid-state storage device-SSD does not exist in the running memory of the terminal device, so when the terminal device needs to read the data from the solid-state storage device-SSD, a second data reading instruction needs to be generated based on the logical storage address of the data to be read written when the data is stored, then the second data reading instruction is issued to the solid-state storage device-SSD, and after receiving the second data reading instruction, the master control of the solid-state storage device-SSD determines the data to be read, which needs to be extracted from the inside of the solid-state storage device-SSD at present, based on the logical storage address carried in the second data reading instruction.
It should be noted that, in this embodiment, the second data reading instruction may specifically be a command interval, where the command interval mainly includes an LBA (Logical Block Address, a logical block address) and sctcnt (the number of sectors to be read), so that after receiving the command interval, the solid-state storage device SSD may read out, from the solid-state storage device SSD, a partial table on the sector indicated by sctcnt through the LBA, so as to find a mapping relationship between the LBA and a physical address of the data to be read stored on the solid-state storage device SSD, and then extract the data to be read from the solid-state storage device SSD according to the mapping relationship.
Step S102, extracting the data to be read from the storage data stored in the solid-state storage device;
After detecting and determining that the second data reading instruction issued by the terminal equipment points to the data to be read currently, the solid-state storage equipment extracts the data to be read from all storage data stored in the solid-state storage equipment according to the logic block address carried by the second data reading instruction.
Specifically, for example, after determining, based on the logical storage address carried in the second data reading instruction, that data to be read is currently required to be extracted from the solid-state storage device-SSD, the solid-state storage device-SSD reads a part of the table on the sector represented by sctcnt from the solid-state storage device-SSD according to the manner of reading the data conventionally, that is, according to the LBA encapsulated in the received second data reading instruction, so as to find the mapping relationship between the LBA and the physical address of the data to be read stored on the solid-state storage device-SSD, and then extract the data to be read from the solid-state storage device-SSD according to the mapping relationship.
It should be noted that, in another possible embodiment, the solid-state storage device-SSD may extract the data to be read by traversing all the storage data, that is, the solid-state storage device-SSD performs data tag matching among all the storage data in the solid-state storage device-SSD one by one according to the data tag of the determined data to be read, so as to extract the data to be read.
Step S103, returning the data to be read and the physical storage address of the data to be read to the terminal equipment.
After the solid-state storage device extracts the data to be read, the data to be read is returned to the terminal device which issues the second data reading instruction, and the physical storage address of the data to be read in the solid-state storage device is synchronously fed back to the terminal device, so that the terminal device directly caches the physical storage address in the running memory for subsequent calling.
Specifically, for example, after the solid-state storage device-SSD extracts the data to be read by traversing all the storage data, the data to be read is returned to the terminal device issuing the second data reading instruction so as to complete the second data reading instruction, and then the solid-state storage device-SSD further synchronously feeds back the physical storage address of the data to be read on the physical page (PHYSICAL PAGE) inside the solid-state storage device-SSD to the terminal device, so that after receiving the physical storage address, the terminal device associatively caches the physical storage address and the mapped logical storage address of the data to be read in its own running memory for direct call when the data to be read is read again later.
Step S200, when a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction is changed;
if the solid-state storage device is in an instruction receiving state, when a first data reading instruction generated by the terminal based on a physical storage address of data to be read in the packaging operation memory is received, the solid-state storage device firstly determines whether the physical storage address of the data to be read carried in the first data reading instruction is changed in the solid-state storage device.
It should be noted that, in this embodiment, the first data reading instruction is a data reading instruction generated by directly encapsulating, by the terminal device, a physical storage address of data to be read in the running memory when the terminal device has cached the physical storage address of the data to be read. In addition, in this embodiment, since the management algorithm (such as FTL (Flash translation layer, flash translation layer)) inside the solid-state storage device executes the garbage collection policy for the physical page (PHYSICAL PAGE) inside the solid-state storage device, the physical storage address of a part of the data in the data stored inside the solid-state storage device is changed. It should be understood that, in other possible embodiments, the physical storage address of the data changes inside the solid-state storage device based on different design requirements of the practical application, and of course, may also be caused by other reasons that are different from the reason why the garbage collection policy is executed by the management algorithm as listed herein, and the data reading method of the solid-state storage device of the present invention is not specifically limited to the reason that the physical storage address changes.
Specifically, for example, in the process of repeatedly performing data reading, if the terminal device has cached a physical storage address of data to be read on a physical page (PHYSICAL PAGE) inside the solid-state storage device-SSD in its running memory, the terminal device may directly extract the physical storage address of the data to be read from the running memory, then encapsulate the physical storage address as a first data reading instruction, and issue the first data reading instruction to the solid-state storage device-SSD.
Further, in a possible embodiment, in the step S200, the step of determining whether the physical storage address of the data to be read carried in the first data reading instruction changes may include:
Step S201, extracting the physical storage address of the data to be read carried in the first data reading instruction, and detecting an available state of the physical storage address;
It should be noted that, in this embodiment, the available state of the physical storage address may be a state flag output by the management algorithm of the solid-state storage device for the physical storage address, for example, the original physical storage address of the storage data a on the internal physical page (PHYSICAL PAGE) of the solid-state storage device-SSD is address 1, after executing the garbage collection policy for the solid-state storage device-SSD physical page (PHYSICAL PAGE), if the physical storage address of the storage data a is changed, the management algorithm-FTL may output, for the original physical storage address-address 1 of the storage data a, an available state flag "0" that indicates that the storage data a can still be extracted based on the address 1, otherwise, if the physical storage address of the storage data a is changed, the management algorithm-FTL may output, for the original physical storage address-address 1 of the storage data a, an unavailable state flag "1" of the storage data a that cannot be extracted based on the address 1.
Specifically, for example, after receiving a first data reading instruction generated by the terminal device based on a physical storage address encapsulating data to be read, the master control of the solid-state storage device-SSD first extracts the physical storage address, and then detects that a state flag output by the management algorithm-FTL of the solid-state storage device-SSD for the physical storage address is "0" or "1".
Step S202, if the available state is available, determining that the physical storage address is unchanged;
specifically, for example, if the master control of the solid-state storage device-SSD detects that the state flag output by the FTL for the physical storage address encapsulated and carried in the first data reading instruction is "0", that is, the master control of the solid-state storage device-SSD determines that the data to be read can still be read based on the physical storage address, thereby determining that the physical storage address has not changed.
In step S203, if the available status is unavailable, it is determined that the physical storage address changes.
Specifically, for example, if the master of the solid-state storage device-SSD detects that the state flag output by the FTL for the physical storage address encapsulated in the first data reading instruction is "1", that is, the master of the solid-state storage device-SSD determines that the data to be read cannot be read based on the physical storage address, thereby determining that the physical storage address has changed.
And step S300, if the fact that the data to be read is unchanged is determined, the data to be read is read according to the physical storage address, and the data to be read is returned to the terminal equipment.
If the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction has not changed in the solid-state storage device, the solid-state storage device immediately reads the data to be read from all storage data in the solid-state storage device according to the physical storage address, and returns the data to be read to the terminal device to execute and complete the first data reading instruction.
Specifically, for example, when the master control of the solid-state storage device-SSD detects that the FTL is "0" for the physical storage address of the data to be read, which is carried in the first data reading instruction and is encapsulated, so as to determine that the physical storage address is unchanged, the master control of the solid-state storage device-SSD immediately reads the data to be read from a physical page (PHYSICAL PAGE) inside the solid-state storage device-SSD directly according to the physical storage address, and then returns the read data to be read to the terminal device so as to complete the first data reading instruction.
In this embodiment, a physical storage address of data stored in a solid-state storage device is transferred to a terminal device through a solid-state storage device which is built in the terminal device and is in communication connection with the terminal device, and the terminal device immediately caches the physical storage address in an operation memory for subsequent direct call after receiving a physical storage instruction of the stored data; if the solid-state storage device is in an instruction receiving state, when a first data reading instruction generated by a terminal based on a physical storage address of data to be read in a packaging operation memory is received, the solid-state storage device firstly determines whether the physical storage address of the data to be read carried in the first data reading instruction is changed in the solid-state storage device; if the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction has not changed in the solid-state storage device, the solid-state storage device immediately reads the data to be read from all storage data in the solid-state storage device according to the physical storage address, and returns the data to be read to the terminal device to execute and complete the first data reading instruction.
The invention transmits the respective physical storage address of the stored data stored in the solid-state storage device to the terminal device through the solid-state storage device in communication connection with the terminal device, so that the terminal device caches the physical storage address in the running memory of the terminal device, and therefore, after the solid-state storage device receives a first data reading instruction which is issued by the terminal device and carries the physical storage address of the data to be read, the solid-state storage device determines whether the physical storage address changes or not, and then extracts the data to be read directly according to the physical storage address when the physical storage address is not changed, and returns the extracted data to be read to the terminal device.
Compared with the existing mode of configuring random access memories such as DRAM or SRAM on solid-state storage equipment to improve the data reading performance of the solid-state memory, the invention is based on the fact that the physical storage address of the data stored in the solid-state storage equipment is cached in the running memory of the terminal equipment, so that the terminal equipment can directly issue the physical storage address of the data to be read to the solid-state storage equipment from the running memory together when issuing a data reading instruction, and the solid-state storage equipment can directly read the data according to the physical storage address.
Further, based on the first embodiment of the data reading method of the solid-state storage device of the present invention, a second embodiment of the data reading method of the solid-state storage device of the present invention is provided, and in the second embodiment of the data reading method of the solid-state storage device of the present invention, in the step S100, the step of "transferring the physical storage address of the storage data in the solid-state storage device to the terminal device" may further include:
step S104, when the communication connection between the solid-state storage device and the terminal device is detected to meet the preset communication conditions, traversing the physical storage address of the stored data in the solid-state storage device, and uploading the physical storage address to the terminal device.
It should be noted that, in this embodiment, the preset communicable condition is that the terminal device is already powered on at present, and the communication connection between the terminal device and the solid-state storage device is already communicated. It should be understood that, in other possible embodiments, the communicable condition may be, of course, other condition contents different from those listed herein, based on different design requirements of practical applications, and the data reading method of the solid-state storage device of the present invention is not specifically limited to the condition contents of the communicable condition.
And if the solid-state storage equipment detects that the communication connection between the terminal equipment and the solid-state storage equipment is communicated, the solid-state storage equipment can start traversing the respective physical storage addresses of all internal storage data, and then the solid-state storage equipment transmits the physical storage addresses to the terminal equipment so that the terminal equipment can directly cache the physical storage addresses in an operation memory for subsequent calling.
Specifically, for example, after the master control of the solid-state storage device-SSD is powered on at the terminal device and the terminal device is connected with the communication connection between the master control and the solid-state storage device-SSD, the master control of the solid-state storage device-SSD actively uploads the physical storage addresses of all data stored on the internal physical pages (PHYSICAL PAGE) of the solid-state storage device-SSD to the terminal device, so that after receiving the physical storage addresses uploaded by the solid-state storage device-SSD, the terminal device associates the physical storage addresses with the logical storage addresses of the mapped data and caches the physical storage addresses in the running memory of the terminal device-SSD, so that when the data needs to be read later, a first data reading instruction can be generated directly based on the physical storage addresses of the data cached in the running memory and sent to the solid-state storage device-SSD, and the solid-state storage device-SSD can directly read the data according to the physical storage addresses and return.
In this embodiment, through the instruction receiving state of the solid-state storage device after the terminal device is powered on, if it is detected that the communication connection between the terminal device and the solid-state storage device is already connected, the solid-state storage device may start to traverse all physical storage addresses of all internal storage data, and then the solid-state storage device transfers the physical storage addresses to the terminal device, so that the terminal device directly caches the physical storage addresses in the running memory for subsequent call. The method and the device realize that the physical storage address of the data stored in the solid-state storage device is directly cached in the running memory of the terminal device, so that the terminal device can directly send the physical storage address of the data to be read to the solid-state storage device from the running memory together when issuing the data reading instruction, and the solid-state storage device can directly read the data according to the physical storage address, thereby not only relieving the dependence of the solid-state storage device on random access memories such as DRAM (dynamic random access memory), SRAM (static random access memory) and the like, but also ensuring that the solid-state storage device still has good data reading performance under the condition that the random access memories such as DRAM or SRAM and the like are not configured so as to reduce the manufacturing cost.
Further, based on the first embodiment of the data reading method of the solid-state storage device according to the present invention, a third embodiment of the data reading method of the solid-state storage device according to the present invention is provided, in the third embodiment of the data reading method of the solid-state storage device according to the present invention, after the step of determining whether the physical storage address of the data to be read carried in the first data reading instruction changes in the step S200, the data reading method of the solid-state storage device according to the present invention may further include:
Step S400, if the change is determined, extracting the data to be read from the storage data stored in the solid-state storage device, and returning the data to be read and the new physical storage address of the data to be read to the terminal device.
If the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction has changed in the solid-state storage device, the solid-state storage device traverses all storage data stored in the solid-state storage device, so that the data to be read is extracted, the data to be read is returned to the terminal device, and a new physical storage address of the data to be read in the solid-state storage device is synchronously fed back to the terminal device, so that the terminal device utilizes the new physical storage address to buffer the physical storage address of the data to be read in the running memory for updating and then calling.
Specifically, for example, when the master control of the solid-state storage device-SSD detects that the FTL is "1" for the physical storage address of the data to be read carried by the package in the first data reading instruction, so as to determine that the physical storage address has changed, the solid-state storage device-SSD traverses all the stored data in the solid-state storage device-SSD according to the conventional data reading mode, so as to extract the data to be read from all the stored data, then, the solid-state storage device-SSD returns the read data to the terminal device so as to complete the first data reading instruction, and the solid-state storage device-SSD further synchronously feeds back the new physical storage address of the data to be read to the terminal device on the solid-state storage device-internal physical page (PHYSICAL PAGE), so that after receiving the new physical storage address, the terminal device re-stores the new physical storage address together with the mapped logical storage address of the data to be read in its own running memory in association for directly calling the first data package when the data to be read again.
In this embodiment, if the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction has changed in the solid-state storage device, the solid-state storage device traverses all storage data stored in the solid-state storage device, so as to extract the data to be read, returns the data to be read to the terminal device, and synchronously feeds back to the terminal device a new physical storage address of the data to be read in the solid-state storage device, so that the terminal device uses the new physical storage address to buffer the physical storage address of the data to be read in the running memory for updating and then calling. The method and the device realize that the physical storage address of the data stored in the solid-state storage device is directly cached in the running memory of the terminal device, so that the terminal device can directly send the physical storage address of the data to be read to the solid-state storage device from the running memory together when issuing the data reading instruction, and the solid-state storage device can directly read the data according to the physical storage address, thereby not only relieving the dependence of the solid-state storage device on random access memories such as DRAM (dynamic random access memory), SRAM (static random access memory) and the like, but also ensuring that the solid-state storage device still has good data reading performance under the condition that the random access memories such as DRAM or SRAM and the like are not configured so as to reduce the manufacturing cost.
Further, based on the first embodiment, the second embodiment, and the third embodiment of the data reading method of the solid-state storage device of the present invention, a fourth embodiment of the data reading method of the solid-state storage device of the present invention is provided, in which the data reading method of the solid-state storage device of the present invention is applied to the terminal device, and the data reading method of the solid-state storage device of the present invention includes:
step S500, receiving a physical storage address of storage data transmitted by the solid-state storage device, and caching the physical storage address in a running memory;
the terminal equipment receives a physical storage address of the stored data in the solid-state storage equipment uploaded by the solid-state storage equipment, and then caches the physical storage address of the terminal equipment in the running memory for subsequent direct calling.
Specifically, for example, after the terminal device is powered on so as to have a condition of mutual communication with the terminal device, a data reading instruction is issued to the solid-state storage device-SSD, and after the data reading instruction is executed, the solid-state storage device-SSD returns data to be read pointed by the data reading instruction to the terminal device, and then uploads a physical storage address of the data to be read in the solid-state storage device-SSD to the terminal device; the terminal equipment receives the physical storage address uploaded by the solid-state storage equipment-SSD, and the physical storage address and the mapped logic storage address are associated and cached in the running memory of the terminal equipment for direct calling when the data is read later.
Or after the terminal equipment is powered on and has the condition of mutual communication with the terminal equipment, the terminal equipment receives the physical storage address of the data stored in the solid-state storage equipment-SSD, which is actively uploaded by the solid-state storage equipment-SSD, and the physical storage address and the mapped logical storage address are associated and cached in the running memory of the terminal equipment for direct calling when the data is read later.
Step S600, a first data reading instruction is generated according to the physical storage address in the running memory;
And step S700, the first data reading instruction is issued to the solid-state storage device, so that when the solid-state storage device determines that the physical storage address of the data to be read carried in the first data reading instruction is unchanged, the data to be read is read according to the physical storage address and returned.
When the terminal equipment reads data, the physical storage address of the data to be read is directly extracted from the running memory, the physical storage address is packaged into a first data reading instruction, then the terminal equipment sends the first data reading instruction to the solid-state storage equipment, so that after the solid-state storage equipment receives the first data reading instruction, the solid-state storage equipment firstly determines whether the physical storage address of the data to be read carried in the first data reading instruction is changed in the solid-state storage equipment, if the physical storage address is not changed, the solid-state storage equipment immediately reads the data to be read from all storage data in the solid-state storage equipment directly according to the physical storage address, and returns the data to be read to the terminal equipment to execute the first data reading instruction.
Specifically, for example, in the process of repeatedly performing data reading, if a physical storage address of data to be read on an internal physical page (PHYSICAL PAGE) of the solid-state storage device-SSD is already cached in an operation memory of the terminal device, the terminal device may directly extract the physical storage address of the data to be read from the operation memory, then encapsulate the physical storage address as a first data reading instruction, and issue the first data reading instruction to the solid-state storage device-SSD, after receiving a first data reading instruction generated by the terminal device based on the physical storage address encapsulating the data to be read, the solid-state storage device-SSD first extracts the physical storage address, then detects that a state flag output by the management algorithm-FTL of the solid-state storage device-SSD for the physical storage address is "0" or "1", and immediately returns the output state flag to the solid-state storage device-SSD to the solid-state storage device according to the physical storage address PHYSICAL PAGE after detecting that the physical storage address is not changed for the physical storage address encapsulated in the first data reading instruction, thereby completing the data reading from the solid-state storage device-SSD directly to the solid-state storage device (the solid-state storage device is read).
Further, in a possible embodiment, the data reading method of the solid-state storage device of the present invention may further include:
step S800, when the communication connection between the solid-state storage device and the solid-state storage device is detected to meet the preset communication condition, generating a second data reading instruction according to the data to be read;
And after the terminal equipment is powered on and is communicated with the communication connection between the solid-state storage equipment, generating a second data reading instruction directly based on the logic storage address of the data to be read.
Specifically, for example, when the terminal device is powered on, since there is no physical storage address of the storage data uploaded by the solid-state storage device-SSD in the running memory of the terminal device, when the terminal device needs to read the data from the solid-state storage device-SSD, a second data reading instruction is directly generated based on the logical storage address of the data to be read written when the data is stored.
Step S900, issuing the second data reading instruction to the solid-state storage device, so that the solid-state storage device traverses the storage data in the solid-state storage device to extract the data to be read, and returning the data to be read and the physical storage address of the data to be read.
After the terminal equipment generates a second data reading instruction, the second data reading instruction is issued to the solid-state storage equipment, after the solid-state storage equipment receives the second data reading instruction, the solid-state storage equipment detects the data to be read, which is pointed to by the second data reading instruction and is currently required to be read, and traverses all storage data stored in the solid-state storage equipment, so that the data to be read is extracted, then the solid-state storage equipment returns the extracted data to be read to the terminal equipment, and synchronously feeds back the physical storage address of the data to be read in the solid-state storage equipment to the terminal equipment, so that the terminal equipment directly caches the physical storage address in an operation memory for subsequent call.
Specifically, for example, the terminal device issues the generated second data reading instruction to the solid-state storage device-SSD, after receiving the second data reading instruction, the master control of the solid-state storage device-SSD determines the data to be read that needs to be extracted from the interior of the solid-state storage device-SSD at present based on the logical storage address carried in the second data reading instruction, then the solid-state storage device-SSD traverses all the stored data stored in the interior of the solid-state storage device-SSD according to the traditional data reading mode to extract the data to be read from all the stored data, finally, the solid-state storage device-SSD returns the data to be read to the terminal device issuing the second data reading instruction so as to execute the second data reading instruction, and the solid-state storage device-SSD further feeds back the physical storage address of the data to be read on the physical page (PHYSICAL PAGE) in the interior of the solid-state storage device-SSD synchronously, so that the terminal device after receiving the physical storage address, the physical storage address and the mapped logical storage address of the data to be read are cached together, and the physical storage address of the data to be read is associated for self-running, and the data to be read directly later is called.
In this embodiment, a physical storage address of storage data in a solid-state storage device uploaded by the solid-state storage device is received through a terminal device, and then the physical storage address of the terminal device is cached in an operation memory for subsequent direct call; when the terminal equipment reads data, the physical storage address of the data to be read is directly extracted from the running memory, the physical storage address is packaged into a first data reading instruction, then the terminal equipment sends the first data reading instruction to the solid-state storage equipment, so that after the solid-state storage equipment receives the first data reading instruction, the solid-state storage equipment firstly determines whether the physical storage address of the data to be read carried in the first data reading instruction is changed in the solid-state storage equipment, if the physical storage address is not changed, the solid-state storage equipment immediately reads the data to be read from all storage data in the solid-state storage equipment directly according to the physical storage address, and returns the data to be read to the terminal equipment to execute the first data reading instruction.
Compared with the existing mode of configuring random access memories such as DRAM or SRAM on solid-state storage equipment to improve the data reading performance of the solid-state memory, the invention is based on the fact that the physical storage address of the data stored in the solid-state storage equipment is cached in the running memory of the terminal equipment, so that the terminal equipment can directly issue the physical storage address of the data to be read to the solid-state storage equipment from the running memory together when issuing a data reading instruction, and the solid-state storage equipment can directly read the data according to the physical storage address.
In addition, referring to fig. 3, an embodiment of the present invention further provides a data reading system of a solid-state storage device, where the data reading system of the solid-state storage device is applied to a solid-state storage device of a terminal device, the solid-state storage device is communicatively connected to the terminal device, and the data reading system of the solid-state storage device includes:
The transfer module is used for transferring the physical storage address of the storage data in the solid-state storage device to the terminal device so that the terminal device can buffer the physical storage address in the running memory;
the determining module is used for determining whether the physical storage address of the data to be read carried in the first data reading instruction changes or not when the first data reading instruction issued by the terminal equipment is received;
the reading module is used for reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment if the data to be read is not changed;
wherein the data reading system of the solid-state storage device is further applied to the terminal device, the data reading system of the solid-state storage device further comprises:
the cache module is used for receiving the physical storage address of the storage data transmitted by the solid-state storage device and caching the physical storage address in the running memory;
the generation module is used for generating a first data reading instruction according to the physical storage address in the running memory;
And the issuing module is used for issuing the first data reading instruction to the solid-state storage equipment so that the solid-state storage equipment can read the data to be read according to the physical storage address and return the data to be read when determining that the physical storage address of the data to be read carried in the first data reading instruction is unchanged.
Preferably, the transfer module includes:
The first detection unit is used for detecting data to be read pointed by the second data reading instruction when receiving the second data reading instruction issued by the terminal equipment;
an extracting unit, configured to extract the data to be read from the storage data stored in the solid-state storage device;
and the return unit is used for returning the data to be read and the physical storage address of the data to be read to the terminal equipment.
Preferably, the transfer module is further configured to traverse a physical storage address of the stored data in the solid-state storage device and upload the physical storage address to the terminal device when it is detected that the communication connection between the solid-state storage device and the terminal device meets a preset communicable condition.
Preferably, the determining module includes:
The second detection unit is used for extracting the physical storage address of the data to be read, which is carried in the first data reading instruction, and detecting the available state of the physical storage address;
The first determining unit is used for determining that the physical storage address is unchanged if the available state is available;
And the second determining unit is used for determining that the physical storage address changes if the available state is unavailable.
Preferably, the reading module is further configured to extract the data to be read from the storage data stored in the solid-state storage device if the change is determined, and return the data to be read and the new physical storage address of the data to be read to the terminal device.
Preferably, the generating module is further configured to generate a second data reading instruction according to the data to be read when detecting that the communication connection between the generating module and the solid-state storage device meets a preset communicable condition;
The issuing module is further configured to issue the second data reading instruction to the solid-state storage device, so that the solid-state storage device traverses the storage data in the solid-state storage device to extract the data to be read, and returns the data to be read and a physical storage address of the data to be read.
The steps implemented by each functional module of the data reading system of the solid-state storage device according to the present invention during operation may refer to each embodiment of the data reading method of the solid-state storage device according to the present invention, which is not described herein again.
In addition, the embodiment of the invention also provides a terminal device, which comprises: the data reading method comprises the steps of a memory, a processor and a data reading program of a solid-state storage device, wherein the data reading program of the solid-state storage device is stored in the memory and can run on the processor, and the data reading program of the solid-state storage device is executed by the processor.
The steps implemented when the data reading program of the solid-state storage device running on the processor is executed may refer to various embodiments of the data reading method of the solid-state storage device of the present invention, which are not described herein again.
In addition, the embodiment of the invention also provides a computer storage medium, which is applied to a computer, and can be a nonvolatile computer readable computer storage medium, wherein the computer storage medium stores a data reading program of a solid-state storage device, and the data reading program of the solid-state storage device realizes the steps of the data reading method of the solid-state storage device when being executed by a processor.
The steps implemented when the data reading program of the solid-state storage device running on the processor is executed may refer to various embodiments of the data reading method of the solid-state storage device of the present invention, which are not described herein again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a computer storage medium (such as a Flash memory, a ROM/RAM, a magnetic disk, an optical disk) and including several instructions for causing a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the method according to the embodiments of the present invention.
The foregoing description is only of the preferred embodiments of the present invention, and is not intended to limit the scope of the invention, but rather is intended to cover any equivalents of the structures or equivalent processes disclosed herein or in the alternative, which may be employed directly or indirectly in other related arts.

Claims (8)

1. A data reading method of a solid-state storage device, wherein the data reading method of the solid-state storage device is applied to a solid-state storage device of a terminal device, the solid-state storage device is in communication connection with the terminal device, and the data reading method of the solid-state storage device comprises:
transmitting a physical storage address of storage data in solid-state storage equipment to the terminal equipment so that the terminal equipment caches the physical storage address in an operation memory;
When a first data reading instruction issued by the terminal equipment is received, determining whether a physical storage address of data to be read carried in the first data reading instruction changes, wherein the first data reading instruction is a data reading instruction generated by packaging the physical storage address of the data to be read under the condition that the terminal equipment caches the physical storage address of the data to be read in the running memory;
if the data to be read is not changed, the data to be read is read according to the physical storage address, and the data to be read is returned to the terminal equipment;
if the change is determined, extracting the data to be read from the storage data stored in the solid-state storage device, and returning the data to be read and the new physical storage address of the data to be read to the terminal device;
the step of transferring the physical storage address of the stored data in the solid state storage device to the terminal device comprises:
detecting data to be read pointed by a second data reading instruction when the second data reading instruction issued by the terminal equipment is received;
and extracting the data to be read from the stored data stored in the solid-state storage device.
2. The method of data reading of a solid state storage device of claim 1, wherein the step of transferring a physical storage address of stored data in the solid state storage device to the terminal device further comprises:
and traversing the physical storage address of the stored data in the solid-state storage device and uploading the physical storage address to the terminal device when the communication connection between the solid-state storage device and the terminal device is detected to meet the preset communication conditions.
3. The method for reading data from a solid-state storage device according to claim 1, wherein the step of determining whether a physical storage address of data to be read carried in the first data reading instruction changes includes:
Extracting the physical storage address of the data to be read carried in the first data reading instruction, and detecting the available state of the physical storage address;
If the available state is available, determining that the physical storage address is unchanged;
And if the available state is unavailable, determining that the physical storage address changes.
4. A data reading method of a solid-state storage device, wherein the data reading method of the solid-state storage device is applied to the terminal device according to any one of claims 1 to 3, the data reading method of the solid-state storage device comprising:
Receiving a physical storage address of storage data transmitted by the solid-state storage device, and caching the physical storage address in an operation memory, wherein the physical storage address is to-be-read data pointed by a second data reading instruction when the solid-state storage device receives the second data reading instruction issued by the terminal device, and is extracted from the storage data stored in the solid-state storage device;
generating a first data reading instruction according to the physical storage address in the running memory;
And issuing the first data reading instruction to the solid-state storage device so that the solid-state storage device can read the data to be read according to the physical storage address and return the data to be read when determining that the physical storage address of the data to be read carried in the first data reading instruction is unchanged, or can extract the data to be read from the storage data stored in the solid-state storage device when determining that the physical storage address of the data to be read carried in the first data reading instruction is changed, and return the data to be read and the new physical storage address of the data to be read to the terminal device.
5. The method for reading data from a solid state storage device of claim 4, further comprising:
when the communication connection between the solid-state storage device and the solid-state storage device is detected to meet a preset communication condition, generating a second data reading instruction according to the data to be read;
And sending the second data reading instruction to the solid-state storage device so that the solid-state storage device traverses the storage data in the solid-state storage device to extract the data to be read, and returning the data to be read and the physical storage address of the data to be read.
6. A data reading system of a solid state storage device, wherein the data reading system of the solid state storage device is applied to a solid state storage device of a terminal device, the solid state storage device is communicatively connected with the terminal device, the data reading system of the solid state storage device comprises:
the transfer module is used for transferring the physical storage address of the storage data in the solid-state storage device to the terminal device so that the terminal device can buffer the physical storage address in the running memory; detecting data to be read pointed by a second data reading instruction when the second data reading instruction issued by the terminal equipment is received; extracting the data to be read from the storage data stored in the solid-state storage device;
The determining module is used for determining whether a physical storage address of data to be read carried in a first data reading instruction changes or not when the first data reading instruction is received and issued by the terminal equipment, wherein the first data reading instruction is a data reading instruction generated by packaging the physical storage address of the data to be read under the condition that the terminal equipment caches the physical storage address of the data to be read in the running memory;
The reading module is used for reading the data to be read according to the physical storage address and returning the data to be read to the terminal equipment if the data to be read is not changed; if the change is determined, extracting the data to be read from the storage data stored in the solid-state storage device, and returning the data to be read and the new physical storage address of the data to be read to the terminal device;
wherein the data reading system of the solid-state storage device is further applied to the terminal device, the data reading system of the solid-state storage device further comprises:
The cache module is used for receiving a physical storage address of storage data transmitted by the solid-state storage device and caching the physical storage address in an operation memory, wherein the physical storage address is to-be-read data pointed by a second data reading instruction when the solid-state storage device receives the second data reading instruction issued by the terminal device, and is extracted from the storage data stored in the solid-state storage device;
the generation module is used for generating a first data reading instruction according to the physical storage address in the running memory;
And the issuing module is used for issuing the first data reading instruction to the solid-state storage device so that the solid-state storage device can read the data to be read according to the physical storage address and return the data to be read when determining that the physical storage address of the data to be read carried in the first data reading instruction is unchanged, or can be used for extracting the data to be read from the storage data stored in the solid-state storage device when determining that the physical storage address of the data to be read carried in the first data reading instruction is changed, and returning the data to be read and the new physical storage address of the data to be read to the terminal device.
7. A terminal device, characterized in that the terminal device comprises: a memory, a processor and a data reading program of a solid state storage device stored on the memory and executable on the processor, which when executed by the processor, implements the steps of the data reading method of a solid state storage device as claimed in any one of claims 1 to 5.
8. A computer storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the data reading method of a solid state storage device as claimed in any of claims 1 to 5.
CN202011393116.8A 2020-12-02 2020-12-02 Data reading method, system, device and medium of solid-state storage device Active CN112540726B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011393116.8A CN112540726B (en) 2020-12-02 2020-12-02 Data reading method, system, device and medium of solid-state storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011393116.8A CN112540726B (en) 2020-12-02 2020-12-02 Data reading method, system, device and medium of solid-state storage device

Publications (2)

Publication Number Publication Date
CN112540726A CN112540726A (en) 2021-03-23
CN112540726B true CN112540726B (en) 2024-08-06

Family

ID=75017044

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011393116.8A Active CN112540726B (en) 2020-12-02 2020-12-02 Data reading method, system, device and medium of solid-state storage device

Country Status (1)

Country Link
CN (1) CN112540726B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005536A (en) * 2015-07-01 2015-10-28 忆正科技(武汉)有限公司 Working methods for solid-state storage equipment and host, solid-state storage equipment and host

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200411637A (en) * 2002-12-20 2004-07-01 Etrunk Technologies Inc Method and device for allowing single compact disk player to perform automatic back-up copy by disk partition
KR102501751B1 (en) * 2015-09-22 2023-02-20 삼성전자주식회사 Memory Controller, Non-volatile Memory System and Operating Method thereof
CN106775466A (en) * 2016-12-05 2017-05-31 深圳市金泰克半导体有限公司 A kind of FTL read buffers management method and device without DRAM
US10534718B2 (en) * 2017-07-31 2020-01-14 Micron Technology, Inc. Variable-size table for address translation
CN108459826B (en) * 2018-02-01 2020-12-29 杭州宏杉科技股份有限公司 Method and device for processing IO (input/output) request
CN109324980A (en) * 2018-09-25 2019-02-12 郑州云海信息技术有限公司 A kind of L2P table management method, method for reading data, device and equipment
CN109901797A (en) * 2019-02-25 2019-06-18 深圳忆联信息系统有限公司 Data pre-head method, device, computer equipment and storage medium
CN110347614B (en) * 2019-07-08 2022-08-12 镕铭微电子(济南)有限公司 Storage space mapping algorithm, cache state machine, storage device, and storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005536A (en) * 2015-07-01 2015-10-28 忆正科技(武汉)有限公司 Working methods for solid-state storage equipment and host, solid-state storage equipment and host

Also Published As

Publication number Publication date
CN112540726A (en) 2021-03-23

Similar Documents

Publication Publication Date Title
CN107229415B (en) Data writing method, data reading method, related equipment and system
CN101388824B (en) File reading method and system under sliced memory mode in cluster system
CN111506262A (en) Storage system, file storage and reading method and terminal equipment
US20100318712A1 (en) System and method for distributed persistent computing platform
JP5836903B2 (en) Information processing device
KR20180087925A (en) Storage device performing hashing-based translation between logical address and physical address
WO2020034729A1 (en) Data processing method, related device, and computer storage medium
US11132291B2 (en) System and method of FPGA-executed flash translation layer in multiple solid state drives
US20160062659A1 (en) Virtual memory module
US20190332540A1 (en) Storage management method, electronic device and computer readable medium
US20190042415A1 (en) Storage model for a computer system having persistent system memory
US11835992B2 (en) Hybrid memory system interface
CN112540726B (en) Data reading method, system, device and medium of solid-state storage device
CN107577612B (en) Mobile device and method for storing data in mobile device
US20160048336A1 (en) Electronic Control Unit and Method for Rewriting Data
US20240053917A1 (en) Storage device, operation method of storage device, and storage system using the same
CN115729438A (en) Data access method, device and storage medium
US20230169022A1 (en) Operating method of an electronic device
US20220229789A1 (en) Host Memory Buffer (HMB) Abstraction Protocol Layer
CN115576863A (en) Data reading and writing method, storage device and storage medium
KR20190049098A (en) Computing device and non-volatile dual in-line memory module
CN110209343B (en) Data storage method, device, server and storage medium
CN117806570B (en) Online memory expansion method, device, equipment and storage medium
US11853593B2 (en) Shared memory protection method for securing MMIO commands
US20240086110A1 (en) Data storage method, storage apparatus and host

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant