CN107402723A - 读写数据的方法及存储系统 - Google Patents
读写数据的方法及存储系统 Download PDFInfo
- Publication number
- CN107402723A CN107402723A CN201710613362.1A CN201710613362A CN107402723A CN 107402723 A CN107402723 A CN 107402723A CN 201710613362 A CN201710613362 A CN 201710613362A CN 107402723 A CN107402723 A CN 107402723A
- Authority
- CN
- China
- Prior art keywords
- read
- data
- write
- target data
- sas
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
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)
- Bus Control (AREA)
Abstract
本申请提供一种读写数据的方法及存储系统,所述方法的一具体实施方式包括:获取针对所述SAS硬盘的读写操作请求;基于所述读写操作请求构建读写命令,并将所述读写命令发送给所述SAS硬盘,以及基于所述读写操作请求获取所述存储服务器对应的读写地址;获取目标数据;将所述目标数据存储在所述存储器中,并在满足读写条件时,从所述存储器中取出所述目标数据;执行读写操作。该实施方式使得各种存储服务器均能支持SAS接口,从而能够更好的采用SAS硬盘对存储服务器存储空间进行扩展,并且,由于存储器的使用,更有利于实现数据的读写操作,提高了存储系统的存储性能。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种读写数据的方法及存储系统。
背景技术
存储系统需要提供巨大的存储空间,一般来说,存储系统可以包括存储服务器,而仅仅依靠存储服务器的存储空间是无法满足对存储的需求的,必须对存储服务器的存储空间进行扩展。目前来说,SAS(Serial Attached SCSI,串行小型计算机系统接口)硬盘采用串行技术,从而具有较高的传输速度,并可以通过缩短连接线改善内部空间。因此,可以采用SAS硬盘扩展存储服务器的存储空间,然而,SAS硬盘采用了一种全新的接口,存储服务器可能并不支持这种接口,从而对存储服务器存储空间的扩展产生了限制。
发明内容
为了解决上述技术问题之一,本申请提供一种读写数据的方法及存储系统。
根据本申请实施例的第一方面,提供一种存储系统,所述存储系统包括存储服务器,现场可编程门阵列FPGA处理器,存储器以及串行小型计算机系统接口SAS硬盘;所述FPGA处理器与所述存储器电连接;并且,所述FPGA处理器与所述存储服务器通过高速外围组件互联PCIE总线相连接,与所述SAS硬盘通过SAS连接线相连接;
其中,所述存储服务器,用于向所述FPGA处理器发送初始请求;
所述FPGA处理器,用于接收所述存储服务器发送的初始请求,并基于所述初始请求获取针对所述SAS硬盘的读写操作请求;基于所述读写操作请求构建读写命令,并将所述读写命令发送给所述SAS硬盘,以在读取数据时,指示所述SAS硬盘返回目标数据,在写入数据时,指示所述SAS硬盘写入目标数据;以及基于所述读写操作请求获取所述存储服务器对应的读写地址;获取目标数据;其中,在读取数据时,从所述SAS硬盘获取所述目标数据;在写入数据时,根据所述读写地址从所述存储服务器获取所述目标数据;将所述目标数据存储在所述存储器中,并在满足读写条件时,从所述存储器中取出所述目标数据;执行读写操作;其中,在读取数据时,根据所述读写地址向所述存储服务器传输所述目标数据;在写入数据时,向所述SAS硬盘传输所述目标数据;
所述存储器,用于存储所述目标数据;
所述SAS硬盘,用于接收所述FPGA处理器发送的所述读写命令;在读取数据时,响应于所述读写命令,取出所述目标数据,并向所述FPGA处理器返回所述目标数据;在写入数据时,响应于所述读写命令,接收所述FPGA处理器发送的所述目标数据,并写入所述目标数据。
可选的,所述存储服务器包括DMA控制单元;所述FPGA处理器包括DMA解析单元;
所述存储服务器具体用于:
由所述DMA控制单元处理得到所述初始请求,并通过所述PCIE总线向所述FPGA处理器发送所述初始请求;
所述FPGA处理器具体用于:
接收所述存储服务器发送的所述初始请求,并通过所述DMA解析单元对所述初始请求进行解析,以得到所述读写操作请求。
可选的,所述FPGA处理器还包括命令处理单元以及数据处理单元,所述命令处理单元分别与所述DMA解析单元以及所述数据处理单元电连接;
所述FPGA处理器进一步具体用于:
所述命令处理单元根据所述读写操作请求构建读写命令,并通过所述SAS连接线向所述SAS硬盘发送所述读写命令;
所述命令处理单元根据所述读写操作请求获取所述读写地址,并向所述数据处理单元发送所述读写地址;
在读取数据时,所述数据处理单元根据所述读写地址通过所述PCIE总线从所述存储服务器获取所述目标数据;
在写入数据时,所述数据处理单元接收所述SAS硬盘返回的所述目标数据。
可选的,所述FPGA处理器进一步具体用于:
所述数据处理单元将所述目标数据存储在所述存储器中,在满足读写条件时,所述数据处理单元从所述存储器中取出所述目标数据。
可选的,所述FPGA处理器进一步具体用于:
在读取数据时,所述数据处理单元将所述目标数据通过所述PCIE总线传输给所述存储服务器,以完成读取操作;
在写入数据时,所述数据处理单元将所述目标数据通过所述SAS连接线传输给所述SAS硬盘,以完成写入操作。
根据本申请实施例的第二方面,提供一种读写数据的方法,应用于FPGA处理器,所述FPGA处理器与存储器电连接;并且,所述FPGA处理器与存储服务器通过PCIE总线相连接,与SAS硬盘通过SAS连接线相连接;所述方法包括:
步骤A:获取针对所述SAS硬盘的读写操作请求;
步骤B:基于所述读写操作请求构建读写命令,并将所述读写命令发送给所述SAS硬盘,以在读取数据时,指示所述SAS硬盘返回目标数据,在写入数据时,指示所述SAS硬盘写入目标数据;以及
步骤C:基于所述读写操作请求获取所述存储服务器对应的读写地址;
步骤D:获取目标数据;其中,在读取数据时,从所述SAS硬盘获取所述目标数据;在写入数据时,根据所述读写地址从所述存储服务器获取所述目标数据;
步骤E:将所述目标数据存储在所述存储器中,并在满足读写条件时,从所述存储器中取出所述目标数据;
步骤F:执行读写操作;其中,在读取数据时,根据所述读写地址向所述存储服务器传输所述目标数据;在写入数据时,向所述SAS硬盘传输所述目标数据。
可选的,所述FPGA处理器包括DMA解析单元;
所述步骤A包括:
接收所述存储服务器发送的经由所述存储服务器的DMA控制单元处理得到的初始请求,并通过所述DMA解析单元对所述初始请求进行解析,以得到所述读写操作请求。
可选的,所述FPGA处理器还包括命令处理单元以及数据处理单元,所述命令处理单元分别与所述DMA解析单元以及所述数据处理单元电连接;
所述步骤B包括:
所述命令处理单元根据所述读写操作请求构建读写命令,并通过所述SAS连接线向所述SAS硬盘发送所述读写命令;
所述步骤C包括:
所述命令处理单元根据所述读写操作请求获取所述读写地址,并向所述数据处理单元发送所述读写地址;
所述步骤D包括:
在读取数据时,所述数据处理单元根据所述读写地址通过所述PCIE总线从所述存储服务器获取所述目标数据;
在写入数据时,所述数据处理单元接收所述SAS硬盘通过所述SAS连接线返回的所述目标数据。
可选的,所述步骤E包括:
所述数据处理单元将所述目标数据存储在所述存储器中,在满足读写条件时,所述数据处理单元从所述存储器中取出所述目标数据。
可选的,所述步骤F包括:
在读取数据时,所述数据处理单元将所述目标数据通过所述PCIE总线传输给所述存储服务器,以完成读取操作;
在写入数据时,所述数据处理单元将所述目标数据通过所述SAS连接线传输给所述SAS硬盘,以完成写入操作。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请的实施例提供的本申请的上述实施例提供的读写数据的方法,通过获取针对SAS硬盘的读写操作请求,基于上述读写操作请求构建读写命令,并将该读写命令发送给SAS硬盘,基于该读写操作请求获取存储服务器对应的读写地址,获取目标数据,将目标数据存储在存储器中,并在满足读写条件时,从存储器中取出目标数据,并执行读写操作。从而使得各种存储服务器均能支持SAS接口,从而能够更好的采用SAS硬盘对存储服务器存储空间进行扩展,并且,由于存储器的使用,更有利于实现数据的读写操作,提高了存储系统的存储性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请根据一示例性实施例示出的一种存储系统读取数据的场景示意图;
图2是本申请根据一示例性实施例示出的一种存储系统写入数据的场景示意图;
图3是本申请根据一示例性实施例示出的一种读写数据的方法的流程图;
图4是本申请根据一示例性实施例示出的一种存储系统的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
如图1所示,图1是根据一示例性实施例示出的一种存储系统读取数据的场景示意图:在图1示出的场景中,存储系统可以包括存储服务器,FPGA(Field-Programmable GateArray,现场可编程门阵列)处理器,存储器以及SAS硬盘。FPGA处理器与存储器电连接,并且,FPGA处理器与存储服务器通过PCIE(peripheral component interconnect express,高速外围组件互联)总线相连接,与SAS硬盘通过SAS连接线相连接。
其中,存储服务器包括内存,SAS驱动单元,DMA(Direct Memory Access,直接内存存取)控制单元以及PCIE第一接口。内存与SAS驱动单元电连接,SAS驱动单元分别与DMA控制单元和PCIE第一接口电连接,DMA控制单元与PCIE第一接口电连接。
FPGA处理器包括DMA解析单元,命令处理单元,数据处理单元,PCIE第二接口以及SAS接口。DMA解析单元分别与PCIE第二接口和命令处理单元电连接,命令处理单元分别与数据处理单元和SAS接口电连接,数据处理单元分别与PCIE第二接口和SAS接口电连接。
具体来说,当从SAS硬盘中读取目标数据时,SAS驱动单元获取目标数据需要在内存中存储的目标地址,以及从SAS硬盘中取出目标数据的方式,作为参考信息。基于上述参考信息,SAS驱动单元指示DMA控制单元生成初始请求,并将初始请求传输到PCIE第一接口,并通过PCIE总线传输给PCIE第二接口。
DMA解析单元从PCIE第二接口获取到初始请求,对该初始请求进行解析,从而得到针对SAS硬盘的读取操作请求。命令处理单元从DMA解析单元获得该读取操作请求,基于该读取操作请求构建读取命令,并从该读取操作请求中获取目标地址。一方面,命令处理单元将读取命令传输到SAS接口,并通过SAS连接线传输给SAS硬盘。另一方面,命令处理单元将目标地址传输到数据处理单元。
SAS硬盘在读取命令的指示下,取出目标数据,并通过SAS连接线将目标数据传输到FPGA处理器的SAS接口,数据处理单元从该SAS接口获得目标数据,并将该目标数据暂时存储在存储器中。当上述PCIE总线空闲时,数据处理单元从该存储器中取出目标数据,并传输到PCIE第二接口,基于目标地址将目标数据通过PCIE总线直接传输到SAS驱动单元。SAS驱动单元可以根据目标地址将目标数据存储到内存中,从而完成数据的读取。
如图2所示,图2是根据一示例性实施例示出的一种存储系统写入数据的场景示意图:在图2示出的场景中,存储系统可以包括存储服务器,FPGA处理器,存储器以及SAS硬盘。FPGA处理器与存储器电连接,并且,FPGA处理器与存储服务器通过PCIE总线相连接,与SAS硬盘通过SAS连接线相连接。
其中,存储服务器包括内存,SAS驱动单元,DMA控制单元以及PCIE第一接口。内存与SAS驱动单元电连接,SAS驱动单元分别与DMA控制单元和PCIE第一接口电连接,DMA控制单元与PCIE第一接口电连接。
FPGA处理器包括DMA解析单元,命令处理单元,数据处理单元,PCIE第二接口以及SAS接口。DMA解析单元分别与PCIE第二接口和命令处理单元电连接,命令处理单元分别与数据处理单元和SAS接口电连接,数据处理单元分别与PCIE第二接口和SAS接口电连接。
具体来说,当向SAS硬盘中写入目标数据时,SAS驱动单元获取目标数据在内存中存储的目标地址,以及向SAS硬盘中写入目标数据的方式,作为参考信息。基于上述参考信息,SAS驱动单元指示DMA控制单元生成初始请求,并将初始请求传输到PCIE第一接口,并通过PCIE总线传输给PCIE第二接口。
DMA解析单元从PCIE第二接口获取到初始请求,对该初始请求进行解析,从而得到针对SAS硬盘的写入操作请求。命令处理单元从DMA解析单元获得该写入操作请求,基于该写入操作请求构建写入命令,并从该写入操作请求中获取目标地址。一方面,命令处理单元将写入命令传输到SAS接口,并通过SAS连接线传输给SAS硬盘。另一方面,命令处理单元将目标地址传输到数据处理单元。
数据处理单元根据目标地址,通过上述PCIE总线直接指示SAS驱动单元从内存中取出并返回目标数据。数据处理单元接收SAS驱动单元通过上述PCIE总线返回的目标数据,并将该目标数据暂时存储在存储器中。SAS硬盘在写入命令的指示下,准备写入空间。当准备完毕后,数据处理单元从该存储器中取出目标数据,并传输到SAS接口,通过SAS连接线传输到SAS硬盘。SAS硬盘可以根据写入命令将目标数据存储写入空间,从而完成数据的写入。
如图3所示,图3是根据一示例性实施例示出的一种读写数据的方法的流程图,该方法可以应用于FPGA处理器中。该FPGA处理器与存储器电连接。并且,该FPGA处理器与存储服务器通过PCIE总线相连接,与SAS硬盘通过SAS连接线相连接。该方法包括以下步骤:
在步骤301中,获取针对SAS硬盘的读写操作请求。
在本实施例中,可选地,FPGA处理器可以包括DMA解析单元。具体来说,FPGA处理器接收存储服务器发送的经由存储服务器的DMA控制单元处理得到的初始请求,并通过DMA解析单元对初始请求进行解析,以得到读写操作请求。
在步骤302中,基于上述读写操作请求构建读写命令,并将该读写命令发送给SAS硬盘。
在本实施例中,可选地,FPGA处理器还可以包括命令处理单元以及数据处理单元,命令处理单元分别与DMA解析单元以及数据处理单元电连接。
具体来说,命令处理单元可以根据该读写操作请求构建读写命令,并通过SAS连接线向SAS硬盘发送该读写命令。其中,当读取数据时,该读写命令用于指示SAS硬盘取出并返回目标数据,当写入数据时,该读写命令用于指示SAS硬盘写入目标数据。
在步骤303中,基于该读写操作请求获取存储服务器对应的读写地址。
在本实施例中,具体来说,命令处理单元可以根据读写操作请求获取读写地址,并向数据处理单元发送该读写地址。
在步骤304中,获取目标数据。
在本实施例中,在读取数据时,可以从SAS硬盘获取目标数据。在写入数据时,可以根据读写地址从存储服务器获取目标数据。具体来说,在读取数据时,数据处理单元可以根据读写地址通过PCIE总线从存储服务器获取目标数据;在写入数据时,数据处理单元可以接收SAS硬盘通过SAS连接线返回的目标数据。
在步骤305中,将目标数据存储在存储器中,并在满足读写条件时,从存储器中取出目标数据。
在本实施例中,数据处理单元可以将目标数据存储在存储器中,在满足读写条件时,数据处理单元从存储器中取出目标数据。
在步骤306中,执行读写操作。
在本实施例中,在读取数据时,可以根据读写地址向存储服务器传输所述目标数据;在写入数据时,向SAS硬盘传输目标数据。具体来说,在读取数据时,数据处理单元可以将目标数据通过PCIE总线传输给存储服务器,以完成读取操作;在写入数据时,数据处理单元将目标数据通过SAS连接线传输给SAS硬盘,以完成写入操作。
本申请的上述实施例提供的读写数据的方法,通过获取针对SAS硬盘的读写操作请求,基于上述读写操作请求构建读写命令,并将该读写命令发送给SAS硬盘,基于该读写操作请求获取存储服务器对应的读写地址,获取目标数据,将目标数据存储在存储器中,并在满足读写条件时,从存储器中取出目标数据,并执行读写操作。从而使得各种存储服务器均能支持SAS接口,从而能够更好的采用SAS硬盘对存储服务器存储空间进行扩展,并且,由于存储器的使用,更有利于实现数据的读写操作,提高了存储系统的存储性能。
应当注意,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
与前述读写数据的方法实施例相对应,本申请还提供了存储系统的实施例。
如图4所示,图4是本申请根据一示例性实施例示出的一种存储系统框图,该存储系统可以包括:存储服务器401,FPGA处理器402,存储器403以及SAS硬盘404。FPGA处理器402与存储器403电连接。并且,FPGA处理器402与存储服务器401通过PCIE总线相连接,与SAS硬盘404通过SAS连接线相连接。
其中,存储服务器401,用于向FPGA处理器发送初始请求。
FPGA处理器402,用于接收存储服务器401发送的初始请求,并基于该初始请求获取针对SAS硬盘404的读写操作请求。基于该读写操作请求构建读写命令,并将该读写命令发送给SAS硬盘404,以在读取数据时,指示SAS硬盘404返回目标数据,在写入数据时,指示SAS硬盘404写入目标数据。以及基于该读写操作请求获取存储服务器401对应的读写地址,获取目标数据。其中,在读取数据时,从SAS硬盘404获取目标数据,在写入数据时,根据读写地址从存储服务器401获取目标数据。将目标数据存储在存储器403中,并在满足读写条件时,从存储器403中取出目标数据。执行读写操作,其中,在读取数据时,根据读写地址向存储服务器401传输目标数据。在写入数据时,向SAS硬盘404传输目标数据。
存储器403,用于存储目标数据。
SAS硬盘404,用于接收FPGA处理器402发送的读写命令,在读取数据时,响应于该读写命令,取出目标数据,并向FPGA处理器402返回目标数据。在写入数据时,响应于该读写命令,接收FPGA处理器402发送的目标数据,并写入目标数据。
在一些可选实施方式中,存储服务器401可以包括DMA控制单元,FPGA处理器402可以包括DMA解析单元。
其中,存储服务器401具体用于:由DMA控制单元处理得到初始请求,并通过PCIE总线向FPGA处理器402发送该初始请求。
FPGA处理器402具体用于:接收存储服务器401发送的初始请求,并通过DMA解析单元对该初始请求进行解析,以得到读写操作请求。
在另一些可选实施方式中,FPGA处理器402还可以包括命令处理单元以及数据处理单元,命令处理单元分别与DMA解析单元以及数据处理单元电连接。
FPGA处理器402进一步具体用于:命令处理单元根据读写操作请求构建读写命令,并通过SAS连接线向SAS硬盘404发送该读写命令。命令处理单元根据读写操作请求获取读写地址,并向数据处理单元发送读写地址。在读取数据时,数据处理单元根据读写地址通过PCIE总线从存储服务器401获取目标数据。在写入数据时,数据处理单元接收SAS硬盘404返回的目标数据。
在另一些可选实施方式中,FPGA处理器402进一步具体用于:数据处理单元将目标数据存储在存储器403中,在满足读写条件时,数据处理单元从存储器403中取出目标数据。
在另一些可选实施方式中,FPGA处理器402进一步具体用于:在读取数据时,数据处理单元将目标数据通过PCIE总线传输给存储服务器401,以完成读取操作;在写入数据时,数据处理单元将目标数据通过SAS连接线传输给SAS硬盘404,以完成写入操作。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种存储系统,其特征在于,所述存储系统包括存储服务器,现场可编程门阵列FPGA处理器,存储器以及串行小型计算机系统接口SAS硬盘;所述FPGA处理器与所述存储器电连接;并且,所述FPGA处理器与所述存储服务器通过高速外围组件互联PCIE总线相连接,与所述SAS硬盘通过SAS连接线相连接;
其中,所述存储服务器,用于向所述FPGA处理器发送初始请求;
所述FPGA处理器,用于接收所述存储服务器发送的初始请求,并基于所述初始请求获取针对所述SAS硬盘的读写操作请求;基于所述读写操作请求构建读写命令,并将所述读写命令发送给所述SAS硬盘,以在读取数据时,指示所述SAS硬盘返回目标数据,在写入数据时,指示所述SAS硬盘写入目标数据;以及基于所述读写操作请求获取所述存储服务器对应的读写地址;获取目标数据;其中,在读取数据时,从所述SAS硬盘获取所述目标数据;在写入数据时,根据所述读写地址从所述存储服务器获取所述目标数据;将所述目标数据存储在所述存储器中,并在满足读写条件时,从所述存储器中取出所述目标数据;执行读写操作;其中,在读取数据时,根据所述读写地址向所述存储服务器传输所述目标数据;在写入数据时,向所述SAS硬盘传输所述目标数据;
所述存储器,用于存储所述目标数据;
所述SAS硬盘,用于接收所述FPGA处理器发送的所述读写命令;在读取数据时,响应于所述读写命令,取出所述目标数据,并向所述FPGA处理器返回所述目标数据;在写入数据时,响应于所述读写命令,接收所述FPGA处理器发送的所述目标数据,并写入所述目标数据。
2.根据权利要求1所述的存储系统,其特征在于,所述存储服务器包括DMA控制单元;所述FPGA处理器包括DMA解析单元;
所述存储服务器具体用于:
由所述DMA控制单元处理得到所述初始请求,并通过所述PCIE总线向所述FPGA处理器发送所述初始请求;
所述FPGA处理器具体用于:
接收所述存储服务器发送的所述初始请求,并通过所述DMA解析单元对所述初始请求进行解析,以得到所述读写操作请求。
3.根据权利要求2所述的存储系统,其特征在于,所述FPGA处理器还包括命令处理单元以及数据处理单元,所述命令处理单元分别与所述DMA解析单元以及所述数据处理单元电连接;
所述FPGA处理器进一步具体用于:
所述命令处理单元根据所述读写操作请求构建读写命令,并通过所述SAS连接线向所述SAS硬盘发送所述读写命令;
所述命令处理单元根据所述读写操作请求获取所述读写地址,并向所述数据处理单元发送所述读写地址;
在读取数据时,所述数据处理单元根据所述读写地址通过所述PCIE总线从所述存储服务器获取所述目标数据;
在写入数据时,所述数据处理单元接收所述SAS硬盘返回的所述目标数据。
4.根据权利要求3所述的存储系统,其特征在于,所述FPGA处理器进一步具体用于:
所述数据处理单元将所述目标数据存储在所述存储器中,在满足读写条件时,所述数据处理单元从所述存储器中取出所述目标数据。
5.根据权利要求4所述的存储系统,其特征在于,所述FPGA处理器进一步具体用于:
在读取数据时,所述数据处理单元将所述目标数据通过所述PCIE总线传输给所述存储服务器,以完成读取操作;
在写入数据时,所述数据处理单元将所述目标数据通过所述SAS连接线传输给所述SAS硬盘,以完成写入操作。
6.一种读写数据的方法,应用于FPGA处理器,其特征在于,所述FPGA处理器与存储器电连接;并且,所述FPGA处理器与存储服务器通过PCIE总线相连接,与SAS硬盘通过SAS连接线相连接;所述方法包括:
步骤A:获取针对所述SAS硬盘的读写操作请求;
步骤B:基于所述读写操作请求构建读写命令,并将所述读写命令发送给所述SAS硬盘,以在读取数据时,指示所述SAS硬盘返回目标数据,在写入数据时,指示所述SAS硬盘写入目标数据;以及
步骤C:基于所述读写操作请求获取所述存储服务器对应的读写地址;
步骤D:获取目标数据;其中,在读取数据时,从所述SAS硬盘获取所述目标数据;在写入数据时,根据所述读写地址从所述存储服务器获取所述目标数据;
步骤E:将所述目标数据存储在所述存储器中,并在满足读写条件时,从所述存储器中取出所述目标数据;
步骤F:执行读写操作;其中,在读取数据时,根据所述读写地址向所述存储服务器传输所述目标数据;在写入数据时,向所述SAS硬盘传输所述目标数据。
7.根据权利要求6所述的方法,其特征在于,所述FPGA处理器包括DMA解析单元;
所述步骤A包括:
接收所述存储服务器发送的经由所述存储服务器的DMA控制单元处理得到的初始请求,并通过所述DMA解析单元对所述初始请求进行解析,以得到所述读写操作请求。
8.根据权利要求7所述的方法,其特征在于,所述FPGA处理器还包括命令处理单元以及数据处理单元,所述命令处理单元分别与所述DMA解析单元以及所述数据处理单元电连接;
所述步骤B包括:
所述命令处理单元根据所述读写操作请求构建读写命令,并通过所述SAS连接线向所述SAS硬盘发送所述读写命令;
所述步骤C包括:
所述命令处理单元根据所述读写操作请求获取所述读写地址,并向所述数据处理单元发送所述读写地址;
所述步骤D包括:
在读取数据时,所述数据处理单元根据所述读写地址通过所述PCIE总线从所述存储服务器获取所述目标数据;
在写入数据时,所述数据处理单元接收所述SAS硬盘通过所述SAS连接线返回的所述目标数据。
9.根据权利要求8所述的方法,其特征在于,所述步骤E包括:
所述数据处理单元将所述目标数据存储在所述存储器中,在满足读写条件时,所述数据处理单元从所述存储器中取出所述目标数据。
10.根据权利要求9所述的方法,其特征在于,所述步骤F包括:
在读取数据时,所述数据处理单元将所述目标数据通过所述PCIE总线传输给所述存储服务器,以完成读取操作;
在写入数据时,所述数据处理单元将所述目标数据通过所述SAS连接线传输给所述SAS硬盘,以完成写入操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710613362.1A CN107402723B (zh) | 2017-07-25 | 2017-07-25 | 读写数据的方法及存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710613362.1A CN107402723B (zh) | 2017-07-25 | 2017-07-25 | 读写数据的方法及存储系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107402723A true CN107402723A (zh) | 2017-11-28 |
CN107402723B CN107402723B (zh) | 2020-05-12 |
Family
ID=60402188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710613362.1A Active CN107402723B (zh) | 2017-07-25 | 2017-07-25 | 读写数据的方法及存储系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107402723B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958661A (zh) * | 2018-07-12 | 2018-12-07 | 江苏慧学堂系统工程有限公司 | 一种计算机系统及数据读写方法 |
CN109445686A (zh) * | 2018-09-28 | 2019-03-08 | 方信息科技(上海)有限公司 | 一种存储磁盘以及存取数据的方法 |
CN114461134A (zh) * | 2021-11-19 | 2022-05-10 | 中航航空电子有限公司 | 硬盘零碎块读写装置、方法、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105138469A (zh) * | 2015-08-28 | 2015-12-09 | 北京腾凌科技有限公司 | 一种数据读写方法以及主板 |
CN106155586A (zh) * | 2016-05-31 | 2016-11-23 | 华为技术有限公司 | 一种存储方法、服务器及存储控制器 |
CN106598883A (zh) * | 2016-11-01 | 2017-04-26 | 北京腾凌科技有限公司 | 基于fpga的sas错误状态命令的处理方法及装置 |
US20170177222A1 (en) * | 2014-03-08 | 2017-06-22 | Diamanti, Inc. | Methods and systems for data storage using solid state drives |
-
2017
- 2017-07-25 CN CN201710613362.1A patent/CN107402723B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170177222A1 (en) * | 2014-03-08 | 2017-06-22 | Diamanti, Inc. | Methods and systems for data storage using solid state drives |
CN105138469A (zh) * | 2015-08-28 | 2015-12-09 | 北京腾凌科技有限公司 | 一种数据读写方法以及主板 |
CN106155586A (zh) * | 2016-05-31 | 2016-11-23 | 华为技术有限公司 | 一种存储方法、服务器及存储控制器 |
CN106598883A (zh) * | 2016-11-01 | 2017-04-26 | 北京腾凌科技有限公司 | 基于fpga的sas错误状态命令的处理方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958661A (zh) * | 2018-07-12 | 2018-12-07 | 江苏慧学堂系统工程有限公司 | 一种计算机系统及数据读写方法 |
CN109445686A (zh) * | 2018-09-28 | 2019-03-08 | 方信息科技(上海)有限公司 | 一种存储磁盘以及存取数据的方法 |
CN114461134A (zh) * | 2021-11-19 | 2022-05-10 | 中航航空电子有限公司 | 硬盘零碎块读写装置、方法、计算机设备和存储介质 |
CN114461134B (zh) * | 2021-11-19 | 2024-05-14 | 中航航空电子有限公司 | 硬盘零碎块读写装置、方法、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107402723B (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110232037B (zh) | 主机系统及其方法和加速装置 | |
CN106104500B (zh) | 存储数据的方法和设备 | |
CN106598480B (zh) | 具有接口控制机制的电子系统及其操作方法 | |
JP5181141B2 (ja) | 入出力処理システムにおいて間接データ・アドレッシングを提供するための装置、並びにその方法およびコンピュータ・プログラム | |
US10540307B1 (en) | Providing an active/active front end by coupled controllers in a storage system | |
US20070005896A1 (en) | Hardware oriented host-side native command queuing tag management | |
CN102388357B (zh) | 访问存储设备的方法及系统 | |
US10620841B2 (en) | Transfer of object memory references in a data storage device | |
CN102270173A (zh) | 基于scsi驱动层的故障注入工具 | |
CN109597640B (zh) | 一种应用程序的账号管理方法、装置、设备和介质 | |
US11923992B2 (en) | Modular system (switch boards and mid-plane) for supporting 50G or 100G Ethernet speeds of FPGA+SSD | |
CN107402723A (zh) | 读写数据的方法及存储系统 | |
US20040162926A1 (en) | Serial advanced technology attachment interface | |
CN104737150A (zh) | 使用在万维网浏览器中运行的HTML5KVM/vMEDIA客户端访问盘镜像文件的系统和方法 | |
CN105408875A (zh) | 在存储器接口上的分布式过程执行和文件系统 | |
US9245613B2 (en) | Storage interface apparatus for solid state drive tester | |
US6851023B2 (en) | Method and system for configuring RAID subsystems with block I/O commands and block I/O path | |
CN109347899A (zh) | 在分布式存储系统中写入日志数据的方法 | |
CN108694052A (zh) | 一种固件升级方法、固件升级装置及固件升级系统 | |
US6105016A (en) | Data acquisition system | |
CN102868684A (zh) | 一种光纤通道目标器及光纤通道目标器实现方法 | |
CN105938461A (zh) | 一种dma数据传输方法、装置以及网络设备 | |
JP2009140062A (ja) | ストレージ装置とストレージシステム及びパス情報設定方法 | |
US9253276B2 (en) | Multi-protocol bridge with integrated performance accelerating cache | |
CN114327248A (zh) | 存储节点、存储设备及网络芯片 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |