一种存储装置及计算机系统 【技术领域】
本发明涉及信息存储技术领域,具体涉及一种存储装置。
背景技术
固态硬盘(SSD,Solid State Disk),是由控制单元和固态存储单元(DRAM或FLASH芯片)组成的硬盘。固态硬盘的接口规范和定义、功能及使用方法上与普通硬盘的相同,且不具有机械转动装置,因而SSD具有读写性能高,抗震能力强,电源开销小等优势,并广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空等、导航设备等领域。
固态硬盘通常采用闪存FLASH芯片作为存储介质。固态硬盘的性能,由原始的闪存带宽、损耗平衡算法的效率(固件)以及接口(串行SATA、PCI-E等)共同决定的,即使采用的SATA接口速度卡性能再强也不能明显提高固态硬盘的性能。业界正在逐步提升固态硬盘性能,但新一代SATA标准还未推出。
目前也有固态硬盘采用PCI-E接口。PCI-E(PCI Express)是新一代的总线接口,采用了目前业内流行的点对点串行连接,比起PCI以及更早期的计算机总线的共享并行架构,可以提高数据传输率,达到PCI所不能提供的高带宽。相对于传统PCI总线在单一时间周期内只能实现单向传输,PCI Express的双单工连接能提供更高的传输速率和质量。用于取代AGP接口的PCI Express接口位宽为X16,将能够提供5GB/s的带宽,即便有编码上的损耗但仍能够提供约为4GB/s左右的实际带宽,远远超过AGP 8X的2.1GB/s的带宽。
与现有的传统硬盘HDD相比,目前固态硬盘最大的劣势是容量,只达到数百MB,还不能满足有些应用和需求。
现有的固态硬盘SSD容量较小,且采用FPGA+CPU进行操作控制其处理能力有限,导致SSD访问速度也受到限制。
【发明内容】
本发明实施例提供存储装置,能够大幅度提高存储容量及访问速度。
本发明实施例提供的一种存储装置,包括:
M个存储单元,采用非易失性存储介质;
串并变换单元,具有N个端口,所述N个端口中之一作为所述存储装置的数据输入输出端口;所述N个端口中的M个端口用于连接所述M个存储单元,其中N>M≥2;
操作控制模块,用于将输入数据分散存储到所述M个存储单元中至少两个存储单元,从所述M个存储单元中至少两个存储单元并行输出到所述串并变换单元。
本发明实施例提供的一种计算机系统,包括如前所述的存储装置。
本发明实施例提供的一种数据存储操作控制方法,包括:
将输入数据分散存储到至少两个存储单元;
输出数据时从所述至少两个存储单元并行输出数据;
将所述并行输出数据进行并串变换后输出。本发明实施例提供的存储装置为新型固态硬盘,将多个固态硬盘SSD组合在一起,扩大了SSD卡的容量;并利用串并变换单元(PCIE交换),并在新型固态硬盘内部按照独立磁盘冗余阵列,如RAID0,RAID1等方式操作,提高了新型固态硬盘的数据存取速度,显著提升了新型固态硬盘的性能。
【附图说明】
图1为本发明实施例中提供的存储装置结构示意图;
图2为本发明实施例中存储装置的操作控制模块构成示意图;
图3为本发明实施例中提供的新型固态硬盘结构示意图;
图4a、4b及4c为本发明实施例中采用的PCIE交换芯片示意图。
【具体实施方式】
为了进一步提高固态硬盘的存储容量和访问速率,本发明提出一种新型固态硬盘,将多个现有的固态硬盘SSD卡组合在一起,通过串并变换将这些固态硬盘SSD卡与主机或系统相连接,并在新型固态硬盘内部实现独立磁盘冗余阵列(RAID,Redundant Array of Independent Disks)n方式(n=0,1,3,5,10等)操作控制,将要存入的数据分散存储到各SSD卡,内部多个SSD卡并行进行数据输出,也就是使用多条并行通道来访问内部各SSD卡。本发明采用了多个SSD卡使得容量得到增加,采用RAIDn方式对内部多个SSD卡进行控制,即使固态硬盘在阵列模式下工作的数据量相当庞大,也能提高存取数据的速度,这样使用多块固态硬盘组建RAID n阵列的性能显著提高,以满足更多的应用和需求。
参照图1,本发明实施例提供的一种存储装置100,包括:
M个存储单元11,采用非易失性存储介质,如闪存Flash;
这些存储单元的容量可以不同,但通常这些存储单元的容量相同。
串并变换单元12,具有N个端口,该N个端口中之一作为存储装置的数据输入输出端口;其余端口中的M个端口用于连接所述M个存储单元,其中N>M≥2;
操作控制模块13,用于对所述各存储单元的输入输出数据进行操作控制;
操作控制模块13,是位于主机侧的驱动程序,主要是用来识别PCIE卡,封装PCIE自定义协议报文以及实现RAID0算法,在主机和卡之间起一个承上启下的作用;
该模块由软件实现,安装在主机侧操作系统中。当主机发出读/写请求命令时,该模块会接收,解析这个请求报文,并根据后端存储单元的实际情况接合RAID0算法重新封装成自定义协议报文,再经由串并变换单元12发往各存储单元。各存储单元如果响应这个读/写请求,就会经由串并变换单元12从主机读/向主机写数据。各存储单元之间可以并行操作。
操作控制模块13将输入数据分散存储到所述M个存储单元11中至少两个存储单元,输出数据时从所述至少个存储单元11并行输出到所述串并变换单元12,再由所述串并变换单元12进行并串变换后输出。
M个存储单元11与串并变换单元之间的传输通道配置可以采用相同速率。
参照图2,所述操作控制模块13包括:
拆分子模块13a,用于将输入数据分成若干份;
分配子模块13b,将所述若干份输入数据分发给所述M个存储单元中至少两个存储单元;在分发数据过程中,最好轮流发送给至少两个存储单元,以使所述若干份输入数据均匀地分散存储在存储单元中。
数据获取模块13c,用于从所述M个存储单元中至少两个存储单元并行读取数据并输入给串并变换单元12。
如图1所示,所述存储单元11包括主控子单元11a和至少两个存储子单元11b;
所述主控子单元11a,用于对所述各存储子单元11b的数据存储进行操作管理。
所述主控子单元11a包含现场可编程门阵列FPGA和CPU。
串并变换单元12的N个端口的速率可配置为K倍速,K=2n,n为自然数。与M个存储单元11连接的M个端口配置相同速率。
为使本发明的原理、特性和优点更加清楚,下面结合具体实施例对本发明进行详细描述。
本发明实施例提供的一种存储装置,如图3所示。
本实施例提供的存储装置300,包括:
存储单元31、串并变换单元32以及操作控制模块33,下面分别描述各单元或模块的形态或构成。
存储单元可采用固态硬盘(SSD,Solid State Disk)卡31,该SSD卡包含现场可编程门阵列FPGA、CPU以及闪存FLASH阵列;则存储装置300为一种新型固态硬盘。
SSD泛指使用NAND Flash组成的固态硬盘,没有机械结构,利用传统的NAND Flash特性,以区块写入和抹除的方式作读写的功能。具有低耗电、耐震、稳定性高、耐低温等优点。NAND结构能提供极高地单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND需要对flash进行管理并需要特殊的系统接口。NAND flash通常用在8~128MB的产品当中,NAND适合于数据存储。
串并变换单元采用PCIE交换(switch)芯片32;
PCI-Express是最新的总线和接口标准,简称“PCI-E”。它作为一种新的总线标准,可支持更高的速率,解决了不断增长的带宽需要,相比传统PCI总线标准(总线的位宽32bit,总线的频率33M),16倍速时速度提高了30倍。PCIE总线频率为2.5G,每周期传递1bit,由于PCIE传递的编码是每byte/10bit,所以在X1(1倍速)的速度为2.5Gbit/10=250MB。
PCIE switch芯片为主机和多个存储单元提供点与多点的高速连接。一个PCIE switch芯片有多个端口,如PEX8648有12个X4(4倍速)的端口,PEX8696有24个X4的端口,如图4a,4b,4c所示,这些端口可根据需要被灵活地配置为所需速率,如X1,X2,X4,X8或者X16速率,并且其中任意一个端口都可以配置为上行端口,其余则作为下行端口,与多个存储单元连接。
将FPGA+CPU及flash阵列作为一个存储单元,将多个这样的存储单元分别连接到PCIE switch芯片的下行端口,PCIE switch芯片上行端口连接主机端。
操作控制模块可以为操作控制软件程序33,安装在主机或系统中,包括驱动程序以及数据存储控制程序,用于对所述各存储单元的输入输出数据进行操作控制;
安装在主机上的操作控制软件程序统一将命令发到PCIE switch的上行端口,由主机侧的驱动程序决定将数据输入到PCIE switch的哪一个下行端口。
数据存储控制程序将后端的各个存储单元按照RAID1或RAID0等方式进行操作,在本实施例中对具体的RAID方式不做限定,实现多IO并行操作,提高访问速度。
数据存储控制程序包括:
拆分处理程序,用于将输入数据均匀分成若干份;
分配程序,将所述若干份输入数据按顺序轮流发送给M个存储单元,其中M≥2。
数据存储控制程序还可以包括:
数据获取程序,用于从所述M个存储单元并行读取数据并输入给所述串并变换单元。
本发明提供的存储装置(即一种新型固态硬盘)可配置在计算机系统中。
本发明实施例还提供了一种数据存储操作控制方法,可以用于本发明实施例提供的存储装置,包括:
将输入数据分散存储到至少两个存储单元;
将输入数据分成若干份,并将所述若干份输入数据分发给至少两个存储单元。
输出数据时从所述至少两个存储单元并行输出数据;
将所述并行输出数据进行并串变换后输出。
综上所述,本发明实施例提供的存储装置即一种新型固态硬盘中,将多个存储单元组合在一起,扩大了SSD卡的容量;并利用串并变换单元PCIEswitch,并在新型固态硬盘内部按照RAID0或RAID1等方式进行操作,提高了新型固态硬盘的数据存取速度,显著提升了新型固态硬盘的性能。
以上所述仅为本发明的示范性实施方案而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。