[go: up one dir, main page]

CN109597577A - A kind of method, system and relevant apparatus handling NVME agreement read write command - Google Patents

A kind of method, system and relevant apparatus handling NVME agreement read write command Download PDF

Info

Publication number
CN109597577A
CN109597577A CN201811463456.6A CN201811463456A CN109597577A CN 109597577 A CN109597577 A CN 109597577A CN 201811463456 A CN201811463456 A CN 201811463456A CN 109597577 A CN109597577 A CN 109597577A
Authority
CN
China
Prior art keywords
addresses
address
target cpu
read
target
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
CN201811463456.6A
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201811463456.6A priority Critical patent/CN109597577A/en
Publication of CN109597577A publication Critical patent/CN109597577A/en
Pending legal-status Critical Current

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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]

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

This application provides a kind of methods for handling NVME agreement read write command, comprising: the read write command sent to the host received parses, and obtains the corresponding address of data block of preset quantity in host;According to the quantity of target CPU in SSD, processing is grouped to the corresponding address of each data block, obtains group of addresses corresponding with the quantity of target CPU;According to the ID of each target CPU sequence, each group of addresses is successively sent to corresponding target CPU;The corresponding data block of each group of addresses is read and write into corresponding target CPU.As it can be seen that accelerating read or write speed the method achieve by multiple CPU of the data block concurrent reading and writing in host to SSD, improving work efficiency.The application also provides a kind of system, solid state hard disk and computer readable storage medium for handling NVME agreement read write command, all has above-mentioned beneficial effect.

Description

