CN104239252A - 数据存储系统的数据传输方法、装置及系统 - Google Patents
数据存储系统的数据传输方法、装置及系统 Download PDFInfo
- Publication number
- CN104239252A CN104239252A CN201310250186.1A CN201310250186A CN104239252A CN 104239252 A CN104239252 A CN 104239252A CN 201310250186 A CN201310250186 A CN 201310250186A CN 104239252 A CN104239252 A CN 104239252A
- Authority
- CN
- China
- Prior art keywords
- storage medium
- target storage
- data
- transfer instruction
- data transfer
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1694—Configuration of memory controller to different memory types
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本发明实施例提供一种数据存储系统的数据传输方法、装置及系统。该数据传输方法包括:通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行数据传输指令,其中,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。中央处理器可以通过数据传输设备上设置的一个中央处理器接口相连,从而完成中央处理器与不同存储介质的连接,进而节省了中央处理器针脚资源,提高了中央处理器针脚资源的利用率。
Description
技术领域
本发明实施例涉及数据存储技术领域,尤其涉及一种数据存储系统的数据传输方法、装置及系统。
背景技术
目前,以大规模分布式互联网应用和大数据应用为代表的云计算应用对数据中心服务器的性能提出了高要求,例如大规模分布式互联网应用往往需要提供低延迟、高吞吐率的性能,而大数据应用则需要大容量内存和高速IO的存储设备。
在现有的存储系统中,不同的存储介质使用不同的总线和接口与中央处理器相连,例如,整合在中央处理器内部的内存控制器通过内存总线直接与动态随机访问存储器(Dynamic Random Access Memory,以下简称DRAM)相连,中央处理器通过芯片组(南桥芯片)与外围的存储介质相连,其中,外围的存储介质可以为磁盘或闪存(Flash)。磁盘或闪存也可以通过快捷外设部件互联标准(Peripheral Component Interconnect Express,以下简称PCIe)转换接口直接与中央处理器连接。在磁盘要传输大块数据给DRAM时,需要通过输入输出(Input/Output,以下简称I/O)总线传给芯片组,再由芯片组传入中央处理器的内存控制器。内存控制器再将数据从中央处理器传出,发送给DRAM。
然而,现有技术中,中央处理器需要通过不同的接口与不同的存储介质进行数据传输,从而需要大量的中央处理器针脚资源,因而造成中央处理器针脚资源的浪费。
发明内容
本发明实施例提供一种数据存储系统的数据传输方法、装置及系统,以解决中央处理器针脚资源的浪费的问题。
第一个方面,本发明实施例提供一种数据存储系统,包括:
中央处理器,包括输入输出接口;
数据传输设备,包括中央处理器接口和至少两个存储介质接口,所述中央处理器接口与所述中央处理器的输入输出接口相连,各所述存储介质接口用于与至少两个不同类型的存储介质分别相连,所述数据传输设备用于根据所述中央处理器发送的数据传输指令在各接口之间传输数据。
在第一种可能的实现方式中,还包括:
适配器,设置在所述存储介质接口与所述存储介质之间,对所述数据传输设备和所述存储介质之间交互的数据传输指令进行格式转换。
在第二种可能的实现方式中,所述存储介质至少包括动态随机访问存储器和磁盘。
在第三种可能的实现方式中,所述数据传输设备还包括缓存空间,所述缓存空间用于根据所述中央处理器的所述数据传输指令将待传输的数据进行缓存。
第二个方面,本发明实施例提供一种数据传输方法,包括:
通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
在第一种可能的实现方式中,所述所述在所述目标存储介质中执行所述数据传输指令,包括:
根据所述数据传输指令,从所述目标存储介质之外获得与所述数据传输指令对应的待传输数据;
将所述待传输数据向所述数据传输设备上的所述目标存储介质接口传输;
将所述待传输数据通过所述目标存储介质接口发送给与所述存储介质连接的适配器,以进行所述数据传输指令格式转换后,转发给所述目标存储介质。
在第二种可能的实现方式中,所述在所述目标存储介质中执行所述数据传输指令,包括:
根据所述数据传输指令,从所述目标存储介质处获得待传输数据,并将所述待传输数据传输到所述目标存储介质接口;
将所述数据传输到所述中央处理器中或其他存储介质中。
结合第二个方面至第二个方面的第二种可能的实现方式,在第三种可能的实现方式中,还包括,
在获得待传输数据之后,缓存待传输数据。
结合第二个方面至第二个方面的第二种可能的实现方式,在第四种可能的实现方式中,所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为读指令时,将所述读指令中的所述地址前置码确定的目标存储介质地址作为目标地址;
根据所述目标地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取数据;
将读取的所述数据经所述中央处理器接口传输给所述中央处理器。
结合第二个方面至第二个方面的第二种可能的实现方式,在第五种可能的实现方式中,所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为写指令时,将所述写指令中地址前置码确定的目标存储介质地址作为目标地址;
通过所述中央处理器接口从所述中央处理器获取待写入数据;
将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的所述目标存储介质。
结合第二个方面至第二个方面的第二种可能的实现方式,在第五种可能的实现方式中,所述所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为移动指令时,根据所述移动指令中的所述地址前置码确定源目标存储介质地址和目标存储介质地址;
根据所述源目标存储介质地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取待写入数据;
将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的目标存储介质。
第三个方面,本发明实施例提供一种数据传输设备,包括:
接收模块,用于通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
处理模块,用于获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
在第一种可能的实现方式中,所述处理模块,具体用于根据所述数据传输指令,从所述目标存储介质之外获得与所述数据传输指令对应的待传输数据;将所述待传输数据向所述数据传输设备上的所述目标存储介质接口传输;将所述待传输数据通过所述目标存储介质接口发送给与所述存储介质连接的适配器,以进行所述数据传输指令格式转换后,转发给所述目标存储介质。
在第二种可能的实现方式中,还包括缓存模块;
所述处理模块,具体用于根据所述数据传输指令,从所述目标存储介质处获得待传输数据,并将所述待传输数据传输到所述目标存储介质接口;将所述数据传输到所述中央处理器中或其他存储介质中。
结合第二个方面的第一种可能的实现方式或第二个方面的第二种可能的实现方式,在第三种可能的实现方式中,还包括缓存模块,用于在获得待传输数据之后,缓存待传输数据。
结合第三个方面至第三个方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理模块:具体用于识别到所述数据传输指令为读指令时,将所述读指令中的所述地址前置码确定的目标存储介质地址作为目标地址;根据所述目标地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取数据,将读取的所述数据经所述接收模块传输给所述中央处理器。
结合第三个方面至第三个方面的第三种可能的实现方式,在第五种可能的实现方式中,所述处理模块:具体用于识别到所述数据传输指令为写指令时,将所述写指令中地址前置码确定的存储介质地址作为目标地址;通过所述接收模块从所述中央处理器获取待写入的数据;将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的所述目标存储介质。
结合第三个方面至第三个方面的第三种可能的实现方式,在第六种可能的实现方式中,所述处理模块:具体用于识别到所述数据传输指令为移动指令时,根据所述移动指令中的所述地址前置码确定源目标存储介质地址和目标存储介质地址;根据所述源目标存储介质地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取待写入数据;将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的目标存储介质。
结合第三个方面至第三个方面的第六种可能的实现方式,在第七种可能的实现方式中,所述中央处理器接口采用点对点连接方式与中央处理器连接;所述存储介质接口采用点对点连接方式与处理模块连接。
第四个方面,本发明实施例提供一种数据存储系统,包括:
数据传输设备;和
至少两个存储介质,其中所述存储介质的类型不同;
其中,所述数据传输设备包括:
中央处理器接口,用于接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
至少两个存储介质接口,各所述存储介质接口用于与至少两个不同类型的存储介质分别相连;
处理模块,用于获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,并转发所述数据传输指令对应的待传输数据,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
在第一种可能的实现方式中,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质地址;
指令发送单元,用于向所述目标存储介质发送所述数据传输指令;
数据转发单元,用于接收并转发所述数据传输指令对应的待传输数据。
结合第四个方面或第四个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述数据传输指令为读指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址;
指令发送单元,用于向所述目标存储介质发送所述读指令;
数据转发单元,用于接收所述读指令所读取的待传输数据并将转发给中央处理器。
结合第四个方面或第四个方面的第一种可能的实现方式,在第三种可能的实现方式中,所述数据传输指令为读指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址;
指令发送单元,用于向所述目标存储介质发送所述写指令;
数据转发单元,用于接收所述写指令对应的待传输数据并转发给目标存储介质。
结合第四个方面或第四个方面的第一种可能的实现方式,在第三种可能的实现方式中,,所述数据传输指令为移动指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址和源存储介质的地址;
指令发送单元,用于向所述目标存储介质发送读指令,向所述源存储介质发送写指令;
数据转发单元,用于接收所述目标存储介质发送的待传输数据并转发给源存储介质。
结合第四个方面至第四个方面的第三种可能的实现方式,在第四种可能的实现方式中,所述中央处理器接口采用点对点连接方式与中央处理器连接;所述存储介质接口采用点对点连接方式与处理模块连接。
结合第四个方面至第四个方面的第四种可能的实现方式,在第五种可能的实现方式中,还包括:
适配器,设置在所述存储介质接口与所述存储介质之间,对所述数据传输设备和所述存储介质之间交互的数据传输指令进行格式转换。
结合第四个方面至第四个方面的第五种可能的实现方式,在第六种可能的实现方式中,所述存储介质包括动态随机访问存储器、磁盘、固态硬盘SSD,闪存Flash,非易失行存储器NVM中的至少两种以上。
结合第四个方面至第四个方面的第六种可能的实现方式,在第七种可能的实现方式中,所述数据传输设备还包括缓存空间,所述缓存空间用于在获得待传输数据之后,缓存所述待传输数据。
结合第四个方面至第四个方面的第七种可能的实现方式,在第八种可能的实现方式中,还包括:
中央处理器,用于发送所述数据传输指令。
本发明实施例提供的数据传输方法,通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行数据传输指令,其中,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。中央处理器可以通过数据传输设备上设置的一个中央处理器接口相连,从而完成中央处理器与不同存储介质的连接,进而节省了中央处理器针脚资源,提高了中央处理器针脚资源的利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明数据存储系统实施例一的结构示意图;
图2为本发明数据传输方法实施例一的流程示意图;
图3为本发明数据传输方法实施例二的流程示意图;
图4为本发明数据传输方法实施例三的流程示意图;
图5为本发明数据传输方法实施例四的流程示意图;
图6为本发明数据传输设备实施例一的结构示意图;
图7为本发明数据存储系统实施例一的结构示意图;
图8为本发明数据存储系统实施例另一的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明数据存储系统实施例一的结构示意图,如图1所示,本实施例的数据存储系统包括有中央处理器101和数据传输设备102,具体的,
中央处理器101,包括输入输出接口;
数据传输设备102,包括中央处理器接口和至少两个存储介质接口,所述中央处理器接口与所述中央处理器的输入输出接口相连,各所述存储介质接口用于与至少两个不同类型的存储介质分别相连,每一个存储介质接口连接一种存储介质;数据传输设备用于根据中央处理器发送的数据传输指令在各接口之间传输数据。
其中,本实施例的数据存储系统还包括存储介质,该存储介质至少包括DRAM和磁盘。
具体的,数据传输设备上的存储介质接口可以通过点对点连接技术与DRAM进行连接,也可以通过点对点连接技术与闪存进行连接,还可以通过点对点连接技术与磁盘进行连接,其中,该点对点连接技术可以为高速串行总线。
需要说明的是,在本实施例中,数据传输设备可以用于根据中央处理器发送的数据传输指令在各接口之间传输数据,也就是说,数据传输设备可以根据中央处理器发送的数据传输指令,如,移动指令,读指令,写指令,在与数据传输设备各接口相连的中央处理器以及存储介质之间进行数据传输,例如,中央处理器与存储介质之间进行数据传输,各存储介质之间进行数据传输。
可选的,在上述实施例的基础上,该数据存储系统还包括适配器,该适配器可以设置在存储介质接口与存储介质之间,并对该数据传输设备和存储介质之间交互的数据传输指令进行格式转换。
具体的,若该目标存储介质为闪存,则可以在闪存与存储介质接口之间设置适配器,其中,该适配器可以对接收到的数据传输指令进行格式的转化,以使闪存可以获取数据传输指令,并进行与该数据传输指令相对应的操作。若该目标存储介质为磁盘,则可以在磁盘与存储介质接口之间设置适配器,其中,该适配器可以对接收到的数据传输指令进行格式的转化,以使磁盘可以获取数据传输指令,并进行与该数据传输指令相对应的操作。若该目标存储介质为DRAM,则不需要设置适配器在DRAM与存储介质接口之间。
本说明书实施例中,目标存储介质指需要对数据传输指令对应的待传输数据执行该数据传输指令所在的存储介质;与该目标存储介质相连接的存储介质接口称为目标存储介质接口。例如,数据传输指令为读指令时,目标存储介质为需要执行该读指令的存储有待读取数据的存储介质;当数据传输指令为写指令时,目标存储介质为需要执行该写指令写入数据的存储介质;当数据传输指令为移动指令时,目标存储介质为需要执行该移动指令将数据移动到其他位置的存储介质。
进一步的,在上述实施例的基础上,该数据传输设备还可以包括缓存空间,该缓存空间可以用于根据中央处理器的发送的数据传输指令将待传输的数据进行缓存。
具体的,中央处理器与存储介质之间的通信可以使用异步访存协议,从而可以使中央处理器与存储介质之间的传输数据不需要等待同步确认,即将传输数据发送给数据传输设备之后即可返回,也就是说,数据传输设备可以首先将数据缓存在本地,然后在适当的时候再将数据发给目的存储介质。这样可以避免在多种存储介质之间进行读或写时引起等待而导致输入输出性能的降低。例如,在磁盘接收到中央处理器通过数据传输设备发送的读指令之后,磁盘可以将需要读取的数据发送给数据传输设备,然而,磁盘的数据读取速度较慢,因此可以将一部分需要读取的数据缓存在数据传输设备之后,再发送给中央处理器,同时数据传输装置也可以决定是否将数据发送给DRAM缓存。或者,数据传输设备在接收中央处理器向磁盘发送的写指令之后,将待写入磁盘的一部分数据进行缓存之后,再将待写入数据、写指令和目标地址发送给磁盘适配器,并经过磁盘适配器转化写指令格式为磁盘可识别的指令后,接着进行写指令指示的写操作。数据传输设备不仅具有缓存功能,还负责中央处理器与不同存储介质之间的数据与命令的转发。
本发明实施例数据存储系统,通过中央处理器,包括输入输出接口;数据传输设备,包括中央处理器接口和至少两个存储介质接口,中央处理器接口与中央处理器的输入输出接口相连,各存储介质接口用于与至少两个不同类型的存储介质分别相连,每一个存储介质接口连接一种存储介质;数据传输设备用于根据中央处理器发送的数据传输指令在各接口之间传输数据,因此,中央处理器可以通过数据传输设备上设置的一个中央处理器接口相连,实现中央处理器与不同存储介质的连接,从而节省了中央处理器针脚资源,并且,节省的中央处理器针脚资源还可以用于其它用途,进而提高了中央处理器针脚资源的利用率。
图2为本发明数据传输方法实施例一的流程示意图,如图2所示,本实施例的执行装置可以为数据传输设备,该数据传输方法可以包括:
步骤201、通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,其中,该数据传输指令中携带有地址前置码。
本实施例的数据传输设备上配置的中央处理器接口可以与中央处理器相连,从而接收中央处理器发送的数据传输指令,具体的,数据传输设备上配置的中央处理器接口可以通过点对点连接技术与中央处理器进行连接,其中,该点对点连接技术可以为高速串行总线。
要说明的是,数据传输指令中的地址码可以分为两个部分,其中前部分为地址前置码,即存储介质接口,后部分为该存储介质接口对应存储介质的具体空间。
步骤202、获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行所述数据传输指令。
需要说明的是,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
在本实施例中,该数据传输设备还配置有至少两个存储介质接口,存储介质接口可以用于与不同类型的存储介质分别相连,每个存储介质接口可以连接一种存储介质。
本实施例可以适用在至少两种适用场景下,具体为:
第一种适用场景,该数据传输设备根据数据传输指令中携带的地址前置码确定与该地址前置码对应的目标存储介质;接着,根据数据传输指令,从目标存储介质之外获得与数据传输指令对应的待传输数据,并将待传输数据向数据传输设备上的目标存储介质接口传输;然后,将待传输数据通过目标存储介质接口发送给与存储介质连接的适配器,以进行数据传输指令格式转换后,转发给目标存储介质,该目标存储介质之外是指与数据传输设备连接的除目标存储介质之外的存储介质,或者为中央处理器。
第二种适用场景,根据数据传输指令中携带的地址前置码确定对应的目标存储介质之后,从目标存储介质接口连接的存储介质处获得待传输数据,并将待传输数据传输到目标存储介质接口;然后,将数据传输到与目标接口连接的中央处理器中或其他存储介质中。
需要说明的是,数据传输指令中携带有地址前置码,以使该数据传输指令根据该地址前置码确定对应的目标存储介质,举例来讲,CPU指示该数据传输指令进行操作的目的存储介质接口连接着目的存储介质。例如,可以使用不同的地址前置码对应不同的存储介质,如地址前置码001对应为DRAM、地址前置码010对应为Flash、地址前置码011对应为磁盘。在CPU发送的数据传输指令中携带有地址前置码,进一步的,还可以携带有该地址前置码对应的该存储介质的存储空间地址。从而存储介质在接收该数据传输指令之后,可以在该数据传输指令指示的存储空间进行具体的操作,如,数据读、取或是删除等。
本实施例的数据传输设备上还配置有至少两个存储介质接口,其中,存储介质接口可以连接不同类型的存储介质,每个存储介质接口可以连接一种存储介质,例如该存储介质可以为DRAM、闪存或磁盘。
具体的,数据传输设备上的存储介质接口可以通过点对点连接技术分别与DRAM和闪存进行连接,同时,数据传输设备上的存储介质接口还可以通过点对点连接技术与磁盘进行连接,其中,该点对点连接技术可以为高速串行总线。
不论数据传输设备上的存储介质接口具体与哪种存储介质相连,数据传输设备均可以根据数据传输指令在数据传输设备上配置的各接口之间进行数据传输,也就是说,数据传输设备可以根据数据传输指令,在与数据传输设备上各接口相连的存储介质与中央处理器之间进行数据传输,例如,中央处理器与存储介质之间的数据传输,各存储介质之间的数据传输。中央处理器可以通过数据传输设备上设置的一个中央处理器接口进行连接,从而实现中央处理器与不同存储介质的连接,进而节省了中央处理器针脚资源,并且,节省的中央处理器针脚还可以用于其它用途,进而提高了中央处理器针脚资源的利用率,同时,数据输入输出不受限于中央处理器针脚数,可以提高输入输出传输的并发度。
具体的,数据传输设备可以识别到中央处理器发送的数据传输指令为读指令时,获取该读指令中的目标地址,数据传输设备根据该目标地址,将数据传输指令发送给目标存储介质,并从目标存储介质接口所连接的目标存储介质中读取数据,接着,将读取的数据经中央处理器接口传输给中央处理器。
或者,数据传输设备可以识别到中央处理器发送的数据传输指令为写指令时,并获取写指令中的目标存储介质地址,再通过中央处理器接口从中央处理器获取待写入的数据,将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的所述目标存储介质。
或者,数据传输设备可以识别到数据传输指令为移动指令时,获取该移动指令中的源目标存储介质地址和目标存储介质地址,并根据该源目标存储介质地址,将数据传输指令发送给目标存储介质,并从目标存储介质接口所连接的目标存储介质中读取待写入数据,从而将读取的待写入数据以及数据传输指令传输到目标存储介质接口,通过目标存储介质接口将待写入数据写入与目标存储介质接口所连接的目标存储介质。
本发明实施例提供的数据传输方法,通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行数据传输指令,其中,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。中央处理器可以通过数据传输设备上设置的一个中央处理器接口相连,从而完成中央处理器与不同存储介质的连接,进而节省了中央处理器针脚资源,提高了中央处理器针脚资源的利用率。
在上述实施例的基础上,步骤202,根据数据传输指令在数据传输设备上配置的各接口之间进行数据传输,可以具体包括:
在获得待传输数据之后,缓存待传输数据。
具体的,根据该数据传输指令,通过数据传输设备上的源接口获取待传输数据,并对待传输数据进行缓存;
根据该数据传输指令,将缓存的待传输数据向数据传输设备上的目标接口传输。
在本实施例中,数据传输设备可以通过源接口,即中央处理器接口接收中央处理器发送的数据,在缓存一部分数据之后,再向根据数据传输指令指定确定的对应的目标存储介质传输该数据,其中,数据传输设备可以根据数据传输指令中的地址前置码确定对应的目标存储介质。或者,数据传输设备从源接口,即与目标存储介质接口连接的目标存储介质获取待传输数据,并将该待传输数据的一部分缓存在数据传输设备上之后,再向将该数据发送到中央处理器接口,其中,数据传输设备可以根据数据传输指令中的地址前置码确定对应的目标存储介质。或者,数据传输设备根据移动指令中的地址前置码确定源目标存储介质地址和目标存储介质地址,接着,将从源目标存储介质地址对应的存储介质获得待写入数据,并缓存一部分在数据传输设备上之后,再向目标存储介质地址对应的目标存储介质传输该数据。
在本实施例中,数据传输设备可以首先将待传输数据缓存在本地,然后在适当的时候再将待传输数据发送给目标存储介质,从而可以避免使用数据传输设备存取多种不同种类的存储介质而造成的输入输出性能的降低。
本实施例的数据传输设备不仅具有缓存功能,还负责中央处理器与不同存储介质间的数据与命令转发。同时为了避免不同存储介质的输入输出速度不同的影响,可以采用异步访存协议存取不同介质之间的数据,例如,中央处理器和存储介质之间进行数据传输时可以使用异步访存协议,在中央处理器传输数据给一个存储介质时,不需要等待该存储介质的确认,也就是说,中央处理器将数据发送给数据传输设备后即可返回。
需要说明的是,上述实施例的步骤202,获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行所述数据传输指令,具体有至少两种适用场景下:
第一种适用场景,该数据传输设备根据数据传输指令中携带的地址前置码确定对应的目标存储介质;接着,根据数据传输指令,通过数据传输设备上的源接口获取待传输数据,并对待传输数据进行缓存;然后,将缓存的待传输数据向数据传输设备上的目标存储介质接口传输;最后,将待传输数据通过目标存储介质接口发送给与目标存储介质连接的适配器,以进行数据传输指令格式转换后,转发给目标存储介质。
第二种适用场景,根据数据传输指令中携带的地址前置码确定对应的目标存储介质,接着,从与目标存储介质接口连接的目标存储介质处获得待传输数据,并将待传输数据传输到中央处理器接口;然后,缓存中央处理器接口上的数据之后,再将数据传输到中央处理器中。
举例来讲,数据传输设备可以根据数据传输指令确定目标存储介质,若该目标存储介质为DRAM,则数据传输设备可以将数据传输指令通过对应的存储介质接口发送给DRAM。若该目标存储介质为闪存,则数据传输设备可以将数据传输指令通过对应的存储介质接口发送给与闪存相连的适配器,其中,该适配器可以对接收到的数据传输指令进行格式的转化,以使闪存可以获取数据传输指令,并进行与该数据传输指令相对应的操作。若该目标存储介质为磁盘,则数据传输设备可以将数据传输指令通过对应的存储介质接口发送给与磁盘相连的适配器,其中,该适配器可以对接收到的数据传输指令进行格式的转化,以使磁盘可以获取数据传输指令,并进行与该数据传输指令相对应的操作。
图3为本发明数据传输方法实施例二的流程示意图,如图3所示,本实施例的数据传输设备可以与中央处理器、动态随机访问存储器、磁盘和闪存分别连接,在中央处理器向磁盘发送读指令的情况下,具体可以包括:
步骤301、数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令。
具体的,数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,其中,该数据传输指令可以为读指令,并且该读指令中包括有目标地址。
需要说明的是,中央处理器可以对DRAM、闪存和磁盘的存储空间分别编址,例如,可以使用不同的地址前置码对不同的存储介质的存储空间进行标识,例如使用001标识为DRAM的存储空间,010标识为闪存的存储空间,011标识为磁盘的存储空间。并可以将存储介质的存储空间的标识与存储介质的映射关系存储在数据传输设备中。
步骤302、数据传输设备识别到数据传输指令为读指令时,可以将读指令中的地址前置码确定的目标存储介质地址作为目标地址。
本实施例的数据传输设备可以识别到该数据传输指令为读指令,接着根据该读指令获得目标地址,也就是说,可以根据读指令中的地址前置码确定目标存储介质。需要说明的是,数据传输指令中的地址码可以分为两个部分,其中前部分为地址前置码,即存储介质接口对应的存储介质,后部分为该存储介质的具体空间。例如,数据传输设备根据存储介质的存储空间的标识与存储介质的存储空间的映射关系,确定该读指令的目标地址为磁盘存储空间的位置。
步骤303、数据传输设备根据该目标地址,从对应的存储介质接口所连接的存储介质中读取数据;
具体的,数据传输设备可以根据该目标地址为磁盘存储空间的位置,从与磁盘的适配器连接的存储介质接口发送读指令,磁盘的适配器可以将数据传输设备发送的读指令转化为磁盘可识别的格式之后,例如,磁盘的适配器可以将该读指令转化为串行高级技术配置(Serial Advanced TechnologyAttachment,以下简称SATA)读命令,并从读指令所指示的磁盘存储空间的位置读取读指令指示读取的数据,接着,磁盘将该数据通过适配器以及适配器与数据传输设备相连的接口发送给数据传输设备,即数据传输设备从对应的存储介质接口所连接的存储介质中读取数据。需要说明的是,与存储介质相连的适配器不对数据进行格式的转化,因此,磁盘通过适配器传输到数据传输设备的数据,不经过该适配器任何格式的转化。
步骤304、数据传输设备将读取的数据经中央处理器接口传输给中央处理器。
数据传输设备可以根据存储介质不同的传输速度,确定是否需要缓存一部分数据在数据传输设备中。
本实施例的磁盘传输速度较慢,因此,数据传输设备可以缓存一部分数据在数据传输设备之后,再向中央处理器发送数据,或者在向中央处理器发送数据的同时,还可以确定是否将数据发送给DRAM缓存。
需要说明的是,本实施例的存储介质不限制于是动态随机访问存储器、磁盘和闪存,也可以本领域技术人员所能理解的其他存储介质,同时中央处理器也不限制于向磁盘发送读指令,也可以向其他存储介质发送读指令。
图4为本发明数据传输方法实施例三的流程示意图,如图4所示,本实施例的数据传输设备可以与中央处理器、动态随机访问存储器、磁盘和闪存分别连接,在中央处理器向磁盘发送写指令的情况下,具体可以包括:
步骤401、数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令。
具体的,数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,其中,该数据传输指令可以为写指令,并且该写指令中包括有目标地址、待写入数据。
步骤402、数据传输设备识别到数据传输指令为写指令时,可以将写指令中地址前置码确定的目标存储介质地址作为目标地址。
本实施例的数据传输设备可以识别到该数据传输指令为写指令,接着根据该写指令获得目标地址,也就是说,可以根据写指令中的地址前置码确定目标存储介质。需要说明的是,数据传输指令中的地址码可以分为两个部分,其中前部分为地址前置码,即存储介质接口,后部分为该存储介质接口对应的存储介质的具体空间。例如,数据传输设备根据存储介质的存储空间的标识与存储介质的存储空间的映射关系,确定该读指令的目标地址为磁盘存储空间的位置,即待写入数据的目标地址。
步骤403、数据传输设备通过中央处理器接口从中央处理器获取待写的数据以及数据传输指令。
步骤404、根据目标地址,将待写入的数据以及数据传输指令通过对应的目标存储介质接口写入所连接的目标存储介质。
具体的,根据目标地址,将待写入的数据以及数据传输指令通过对应的存储介质接口写入所连接的存储介质,即将待写入的数据通过对应的与磁盘适配器相连的目标存储介质接口写入所连接的磁盘适配器。磁盘适配器可以将数据传输设备发送的写指令转化为磁盘可识别的格式之后,例如,磁盘的适配器可以将该写指令转化为SATA写命令,并向写指令所指示的磁盘存储空间的位置写入写指令所指示写入的数据。
需要说明的是,数据传输设备可以根据存储介质不同的传输速度,确定是否需要缓存一部分数据在数据传输设备中。即磁盘写速度较慢,因此,数据传输设备可以缓存一部分数据在数据传输设备之后,再向磁盘适配器发送待写入的数据和目标地址。
需要说明的是,本实施例的存储介质不限制于是动态随机访问存储器、磁盘和闪存,也可以本领域技术人员所能理解的其他存储介质,同时中央处理器也不限制于向磁盘发送写指令,也可以向其他存储介质发送写指令。
图5为本发明数据传输方法实施例四的流程示意图,如图5所示,本实施例的数据传输设备可以与中央处理器、动态随机访问存储器、磁盘和闪存分别连接,在中央处理器发送从磁盘读取数据存入DRAM的移动指令的情况下,具体可以包括:
步骤501、数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令。
具体的,数据传输设备可以通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,其中,该数据传输指令可以为移动指令。需要说明的是,在上层应用程序需要从磁盘读取数据到DRAM时,在数据传输设备接收到中央处理器发送的数据传输指令之前,上层应用程序首先在DRAM中分配数据缓存区,用于存放从磁盘读入的数据。
步骤502、数据传输设备可以识别到数据传输指令为移动指令时,根据移动指令中的地址前置码确定源目标存储介质地址和目标存储介质地址;
在本实施例中,中央处理器可以向数据传输设备发送数据传输指令,如,move指令,也就是在数据传输设备接收中央处理器发送的数据传输指令之后,数据传输设备可以识别到数据传输指令为移动指令,并获取移动指令中的源目标存储介质地址和目标存储介质地址,其中,该源目标存储介质地址为需要读取数据的地址,如,磁盘地址,该目标存储介质地址为数据将写入的地址,如,DRAM地址。进一步的,该传输指令中还可以包括有需要传输的数据大小。
步骤503、数据传输设备可以根据源目标存储介质地址,从对应的源目标存储介质接口所连接的源目标存储介质中读取数据;
本实施例的数据传输设备可以根据源目标存储介质地址,即磁盘地址,从数据传输设备上设置的磁盘接口连接到磁盘适配器,并通过磁盘适配器将读取数据的指令进行转化后,从磁盘中读取数据。
步骤504、数据传输设备可以将读取的数据通过目标存储介质地址写入所连接的存储介质。
举例来讲,数据传输设备可以将磁盘读取的数据通过目标地址,如DRAM地址对应的DRAM接口写入所连接的DRAM。
进一步的,考虑到磁盘的输入输出速度较慢,可以将从磁盘读取的一部分数据缓存在数据传输设备之后,再向DRAM发送数据。从而可以避免其他DRAM存取操作一直等待该写入操作的情况。
在磁盘与DRAM之间的数据传输完成之后,可以通过在DRAM缓冲区设置标记通知上层应用程序数据传输已经完成。此外,也可以通过向中央处理器发送中断表明传输完成。
需要说明的是,本实施例的数据传输设备在接收到数据传输指令之后,可以分别向磁盘发送读指令和待读取的数据地址,向DRAM发送写命令以及待写入数据的存放缓冲区地址。
图6为本发明数据传输设备实施例一的结构示意图。如图6所示,该数据传输设备,包括:接收模块601和处理模块602,其中,
接收模块601,用于通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,该数据传输指令中携带有地址前置码;
处理模块602,用于获得与地址前置码对应的目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,在目标存储介质中执行数据传输指令,其中,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
本实施例可以执行图1方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
进一步的,该数据传输设备,处理模块602,具体用于根据数据传输指令,从目标存储介质之外获得与数据传输指令对应的待传输数据;将待传输数据向数据传输设备上的目标存储介质接口传输;将待传输数据通过目标存储介质接口发送给与存储介质连接的适配器,以进行数据传输指令格式转换后,转发给目标存储介质。
在上述实施例的基础上,处理模块602,具体用于根据数据传输指令,从目标存储介质处获得待传输数据,并将待传输数据传输到目标存储介质接口;将数据传输到中央处理器中或其他存储介质中;
在上述实施例的基础上,该数据传输设备还可以包括:缓存模块603,其中,缓存模块603,用于在获得待传输数据之后,缓存待传输数据
进一步的,该处理模块602:具体用于识别到数据传输指令为读指令时,将读指令中的地址前置码确定的目标存储介质地址作为目标地址;根据目标地址,将数据传输指令发送给目标存储介质,并从目标存储介质接口所连接的目标存储介质中读取数据,将读取的数据经接收模块传输给中央处理器。
进一步的,该处理模块602:具体用于识别到数据传输指令为写指令时,将写指令中地址前置码确定的存储介质地址作为目标地址;通过接收模块601从中央处理器获取待写入的数据;将待写入的数据以及所述数据传输指令传输到目标接口,通过目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的目标存储介质。
进一步的,该处理模块602:具体用于识别到数据传输指令为移动指令时,根据传输指令中的地址前置码确定源目标存储介质地址和目标存储介质地址;根据源目标存储介质地址,将数据传输指令发送给目标存储介质,并从目标存储介质接口所连接的目标存储介质中读取待写入数据;将待写入数据以及数据传输指令传输到目标存储介质接口,通过目标存储介质接口将待写入数据写入与目标存储介质接口所连接的目标存储介质。
进一步的,中央处理器接口可以采用点对点连接方式与中央处理器连接;存储介质接口采用点对点连接方式与处理模块连接。
本实施例可以执行图2-图5中任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本实施例提供一种数据传输器,包括:处理器,该处理器可以执行该执行指令使得该数据传输器执行如上的方法。
本实施例可以执行图2~图5中任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明数据存储系统实施例一的结构示意图。如图7所示,该数据存储系统,包括:数据传输设备71和至少两个存储介质72,每个存储介质72的类型不同;其中,
数据传输设备71包括:中央处理器接口711、至少两个存储介质接口712和处理模块713。
中央处理器接口711,用于接收中央处理器发送的数据传输指令,数据传输指令中携带有地址前置码;
至少两个存储介质接口712,各存储介质接口712用于与至少两个不同类型的存储介质72分别相连;
处理模块713,用于获得与地址前置码对应的存储介质72,即目标存储介质,将数据传输指令通过与目标存储介质连接的目标存储介质接口发送到目标存储介质,并转发数据传输指令对应的待传输数据,其中,每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
在本发明实施例中,通过数据传输设备与至少两个存储介质相连,实现了通过中央处理器接口获取中央处理器发送的数据传输指令,并在不同类型的存储介质之间进行传输,从而节省了中央处理器针脚资源,并可以将节省的中央处理器针脚资源用于其它用途,进而提高了中央处理器针脚资源的利用率。
图8为本发明数据存储系统实施例二的结构示意图。如图8所示,在上述实施例的基础上,处理模块713可以包括:存储介质地址获得单元7131、指令发送单元7132和数据转发单元7133。其中,
存储介质地址获得单元7131,用于获得与地址前置码对应的目标存储介质地址;
指令发送单元7132,用于向目标存储介质发送数据传输指令;
数据转发单元7133,用于接收并转发数据传输指令对应的待传输数据。
需要说明的是,数据传输指令可以是读指令、写指令或者移动指令,相应的,在处理模块713接收到不同的数据传输指令之后,处理模块713具有不同的实现功能,具体为:
数据传输指令为读指令,处理模块713可以包括:
存储介质地址获得单元7131,用于获得与地址前置码对应的目标存储介质的地址;
指令发送单元7132,用于向目标存储介质发送读指令;
数据转发单元7133,用于接收读指令所读取的待传输数据并将转发给中央处理器。
可选的,数据传输指令为读指令,处理模块713包括:
存储介质地址获得单元7131,用于获得与地址前置码对应的目标存储介质的地址;
指令发送单元7132,用于向目标存储介质发送写指令;
数据转发单元7133,用于接收写指令对应的待传输数据并转发给目标存储介质。
可选的,数据传输指令为移动指令,处理模块713包括:
存储介质地址获得单元7131,用于获得与地址前置码对应的目标存储介质的地址和源存储介质的地址;
指令发送单元7132,用于向目标存储介质发送读指令,向源存储介质发送写指令;
数据转发单元7133,用于接收目标存储介质发送的待传输数据并转发给源存储介质。
在上述实施例的基础上,中央处理器接口采用点对点连接方式与中央处理器连接;存储介质接口采用点对点连接方式与处理模块713连接。
在上述实施例的基础上,该数据传输设备71还可以包括:
适配器704,设置在存储介质接口与存储介质之间,对数据传输设备71和存储介质之间交互的数据传输指令进行格式转换。
在上述实施例的基础上,该存储介质可以为动态随机访问存储器、磁盘、固态硬盘SSD,闪存Flash,非易失行存储器NVM中的至少两种。
进一步的,该数据传输设备71还包括缓存空间715,缓存空间715用于在获得待传输数据之后,缓存待传输数据。
在上述实施例的基础上,该系统,还可以包括:中央处理器,用于发送数据传输指令。
在上述本实施例中,可以执行图2-图5中任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (29)
1.一种数据存储系统,其特征在于,包括:
中央处理器,包括输入输出接口;
数据传输设备,包括中央处理器接口和至少两个存储介质接口,所述中央处理器接口与所述中央处理器的输入输出接口相连,各所述存储介质接口用于与至少两个不同类型的存储介质分别相连,所述数据传输设备用于根据所述中央处理器发送的数据传输指令在各接口之间传输数据。
2.根据权利要求1所述的系统,其特征在于,还包括:
适配器,设置在所述存储介质接口与所述存储介质之间,对所述数据传输设备和所述存储介质之间交互的数据传输指令进行格式转换。
3.根据权利要求1所述的系统,其特征在于,
所述存储介质至少包括动态随机访问存储器和磁盘。
4.根据权利要求1所述的系统,其特征在于,所述数据传输设备还包括缓存空间,所述缓存空间用于根据所述中央处理器的所述数据传输指令将待传输的数据进行缓存。
5.一种数据传输方法,其特征在于,包括:
通过数据传输设备上配置的中央处理器接口接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
6.根据权利要求5所述的数据传输方法,其特征在于,所述在所述目标存储介质中执行所述数据传输指令,包括:
根据所述数据传输指令,从所述目标存储介质之外获得与所述数据传输指令对应的待传输数据;
将所述待传输数据向所述数据传输设备上的所述目标存储介质接口传输;
将所述待传输数据通过所述目标存储介质接口发送给与所述存储介质连接的适配器,以进行所述数据传输指令格式转换后,转发给所述目标存储介质。
7.根据权利要求5所述的数据传输方法,其特征在于,所述在所述目标存储介质中执行所述数据传输指令,包括:
根据所述数据传输指令,从所述目标存储介质处获得待传输数据,并将所述待传输数据传输到所述目标存储介质接口;
将所述数据传输到所述中央处理器中或其他存储介质中。
8.根据权利要求6或7所述的数据传输方法,其特征在于,还包括,
在获得待传输数据之后,缓存待传输数据。
9.根据权利要求5-8任一项所述的数据传输方法,其特征在于,所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为读指令时,将所述读指令中的所述地址前置码确定的目标存储介质地址作为目标地址;
根据所述目标地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取数据;
将读取的所述数据经所述中央处理器接口传输给所述中央处理器。
10.根据权利要求5-8任一项所述的数据传输方法,其特征在于,所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为写指令时,将所述写指令中地址前置码确定的目标存储介质地址作为目标地址;
通过所述中央处理器接口从所述中央处理器获取待写入数据;
将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的所述目标存储介质。
11.根据权利要求5-8任一项所述的数据传输方法,其特征在于,所述获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,包括:
识别到所述数据传输指令为移动指令时,根据所述移动指令中的所述地址前置码确定源目标存储介质地址和目标存储介质地址;
根据所述源目标存储介质地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取待写入数据;
将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的目标存储介质。
12.一种数据传输设备,其特征在于,包括:
接收模块,用于接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
处理模块,用于获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,在所述目标存储介质中执行所述数据传输指令,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
13.根据权利要求12所述的数据传输设备,其特征在于,
所述处理模块,具体用于根据所述数据传输指令,从所述目标存储介质之外获得与所述数据传输指令对应的待传输数据;将所述待传输数据向所述数据传输设备上的所述目标存储介质接口传输;将所述待传输数据通过所述目标存储介质接口发送给与所述存储介质连接的适配器,以进行所述数据传输指令格式转换后,转发给所述目标存储介质。
14.根据权利要求12所述的数据传输设备,其特征在于,
所述处理模块,具体用于根据所述数据传输指令,从所述目标存储介质处获得待传输数据,并将所述待传输数据传输到所述目标存储介质接口;将所述数据传输到所述中央处理器中或其他存储介质中。
15.根据权利要求13或14所述的数据传输设备,其特征在于,还包括缓存模块,用于在获得待传输数据之后,缓存待传输数据。
16.根据权利要求12-15任一项所述的数据传输设备,其特征在于,所述处理模块:具体用于识别到所述数据传输指令为读指令时,将所述读指令中的所述地址前置码确定的目标存储介质地址作为目标地址;根据所述目标地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取数据,将读取的所述数据经所述接收模块传输给所述中央处理器。
17.根据权利要求12-15任一项所述的数据传输设备,其特征在于,所述处理模块:具体用于识别到所述数据传输指令为写指令时,将所述写指令中地址前置码确定的存储介质地址作为目标地址;通过所述接收模块从所述中央处理器获取待写入的数据;将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的所述目标存储介质。
18.根据权利要求12-15任一项所述的数据传输设备,其特征在于,所述处理模块:具体用于识别到所述数据传输指令为移动指令时,根据所述移动指令中的所述地址前置码确定源目标存储介质地址和目标存储介质地址;根据所述源目标存储介质地址,将所述数据传输指令发送给所述目标存储介质,并从所述目标存储介质接口所连接的所述目标存储介质中读取待写入数据;将所述待写入数据以及所述数据传输指令传输到所述目标存储介质接口,通过所述目标存储介质接口将所述待写入数据写入与所述目标存储介质接口所连接的目标存储介质。
19.根据权利要求12-18任一项所述的数据传输设备,其特征在于,所述中央处理器接口采用点对点连接方式与中央处理器连接;所述存储介质接口采用点对点连接方式与处理模块连接。
20.一种数据存储系统,其特征在于,包括:
数据传输设备;和
至少两个存储介质,其中所述存储介质的类型不同;
其中,所述数据传输设备包括:
中央处理器接口,用于接收中央处理器发送的数据传输指令,所述数据传输指令中携带有地址前置码;
至少两个存储介质接口,各所述存储介质接口用于与至少两个不同类型的存储介质分别相连;
处理模块,用于获得与所述地址前置码对应的目标存储介质,将数据传输指令通过与所述目标存储介质连接的目标存储介质接口发送到所述目标存储介质,并转发所述数据传输指令对应的待传输数据,其中,所述每一个地址前置码分别对应至少两个不同类型的存储介质中的一个。
21.根据权利要求20所述的系统,其特征在于,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质地址;
指令发送单元,用于向所述目标存储介质发送所述数据传输指令;
数据转发单元,用于接收并转发所述数据传输指令对应的待传输数据。
22.根据权利要求21所述的系统,其特征在于,所述数据传输指令为读指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址;
指令发送单元,用于向所述目标存储介质发送所述读指令;
数据转发单元,用于接收所述读指令所读取的待传输数据并将转发给中央处理器。
23.根据权利要求21所述的系统,其特征在于,所述数据传输指令为读指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址;
指令发送单元,用于向所述目标存储介质发送所述写指令;
数据转发单元,用于接收所述写指令对应的待传输数据并转发给目标存储介质。
24.根据权利要求21所述的系统,其特征在于,所述数据传输指令为移动指令,所述处理模块包括:
存储介质地址获得单元,用于获得与所述地址前置码对应的目标存储介质的地址和源存储介质的地址;
指令发送单元,用于向所述目标存储介质发送读指令,向所述源存储介质发送写指令;
数据转发单元,用于接收所述目标存储介质发送的待传输数据并转发给源存储介质。
25.根据权利要求20-24任一项所述的系统,其特征在于,所述中央处理器接口采用点对点连接方式与中央处理器连接;所述存储介质接口采用点对点连接方式与处理模块连接。
26.根据权利要求20-25任一项所述的系统,其特征在于,还包括:
适配器,设置在所述存储介质接口与所述存储介质之间,对所述数据传输设备和所述存储介质之间交互的数据传输指令进行格式转换。
27.根据权利要求20-26任一项所述的系统,其特征在于,
所述存储介质包括动态随机访问存储器、磁盘、固态硬盘SSD,闪存Flash,非易失行存储器NVM中的至少两种以上。
28.根据权利要求20-27任一项所述的系统,其特征在于,所述数据传输设备还包括缓存空间,所述缓存空间用于在获得待传输数据之后,缓存所述待传输数据。
29.根据权利要求20-28任一项所述的系统,其特征在于,还包括:
中央处理器,用于发送所述数据传输指令。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310250186.1A CN104239252A (zh) | 2013-06-21 | 2013-06-21 | 数据存储系统的数据传输方法、装置及系统 |
PCT/CN2014/080159 WO2014202003A1 (zh) | 2013-06-21 | 2014-06-18 | 数据存储系统的数据传输方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310250186.1A CN104239252A (zh) | 2013-06-21 | 2013-06-21 | 数据存储系统的数据传输方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104239252A true CN104239252A (zh) | 2014-12-24 |
Family
ID=52103966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310250186.1A Pending CN104239252A (zh) | 2013-06-21 | 2013-06-21 | 数据存储系统的数据传输方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104239252A (zh) |
WO (1) | WO2014202003A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872107A (zh) * | 2016-06-13 | 2016-08-17 | 浪潮电子信息产业股份有限公司 | 一种存储方法、一种存储服务端及一种存储系统 |
WO2018059572A1 (zh) * | 2016-09-30 | 2018-04-05 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN110069557A (zh) * | 2019-03-16 | 2019-07-30 | 平安科技(深圳)有限公司 | 数据传输方法、装置、设备及存储介质 |
CN110175179A (zh) * | 2019-04-15 | 2019-08-27 | 浙江大华技术股份有限公司 | 数据传输方法及系统、服务节点、存储装置 |
CN110781107A (zh) * | 2019-09-16 | 2020-02-11 | 北京领芯迅飞科技有限公司 | 基于dram接口的低延迟融合io控制方法和装置 |
CN112307064A (zh) * | 2020-10-29 | 2021-02-02 | 上海达梦数据库有限公司 | 一种数据管理系统、方法及存储介质 |
WO2022222375A1 (zh) * | 2021-04-23 | 2022-10-27 | 华为技术有限公司 | 传输数据的方法及存储装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1310369A (zh) * | 2000-02-22 | 2001-08-29 | 义隆电子股份有限公司 | 微处理器的串行传输扩充装置 |
CN1337718A (zh) * | 2000-06-16 | 2002-02-27 | 日本电气株式会社 | 存储器控制技术 |
CN1403921A (zh) * | 2002-09-26 | 2003-03-19 | 深圳市朗科科技有限公司 | 数据交换及存储方法与装置 |
CN1452743A (zh) * | 2000-07-06 | 2003-10-29 | 昂斯拜克电子公司 | 利用pc或无需pc即可读取几类闪速存储卡的闪速设备 |
US20100153591A1 (en) * | 2008-12-12 | 2010-06-17 | Samsung Electronics Co., Ltd. | Interface unit and electronic system including the same |
CN101788956A (zh) * | 2009-12-15 | 2010-07-28 | 福建星网锐捷网络有限公司 | 多通道数据存储方法、装置和多通道数据接收系统 |
US20110072185A1 (en) * | 2009-09-23 | 2011-03-24 | Sandisk Il Ltd. | Multi-protocol storage device bridge |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002007201A (ja) * | 2000-06-21 | 2002-01-11 | Nec Corp | メモリシステム、メモリインターフェース及びメモリチップ |
CN100346285C (zh) * | 2006-01-06 | 2007-10-31 | 华为技术有限公司 | 处理器芯片与存储控制系统及方法 |
-
2013
- 2013-06-21 CN CN201310250186.1A patent/CN104239252A/zh active Pending
-
2014
- 2014-06-18 WO PCT/CN2014/080159 patent/WO2014202003A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1310369A (zh) * | 2000-02-22 | 2001-08-29 | 义隆电子股份有限公司 | 微处理器的串行传输扩充装置 |
CN1337718A (zh) * | 2000-06-16 | 2002-02-27 | 日本电气株式会社 | 存储器控制技术 |
CN1452743A (zh) * | 2000-07-06 | 2003-10-29 | 昂斯拜克电子公司 | 利用pc或无需pc即可读取几类闪速存储卡的闪速设备 |
CN1403921A (zh) * | 2002-09-26 | 2003-03-19 | 深圳市朗科科技有限公司 | 数据交换及存储方法与装置 |
US20100153591A1 (en) * | 2008-12-12 | 2010-06-17 | Samsung Electronics Co., Ltd. | Interface unit and electronic system including the same |
US20110072185A1 (en) * | 2009-09-23 | 2011-03-24 | Sandisk Il Ltd. | Multi-protocol storage device bridge |
CN101788956A (zh) * | 2009-12-15 | 2010-07-28 | 福建星网锐捷网络有限公司 | 多通道数据存储方法、装置和多通道数据接收系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872107A (zh) * | 2016-06-13 | 2016-08-17 | 浪潮电子信息产业股份有限公司 | 一种存储方法、一种存储服务端及一种存储系统 |
US10976956B2 (en) | 2016-09-30 | 2021-04-13 | Huawei Technologies Co., Ltd. | Non-volatile memory persistence method and computing device |
WO2018059572A1 (zh) * | 2016-09-30 | 2018-04-05 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN107885671A (zh) * | 2016-09-30 | 2018-04-06 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN110088740A (zh) * | 2016-09-30 | 2019-08-02 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN110088740B (zh) * | 2016-09-30 | 2021-10-19 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN107885671B (zh) * | 2016-09-30 | 2021-09-14 | 华为技术有限公司 | 一种非易失性内存的持久化方法和计算设备 |
CN110069557A (zh) * | 2019-03-16 | 2019-07-30 | 平安科技(深圳)有限公司 | 数据传输方法、装置、设备及存储介质 |
CN110069557B (zh) * | 2019-03-16 | 2023-10-20 | 平安科技(深圳)有限公司 | 数据传输方法、装置、设备及存储介质 |
CN110175179A (zh) * | 2019-04-15 | 2019-08-27 | 浙江大华技术股份有限公司 | 数据传输方法及系统、服务节点、存储装置 |
CN110781107A (zh) * | 2019-09-16 | 2020-02-11 | 北京领芯迅飞科技有限公司 | 基于dram接口的低延迟融合io控制方法和装置 |
CN112307064A (zh) * | 2020-10-29 | 2021-02-02 | 上海达梦数据库有限公司 | 一种数据管理系统、方法及存储介质 |
WO2022222375A1 (zh) * | 2021-04-23 | 2022-10-27 | 华为技术有限公司 | 传输数据的方法及存储装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2014202003A1 (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104239252A (zh) | 数据存储系统的数据传输方法、装置及系统 | |
US9727503B2 (en) | Storage system and server | |
US9696942B2 (en) | Accessing remote storage devices using a local bus protocol | |
EP2763045B1 (en) | Method and apparatus for allocating memory space with write-combine attribute | |
EP2889780B1 (en) | Data processing system and data processing method | |
US9135190B1 (en) | Multi-profile memory controller for computing devices | |
CN108062285B (zh) | 一种访问NVMe存储设备的方法和NVMe存储设备 | |
EP2849076B1 (en) | Dma transmission method and system | |
US9395921B2 (en) | Writing data using DMA by specifying a buffer address and a flash memory address | |
US9213500B2 (en) | Data processing method and device | |
CN107229415B (zh) | 一种数据写方法、数据读方法及相关设备、系统 | |
US20160259568A1 (en) | Method and apparatus for storing data | |
WO2017084565A1 (zh) | 存储数据访问方法及相关的控制器、设备、主机和系统 | |
CN105224482A (zh) | 一种fpga加速卡高速存储系统 | |
CN103441948A (zh) | 一种数据访问方法、网卡及存储系统 | |
KR20210119529A (ko) | 스토리지 장치 컨텐츠를 스트리밍하는 시스템들 및 방법들 | |
US10951741B2 (en) | Computer device and method for reading or writing data by computer device | |
CN107957970A (zh) | 一种异构多核的通讯方法及固态硬盘控制器 | |
CN103403667A (zh) | 数据处理方法和设备 | |
CN102591823A (zh) | 一种具有指令队列功能的Nandflash控制器 | |
CN113468083A (zh) | 一种双端口NVMe控制器及控制方法 | |
CN115883022B (zh) | Dma传输控制方法、装置、电子设备及可读存储介质 | |
US9921753B2 (en) | Data replication across host systems via storage controller | |
CN106325377B (zh) | 外部设备扩展卡及输入输出外部设备的数据处理方法 | |
CN104580328A (zh) | 虚拟机迁移方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141224 |