一种基于存储卡阵列架构的硬盘实现方法

文档序号:9274417阅读:401来源:国知局
一种基于存储卡阵列架构的硬盘实现方法
【技术领域】
[0001]本发明涉及数据存储领域,特别涉及一种基于存储卡阵列架构的硬盘实现方法。
【背景技术】
[0002]近些年来,随着基于闪存介质的固态硬盘应用日益广泛,对这类硬盘的单体容量也提出了更大的要求,特别是在云服务器、大数据服务器、冗余磁盘阵列等需要海量数据存储的应用领域。
[0003]现有技术固态硬盘一般采用Flash控制器+固态存储介质NAND Flash的架构,该架构在实现大容量、尤其是TB级以上的超大容量固态硬盘时,由于NAND Flash自身的物理特性,大大增加了硬盘控制器实现的技术难度和硬件成本。如NAND Flash的页数据写入和擦除次数有限制,超过一定次数(比如3千次)将使得该存储页不稳定、乃至失效;另外NAND Flash在数据存储过程中,有可能出现Bit错误,需要对数据进行纠错;上述NANDFlash的自身物理特性,使其在直接架构大容量固态硬盘时,控制器需要增加复杂的读写均衡控制算法(纠错编码算法,如BCH、ECC等纠错码)以及存在闪存通道接口总线复杂等问题,大大增加了控制器实现的技术难度;同时为保证固态硬盘的读写性能,上述纠错编码必须在用硬件实现,而实现这些纠错编码电路需要耗费大量的逻辑资源,从而导致Flash控制器芯片面积增加,推高硬件成本。
[0004]另一方面随着存储卡技术的不断成熟,SD卡、MMC卡或eMMC模块等存储卡都已广泛应用于各种存储设备,尤其随着eMMC模块在手机中的广泛应用,eMMC模块的价格迅速下降,导致采用eMMC模块架构固态硬盘比直接采用NAND Flash在成本上差不多甚至更具优势;但由于存储卡在内都已经集成了控制器和接口模块,从而无需复杂的读写算法,在实现大容量固态硬盘时,存储卡能够通过多级级联进行扩容,具有电路简单、接口总数少等优点,从而有利于硬盘控制器的集成度和ASIC化。比如申请人之前提出的发明专利申请2014100494177,其技术方案就是一种基于存储卡阵列架构的超大容量固态硬盘的实现方法,其中,各个存储卡是通过硬盘控制器切换高速开关电路选择时钟信号实现存储卡的片选,但该技术方案还存在以下缺陷:对高速开关的控制增加了控制器的负荷,同时高速开关电路的存在增加了电路复杂性和电路板设计复杂性,也增加了硬件成本。
[0005]故,针对目前现有技术中存在的上述缺陷,实有必要进行研宄,以提供一种方案,解决现有技术中存在的缺陷。

【发明内容】

