CN113282239A - Data migration method, memory and controller - Google Patents

Data migration method, memory and controller Download PDF

Info

Publication number
CN113282239A
CN113282239A CN202110557820.0A CN202110557820A CN113282239A CN 113282239 A CN113282239 A CN 113282239A CN 202110557820 A CN202110557820 A CN 202110557820A CN 113282239 A CN113282239 A CN 113282239A
Authority
CN
China
Prior art keywords
data
target
address
data migration
memory
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.)
Pending
Application number
CN202110557820.0A
Other languages
Chinese (zh)
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.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication 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 Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN202110557820.0A priority Critical patent/CN113282239A/en
Publication of CN113282239A publication Critical patent/CN113282239A/en
Pending legal-status Critical Current

Links

Images

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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The application discloses a data migration method, a memory and a controller, and belongs to the technical field of computers. The data migration method comprises the following steps: receiving a data migration instruction sent by a controller; and in response to the data migration instruction, migrating the target data which is stored by taking the source address as an initial address and has the data volume as the target data volume to an area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.

Description

Data migration method, memory and controller
Technical Field
The application belongs to the technical field of computers, and particularly relates to a data migration method, a memory and a controller.
Background
As shown in fig. 1, the existing method for migrating data from a source address to a destination address of a memory includes the following steps: step 101, a controller sends a read command to a memory, wherein the read command carries a data volume and a source address of first target data; step 102, the controller reads the first target data from the memory based on the data volume and the source address of the first target data; 103, editing the first target data by the controller to obtain second target data; 104, the controller sends a write-in command to the memory, the write-in command carries second target data and a target address, and the target address is used as an initial address to write the second target data into the memory; and 105, after the second target data is written in, the memory returns a result to the controller. Step 103 is an optional step, that is, the first target data may not be edited and may be directly written into the destination address.
The existing method reads and sends data based on an external protocol interface between a memory and the memory, generates a large amount of transmission delay under the condition of large data volume, easily causes the problems of data transmission blockage and the like, has poor transmission stability, is not beneficial to long-time stable operation of a system, and has low data migration efficiency.
Disclosure of Invention
An object of the embodiments of the present application is to provide a data migration method, a memory, and a controller, which can solve the problem of low efficiency of data migration.
In a first aspect, an embodiment of the present application provides a data migration method, where the method includes:
receiving a data migration instruction sent by a controller;
and in response to the data migration instruction, migrating the target data which is stored by taking the source address as an initial address and has the data volume as the target data volume to an area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
In a second aspect, an embodiment of the present application provides a data migration method, where the method includes:
sending a data migration instruction to a memory;
the data migration instruction is used for the memory to migrate, according to a source address, a destination address and a target data volume in the data migration instruction, target data which are stored by taking the source address as an initial address and have the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
In a third aspect, an embodiment of the present application provides a memory, including:
the first receiving module is used for receiving a data migration instruction sent by the controller;
and the mirror image editing module is used for responding to the data migration instruction, and migrating the target data which is stored by taking the source address as an initial address and takes the data volume as the target data volume to an area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume carried by the data migration instruction.
In a fourth aspect, an embodiment of the present application provides a controller, including:
the instruction sending module is used for sending a data migration instruction to the memory;
the data migration instruction is used for the memory to migrate, according to a source address, a destination address and a target data volume carried by the data migration instruction, target data which are stored by taking the source address as an initial address and whose data volume is the target data volume to an area by taking the destination address as the initial address for storage.
In a fifth aspect, an embodiment of the present application provides a terminal, where the terminal includes:
a memory according to the third aspect and a controller according to the fourth aspect.
In a sixth aspect, embodiments of the present application provide an electronic device, which includes a processor, a memory, and a program or instructions stored on the memory and executable on the processor, and when executed by the processor, implement the steps of the method according to the first aspect or the second aspect.
In a seventh aspect, the present embodiments provide a readable storage medium, on which a program or instructions are stored, and when executed by a processor, the program or instructions implement the steps of the method according to the first aspect or the second aspect.
In an eighth aspect, an embodiment of the present application provides a chip, where the chip includes a processor and a communication interface, where the communication interface is coupled to the processor, and the processor is configured to execute a program or instructions to implement the method according to the first aspect or the second aspect.
In the embodiment of the application, data migration operation is performed through the inside of the storage, data reading and writing are not required to be performed through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of the memory and the efficiency of data migration can be improved.
Drawings
FIG. 1 is a flow diagram illustrating a data migration method according to the prior art;
FIG. 2 is a schematic flow chart diagram illustrating a data migration method according to an embodiment of the present application;
FIG. 3 is a diagram illustrating an execution process of a data insert command according to an embodiment of the present application;
FIG. 4 is a schematic diagram illustrating an execution process of a data delete command according to an embodiment of the present application;
FIG. 5 is a flowchart illustrating a data migration method according to an embodiment of the present application;
FIG. 6 is a flowchart illustrating a data migration method according to an embodiment of the present application;
FIG. 7 is a schematic structural diagram of a memory according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of an electronic device provided in an embodiment of the present application;
fig. 9 is a schematic hardware structure diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be described clearly below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments that can be derived by one of ordinary skill in the art from the embodiments given herein are intended to be within the scope of the present disclosure.
The terms first, second and the like in the description and in the claims of the present application are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that embodiments of the application may be practiced in sequences other than those illustrated or described herein, and that the terms "first," "second," and the like are generally used herein in a generic sense and do not limit the number of terms, e.g., the first term can be one or more than one. In addition, "and/or" in the specification and claims means at least one of connected objects, a character "/" generally means that a preceding and succeeding related objects are in an "or" relationship.
The data migration method, the memory, the controller, and the terminal provided in the embodiments of the present application are described in detail below with reference to the accompanying drawings through specific embodiments and application scenarios thereof.
Fig. 2 is a schematic flowchart of a data migration method according to an embodiment of the present application. The data migration method provided by the embodiment of the present application is described below with reference to fig. 2. As shown in fig. 2, the method includes:
step 201, receiving a data migration instruction sent by a controller.
Optionally, an execution main body of the data migration method provided by the embodiment of the present application is a memory.
The Memory may be any type of Memory such as a Read-Only Memory (ROM), a Random Access Memory (RAM), a Dynamic Random Access Memory (DRAM), or a Double Data Rate (DDR) DRAM.
The controller sends a data migration instruction to the memory, and the memory receives the data migration instruction.
And the data migration instruction is used for performing data migration in the memory.
Step 202, responding to the data migration instruction, according to the source address, the destination address and the target data volume in the data migration instruction, migrating the target data which is stored by taking the source address as the initial address and takes the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
Alternatively, after the memory receives the data migration instruction, the data migration operation may be performed in response to the data migration instruction based on the logic control circuit of the memory.
The data migration instruction may carry information such as a source address, a destination address, and a target data volume.
The source address and the destination address are both Memory addresses (Memory addresses).
The memory is composed of a large number of memory cells, each of which stores one byte of data. The memory address is the number of the memory location in the memory. Since the number of memory cells in the memory is large, in order to perform the search, each memory cell needs to be assigned a memory address, and each memory cell needs to be distinguished by a number.
And the target data volume is used for representing the difference between the ending address and the starting address. Based on the source address and the target amount of data, a first storage region may be determined. The starting address of the first memory region is the source address. The data stored in each storage unit in the first storage area is target data.
The controller may determine whether the target data needs to be edited based on whether the data migration instruction carries information of the target editing command.
Under the condition that the data migration instruction does not carry the information of the target editing command, the memory can determine that only data migration operation needs to be executed, data editing operation does not need to be executed, the memory automatically completes data migration, and the target data stored in each storage unit in the first storage area are migrated to each storage unit in the second storage area for storage.
The second storage area may be determined based on the destination address and the target data amount. The start address of the second storage area is the destination address.
Optionally, the data migration is automatically completed inside the memory, and may include copying target data stored in each storage unit in the first storage area, and then pasting the target data to each storage unit in the second storage area for storage.
Alternatively, after the data migration operation is completed, the memory may perform a reservation or reclamation operation on the first storage area in response to an input from a user.
Optionally, a data mirror editing function is added in the JEDEC standard in advance.
Optionally, before step 201, the controller may send an enable command to the memory to enable the data image editing function of the memory, and the memory enters the data image editing mode. The memory can complete the operations of automatic data migration, insertion, deletion and the like in a data mirror image editing mode.
Alternatively, the memory may be continuously in the data mirror editing mode.
The memory can automatically complete data migration inside the memory in a data mirroring editing mode, and the memory allows external reading and writing operations on data (under the condition that data needing to be read outside and target data inside the memory are both in a storage area capable of being operated).
According to the embodiment of the application, data migration operation is carried out through the inside of the storage, data reading and writing are not needed to be carried out through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of a memory and the efficiency of data migration can be improved.
Optionally, after receiving the data migration instruction sent by the controller, the method further includes: and in response to the data migration instruction, according to the source address, the destination address, the target data volume and the information of the target editing command in the data migration instruction, editing the target data with the data volume as the target data volume, which is stored by taking the source address as the initial address, according to the information of the target editing command, and migrating the target data to the area with the destination address as the initial address for storage.
Alternatively, the information of the target editing command may include the target editing command and parameter information of the target editing command.
Alternatively, the target editing command may include at least one of a data insertion command, a data deletion command, a bitwise negation command, a bitwise shift command, and the like.
Alternatively, the parameter information of the target editing command may be null according to the difference of the target editing command. For example, the parameter information of the bitwise negation command may be null, indicating that a bitwise negation operation is performed on all target data.
Alternatively, in a case where the data migration instruction carries information of the target editing command, the memory may determine that not only the data migration operation but also the data editing operation needs to be performed. And automatically finishing data migration and data editing in the memory, and storing the edited target data in each storage unit in the third storage area.
The third storage area may be determined based on information of the destination address, the target data amount, and the target edit command. The starting address of the third storage area is the destination address.
Depending on the target edit command, data editing may be performed before, during, or after the data migration process.
Fig. 3 is a schematic diagram illustrating an execution process of a data insertion command according to an embodiment of the present application.
The parameter information of the data insert command may include a first offset address. As shown in fig. 3, the target data is migrated starting from the source address; under the condition that data are migrated to the first offset address, suspending data migration operation on target data inside the memory, receiving insertion data from an external interface of the memory, and inserting the insertion data into a memory area with the first offset address as a starting address; after all the inserted data is received and stored, the memory interior continues data migration operations on the remaining target data (i.e., target data that has not yet been migrated).
Fig. 4 is a schematic diagram of an execution process of a data delete command according to an embodiment of the present application.
The parameter information of the data delete command may include a second offset address and a third data amount. As shown in fig. 4, the target data is migrated from the source address; in the case where the data is migrated to the second offset address, the memory interior does not perform the data migration operation on the target data (i.e., the data to be deleted) stored in each storage unit in the fourth storage area, but continues to migrate the target data from the end address of the fourth storage area.
The fourth storage area may be determined based on the second offset address and the third data amount. The fourth storage area takes the second offset address as a starting address.
It is understood that the target data stored in each storage unit in the third storage area is not migrated, and the target data after the deletion command is executed is reduced compared with the target data before the deletion command, which is equivalent to deleting part of the target data after the deletion command is executed.
Optionally, after the data migration operation is completed, the memory may respond to an input of a user to perform a recovery operation on the to-be-recovered sub-area in the second storage area, which is generated by executing the data delete command, so as to avoid waste of the storage area.
And the bitwise negation command is used for performing bitwise negation operation on part or all of the target data.
The parameter information of the bitwise negation command may include a first operation start address and a first operation data amount. Based on the first operation start address and the first operation data amount, a portion of target data to be subjected to a bit inversion operation may be determined.
For example, if the target data to be subjected to the bit inversion operation is 0x5A5A, 0x0F0F, and 0xA5A5, the result of the bit inversion operation is 0xA5A5, 0xF0F0, and 0x5 A5A.
And the bit offset command is used for carrying out bit offset operation on part or all of the target data.
The parameter information of the bit offset command may further include a second operation start address and a second operation data amount. Based on the second operation start address and the second operation data amount, a portion of target data to be subjected to a bit shift operation may be determined.
The parameter information of the bit offset command may include a bit offset amount. For example, if the target data to be subjected to the bit shift operation is 0x00000001 and the bit shift amount is 2, the result of the bit shift operation is 0x 00000004.
Alternatively, after the data migration operation is completed, the memory may perform a reservation or reclamation operation on the first storage area in response to an input from a user.
According to the embodiment of the application, data migration operation and data editing operation are carried out in the storage, data reading and writing are not required to be carried out through an external protocol interface between the controller and the storage, data editing operation is not required to be carried out through the controller, the steps of data migration and operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, data correctness and stability of long-term operation of a system can be guaranteed, and use efficiency of a memory and data migration efficiency can be improved.
Optionally, the results of the execution of the data migration instruction are returned to the controller.
Wherein the execution result is used for being verified by the controller.
Optionally, after step 202, the memory may send the results of the execution of the data migration instruction to the controller.
The execution result may include information such as the amount of data after migration, the result of data verification after migration, and the like.
The controller can verify the execution result and verify the correctness of the data migration. If the verification result of the execution result is correct, the data migration can be determined to be correct; if the verification of the execution result is incorrect, a data migration error may be determined.
Verification of the results of the execution may be used to detect the locations of the memory. If the verification result of the execution result is correct, determining that each storage unit for storing the data before migration and each storage unit for storing the data after migration are normal; if the result of the verification of the execution result is an error, it may be determined
According to the embodiment of the application, the execution result of the data migration instruction is returned to the controller, and the controller verifies the execution result, so that the use efficiency of the memory and the detection efficiency of the storage unit can be improved.
Optionally, the data migration method includes: and sending a data migration instruction to the memory.
The data migration instruction is used for the memory to migrate the target data which is stored by taking the source address as the initial address and takes the data volume as the target data volume to the area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
Optionally, an execution main body of the data migration method provided by the embodiment of the present application is a controller.
The controller sends a data migration instruction to the memory.
And the data migration instruction is used for performing data migration in the memory.
After the memory receives the data migration instruction, the memory may perform a data migration operation in response to the data migration instruction.
The data migration instruction may carry information such as a source address, a destination address, and a target data volume.
Under the condition that the data migration instruction carries a source address, a destination address and a target data volume and does not carry information of a target editing command, the memory migrates the target data with the source address as an initial address and the data volume as the target data volume to an area with the destination address as the initial address for storage.
According to the embodiment of the application, data migration operation is carried out through the inside of the storage, data reading and writing are not needed to be carried out through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of a memory and the efficiency of data migration can be improved.
Optionally, the data migration instruction is further configured to, by the memory, edit the target data with the data volume as the target data volume stored with the source address as the start address according to the source address, the destination address, the target data volume, and the information of the target editing command in the data migration instruction, and migrate the target data with the data volume as the target data volume to the area with the destination address as the start address for storage according to the information of the target editing command.
Optionally, after the controller sends the data migration instruction to the memory, in response to the data migration instruction, under the condition that the data migration instruction carries a source address, a destination address, a target data volume, and information of a target editing command, the memory edits the target data, which is stored with the source address as an initial address and the data volume as the target data volume, according to the information of the target editing command, and migrates the target data to the area with the destination address as the initial address for storage.
According to the embodiment of the application, data migration operation and data editing operation are carried out in the storage, data reading and writing are not required to be carried out through an external protocol interface between the controller and the storage, data editing operation is not required to be carried out through the controller, the steps of data migration and operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, data correctness and stability of long-term operation of a system can be guaranteed, and use efficiency of a memory and data migration efficiency can be improved.
Optionally, after sending the data migration instruction to the memory, the method further includes: and receiving the execution result of the data migration instruction returned by the memory.
Alternatively, after the data migration is complete, the memory may send the results of the execution of the data migration instruction to the controller.
The execution result may include information such as the amount of data after migration, the result of data verification after migration, and the like.
The memory may receive the execution result.
And verifying the execution result.
Optionally, the controller may verify the execution result and verify the correctness of the data migration. If the verification result of the execution result is correct, the data migration can be determined to be correct; if the verification of the execution result is incorrect, a data migration error may be determined.
Verification of the results of the execution may be used to detect the locations of the memory. If the verification result of the execution result is correct, determining that each storage unit for storing the data before migration and each storage unit for storing the data after migration are normal; if the result of the verification of the execution result is an error, it may be determined
According to the embodiment of the application, the execution result of the data migration instruction is returned to the controller, and the controller verifies the execution result, so that the use efficiency of the memory and the detection efficiency of the storage unit can be improved.
To facilitate understanding of the above embodiments of the present application, the following describes a flow of the data migration method based on an interaction process between the controller and the memory.
Fig. 5 is a schematic flowchart of a data migration method according to an embodiment of the present application. As shown in fig. 5, the interaction between the controller and the memory is as follows:
step 501, the controller sends a data migration instruction to a memory; the data migration instruction at least carries a source address, a destination address and a target data volume;
step 502, the memory responds to the data migration instruction and executes data migration operation;
step 503, the memory returns the execution result of the data migration instruction to the controller.
Fig. 6 is a schematic flowchart of a data migration method according to an embodiment of the present application. As shown in fig. 6, the method for migrating data from a source address to a destination address of a memory includes the following steps:
601, enabling a data mirror image editing function of a memory by a controller;
step 602, the controller sends a data migration instruction to the memory;
step 603, the memory judges whether to edit the target data; if yes, go to step 604; if not, go to step 605;
step 604, the memory edits the target data;
step 605, the memory stores the data, and stores the execution result of the data migration instruction returned to the controller after completion;
step 606, the controller verifies the execution result.
It should be noted that, in the data migration method provided in the embodiment of the present application, the execution main body may be a data migration apparatus, or a control module (e.g., a memory or a controller) in the data migration apparatus for executing the data migration method. In the embodiments of the present application, a method for performing data migration by using a memory and a controller is taken as an example, and the memory and the controller provided in the embodiments of the present application are described.
Fig. 7 is a schematic structural diagram of a memory according to an embodiment of the present application. Optionally, as shown in fig. 7, the memory includes a first receiving module 701 and a mirror editing module 702, wherein:
a first receiving module 701, configured to receive a data migration instruction sent by a controller;
the mirror image editing module 702 is configured to respond to a data migration instruction, and migrate target data, which is stored using a source address as an initial address and whose data volume is a target data volume, to an area using a destination address as an initial address for storage according to the source address, the destination address, and the target data volume in the data migration instruction.
Optionally, the first receiving module 701 and the mirror editing module 702 are electrically connected.
The memory receives a data migration instruction sent by the controller through the first receiving module 701.
The data migration instruction may carry information such as a source address, a destination address, and a target data volume.
The image editing module 702 performs a data migration operation in response to the data migration instruction. Under the condition that the data migration instruction does not carry information of the target editing command, the mirror image editing module 702 may determine that only data migration operation needs to be performed, and data editing operation does not need to be performed, and the mirror image editing module 702 completes data migration, and migrates target data stored in each storage unit in the first storage area to each storage unit in the second storage area for storage.
Optionally, the mirror image editing module 702 is further configured to, in response to the data migration instruction, edit and migrate the target data, which is stored with the source address as the start address and has the data volume as the target data volume, to the area with the destination address as the start address for storage according to the source address, the destination address, the target data volume, and the information of the target editing command in the data migration instruction.
Optionally, the memory further comprises:
the first sending module is used for returning the execution result of the data migration instruction to the controller;
wherein the execution result is used for being verified by the controller.
According to the embodiment of the application, data migration operation is carried out through the inside of the storage, data reading and writing are not needed to be carried out through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of a memory and the efficiency of data migration can be improved.
Optionally, the controller comprises an instruction sending module, wherein:
the instruction sending module is used for sending a data migration instruction to the memory;
the data migration instruction is used for the memory to migrate the target data which is stored by taking the source address as the initial address and takes the data volume as the target data volume to the area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
Optionally, the controller sends the data migration instruction to the memory through the instruction sending module.
After the memory receives the data migration instruction, the memory may perform a data migration operation in response to the data migration instruction.
The data migration instruction may carry information such as a source address, a destination address, and a target data volume.
Under the condition that the data migration instruction carries a source address, a destination address and a target data volume and does not carry information of a target editing command, the memory migrates the target data which are stored by taking the source address as an initial address and take the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
Optionally, the data migration instruction is further configured to, by the memory, edit the target data with the data volume as the target data volume stored with the source address as the start address according to the source address, the destination address, the target data volume, and the information of the target editing command in the data migration instruction, and migrate the target data with the data volume as the target data volume to the area with the destination address as the start address for storage according to the information of the target editing command.
Optionally, the controller further comprises:
the second receiving module is used for receiving the execution result of the data migration instruction returned by the memory;
and the result verification module is used for verifying the execution result.
According to the embodiment of the application, data migration operation is carried out through the inside of the storage, data reading and writing are not needed to be carried out through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of a memory and the efficiency of data migration can be improved.
The data migration apparatus in the embodiment of the present application may be an apparatus, and may also be a component, an integrated circuit, or a chip in a terminal. The device can be mobile electronic equipment or non-mobile electronic equipment. By way of example, the mobile electronic device may be a mobile phone, a tablet computer, a notebook computer, a palm top computer, a vehicle-mounted electronic device, a wearable device, an ultra-mobile personal computer (UMPC), a netbook or a Personal Digital Assistant (PDA), and the like, and the non-mobile electronic device may be a server, a Network Attached Storage (NAS), a Personal Computer (PC), a Television (TV), a teller machine or a self-service machine, and the like, and the embodiments of the present application are not particularly limited.
The data migration device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android (Android) operating system, an ios operating system, or other possible operating systems, and embodiments of the present application are not limited specifically.
The data migration apparatus provided in the embodiment of the present application can implement each process implemented by the method embodiments of fig. 1 to fig. 6, and is not described here again to avoid repetition.
Optionally, as shown in fig. 8, an electronic device 800 is further provided in this embodiment of the present application, and includes a processor 801, a memory 802, and a program or an instruction that is stored in the memory 802 and is executable on the processor 801, and when the program or the instruction is executed by the processor 801, the process of the data migration method embodiment is implemented, and the same technical effect can be achieved, and in order to avoid repetition, details are not repeated here.
It should be noted that the electronic device in the embodiment of the present application includes the mobile electronic device and the non-mobile electronic device described above.
Fig. 9 is a schematic hardware structure diagram of an electronic device according to an embodiment of the present application.
The electronic device 900 includes, but is not limited to: a radio frequency unit 901, a network module 902, an audio output unit 903, an input unit 904, a sensor 905, a display unit 906, a user input unit 907, an interface unit 908, a memory 909, and a processor 910.
Those skilled in the art will appreciate that the electronic device 900 may further include a power source (e.g., a battery) for supplying power to various components, and the power source may be logically connected to the processor 910 through a power management system, so as to manage charging, discharging, and power consumption management functions through the power management system. The electronic device structure shown in fig. 9 does not constitute a limitation of the electronic device, and the electronic device may include more or less components than those shown, or combine some components, or arrange different components, and thus, the description is not repeated here.
A memory 909 for receiving a data migration instruction sent by the controller; and in response to the data migration instruction, according to the source address, the destination address and the target data volume in the data migration instruction, migrating the target data which is stored by taking the source address as the initial address and takes the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
According to the embodiment of the application, data migration operation is carried out through the inside of the storage, data reading and writing are not needed to be carried out through an external protocol interface between the controller and the storage, the steps of data migration and the operation of the storage unit are simplified, reading and writing of large data volume are reduced, delay and interference on the external protocol interface are basically eliminated, the problem of bandwidth occupation during data migration of the storage can be solved, data instability caused by data migration can be reduced, stable transmission of data can be guaranteed, the correctness of the data and the stability of long-term operation of a system can be guaranteed, and the use efficiency of a memory and the efficiency of data migration can be improved.
Optionally, the memory 909 is further configured to, in response to the data migration instruction, edit and migrate the target data with the data amount as the target data amount, which is stored with the source address as the start address, to the area with the destination address as the start address according to the information of the target editing command, and store the target data with the source address as the start address, the destination address, the target data amount, and the information of the target editing command in the data migration instruction.
Optionally, a memory 909 for returning the execution result of the data migration instruction to the controller;
wherein the execution result is used for being verified by the controller.
Optionally, a processor 910 configured to send a data migration instruction to a memory;
the data migration instruction is used for the memory to migrate the target data which is stored by taking the source address as the initial address and takes the data volume as the target data volume to the area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
Optionally, the data migration instruction is further configured to, by the memory, edit the target data with the data volume as the target data volume stored with the source address as the start address according to the source address, the destination address, the target data volume, and the information of the target editing command in the data migration instruction, and migrate the target data with the data volume as the target data volume to the area with the destination address as the start address for storage according to the information of the target editing command.
Optionally, the processor 910 is further configured to receive an execution result of the data migration instruction returned by the memory; and verifying the execution result.
It should be understood that, in the embodiment of the present application, the input Unit 904 may include a Graphics Processing Unit (GPU) 9041 and a microphone 9042, and the Graphics Processing Unit 9041 processes image data of a still picture or a video obtained by an image capturing device (such as a camera) in a video capturing mode or an image capturing mode. The display unit 906 may include a display panel 9061, and the display panel 9061 may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like. The user input unit 907 includes a touch panel 9071 and other input devices 9072. A touch panel 9071 also referred to as a touch screen. The touch panel 9071 may include two parts, a touch detection device and a touch controller. Other input devices 9072 may include, but are not limited to, a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which are not described in detail herein. Memory 909 can be used to store software programs as well as various data including, but not limited to, target application programs and operating systems. The processor 910 may integrate an application processor, which primarily handles operating system, user interface, and target applications, etc., and a modem processor, which primarily handles wireless communications. It is to be appreciated that the modem processor described above may not be integrated into processor 910.
The embodiment of the present application further provides a readable storage medium, where a program or an instruction is stored on the readable storage medium, and when the program or the instruction is executed by a processor, the program or the instruction implements each process of the data migration method embodiment, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here.
The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and so on.
The embodiment of the present application further provides a chip, where the chip includes a processor and a communication interface, the communication interface is coupled to the processor, and the processor is configured to run a program or an instruction to implement each process of the data migration method embodiment, and can achieve the same technical effect, and the details are not repeated here to avoid repetition.
It should be understood that the chips mentioned in the embodiments of the present application may also be referred to as system-on-chip, system-on-chip or system-on-chip, etc.
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 apparatus 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 apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element. Further, it should be noted that the scope of the methods and apparatus of the embodiments of the present application is not limited to performing the functions in the order illustrated or discussed, but may include performing the functions in a substantially simultaneous manner or in a reverse order based on the functions involved, e.g., the methods described may be performed in an order different than that described, and various steps may be added, omitted, or combined. In addition, features described with reference to certain examples may be combined in other examples.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present application may be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal (such as a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present application.
While the present embodiments have been described with reference to the accompanying drawings, it is to be understood that the invention is not limited to the precise embodiments described above, which are meant to be illustrative and not restrictive, and that various changes may be made therein by those skilled in the art without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (10)

1. A method of data migration, comprising:
receiving a data migration instruction sent by a controller;
and in response to the data migration instruction, migrating the target data which is stored by taking the source address as an initial address and has the data volume as the target data volume to an area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
2. The data migration method according to claim 1, wherein after receiving the data migration instruction sent by the controller, the method further comprises:
and responding to the data migration instruction, editing the target data with the data volume as the target data volume, which is stored by taking the source address as an initial address, according to the source address, the destination address, the target data volume and the information of the target editing command in the data migration instruction, and migrating the target data with the data volume as the target data volume to an area with the destination address as the initial address for storage.
3. A method of data migration, comprising:
sending a data migration instruction to a memory;
the data migration instruction is used for the memory to migrate, according to a source address, a destination address and a target data volume in the data migration instruction, target data which are stored by taking the source address as an initial address and have the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
4. The data migration method according to claim 3, wherein the data migration instruction is further configured to, according to a source address, a destination address, a target data volume, and information of a target editing command in the data migration instruction, edit, according to the information of the target editing command, target data with a data volume as the target data volume, which is stored with the source address as a start address, and migrate to an area with the destination address as a start address to store the target data.
5. The data migration method according to claim 3 or 4, wherein after the sending of the data migration instruction to the memory, the method further comprises:
receiving an execution result of the data migration instruction returned by the memory;
and verifying the execution result.
6. A memory, comprising:
the first receiving module is used for receiving a data migration instruction sent by the controller;
and the mirror image editing module is used for responding to the data migration instruction, and migrating the target data which is stored by taking the source address as an initial address and has the data volume as the target data volume to an area by taking the target address as the initial address for storage according to the source address, the target address and the target data volume in the data migration instruction.
7. The memory according to claim 6, wherein the mirror editing module is further configured to, in response to the data migration instruction, edit the target data with the data amount as the target data amount stored with the source address as a start address according to information of the target editing command and migrate the target data to an area with the destination address as a start address for storage according to information of the target editing command, according to information of a source address, a destination address, a target data amount, and a target editing command in the data migration instruction.
8. A controller, comprising:
the instruction sending module is used for sending a data migration instruction to the memory;
the data migration instruction is used for the memory to migrate, according to a source address, a destination address and a target data volume in the data migration instruction, target data which are stored by taking the source address as an initial address and have the data volume as the target data volume to an area by taking the destination address as the initial address for storage.
9. The controller according to claim 8, wherein the data migration instruction is further configured to, by the memory, edit the target data with the data size as the target data size stored with the source address as a start address according to information of the target editing command and migrate the target data to an area with the destination address as a start address to store the target data according to information of the target editing command.
10. The controller according to claim 8 or 9, characterized in that the controller further comprises:
the second receiving module is used for receiving the execution result of the data migration instruction returned by the memory;
and the result verification module is used for verifying the execution result.
CN202110557820.0A 2021-05-21 2021-05-21 Data migration method, memory and controller Pending CN113282239A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110557820.0A CN113282239A (en) 2021-05-21 2021-05-21 Data migration method, memory and controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110557820.0A CN113282239A (en) 2021-05-21 2021-05-21 Data migration method, memory and controller

Publications (1)

Publication Number Publication Date
CN113282239A true CN113282239A (en) 2021-08-20

Family

ID=77280650

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110557820.0A Pending CN113282239A (en) 2021-05-21 2021-05-21 Data migration method, memory and controller

Country Status (1)

Country Link
CN (1) CN113282239A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168837A (en) * 2022-08-30 2022-10-11 飞腾信息技术有限公司 Software operation control method, microprocessor, computer device and storage medium
CN115543221A (en) * 2022-11-29 2022-12-30 苏州浪潮智能科技有限公司 Data migration method and device for solid state disk, electronic equipment and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177947A1 (en) * 2007-01-19 2008-07-24 Hitachi, Ltd. Storage system and storage migration method
CN104685478A (en) * 2013-09-27 2015-06-03 华为技术有限公司 Method and device for scheduling storage resources
US20150370505A1 (en) * 2014-06-20 2015-12-24 Ca, Inc. Performing Online Data Migration With Concurrent Active User Access to the Data
CN105874434A (en) * 2014-01-02 2016-08-17 高通股份有限公司 Bit remapping system
CN107111452A (en) * 2015-12-03 2017-08-29 华为技术有限公司 Data migration method and device, computer system applied to computer system
CN108369563A (en) * 2015-10-30 2018-08-03 美光科技公司 Data transmission technology for sharing multiple devices in bus
US20180284999A1 (en) * 2017-03-28 2018-10-04 International Business Machines Corporation Data Migration with Application-Native Export and Import Capabilities
CN108885538A (en) * 2016-04-27 2018-11-23 净睿存储股份有限公司 The migrating data in the storage array for including multiple storage equipment
CN109074309A (en) * 2016-05-27 2018-12-21 英特尔公司 Data access between calculate node

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177947A1 (en) * 2007-01-19 2008-07-24 Hitachi, Ltd. Storage system and storage migration method
CN104685478A (en) * 2013-09-27 2015-06-03 华为技术有限公司 Method and device for scheduling storage resources
CN105874434A (en) * 2014-01-02 2016-08-17 高通股份有限公司 Bit remapping system
US20150370505A1 (en) * 2014-06-20 2015-12-24 Ca, Inc. Performing Online Data Migration With Concurrent Active User Access to the Data
CN108369563A (en) * 2015-10-30 2018-08-03 美光科技公司 Data transmission technology for sharing multiple devices in bus
CN107111452A (en) * 2015-12-03 2017-08-29 华为技术有限公司 Data migration method and device, computer system applied to computer system
CN108885538A (en) * 2016-04-27 2018-11-23 净睿存储股份有限公司 The migrating data in the storage array for including multiple storage equipment
CN109074309A (en) * 2016-05-27 2018-12-21 英特尔公司 Data access between calculate node
US20180284999A1 (en) * 2017-03-28 2018-10-04 International Business Machines Corporation Data Migration with Application-Native Export and Import Capabilities

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168837A (en) * 2022-08-30 2022-10-11 飞腾信息技术有限公司 Software operation control method, microprocessor, computer device and storage medium
CN115168837B (en) * 2022-08-30 2023-01-10 飞腾信息技术有限公司 Software operation control method, microprocessor, computer device and storage medium
CN115543221A (en) * 2022-11-29 2022-12-30 苏州浪潮智能科技有限公司 Data migration method and device for solid state disk, electronic equipment and storage medium
CN115543221B (en) * 2022-11-29 2023-03-14 苏州浪潮智能科技有限公司 Data migration method and device for solid state disk, electronic equipment and storage medium
WO2024113568A1 (en) * 2022-11-29 2024-06-06 苏州元脑智能科技有限公司 Data migration method and apparatus for solid-state drive, electronic device, and storage medium

Similar Documents

Publication Publication Date Title
CN109902255B (en) Page mixed browsing record generation method, device, equipment and storage medium
CN103593333B (en) A kind of processing method, terminal and the electronic equipment of e-book document
CN103809871A (en) Processing method and mobile terminal for icon of application program
KR101555210B1 (en) Apparatus and method for downloadin contents using movinand in portable terminal
CN113282239A (en) Data migration method, memory and controller
US20210027007A1 (en) Online document commenting method and apparatus
US10990267B2 (en) Two step content selection
CN114579055B (en) Disk storage method, device, equipment and medium
CN108140043B (en) Read-write protocol for attaching only distributed database
CN106484779B (en) File operation method and device
WO2024160133A1 (en) Image generation method and apparatus, electronic device, and storage medium
WO2024153027A1 (en) Application display method and application display apparatus
CN110321321A (en) Network control techology snapshot reading/writing method, device, equipment and storage medium
US20140157147A1 (en) Feedback system, feedback method and recording media thereof
WO2024067348A2 (en) Memory allocator determination method and apparatus, and electronic device and storage medium
CN104182479B (en) A kind of method and device handling information
CN108205559B (en) Data management method and equipment thereof
CN103177019B (en) Usb storage device and driving method thereof
CN109144423B (en) Memory bad block management method and device and flash memory
CN112765110B (en) PDF annotation data generation method, device, equipment and storage medium
US9965484B1 (en) Template-driven data extraction and insertion
CN114070892A (en) Data transmission method and device
CN110045929B (en) Mounting point management method and related device
CN112162704B (en) Method and device for releasing storage space
CN110928804B (en) Garbage recycling optimization method, device, terminal equipment and machine-readable medium

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210820