A kind of method, system and relevant apparatus handling NVME agreement read write command
Technical field
This application involves storage equipment technical field, in particular to a kind of method for handling NVME agreement read write command is System, solid state hard disk and computer readable storage medium.
Background technique
In field of storage, solid state hard disk often needs to carry out the read-write operation of data block.In the related technology, host will meet The read write command of NVME agreement is handed down to SSD and obtains each data block to be read and write after SSD parses read write command and respectively correspond Address, finally each data block is successively read and write in into SSD CPU according to address above mentioned.But it will be in host Data block is successively read and write in into SSD CPU, causes read or write speed slow, reduces working efficiency.
Therefore, how by multiple CPU of the data block concurrent reading and writing in host to SSD, accelerate read or write speed, improve work It is those skilled in the art's technical issues that need to address as efficiency.
Summary of the invention
The purpose of the application is to provide a kind of method, system, solid state hard disk and calculating for handling NVME agreement read write command Machine readable storage medium storing program for executing can accelerate in multiple CPU of the data block concurrent reading and writing in host to SSD read or write speed, improve Working efficiency.
In order to solve the above technical problems, the application provides a kind of method for handling NVME agreement read write command, comprising:
The read write command sent to the host received parses, and obtains the data block point of preset quantity in the host Not corresponding address;
According to the quantity of target CPU in SSD, processing is grouped to the corresponding address of each data block, obtain with The corresponding group of addresses of the quantity of the target CPU;
According to the ID of each target CPU sequence, each group of addresses is successively sent to corresponding target CPU;
The corresponding data block of each group of addresses is read and write into corresponding target CPU.
Preferably, the quantity according to target CPU in SSD is grouped the corresponding address of each data block Processing, obtains group of addresses corresponding with the quantity of the target CPU, comprising:
The corresponding address of each data block is ranked up, the corresponding integer serial number in each address is obtained;
Using the quantity of the target CPU, modulo operation is carried out to each integer serial number, is obtained each described The corresponding mould in address;
According to the value type of the mould, each address is grouped, obtains the number with the target CPU Measure corresponding group of addresses.
Preferably, the ID sequence according to each target CPU, each group of addresses is successively sent to corresponding Target CPU, comprising:
According to the ID of each target CPU sequence, successively establish between each target CPU and the group of addresses Mapping relations;
According to the mapping relations, each group of addresses is successively sent to corresponding target CPU.
It is preferably, described to read and write the corresponding data block of each group of addresses into corresponding target CPU, comprising:
Receive the response message that each target CPU is sent;
According to the response message, the corresponding data block of each group of addresses is read and write into corresponding target CPU.
The application also provides a kind of system for handling NVME agreement read write command, comprising:
Read write command parsing module, the read write command for sending to the host received parse, and obtain the master The corresponding address of the data block of preset quantity in machine;
Address packets module, for the quantity according to target CPU in SSD, to the corresponding address of each data block into Row packet transaction obtains group of addresses corresponding with the quantity of the target CPU;
Group of addresses sending module successively sends each group of addresses for the ID sequence according to each target CPU To corresponding target CPU;
Data block module for reading and writing, for reading and writing the corresponding data block of each group of addresses into corresponding target CPU.
Preferably, the address packets module, comprising:
Address sort unit obtains each address for being ranked up to the corresponding address of each data block Corresponding integer serial number;
Modulo operation unit carries out modulus to each integer serial number for the quantity using the target CPU Operation obtains the corresponding mould in each address;
Each address is grouped by address packets unit for the value type according to the mould, is obtained and institute State the corresponding group of addresses of the quantity of target CPU.
Preferably, the group of addresses sending module, comprising:
Mapping relations establish unit, for the ID sequence according to each target CPU, successively establish each target Mapping relations between CPU and the group of addresses;
Group of addresses transmission unit, for each group of addresses being successively sent to corresponding according to the mapping relations Target CPU.
Preferably, the data block module for reading and writing, comprising:
Response message receiving unit, the response message sent for receiving each target CPU;
Data block read-write cell will the corresponding data block read-write of each group of addresses for according to the response message To in corresponding target CPU.
The application also provides a kind of solid state hard disk, comprising:
Memory and processor;Wherein, the memory is for storing computer program, and the processor is for executing institute The step of method of processing NVME agreement read write command described above is realized when stating computer program.
The application also provides a kind of computer readable storage medium, and the computer-readable recording medium storage has computer Program, the computer program realize the step of the method for processing NVME agreement read write command described above when being executed by processor Suddenly.
The method of a kind of processing NVME agreement read write command provided herein, comprising: the host received is sent Read write command parsed, obtain the corresponding address of data block of preset quantity in the host;According to target in SSD The quantity of CPU is grouped processing to the corresponding address of each data block, obtains the quantity with the target CPU Corresponding group of addresses;According to the ID of each target CPU sequence, each group of addresses is successively sent to corresponding target CPU;The corresponding data block of each group of addresses is read and write into corresponding target CPU.
The read write command that this method before this sent host parses, and obtains the data block difference of preset quantity in host Corresponding address is grouped processing to the corresponding address of each data block then according to the quantity of target CPU in SSD, Group of addresses corresponding with the quantity of the target CPU is obtained, further according to the ID sequence of each target CPU, by each institute It states group of addresses and is successively sent to corresponding target CPU, finally read and write the corresponding data block of each group of addresses to corresponding In target CPU.As it can be seen that the corresponding address of each diagnostic data block is grouped by this method, it is concurrent to obtain multiple group of addresses It send to corresponding target CPU, and then realizes in multiple CPU of the data block concurrent reading and writing in host to SSD, accelerate reading Writing rate improves work efficiency.The application also provides a kind of system, solid state hard disk and meter for handling NVME agreement read write command Calculation machine readable storage medium storing program for executing, all has above-mentioned beneficial effect, details are not described herein.
Detailed description of the invention
In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this The embodiment of application for those of ordinary skill in the art without creative efforts, can also basis The attached drawing of offer obtains other attached drawings.
Fig. 1 is a kind of flow chart for the method for handling NVME agreement read write command provided by the embodiment of the present application;
Fig. 2 is a kind of structural block diagram for the system for handling NVME agreement read write command provided by the embodiment of the present application.
Specific embodiment
The core of the application is to provide a kind of method for handling NVME agreement read write command, can be by the data block in host Concurrent reading and writing accelerates read or write speed into multiple CPU of SSD, improves working efficiency.Another core of the application is to provide one kind Handle system, solid state hard disk and the computer readable storage medium of NVME agreement read write command.
To keep the purposes, technical schemes and advantages of the embodiment of the present application clearer, below in conjunction with the embodiment of the present application In attached drawing, the technical scheme in the embodiment of the application is clearly and completely described, it is clear that described embodiment is Some embodiments of the present application, instead of all the embodiments.Based on the embodiment in the application, those of ordinary skill in the art Every other embodiment obtained without making creative work, shall fall in the protection scope of this application.
In field of storage, solid state hard disk often needs to carry out the read-write operation of data block.In the related technology, host will meet The read write command of NVME agreement is handed down to SSD and obtains each data block to be read and write after SSD parses read write command and respectively correspond Address, finally each data block is successively read and write in into SSD CPU according to address above mentioned.But it will be in host Data block is successively read and write in into SSD CPU, causes read or write speed slow, reduces working efficiency.The embodiment of the present application energy It is enough to accelerate read or write speed in multiple CPU of the data block concurrent reading and writing in host to SSD, improve working efficiency.Please specifically it join Fig. 1 is examined, Fig. 1 is a kind of flow chart for the method for handling NVME agreement read write command, the processing provided by the embodiment of the present application The method of NVME agreement read write command specifically includes:
S101, the read write command sent to the host received parse, and obtain the data block of preset quantity in host Corresponding address;
Solid state hard disk is connected with host in the embodiment of the present application, can carry out the transmission of data.Firstly, to the master received The read write command that machine is sent is parsed, and the corresponding address of data block of preset quantity in host is obtained.The number of data block Amount be it is preset, how much specific value is not limited thereto, and should be made according to the actual situation by those skilled in the art corresponding Setting.Each data block corresponds to an address, which generally includes the physical address and logical address of data block.Here, The mode parsed to read write command is also not especially limited, but need to guarantee that the result of parsing is preset quantity in host The corresponding address of data block.
S102, according to the quantity of target CPU in SSD, processing is grouped to the corresponding address of each data block, obtain with The corresponding group of addresses of the quantity of target CPU;
The embodiment of the present application is in obtaining host behind the corresponding address of the data block of preset quantity, according to mesh in SSD The quantity for marking CPU, is grouped processing to the corresponding address of each data block, obtains address corresponding with the quantity of target CPU Group.Quantity of target CPU in SSD is not especially limited at this, should be made according to the actual situation by those skilled in the art Corresponding setting.By obtaining group of addresses corresponding with the quantity of target CPU above it is found that the quantity of group of addresses is with target CPU's There is mapping relations between quantity, and specially which kind of mapping relations is not limited thereto, should by those skilled in the art according to Actual conditions make corresponding setting, such as can be the corresponding group of addresses of a target CPU, can also be a target CPU Corresponding multiple group of addresses.Further, since the quantity of target CPU is not especially limited, therefore the quantity of group of addresses is herein not yet Make specific restriction, quantity of the quantity depending on target CPU of group of addresses and the mapping relations between the quantity of target CPU.Example Such as, if the corresponding group of addresses of a target CPU, the quantity of group of addresses and the quantity of target CPU are equal;If a target CPU corresponds to two group of addresses, then the quantity of group of addresses is twice of the quantity of target CPU.
Further, for the quantity according to target CPU in SSD, place is grouped to the corresponding address of each data block Reason, obtains the process of group of addresses corresponding with the quantity of target CPU, is not specifically limited herein, should be by those skilled in the art Corresponding setting is made according to the actual situation, which generally includes: the corresponding address of each data block being ranked up, is obtained The corresponding integer serial number in each address;Using the quantity of target CPU, modulo operation is carried out to each integer serial number, is obtained each The corresponding mould in address;According to the value type of mould, each address is grouped, is obtained correspondingly with the quantity of target CPU Location group.For example, it is assumed that the quantity of data block is 8, therefore the corresponding number of addresses of each data block is also 8, is carried out to 8 addresses Sequence obtains the corresponding integer serial number in each address and is respectively as follows: 1,2,3,4,5,6,7,8;Assuming that the quantity of target CPU is 3, it is right Above-mentioned integer serial number progress modulo operation obtains the corresponding mould in each address and is respectively as follows: 1,2,0,1,2,0,1,2;According to the number of mould 8 addresses can be divided into 3 group of addresses corresponding with the quantity of target CPU by Value Types (0,1,2), i.e. wrap in the first group of addresses It include the corresponding address of serial number 1,4,7 in the second group of addresses containing serial number 3,6 corresponding addresses, in third group of addresses Include the corresponding address of serial number 2,5,6.
S103, the ID sequence according to each target CPU, are successively sent to corresponding target CPU for each group of addresses;
For the embodiment of the present application after obtaining group of addresses corresponding with the quantity of target CPU, the ID according to each target CPU is suitable Each group of addresses is successively sent to corresponding target CPU by sequence.Each target CPU has respective ID number in solid state hard disk Code, each id number is ranked up according to preset sortord can obtain ID sequence.At this to the presentation of each id number Form and sortord are not especially limited, and corresponding setting, example should be made according to the actual situation by those skilled in the art If id number can be presented in the form of sequence number, can also be presented in the form of bar code, two dimensional code;Sortord can be by Sequence from big to small is ranked up, and can also be ranked up by sequence from small to large.
Further, for the ID sequence according to each target CPU, each group of addresses is successively sent to corresponding target The process of CPU, is also not especially limited herein, which generally includes: according to the ID of each target CPU sequence, successively establishing each Mapping relations between target CPU and group of addresses;According to mapping relations, each group of addresses is successively sent to corresponding target CPU.Wherein, it for the mapping relations between each target CPU and group of addresses, is not specifically limited herein, it should be by art technology Personnel make corresponding setting according to the actual situation.For example, if the quantity of target CPU is 3, it can be by 3 target CPU according to ID The sequence of number from small to large is ranked up, and then successively establishes one-to-one mapping relations with three above-mentioned group of addresses; 3 target CPU can also be ranked up according to the sequence of id number from big to small, then successively with three above-mentioned group of addresses Establish one-to-one mapping relations.
S104, the corresponding data block of each group of addresses is read and write into corresponding target CPU.
The embodiment of the present application is corresponding by each group of addresses after each group of addresses is successively sent to corresponding target CPU Data block read and write into corresponding target CPU.For reading and writing the corresponding data block of each group of addresses to corresponding target CPU In process, be not specifically limited herein, corresponding setting, the process should be made according to the actual situation by those skilled in the art It generally includes: receiving the response message that each target CPU is sent;Message according to response, by the corresponding data block of each group of addresses Read-write is into corresponding target CPU.
The read write command that the embodiment of the present application before this sent host parses, and obtains the data of preset quantity in host The corresponding address of block is grouped place to the corresponding address of each data block then according to the quantity of target CPU in SSD Reason, obtains group of addresses corresponding with the quantity of target CPU, and further according to the ID sequence of each target CPU, each group of addresses is successively sent out It send to corresponding target CPU, finally reads and writes the corresponding data block of each group of addresses into corresponding target CPU.As it can be seen that the party The corresponding address of each diagnostic data block is grouped by method, is obtained multiple group of addresses and is sent to corresponding target CPU, into And realizing in multiple CPU of the data block concurrent reading and writing in host to SSD, will accelerate read or write speed, improve work effect Rate.
Below to a kind of system, solid state hard disk and calculating for handling NVME agreement read write command provided by the embodiments of the present application Machine readable storage medium storing program for executing is introduced, system, solid state hard disk and the computer of processing NVME agreement read write command described below Readable storage medium storing program for executing can correspond to each other reference with the method for process described above NVME agreement read write command.
Referring to FIG. 2, Fig. 2 is a kind of knot for the system for handling NVME agreement read write command provided by the embodiment of the present application Structure block diagram;The system of processing NVME agreement read write command includes:
Read write command parsing module 201, the read write command for sending to the host received parse, and obtain host The corresponding address of the data block of middle preset quantity;
Address packets module 202 carries out the corresponding address of each data block for the quantity according to target CPU in SSD Packet transaction obtains group of addresses corresponding with the quantity of target CPU;
Each group of addresses is successively sent to pair for according to the ID of each target CPU sequence by group of addresses sending module 203 The target CPU answered;
Data block module for reading and writing 204, for reading and writing the corresponding data block of each group of addresses into corresponding target CPU.
Based on the above embodiment, address packets module 202 in the present embodiment, generally includes:
It is corresponding whole to obtain each address for being ranked up to the corresponding address of each data block for address sort unit Number sequence number;
Modulo operation unit carries out modulo operation to each integer serial number for the quantity using target CPU, obtains each The corresponding mould in a address;
Each address is grouped by address packets unit for the value type according to mould, is obtained with target CPU's The corresponding group of addresses of quantity.
Based on the above embodiment, group of addresses sending module 203 in the present embodiment, generally includes:
Mapping relations establish unit, for the ID sequence according to each target CPU, successively establish each target CPU and group of addresses Between mapping relations;
Group of addresses transmission unit, for according to mapping relations, each group of addresses to be successively sent to corresponding target CPU.
Based on the above embodiment, data block module for reading and writing 204 in the present embodiment, generally includes:
Response message receiving unit, the response message sent for receiving each target CPU;
Data block read-write cell reads and writes the corresponding data block of each group of addresses to corresponding for message according to response In target CPU.
The application also provides a kind of solid state hard disk, comprising:
Memory and processor;Wherein, memory is for storing computer program, and processor is for executing computer program The step of method of the processing NVME agreement read write command of the above-mentioned any embodiment of Shi Shixian.
The application also provides a kind of computer readable storage medium, and computer-readable recording medium storage has computer journey Sequence realizes the step of the method for the processing NVME agreement read write command of above-mentioned any embodiment when computer program is executed by processor Suddenly.
The computer readable storage medium may include: USB flash disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic or disk etc. is various to deposit Store up the medium of program code.
Each embodiment is described in a progressive manner in specification, the highlights of each of the examples are with other realities The difference of example is applied, the same or similar parts in each embodiment may refer to each other.For embodiment provide system and Speech, since it is corresponding with the method that embodiment provides, so being described relatively simple, related place is referring to method part illustration ?.
Professional further appreciates that, unit described in conjunction with the examples disclosed in the embodiments of the present disclosure And algorithm steps, can be realized with electronic hardware, computer software, or a combination of the two, in order to clearly demonstrate hardware and The interchangeability of software generally describes each exemplary composition and step according to function in the above description.These Function is implemented in hardware or software actually, the specific application and design constraint depending on technical solution.Profession Technical staff can use different methods to achieve the described function each specific application, but this realization is not answered Think beyond the scope of this invention.
The step of method described in conjunction with the examples disclosed in this document or algorithm, can directly be held with hardware, processor The combination of capable software module or the two is implemented.Software module can be placed in random access memory (RAM), memory, read-only deposit Reservoir (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or technology In any other form of storage medium well known in field.
Above to method, system, solid state hard disk and the meter of a kind of processing NVME agreement read write command provided herein Calculation machine readable storage medium storing program for executing is described in detail.Specific case used herein to the principle and embodiment of the application into Elaboration is gone, the description of the example is only used to help understand the method for the present application and its core ideas.It should be pointed out that pair For those skilled in the art, under the premise of not departing from the application principle, the application can also be carried out Some improvements and modifications, these improvement and modification are also fallen into the protection scope of the claim of this application.

Claims (10)

1.一种处理NVME协议读写命令的方法,其特征在于,包括:1. a method for processing NVME protocol read-write command, is characterized in that, comprises: 对接收到的主机发送的读写命令进行解析,得到所述主机中预设数量的数据块分别对应的地址;Analyzing the read and write commands sent by the received host to obtain addresses corresponding to the preset number of data blocks in the host; 根据SSD中目标CPU的数量,对各个所述数据块对应的地址进行分组处理,得到与所述目标CPU的所述数量对应的地址组;According to the number of target CPUs in the SSD, the addresses corresponding to each of the data blocks are grouped to obtain an address group corresponding to the number of the target CPUs; 根据各所述目标CPU的ID顺序,将各个所述地址组依次发送至对应的目标CPU;According to the ID sequence of each target CPU, each of the address groups is sequentially sent to the corresponding target CPU; 将各个所述地址组对应的数据块读写至对应的目标CPU中。The data blocks corresponding to each of the address groups are read and written to the corresponding target CPU. 2.根据权利要求1所述的方法,其特征在于,所述根据SSD中目标CPU的数量,对各个所述数据块对应的地址进行分组处理,得到与所述目标CPU的所述数量对应的地址组,包括:2 . The method according to claim 1 , wherein, according to the number of target CPUs in the SSD, the addresses corresponding to each of the data blocks are grouped to obtain an address corresponding to the number of the target CPUs. 3 . Address groups, including: 对各个所述数据块对应的地址进行排序,得到各个所述地址对应的整数序号;Sorting the addresses corresponding to each of the data blocks to obtain an integer sequence number corresponding to each of the addresses; 利用所述目标CPU的所述数量,对各个所述整数序号进行取模运算,得到各个所述地址对应的模;Using the number of the target CPUs, perform a modulo operation on each of the integer serial numbers to obtain a modulo corresponding to each of the addresses; 根据所述模的数值类型,将各个所述地址进行分组,得到与所述目标CPU的所述数量对应的地址组。According to the value type of the modulus, each of the addresses is grouped to obtain an address group corresponding to the number of the target CPUs. 3.根据权利要求1所述的方法,其特征在于,所述根据各所述目标CPU的ID顺序,将各个所述地址组依次发送至对应的目标CPU,包括:3. The method according to claim 1, wherein, according to the ID sequence of each of the target CPUs, sending each of the address groups to the corresponding target CPU in sequence, comprising: 根据各所述目标CPU的所述ID顺序,依次建立各所述目标CPU与所述地址组之间的映射关系;According to the ID sequence of each of the target CPUs, the mapping relationship between each of the target CPUs and the address group is sequentially established; 根据所述映射关系,将各个所述地址组依次发送至对应的目标CPU。According to the mapping relationship, each of the address groups is sequentially sent to the corresponding target CPU. 4.根据权利要求1所述的方法,其特征在于,所述将各个所述地址组对应的数据块读写至对应的目标CPU中,包括:4. method according to claim 1, is characterized in that, described by the data block corresponding to each described address group read-write in corresponding target CPU, comprising: 接收各个所述目标CPU发送的响应消息;receiving a response message sent by each of the target CPUs; 根据所述响应消息,将各个所述地址组对应的数据块读写至对应的目标CPU中。According to the response message, the data blocks corresponding to each of the address groups are read and written to the corresponding target CPU. 5.一种处理NVME协议读写命令的系统,其特征在于,包括:5. a system for processing NVME protocol read and write commands, is characterized in that, comprising: 读写命令解析模块,用于对接收到的主机发送的读写命令进行解析,得到所述主机中预设数量的数据块分别对应的地址;a read-write command parsing module, configured to parse the read-write command sent by the received host, and obtain the addresses corresponding to the preset number of data blocks in the host; 地址分组模块,用于根据SSD中目标CPU的数量,对各个所述数据块对应的地址进行分组处理,得到与所述目标CPU的所述数量对应的地址组;The address grouping module is configured to perform grouping processing on the addresses corresponding to each of the data blocks according to the number of target CPUs in the SSD, to obtain an address group corresponding to the number of the target CPUs; 地址组发送模块,用于根据各所述目标CPU的ID顺序,将各个所述地址组依次发送至对应的目标CPU;The address group sending module is configured to send each of the address groups to the corresponding target CPU in turn according to the ID sequence of each of the target CPUs; 数据块读写模块,用于将各个所述地址组对应的数据块读写至对应的目标CPU中。The data block reading and writing module is used for reading and writing the data blocks corresponding to each of the address groups to the corresponding target CPU. 6.根据权利要求5所述的系统,其特征在于,所述地址分组模块,包括:6. The system according to claim 5, wherein the address grouping module comprises: 地址排序单元,用于对各个所述数据块对应的地址进行排序,得到各个所述地址对应的整数序号;The address sorting unit is used to sort the addresses corresponding to each of the data blocks to obtain an integer serial number corresponding to each of the addresses; 取模运算单元,用于利用所述目标CPU的所述数量,对各个所述整数序号进行取模运算,得到各个所述地址对应的模;a modulo operation unit, configured to perform a modulo operation on each of the integer serial numbers by using the number of the target CPU to obtain a modulo corresponding to each of the addresses; 地址分组单元,用于根据所述模的数值类型,将各个所述地址进行分组,得到与所述目标CPU的所述数量对应的地址组。The address grouping unit is configured to group each of the addresses according to the value type of the modulo to obtain an address group corresponding to the number of the target CPUs. 7.根据权利要求5所述的系统,其特征在于,所述地址组发送模块,包括:7. The system according to claim 5, wherein the address group sending module comprises: 映射关系建立单元,用于根据各所述目标CPU的所述ID顺序,依次建立各所述目标CPU与所述地址组之间的映射关系;A mapping relationship establishing unit, configured to sequentially establish a mapping relationship between each of the target CPUs and the address group according to the ID sequence of each of the target CPUs; 地址组发送单元,用于根据所述映射关系,将各个所述地址组依次发送至对应的目标CPU。The address group sending unit is configured to sequentially send each of the address groups to the corresponding target CPU according to the mapping relationship. 8.根据权利要求5所述的系统,其特征在于,所述数据块读写模块,包括:8. The system according to claim 5, wherein the data block read-write module comprises: 响应消息接收单元,用于接收各个所述目标CPU发送的响应消息;a response message receiving unit, configured to receive a response message sent by each of the target CPUs; 数据块读写单元,用于根据所述响应消息,将各个所述地址组对应的数据块读写至对应的目标CPU中。The data block reading and writing unit is configured to read and write the data blocks corresponding to each of the address groups to the corresponding target CPU according to the response message. 9.一种固态硬盘,其特征在于,包括:9. A solid-state hard disk, comprising: 存储器和处理器;其中,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现如权利要求1至4任一项所述的处理NVME协议读写命令的方法的步骤。A memory and a processor; wherein the memory is used to store a computer program, and the processor is used to implement the steps of the method for processing NVME protocol read and write commands as described in any one of claims 1 to 4 when the processor is used to execute the computer program . 10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的处理NVME协议读写命令的方法的步骤。10. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processing NVME according to any one of claims 1 to 4 is realized The steps of the method of the protocol read and write commands.
CN201811463456.6A 2018-12-03 2018-12-03 A kind of method, system and relevant apparatus handling NVME agreement read write command Pending CN109597577A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811463456.6A CN109597577A (en) 2018-12-03 2018-12-03 A kind of method, system and relevant apparatus handling NVME agreement read write command

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811463456.6A CN109597577A (en) 2018-12-03 2018-12-03 A kind of method, system and relevant apparatus handling NVME agreement read write command

Publications (1)

Publication Number Publication Date
CN109597577A true CN109597577A (en) 2019-04-09

Family

ID=65960571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811463456.6A Pending CN109597577A (en) 2018-12-03 2018-12-03 A kind of method, system and relevant apparatus handling NVME agreement read write command

Country Status (1)

Country Link
CN (1) CN109597577A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110058819A (en) * 2019-04-19 2019-07-26 深圳忆联信息系统有限公司 Host Command treating method and apparatus based on variable cache administrative mechanism
CN111831226A (en) * 2020-07-07 2020-10-27 山东华芯半导体有限公司 Method for accelerating processing of autonomously output NVME protocol command

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102458A (en) * 2014-06-27 2014-10-15 北京兆易创新科技股份有限公司 Multi-core CPU (Central Processing Unit) load balancing method, multi-core CPU and solid state disk
CN106708745A (en) * 2016-12-05 2017-05-24 郑州云海信息技术有限公司 24-tub NVME dynamic allocation structure and method
CN107291392A (en) * 2017-06-21 2017-10-24 郑州云海信息技术有限公司 A kind of solid state hard disc and its reading/writing method
CN107957970A (en) * 2017-10-23 2018-04-24 记忆科技(深圳)有限公司 The means of communication and solid-state hard disk controller of a kind of heterogeneous polynuclear
CN108345506A (en) * 2018-03-31 2018-07-31 北京联想核芯科技有限公司 A kind of SSD hard disks under multiple CPU
CN108762674A (en) * 2018-05-24 2018-11-06 深圳忆联信息系统有限公司 Promote the method and device of SSD operating lags
US20180341579A1 (en) * 2017-05-26 2018-11-29 Shannon Systems Ltd. Methods for controlling ssd (solid state disk) and apparatuses using the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102458A (en) * 2014-06-27 2014-10-15 北京兆易创新科技股份有限公司 Multi-core CPU (Central Processing Unit) load balancing method, multi-core CPU and solid state disk
CN106708745A (en) * 2016-12-05 2017-05-24 郑州云海信息技术有限公司 24-tub NVME dynamic allocation structure and method
US20180341579A1 (en) * 2017-05-26 2018-11-29 Shannon Systems Ltd. Methods for controlling ssd (solid state disk) and apparatuses using the same
CN107291392A (en) * 2017-06-21 2017-10-24 郑州云海信息技术有限公司 A kind of solid state hard disc and its reading/writing method
CN107957970A (en) * 2017-10-23 2018-04-24 记忆科技(深圳)有限公司 The means of communication and solid-state hard disk controller of a kind of heterogeneous polynuclear
CN108345506A (en) * 2018-03-31 2018-07-31 北京联想核芯科技有限公司 A kind of SSD hard disks under multiple CPU
CN108762674A (en) * 2018-05-24 2018-11-06 深圳忆联信息系统有限公司 Promote the method and device of SSD operating lags

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110058819A (en) * 2019-04-19 2019-07-26 深圳忆联信息系统有限公司 Host Command treating method and apparatus based on variable cache administrative mechanism
CN111831226A (en) * 2020-07-07 2020-10-27 山东华芯半导体有限公司 Method for accelerating processing of autonomously output NVME protocol command
CN111831226B (en) * 2020-07-07 2023-09-29 山东华芯半导体有限公司 Autonomous output NVME protocol command acceleration processing method

Similar Documents

Publication Publication Date Title
US10339079B2 (en) System and method of interleaving data retrieved from first and second buffers
CN102681952B (en) Method for writing data into memory equipment and memory equipment
US9734085B2 (en) DMA transmission method and system thereof
CN110199270B (en) Management method and device for storage equipment in storage system
CN112214158B (en) Execution device and method for host output and input commands and computer-readable storage medium
JP2019525354A (en) Method and apparatus for compressing addresses
WO2016202120A1 (en) Queue storage space management method and device, and computer storage medium
CN107229415A (en) A kind of data write method, data read method and relevant device, system
CN113032162B (en) Multi-process communication method based on shared memory backup mechanism
WO2014094421A1 (en) Data processing method and virtual machine management platform
CN104570063A (en) Parallel extraction method of seismic channel set of seismic data
WO2017054540A1 (en) Data processing method and device, server, and controller
CN105389268B (en) Data storage system and operation method thereof
CN109597577A (en) A kind of method, system and relevant apparatus handling NVME agreement read write command
CN101763433A (en) Data storage system and method
CN107291392A (en) A kind of solid state hard disc and its reading/writing method
CN111126619B (en) Machine learning method and device
CN109446147A (en) A kind of data interactive method of network storage equipment and pcie equipment
CN109933303B (en) A multi-user high-speed pseudo-random sequence generator circuit and its working method
CN115129572A (en) A performance testing method, device, equipment and medium
CN103827837A (en) Method, device and system for accessing solid state disk space
CN105187162A (en) Multi-granularity parallel rate de-matching method and apparatus
CN103605833A (en) Method and device for simulating performance of storage array system
CN104281545A (en) Data reading method and data reading equipment
CN104991745A (en) Data writing method and system of storage system

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190409

RJ01 Rejection of invention patent application after publication