CN107077438B - 通过通信介质的部分进行通信 - Google Patents
通过通信介质的部分进行通信 Download PDFInfo
- Publication number
- CN107077438B CN107077438B CN201480082915.XA CN201480082915A CN107077438B CN 107077438 B CN107077438 B CN 107077438B CN 201480082915 A CN201480082915 A CN 201480082915A CN 107077438 B CN107077438 B CN 107077438B
- Authority
- CN
- China
- Prior art keywords
- controllers
- storage
- communication medium
- electronic card
- support substrate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
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/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
- G06F3/0658—Controller construction arrangements
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- G06F3/0688—Non-volatile semiconductor memory arrays
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)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种电子卡,包括:支撑基板、在所述支撑基板上的多个存储设备、以及在所述支撑基板上的多个控制器,所述多个控制器用于管理对相应的多个存储设备的访问,其中所述多个控制器和所述多个存储设备被设置成根据独立磁盘冗余阵列(RAID)模式来存储数据。
Description
背景技术
诸如计算机或其他类型的电子设备的***可包括一端口,电子卡可连接至该端口。可移除地连接至***端口的电子卡可以被称为外设卡、扩展卡等。电子卡可包括某些部件,一旦电子卡连接至***端口,这些部件提供***可访问的功能。
附图说明
结合下面的附图描述一些实现方式。
图1是根据一些实现方式的示例电子卡的框图。
图2是根据一些实现方式的包括主机***和电子卡的示例设置的框图。
图3-图5是图示根据一些实现方式将通信介质分成多个部分以允许与存储卡的存储控制器独立通信的示意图。
图6是根据可替代的实现方式的示例存储卡的示意图。
图7是根据一些实现方式的示例主机***的示意图。
图8是根据一些实现方式的过程的流程图。
具体执行方式
***(例如,计算机、存储服务器、通信服务器等)可包括端口,电子卡(也被称为外设卡、扩展卡等)可以可移除地连接至该端口。不同类型的电子卡可连接至***的不同端口。在一些情况下,相同类型的多个电子卡可连接至***的多个端口。例如,多个存储卡可连接至***的多个相应的端口。存储卡可包括一个存储设备(或多个存储设备)和管理存储设备上的数据的访问的关联的存储控制器。
多个存储卡与***相应的端口的连接允许使用独立磁盘冗余阵列(RAID)模式的跨多个存储卡的数据存储。作为示例,RAID 0模式跨多个存储卡条带化(stripe)数据,其中条带化数据指将连续的数据分成可存储在不同的存储卡中的多个段。可从多个存储卡并行访问该多个段,以提高数据访问的吞吐量。
作为另一示例,RAID 1模式使得第一存储卡上存储的数据的镜像副本还存储在第二存储卡上。数据的镜像副本是在存储在第一存储卡上的原始数据不再可访问的情况下能够访问的数据的冗余备份,原始数据不再可访问例如是因为第一存储卡的故障或错误,或因为原始数据的损坏。
在一些情况下,将多个存储卡连接至相应的端口可能不是有效的。每个存储卡与成本关联,并且因此,将多个存储卡连接至***增加了与运行***关联的整体成本。此外,将多个存储卡连接至多个端口以提供具体应用(例如,根据RAID模式的数据存储)意味着减少数量的***端口可用于其他电子卡的连接。
如图1中所示,根据一些实现方式,提供电子卡(且更具体地,存储卡)100,其包括存储控制器104-1和104-2以及关联的存储设备106-1、106-2的多个集合102-1、102-2。存储控制器104-1和104-2可以是物理上分离的控制器,或可替代地,存储控制器可以是逻辑上分离的控制器,其是同一物理设备或程序包的部分。例如,逻辑上分离的控制器可以是运行在同一物理设备或程序包上的虚拟控制器。
存储设备106-1、106-2可包括固态存储设备(例如,闪存设备、动态随机存取存储器设备、静态随机存取存储器设备等)。可替代地,存储设备106-1、106-2可以是基于磁盘的存储设备。
尽管图1示出每个存储控制器104-1或104-2分别连接至一个相应的存储设备106-1或106-2,但要注意,存储控制器可连接至多个存储设备,以管理多个存储设备上的数据的访问。
存储控制器能够接收请求(例如,读请求、写请求等),以访问该存储控制器所连接的相应的存储设备(或多个存储设备)中的数据。响应于该请求,存储控制器通过访问(例如,读、写等)一个或多个存储设备的数据执行请求的操作(例如,读操作、写操作等)。针对读操作,存储控制器可向请求者返回从一个或多个存储设备读到的数据。针对写操作,存储控制器可将数据写到一个或多个存储设备中,并且在一些情况下,可向请求者提供成功写入的确认。
存储卡100包括支撑基板108,支撑基板108具有支撑表面110,存储控制器104-1、104-2以及存储设备106-1和106-2安装在支撑表面110上。在一些示例中,电子部件(包括存储控制器和/或存储设备)也可安装到支撑基板108的底部支撑表面(支撑表面110的相对面)上。
在一些示例中,支撑基板108可以是存储控制器104-1、104-2以及存储设备106-1、106-2所连接的电路板或其他类型的基板。支撑基板108包括通信信道(例如,导电迹线、光路等),通信信道用于连接支撑基板108上的各种部件(包括存储控制器104-1、存储控制器104-2、存储设备106-1、存储设备106-2、连接器112及其他部件)的输入/输出(I/O)元件(例如,电销、光纤套管等)。尽管图1中仅示出一个连接器112,但要注意,在其他示例中,卡100可具有多个连接器。
在接下来的讨论中,参考各种部件之间的电连接或电通信。但要注意,根据一些实现方式的技术或机制可应用于其他形式的连接和通信,包括光连接和通信。
连接器112(通过支撑基板108的导电迹线)电连接至存储控制器104-1和存储控制器104-2。连接器112包括信号引脚,信号引脚通过通信介质114将相应的信号(数据信号、地址信号、控制信号等)传送到远程***(在接下来的讨论中可被称为“主机***”)。更具体地,主机***可被称为“请求者设备”,其是能够访问存储卡100上的数据的设备。
连接器112还可包括电源引脚,包括向存储卡100传递电源电压的一个或多个引脚以及一个或多个接地和/或参考引脚。主机***可指能够访问连接至主机***的端口的一个或多个电子卡上提供的一个或多个部件的功能的***。
连接器112可直接连接至主机***的端口的相应的端口连接器,在这种情况下,通信介质114由连接器112的信号引脚和端口连接器组成。可替代地,连接器112可通过电缆连接至主机***的端口连接器,在这种情况下,通信介质114由连接器112的信号引脚和端口连接器以及电缆组成。
通信介质114可被分成多个不同的部分114-1和114-2,以允许存储卡110中的多个存储控制器104-1和104-2通过通信介质114的相应的部分114-1和114-2独立地通信。通过允许多个存储控制器104-1和104-2通过通信介质114的相应的部分独立地通信,单个存储卡(100)可用于根据RAID模式实现数据的存储。在一些实现方式中,存储控制器104-1和104-2能够通过通信介质部分114-1和114-2同时通信。
尽管图1中仅示出存储控制器和存储设备的两个集合102-1和102-2,但要注意,在其他示例中,存储卡100中可包括存储控制器和存储设备的多于两个的集合。如果存在存储控制器和存储设备的多于两个的集合,那么通信介质114可分成多于两个部分,以与多于两个集合的相应的存储控制器通信。
要注意,通信介质114的多个部分114-1、114-2可以是物理上不同的部分,其中,第一通信介质部分的至少某些通信信道与第二通信介质部分的至少某些通信信道物理上不同。在其他实现方式中,通信介质部分114-1、114-2可以是逻辑上不同的部分,其中,它们共享相同的通信信道,但开关或其他接口可用于允许存储控制器104-1、104-2通过逻辑上不同的通信介质部分114-1、114-2独立地通信。
在一些实现方式中,存储卡100符合M.2标准,M.2标准以前称为下一代规格(NGFF)标准。M.2标准定义了电子卡的一种规格。电子卡的规格可指电子卡的尺寸及其他特性,诸如安装结构(例如,安装孔、安装槽、安装销等)的位置及其他特性。此外,M.2标准还定义了要与电子卡一起使用的连接器,包括连接器的位置、连接器上的引脚的数量、以及实际信号和连接器上使用的电源引脚。
根据M.2标准,连接至连接器112的通信介质(例如,114)根据外设部件互连快速(PCIe)协议运行。因此,图1的通信介质114可以是PCIe总线。PCIe定义了高速串行计算机扩展总线标准。在这样的示例中,连接器112是PCIe连接器。
在其他示例中,通信介质114可根据其他协议运行。
如上所述,存储控制器和存储设备的多个集合102-1和102-2的规定允许根据RAID模式将数据存储在存储设备106-1和106-2中。存储卡100可以是根据多种不同的RAID模式可配置的。RAID模式的示例包括如上所述的RAID 0和RAID 1,以及其他RAID模式。
RAID 0模式跨多个存储设备106-1、106-2而采用数据的条带化。数据的条带化可指将连续的数据分成可以跨不同的存储设备106-1和106-2存储的多个段。这些多个段可通过相应的存储控制器104-1和104-2以及通信介质部分114-1和114-2并行访问,以提高存储卡100上的数据访问的数据吞吐量。
RAID 1模式包括创建各个存储设备中的一个存储设备(例如,存储设备106-1)上存储的数据的镜像副本-数据的镜像副本可存储在其他存储设备(例如,106-2)上。
RAID 10模式是RAID 0和RAID 1模式的组合。RAID 10模式在存储设备106-1和106-2上执行数据的条带化和镜像两者。
在进一步的示例中,还可实现其他RAID模式,诸如RAID 5和RAID 6。RAID 5模式基于数据生成奇偶校验信息。奇偶校验信息可用于执行错误检测和校正。数据和奇偶校验信息经历存储设备上的块级条带化。为了实现RAID 5模式,可在存储卡100中提供存储控制器和存储设备的三个或更多个集合。
RAID 6模式生成双奇偶校验信息(提供最多两个故障存储设备的容错)。对数据和双奇偶校验信息执行块级条带化。可用存储控制器和存储设备的四个或更多个集合实现RAID 6模式。
更一般地,存储卡100是可配置,以运行在几个RAID模式中的一个RAID模式中,包括采用数据的条带化以提高数据吞吐量的那些RAID模式,以及使用冗余信息(诸如RAID 1的镜像副本或RAID 5或RAID 6的奇偶校验信息)的那些RAID模式。
图2是示出包括存储卡100和主机***200的示例设置的示意图。主机***200包括多个端口200-1、200-2、…、200-N。在图2的示例中,存储卡100连接至端口200-1中的端口连接器。
在一些示例中,如图3中所示,主机***200和存储卡100之间的通信介质114是PCIe x4链路;换句话说,通信介质114包括根据上面讨论的一些实现方式的四个PCIe通道划分。PCIe通道包括两对电线,第一对电线用于传输数据并且第二对电线用于接收数据。在其他示例中,可使用通信通道的其他设置。更一般地,PCIe链路114可包括可被划分成多个部分的多个通道。
图4示出一示例,其中PCIe x4链路已被划分成两个部分:第一PCIe x2链路402以及第二PCIe x2链路404。第一PCIe x2链路402(其包括两个PCIe通道)连接至存储卡100中的储控制器和存储设备的第一集合102-1,而第二PCIe x2链路404(其包括两个PCIe通道)连接至储控制器和存储设备的第二集合102-2。
图5示出另一示例设置,其中存储卡100包括存储控制器和存储设备的四个集合102-1、102-2、102-3和102-4。在此设置中,PCIe x4链路114被分成四个PCIe x1链路502、504、506和508,它们分别连接至存储控制器的集合102-1、102-2、102-3和102-4。
图4的设置可支持RAID 0模式或RAID 1模式。图5的设置可支持RAID 0模式、RAID1模式、RAID 10模式、RAID 5模式或RAID 6模式,或上述模式的一些结合。
在前面的讨论中,参考了其中存储卡100是M.2卡的实现方式。在其他实现方式中,存储卡100可符合PCIe标准,在这样的情况下,存储卡100为PCIe卡。PCIe卡符合PCIe标准提供的规格和其他规范。PCIe卡可包括以下中的一个:M.2卡、(根据PCIe卡机电规范的)卡机电(CEM)卡、根据串行高级技术附件(SATA)扩展标准的2.5”(或其他规格)SATA扩展卡、以及根据小型化(SFF)8639规格规范的2.5”(或其他规格)SFF-8639卡。
在存储卡100是M.2卡的实现方式中,还可在存储卡100上提供开关602,如图6中所示。在其他示例中,开关602可用在另一规格的电子卡中。开关602提供在连接器112与存储控制器和存储设备的多个集合102-1、102-2之间。在一些示例中,每个集合102-1或102-2可以是设备(例如,2.5”规格设备)的形式,并且开关602可将(电缆或其他类型的介质的形式的)通信介质114与各设备互连。在其他示例中可使用其他设置。
开关602可以是PCIe开关,其能够选择性地将存储控制器的集合102-1和102-2中的一个连接至通信介质114(例如,PCIe x4链路)。使用开关602,可为每个存储控制器104-1或104-2提供通信介质114的全部带宽。换句话说,通信介质114不必物理上分成物理上不同的部分,诸如根据图4和图5那样。相反,每个存储控制器104-1或104-2能够通过经由开关602通信,使用通信介质114的全部带宽(例如,PCIe x4链路的全部带宽)来通信。
实际上,开关602将通信介质114分成逻辑上不同的通信介质部分,允许存储控制器104-1和104-2通过相应的逻辑上不同的通信介质部分独立地通信。在一些示例中,联接至开关602的一侧的通信介质114的全部带宽不必等于联接至开关602的另一侧的链路的总带宽。
要注意,对于通信介质114分成物理上不同的部分的实现方式,每个通信介质部分具有小于或等于通信介质114的全部带宽的带宽。
尽管前面描述了采用PCIe x4链路的示例,但要注意,在其他示例中,可采用其他宽度的链路,诸如x8、x16等。
图7是根据一些实现方式的示例主机***200的框图。主机***200包括端口202-1(以及其他端口),其中端口202-1连接至存储卡100。提供接口电路702提供给端口202-1。主机200的部件和端口202-1之间的通信通过接口电路702产生,接口电路702可包括缓冲器、放大器等。
主机***200还包括一个或多个处理器704,一个或多个处理器704可联接至一个(或多个)非瞬态计算机可读或机器可读存储介质706。处理器可包括微处理器、微控制器、物理处理器模块或子***、可编程集成电路、可编程门阵列、或其他物理控制或计算器件。
一个(或多个)存储介质706可存储端口配置设置指令708,端口配置设置指令708由一个或多个处理器704可执行。在一些示例中,端口配置设置指令708可在主机***200的启动顺序期间(例如,当主机***200最初启动时)执行。端口配置设置指令708可在显示设备712上为用户呈现用户界面710,用户能够选择端口202-1的配置。例如,用户可规定端口202-1将要被配置使得存储卡100和端口202-1之间的通信介质114被划分成多个部分,诸如根据图4或图5那样。例如,由用户规定的配置可用于配置接口电路702。
一个(或多个)存储介质706还可存储存储访问指令714,存储访问指令714由一个或多个处理器704可执行。存储访问指令714可访问存储卡100上的数据。在一些示例中,存储访问指令714能够根据RAID模式来管理存储卡100中的存储数据。例如,主机***200可以是存储访问指令714可在其中执行的存储服务器。
图8是根据一些实现方式的过程的流程图,该过程可由主机***200执行。该过程执行配置以:将通信介质(例如,通信介质114)划分(在802处)成用于与电子卡(例如,100)的支撑基板(例如,108)上的存储控制器(例如,104-1和104-2)独立地通信的多个部分。可使用图7的端口配置设置指令708执行该配置。
该过程根据RAID模式访问(在804处)连接至电子卡中的相应的存储控制器的存储设备(例如,106-1、106-2)的数据。可由图7的存储访问指令714执行数据的访问。
可用一个或多个不同形式的存储器实现图7的一个(或多个)存储介质706,一个或多个不同形式的存储器包括:半导体存储器件(诸如动态或静态随机存取存储器(DRAM或SRAM)、可擦除和可编程只读存储器(EPROM)、电可擦除和可编程只读存储器(EEPROM)以及闪存)、磁盘(诸如硬盘、软盘以及可移动磁盘)、其他磁介质(包括磁带)、光介质(诸如光盘(CD)或数字视频光盘(DVD))、或其他类型的存储器件。要注意,上面讨论的指令可提供在一个计算机可读或机器可读存储介质上,或可替代地,可提供在分布于具有可能的多个节点的大***中的多个计算机可读或机器可读存储介质上。这样的一个(或多个)计算机可读或机器可读存储介质被视为物品(或制造品)的部分。物品或制造品可指任何制造的单个部件或多个部件。一个(或多个)存储介质可位于运行机器可读指令的机器中,或位于远程站点处,可通过网络从该远程站点下载机器可读指令以供执行。
在前面的描述中,陈述了许多细节以提供对本文公开的主题的理解。但是,可以在没有这些细节中的一些的情况下实践各实现方式。其他实现方式可包括上面讨论的细节的修改和变形。目的在于,所附的权利要求覆盖这些修改和变形。
Claims (11)
1.一种电子卡,所述电子卡是M.2电子卡,所述M.2电子卡包括:
单个支撑基板;
在所述单个支撑基板上的多个存储设备;
在所述单个支撑基板上的多个物理上分离的控制器,所述多个物理上分离的控制器用于管理对相应的所述多个存储设备的访问,其中,所述多个物理上分离的控制器和所述多个存储设备被设置成根据独立磁盘冗余阵列(RAID)模式来存储数据,其中,所述多个物理上分离的控制器中的每一个物理上分离的控制器连接至所述多个存储设备中的单个相应的存储设备;以及
到通信介质的连接器,所述通信介质在启动顺序期间被划分成多个不同的外设部件互连快速PCIe链路部分,所述连接器在所述电子卡和主机***的端口的端口连接器之间以允许所述多个物理上分离的控制器中的每一个物理上分离的控制器通过所述通信介质的所述多个不同的PCIe链路部分中的相应不同的PCIe链路部分独立地与所述主机***通信,其中,所述通信介质的所述多个不同的PCIe链路部分包括:
与所述单个支撑基板上的所述多个物理上分离的控制器中的第一控制器相对应的第一不同的PCIe链路部分;以及
与所述单个支撑基板上的所述多个物理上分离的控制器中的第二控制器相对应的第二不同的PCIe链路部分;
其中,所述多个控制器是逻辑上分离的、运行在同一物理设备或程序包上的虚拟控制器。
2.根据权利要求1所述的电子卡,其中,所述通信介质的所述多个不同的PCIe链路部分是物理上不同的PCIe链路部分,所述物理上不同的PCIe链路部分中的每一个具有小于所述通信介质的全部带宽的带宽,并且其中,所述多个物理上分离的控制器通过所述通信介质的所述物理上不同的PCIe链路部分同时通信。
3.根据权利要求1所述的电子卡,其中所述RAID模式跨所述多个存储设备条带化数据。
4.根据权利要求1所述的电子卡,其中所述RAID模式提供冗余数据。
5.根据权利要求1所述的电子卡,其中所述RAID模式既提供冗余数据,又跨所述多个存储设备条带化数据。
6.根据权利要求1所述的电子卡,其中所述存储设备是固态存储设备。
7.一种存储指令的机器可读存储介质,所述指令在执行时引起***:
在启动顺序期间将通信介质划分成用于与M.2电子卡的单个支撑基板上的多个存储控制器独立地通信的多个不同的部分,其中,所述多个不同的部分允许所述多个存储控制器中的每一个控制器通过所述通信介质的所述多个不同的部分中的相应不同的部分独立地与主机***的端口的端口连接器通信,其中,所述多个控制器中的每一个控制器连接至多个存储设备中的单个相应的存储设备,并且其中,所述通信介质的所述多个不同的部分包括:
与所述单个支撑基板上的所述多个控制器中的第一控制器相对应的第一不同的链路部分;以及
在所述单个支撑基板上与所述多个控制器中的第二控制器相对应的第二不同的链路部分;以及
根据独立磁盘冗余阵列(RAID)模式,访问连接至所述电子卡的所述多个存储控制器的各存储设备的数据,
其中,所述多个存储控制器是逻辑上分离的、运行在同一物理设备或程序包上的虚拟控制器。
8.根据权利要求7所述的机器可读存储介质,其中所述划分包括:将外设部件互连快速PCIe链路划分成多个链路,以允许通过相应的多个链路到所述电子卡的所述多个存储控制器的独立通信。
9.一种通信方法,包括:
通过多个存储控制器,经由直接连接至主机***的端口的端口连接器的连接器并且通过通信介质的相应的部分与主机***通信,所述多个存储控制器在M.2电子卡的单个支撑基板上,其中,多个存储设备进一步在所述单个支撑基板上,其中,所述通信介质在主机***的启动顺序期间被划分成多个不同的部分以允许所述多个存储控制器中的每一个控制器通过所述通信介质的所述多个不同的部分中的相应部分独立地与所述主机***通信;其中,所述多个存储控制器中的每一个存储控制器连接至所述多个存储设备中的单个相应存储设备,并且其中,所述通信介质的所述多个不同的部分包括:
与所述单个支撑基板上的所述多个存储控制器中的第一存储控制器相对应的第一不同的链路部分;以及
在所述单个支撑基板上与所述多个存储控制器中的第二存储控制器相对应的第二不同的链路部分;
根据独立磁盘冗余阵列(RAID)模式,通过所述多个存储控制器管理对相应的所述各存储设备的访问,
其中,所述多个存储控制器是逻辑上分离的、运行在同一物理设备或程序包上的虚拟控制器。
10.根据权利要求9所述的方法,其中,所述通信介质包括外设部件互连快速(PCIe)链路。
11.根据权利要求9所述的方法,其中所述多个存储控制器通过所述通信介质的所述多个不同的部分中的所述相应部分与所述主机***同时通信。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2014/062791 WO2016068893A1 (en) | 2014-10-29 | 2014-10-29 | Communicating over portions of a communication medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107077438A CN107077438A (zh) | 2017-08-18 |
CN107077438B true CN107077438B (zh) | 2022-09-16 |
Family
ID=55858007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480082915.XA Active CN107077438B (zh) | 2014-10-29 | 2014-10-29 | 通过通信介质的部分进行通信 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11157200B2 (zh) |
EP (1) | EP3213218A4 (zh) |
CN (1) | CN107077438B (zh) |
TW (1) | TWI569152B (zh) |
WO (1) | WO2016068893A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10073653B2 (en) * | 2015-12-01 | 2018-09-11 | Alson Technology Limited | Solid state disk |
US10255215B2 (en) * | 2016-01-29 | 2019-04-09 | Liqid Inc. | Enhanced PCIe storage device form factors |
US20170269871A1 (en) * | 2016-03-16 | 2017-09-21 | Intel Corporation | Data storage system with persistent status display for memory storage devices |
TWI639919B (zh) | 2016-06-10 | 2018-11-01 | 利魁得股份有限公司 | 資料儲存系統中的多埠中介件架構 |
US10289588B2 (en) | 2016-06-30 | 2019-05-14 | Quanta Computer Inc. | Riser card |
TWI683610B (zh) * | 2016-10-07 | 2020-01-21 | 美商利魁得股份有限公司 | 用於計算平台的模組化托架形式因子 |
US10795842B2 (en) | 2017-05-08 | 2020-10-06 | Liqid Inc. | Fabric switched graphics modules within storage enclosures |
CN111665913A (zh) * | 2017-08-29 | 2020-09-15 | 华为技术有限公司 | M.2连接器、m.2模块组件和***盘 |
US10585827B1 (en) | 2019-02-05 | 2020-03-10 | Liqid Inc. | PCIe fabric enabled peer-to-peer communications |
CN110096235B (zh) * | 2019-04-30 | 2020-06-30 | 自然资源部第一海洋研究所 | 一种面向自容式应用的数据存储方法及存储*** |
KR20210047753A (ko) * | 2019-10-22 | 2021-04-30 | 삼성전자주식회사 | 디스플레이 보호 구조를 포함하는 폴더블 전자 장치 |
WO2021146382A1 (en) * | 2020-01-16 | 2021-07-22 | Lightmatter, Inc. | Pin sharing for photonic processors |
US11704060B2 (en) * | 2020-12-18 | 2023-07-18 | Micron Technology, Inc. | Split protocol approaches for enabling devices with enhanced persistent memory region access |
CN112596673B (zh) * | 2020-12-18 | 2023-08-18 | 南京道熵信息技术有限公司 | 具有双重raid数据保护的多活多控存储*** |
CN113806152B (zh) * | 2021-09-14 | 2024-04-19 | 合肥联宝信息技术有限公司 | 一种故障诊断卡及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231879A (zh) * | 2007-01-12 | 2008-07-30 | 博路技术有限公司 | 数据存取及多芯片控制器 |
TW200949713A (en) * | 2008-05-19 | 2009-12-01 | Jmicron Technology Corp | Card reading apparatus supporting function of redundant array of independent disks and related opertaion method |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1147474A (en) * | 1976-09-07 | 1983-05-31 | James A. Katzman | Memory system in a multiprocessor system |
US5954809A (en) * | 1996-07-19 | 1999-09-21 | Compaq Computer Corporation | Circuit for handling distributed arbitration in a computer system having multiple arbiters |
US5936953A (en) | 1997-12-18 | 1999-08-10 | Raytheon Company | Multi-mode, multi-channel communication bus |
US7065779B1 (en) * | 1999-10-13 | 2006-06-20 | Cisco Technology, Inc. | Technique for synchronizing multiple access controllers at the head end of an access network |
US6594724B1 (en) * | 2000-03-30 | 2003-07-15 | Hitachi Global Storage Technologies Netherlands B.V. | Enhanced DASD with smaller supplementary DASD |
US6697214B2 (en) * | 2001-04-26 | 2004-02-24 | International Business Machines Corporation | Removable disk drive with separable electrical and mechanical components |
US20040242270A1 (en) | 2003-06-02 | 2004-12-02 | Endicott Interconnect Technologies, Inc. | Electronic card |
US8639866B2 (en) * | 2003-08-06 | 2014-01-28 | Hewlett-Packard Development Company, L.P. | Systems and methods for dividing a communications channel |
US8060670B2 (en) * | 2004-03-17 | 2011-11-15 | Super Talent Electronics, Inc. | Method and systems for storing and accessing data in USB attached-SCSI (UAS) and bulk-only-transfer (BOT) based flash-memory device |
US7872892B2 (en) * | 2005-07-05 | 2011-01-18 | Intel Corporation | Identifying and accessing individual memory devices in a memory channel |
US20080005425A1 (en) | 2006-06-05 | 2008-01-03 | Ivi Smart Technologies, Inc. | Electronic Card Type Media Storage and Player Device |
US20080082747A1 (en) * | 2006-09-28 | 2008-04-03 | Shah Mohammad Rezaul Islam | Apparatus and method for providing data path redundancy in a storage subsystem having a single controller |
TW200823746A (en) | 2006-11-24 | 2008-06-01 | Inventec Corp | RAID capacity expansion handling method and system with concurrent data access capability |
KR20090102789A (ko) * | 2006-12-06 | 2009-09-30 | 퓨전 멀티시스템즈, 인크.(디비에이 퓨전-아이오) | 프로그레시브 raid를 이용한 데이터 저장 장치, 시스템 및 방법 |
US7756123B1 (en) | 2006-12-21 | 2010-07-13 | Nvidia Corporation | Apparatus, system, and method for swizzling of a PCIe link |
US8566504B2 (en) * | 2007-09-28 | 2013-10-22 | Sandisk Technologies Inc. | Dynamic metablocks |
TW200947207A (en) | 2008-05-09 | 2009-11-16 | Kwok-Yan Leung | Expansion card for external storage device |
US8725946B2 (en) * | 2009-03-23 | 2014-05-13 | Ocz Storage Solutions, Inc. | Mass storage system and method of using hard disk, solid-state media, PCIe edge connector, and raid controller |
US8151051B2 (en) * | 2009-04-23 | 2012-04-03 | International Business Machines Corporation | Redundant solid state disk system via interconnect cards |
US9256560B2 (en) * | 2009-07-29 | 2016-02-09 | Solarflare Communications, Inc. | Controller integration |
CN101650639B (zh) * | 2009-09-11 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 一种存储装置及计算机*** |
US8402307B2 (en) | 2010-07-01 | 2013-03-19 | Dell Products, Lp | Peripheral component interconnect express root port mirroring |
US8438324B2 (en) * | 2011-02-01 | 2013-05-07 | Taejin Info Tech Co., Ltd. | RAID-based storage control board having fibre channel interface controller |
US8601198B2 (en) | 2011-06-30 | 2013-12-03 | Intel Corporation | Controllable transaction synchronization for merging peripheral devices |
US8756360B1 (en) | 2011-09-26 | 2014-06-17 | Agilent Technologies, Inc. | PCI-E compatible chassis having multi-host capability |
EP4328751A3 (en) | 2012-06-07 | 2024-05-08 | VSIP Holdings LLC | Memory system management |
US20140129741A1 (en) * | 2012-11-07 | 2014-05-08 | Mellanox Technologies Ltd. | Pci-express device serving multiple hosts |
US9411762B2 (en) * | 2013-03-15 | 2016-08-09 | Intel Corporation | Method and system for platform management messages across peripheral component interconnect express (PCIe) segments |
US9135203B2 (en) * | 2013-05-01 | 2015-09-15 | Jonathan Glickman | Computer system and a computer device |
KR102074329B1 (ko) * | 2013-09-06 | 2020-02-06 | 삼성전자주식회사 | 데이터 저장 장치 및 그것의 데이터 처리 방법 |
US9229855B2 (en) * | 2013-11-12 | 2016-01-05 | Skyera, Llc | Apparatus and method for routing information in a non-volatile memory-based storage device |
KR102147629B1 (ko) * | 2013-11-18 | 2020-08-27 | 삼성전자 주식회사 | 플렉시블 서버 시스템 |
US20150143027A1 (en) * | 2013-11-20 | 2015-05-21 | Sage Microelectronics Corp. | Solid state drive with raid functions |
CN105793830B (zh) * | 2013-12-26 | 2019-12-24 | 英特尔公司 | 一种在节点之间共享存储器和i/o服务的装置、方法、*** |
CN103729147A (zh) | 2013-12-30 | 2014-04-16 | 华澜微电子有限公司 | 一种独立模块的冗余阵列 |
CN103729148A (zh) | 2013-12-30 | 2014-04-16 | 华澜微电子有限公司 | 一种具有raid功能的固态硬盘 |
TWM479541U (zh) | 2014-01-14 | 2014-06-01 | Bellwether Electronic Corp | M.2連接器組件及其結構 |
US9552316B2 (en) * | 2014-03-29 | 2017-01-24 | Intel Corporation | Techniques for adaptive interface support |
US10067844B2 (en) * | 2014-06-18 | 2018-09-04 | Ngd Systems, Inc. | Method of channel content rebuild in ultra-high capacity SSD |
US9582201B2 (en) * | 2014-09-26 | 2017-02-28 | Western Digital Technologies, Inc. | Multi-tier scheme for logical storage management |
US9921956B2 (en) * | 2016-07-20 | 2018-03-20 | Sandisk Technologies Llc | System and method for tracking block level mapping overhead in a non-volatile memory |
US10459809B2 (en) * | 2017-06-30 | 2019-10-29 | Intel Corporation | Stacked memory chip device with enhanced data protection capability |
-
2014
- 2014-10-29 EP EP14904930.6A patent/EP3213218A4/en not_active Ceased
- 2014-10-29 WO PCT/US2014/062791 patent/WO2016068893A1/en active Application Filing
- 2014-10-29 CN CN201480082915.XA patent/CN107077438B/zh active Active
- 2014-10-29 US US15/520,242 patent/US11157200B2/en active Active
-
2015
- 2015-09-23 TW TW104131432A patent/TWI569152B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231879A (zh) * | 2007-01-12 | 2008-07-30 | 博路技术有限公司 | 数据存取及多芯片控制器 |
TW200949713A (en) * | 2008-05-19 | 2009-12-01 | Jmicron Technology Corp | Card reading apparatus supporting function of redundant array of independent disks and related opertaion method |
Also Published As
Publication number | Publication date |
---|---|
US20170308325A1 (en) | 2017-10-26 |
TW201617915A (zh) | 2016-05-16 |
TWI569152B (zh) | 2017-02-01 |
US11157200B2 (en) | 2021-10-26 |
EP3213218A4 (en) | 2018-05-30 |
WO2016068893A1 (en) | 2016-05-06 |
CN107077438A (zh) | 2017-08-18 |
EP3213218A1 (en) | 2017-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107077438B (zh) | 通过通信介质的部分进行通信 | |
US10866923B2 (en) | Storage control interposers in data storage systems | |
KR102542562B1 (ko) | 모듈화된 불휘발성 플래시 메모리 블레이드 | |
TWI683610B (zh) | 用於計算平台的模組化托架形式因子 | |
US8074105B2 (en) | High data availability SAS-based RAID system | |
CN106339343B (zh) | 快速外设组件互联卡 | |
KR101839027B1 (ko) | 설정가능한 상호접속 시스템 | |
US8583992B2 (en) | SAS-based semiconductor storage device memory disk unit | |
KR20150047785A (ko) | 서버 시스템 및 스토리지 시스템 | |
JP2015532985A (ja) | 大規模なデータ記憶および受け渡しシステム | |
US8949509B2 (en) | Mass storage systems and methods using solid-state storage media and ancillary interfaces for direct communication between memory cards | |
US9940280B1 (en) | Provisioning an enclosure with PCIe connectivity and storage devices | |
US9547616B2 (en) | High bandwidth symmetrical storage controller | |
KR20190105491A (ko) | 필드 프로그래머블 게이트 어레이 솔리드 스테이트 드라이브들에서 데이터 보호를 지원하기 위한 시스템 및 방법 | |
CN117349212A (zh) | 一种服务器主板及其固态硬盘***检测方法 | |
US11726660B1 (en) | Techniques for flexible physical drive expansion using a loop back connection | |
US11941301B2 (en) | Maintaining online access to data stored in a plurality of storage devices during a hardware upgrade | |
Cahill et al. | IBM power systems built with the POWER8 architecture and processors | |
US9489151B2 (en) | Systems and methods including an application server in an enclosure with a communication link to an external controller | |
US11784916B2 (en) | Intelligent control plane communication | |
US11775182B2 (en) | Expanding raid systems | |
US20130212302A1 (en) | Disk array apparatus | |
CN117480485A (zh) | 用于具有冗余引导存储的存储控制器卡的***和方法 | |
KR20190055970A (ko) | 설계자동화 프로그램을 위한 스토리지 시스템 |
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 |