[0006]为了克服上述现有技术的缺陷,本发明提供了一种基于存储卡阵列架构的硬盘实现方法,该方法采用SD/MMC/eMMC等形式的存储卡为存储介质,并将多个存储卡并接在硬盘控制器各个存储通道的信号总线上,采用协议命令的方式实现存储卡的片选,从而不需要在硬件结构中附加高速开关电路,降低了硬盘控制器的复杂性,进一步降低了硬盘成本。
[0007]为解决现有技术存在的问题,本发明的技术方案为:
[0008]一种基于存储卡架构的固态硬盘控制方法,包括以下步骤:
[0009]在硬盘控制器并接N个存储通道,每个存储通道的信号总线上并接M个存储卡;
[0010]硬盘控制器为每个存储卡分配具有唯一标识的相对卡地址,并对每个存储卡的物理存储空间分配逻辑块地址;
[0011]读取文件数据并根据该文件的逻辑块地址确定其所存储的存储卡;
[0012]通过向信号总线发送控制命令实现存储卡的片选使其由待机状态转换为占用总线状态;
[0013]与选中的存储卡完成文件数据读写操作;
[0014]当前文件数据读写操作结束后向信号总线发送控制命令使该存储卡由占用总线状态转换为待机状态。
[0015]优选地,所述与选中的存储卡完成文件数据读写操作的步骤中,当所读取文件的部分数据的逻辑块地址超出当前存储卡的地址范围时,先向信号总线发送控制命令使当前存储卡由占用总线状态转换为待机状态,再向信号总线发送控制命令使下一存储卡由待机状态转换为占用总线状态并继续完成该文件数据读写操作。
[0016]优选地,所述通过向信号总线发送控制命令实现存储卡的片选使其由待机状态转换为占用总线状态的步骤中,所述控制命令包含存储卡的相对卡地址信息,只有与控制命令中相对卡地址相一致的存储卡才能进行数据传输。
[0017]优选地,在所述硬盘控制器为每个存储卡分配具有唯一标识的相对卡地址的步骤中,进一步包括以下步骤:
[0018]未分配相对卡地址时,所有存储卡都处于空闲状态;
[0019]硬盘控制器向信号总线发送广播命令;
[0020]每片存储卡接收广播命令后都回发响应信号;
[0021]硬盘控制器接收某片存储卡的响应信号后发送控制命令给该片存储卡并分配相对卡地址;
[0022]硬盘控制器再次发送广播命令并接收下一片存储卡的响应信号直至所有存储卡都分配了不同的相对卡地址。
[0023]优选地,每个存储卡都具有唯一标识的卡识别符,所述响应信号包括卡识别符。
[0024]优选地,所述每片存储卡接收广播命令后都回发响应信号的步骤中,各存储卡采用逐位线与的方式去争夺总线控制权,每次仅有一片存储卡占取总线并完成回发响应信号;所述完成回发响应信号的存储卡进入卡识别状态而不再响应广播命令;其他存储卡继续采用逐位线与的方式去争夺下一次总线控制权直至所有存储卡完成回发响应信号。
[0025]优选地,根据存储卡的卡识别符由小到大的顺序给每片存储卡都分配由小到大的相对卡地址。
[0026]优选地,所述信号总线包括时钟线、命令线和K位数据线。
[0027]优选地,K为1、4、8和16中的任一数值。
[0028]优选地,所述存储卡为SD卡、MMC卡或eMMC模块中的任一种。
[0029]采用本发明的技术方案,通过采用单体容量大的eMMC等存储卡,可在较小体积(如2.5英寸)的硬盘上,实现TB级的超大容量,硬盘的容量可不受硬盘主控制器的存储通道数和片选信号的限制,可多倍地增加。同时在硬件架构上省去了高速开关,减轻了硬盘控制器的负荷,降低了硬盘成本。
[0030]通过参考本说明书和附图的其余部分可以实现本文所公开的特定实施例中的性质和优点的进一步理解。
【附图说明】
[0031]图1所示为本发明一种基于存储卡阵列架构的硬盘实现方法的流程框图;
[0032]图2所示为本发明一种基于存储卡阵列架构的硬盘实现方法的系统架构框图;
[0033]图3所示为实现本发明的硬盘控制器的结构示意图;
[0034]图4所示为实现本发明的硬盘控制器的具体的结构示意图。
[0035]图5为实现本发明实施例公开的一种具体的固态硬盘结构示意图;
[0036]图6为实现本发明实施例公开的另一种具体的固态硬盘结构示意图。
【具体实施方式】
[0037]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0038]相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
[0039]参见图1和图2,所示为本发明一种基于存储卡阵列架构的硬盘实现方法的流程框图和系统架构框图,固态硬盘包括硬盘接口(11)、硬盘控制器(12)以及N*M存储卡阵列,固态硬盘通过硬盘接口(11)和外部主机相连;硬盘控制器(12)具有N个数据存储通道,每个数据存储通道包括一信号总线,每个信号总线上挂载M个存储卡,其中,M和N都为正整数。硬盘控制器(12)接收主机的读写数据,通过向各个数据存储通道上的信号总线发送协议命令实现与N*M存储卡阵列的数据读写,具体控制方法包括以下步骤:
[0040]步骤101:在硬盘控制器并接N个存储通道,每个存储通道的信号总线上并接M个存储卡;硬盘控制器读取主机的文件数据时,将所读取的文件数据平均或者按实际情况分配给N个存储通道,实现并行数据存储,从而
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1