一种RAIM构架SSD中故障eMMC定位方法

文档序号:27337758发布日期:2021-11-10 02:32阅读:134来源:国知局
一种RAIM构架SSD中故障eMMC定位方法
一种raim构架ssd中故障emmc定位方法
技术领域
1.本发明属于数据存储技术领域,涉及一种raim构架ssd中故障emmc定位方法。


背景技术:

2.emmc(embedded multi media card,嵌入式多媒体控制器)是目前主流存储器件之一。与单颗nand flash颗粒相比,emmc将高密度nand闪存和mcu(mmc控制器)集成在一颗bga芯片中,在芯片内部完成了对nand flash的管理,并提供标准接口给用户。emmc协议是由mmc协会所订立的内嵌式存储器标准,可以提供高容量,高稳定性和高读写速度。
3.在单颗emmc系统中,controller和emmc交互,主要有五种操作模式:boot mode(开机状态)、device identification mode(设备识别模式)、interrupt mode(中断模式)、data transfer mode(数据传输模式)和inactive mode(无效模式)。在device identification mode下,主要有3个阶段idle state(空闲状态)、ready state(准备状态)和identification state(识别状态)。在设备识别模式,主要通过给emmc发三种命令:
4.cmd1:命令1,用于检测emmc是否完成初始化;
5.cmd2:命令2,用于获取emmc的cid(device identification number,设备信息编号,emmc出厂自带的记录出厂信息的数字);
6.cmd3:命令3,用于设置rca(relative device address,相对设备地址,每一个emmc都有一个专门的rca寄存器用来存放rca);
7.idle state下,emmc内部初始化,controller持续发送cmd1,查询emmc是否完成初始化,完成后进入ready state,接着controller发送cmd2,获取emmc的cid,emmc接收到cmd2后,会将127bits的cid的内容通过cmd线(command线,emmc的命令线)返回cid给controller,emmc发送完cid后,就进入identification state。在该状态,controller为emmc分配16bits的rca,发送cmd3命令,将rca设置到emmc中的rca寄存器中,设定完rca后,emmc就完成了devcie identification,进入data transfer mode,可以用于正常数据传输了。
8.随着存储数据增多,单颗emmc已经无法满足存储需求,迫切需要大容量ssd(solid state disk,固态硬盘),而基于flash的ssd过于复杂,为了让ssd的设计变得简单,一种基于emmc阵列的raim(redundant array of independent module)构架的ssd应运而生,参见图1。
9.该架构由一个ssd controller和多个通道channel构成,每个通道上有多颗emmc,一个通道上多个emmc的共享cmd线。参见图2为图1中channel0,即通道0上emmc级联结构。
10.该架构的ssd在初始化时,ssd controller向channel0发送广播命令cmd2向该通道上所有设备请求cid,channel0上处于ready state的3个emmc,开始连续发送它们128bit的cid号码到cmd线上,每一个bit周期,emmc开漏输出它们的cid,在开漏输出时,低电平输出0,高电平时输出高阻态,而线上bit值是所有cid对应bit值相与的结果,同时emmc逐位监控输出比特流,如果emmc设备发送的cid在任何一个bit周期内与cmd线上cid不匹配,就停
止发送cid,等待下一个请求识别周期。每一个cid的编号是唯一的,一个识别周期只有一个设备能成功将完整的cid发送给controller,然后controller发cmd3,给设备分配相对设备地址rca。rca设好之后,emmc就不会对识别周期有反馈,同时,将开漏输出转为推挽输出。因此controller接收的cid顺序肯定是从小到大的,但并不清楚是具体哪一颗emmc回的cid,再分配的rca也不知道对应具体哪一颗emmc。那么在ssd发生故障时,ssd controller可以清楚知道哪一个rca的emmc发生故障,而无法得知故障emmc的具体空间位置。另外一种方案是在生产之前,先将所有emmc的cid读出来,上生产线以前按照大小排列好,这样生产后的产品中,rca就按照预先设想的规律放在对应的位置了。rca就可以与实际版图上的emmc一一对应,但该方案在生产实现中非常复杂,效率极低,一般生产中不采用。所以目前emmc阵列故障定位是非常困难的。
11.现有检测emmc阵列中颗粒故障的方法有两种:一种是直接检测,另外一种是通过专用光学检验设备检测。
12.第一种方案:该方案需要对emmc芯片依次进行初始化、擦除、写入、读取时,监控不同操作的返回状态,分析发送不同命令时的返回状态来判断该颗emmc具体发生了什么故障,然后输出该emmc的cid编号或rca。
13.第二种方案:利用电子束故障检测。在电子束缺陷设备下,芯片内不同器件表现的亮暗程度是明显不一样的,可以通过比对芯片走线确定是否出现故障。
14.对于上述的第一种方案,只能输出故障emmc的cid编号或者rca编号,无法确定故障emmc的具体空间位置,无法检修。
15.对于上述的第二种方案,该方案需要购买专业设备,价格昂贵,且操作复杂,需要专业人员操作,检测效率低下,不适合故障emmc的定位。


技术实现要素:

16.本发明为解决raim构架ssd的emmc阵列中故障emmc定位困难的问题,利用红外成像技术,测出emmc阵列工作的红外成像热度图,通过热量分布快速分辨出正常和故障emmc颗粒所在位置。
17.具体提出了一种raim构架ssd中故障emmc定位方法,包括通过红外热像仪对emmc进行热成像图的拍摄,根据预设的颜色范围判断emmc是否出现故障。
18.优选地,具体包括以下步骤:
19.s1,测试若干个ssd盘,选出故障盘,并记录故障rca;
20.s2,对故障盘中每一个emmc进行编号,并格式化故障盘;
21.s3,测试正常盘不同工作状态下的色温,作为故障检测对比标准;
22.s4,选中s1中非故障的rca,写入数据,获取红外成像图;
23.s5,观测红外成像图,得到正常工作的emmc对应的s4中rca;
24.s6,重复s4和s5,测试正常ssd盘上所有非故障的rca对应的emmc是否是正常颗粒。
25.优选地,所述测试若干个ssd盘,选出故障盘,并记录故障rca,具体为依次对盘上所有rca对应的emmc发送擦、写和读命令,通过查看擦除之后,数据反馈线上0bit位的数据判断擦除是否故障,如果0bit位是0,表示擦除成功,如果超出预设擦除时间后0bit位还是1,表示该rca对应的emmc擦除发生故障;再发送写读命令,写入特定的预设值,再读上来进
行对比,如果不一致,则写读故障;发生擦写读其中任何一种故障,即认为该rca对应的emmc是故障的,反之正常,记录该盘所有rca的状态,即正常或故障。
26.优选地,所述对故障盘中每一个emmc进行编号,并格式化故障盘,其中故障盘格式化,清除数据,避免在选中阵列中一个emmc进行操作时,其他空闲emmc发生垃圾回收的使芯片发热的情况,使发生误判。
27.优选地,所述测试正常盘不同工作状态下的色温,作为故障检测对比标准,具体为若干次使用红外成像仪获得温度和色温,记录空闲不工作状态下的emmc所处区域的温度对应红外成像图中的颜色范围,记为低温色;记录写数据5分钟工作状态下的emmc的所处区域的温度对应红外成像图中的颜色范围,记为高温色。
28.优选地,所述选中s1中非故障的rca,写入数据,获取红外成像图,具体为选中s1中没有发生故障的一个rca,写入数据5分钟。让该rca寄存器对应的emmc工作,温度升高且达到稳定状态,然后使用红外测温仪拍摄红外成像图。
29.优选地,所述观测红外成像图,得到正常工作的emmc对应的s4中rca,具体为观察成像图,如果有一颗emmc所在区域色温范围符合s3中高温色范围,则说明该颗emmc正在正常工作,该颗粒为正常颗粒,且对应s4下发的rca。
30.优选地,所述重复s4和s5,测试正常ssd盘上所有中非故障的rca对应的emmc是否有正常颗粒,具体为重复s4和s5,依次测试盘上所有正常rca对应的emmc是否为正常颗粒,检验出盘上所有正常颗粒,剩余的即为故障颗粒。
31.本发明有益效果至少包括:
32.利用红外技术定位故障颗粒,通过对比正常工作的emmc和故障emmc对外部温度环境的影响,利用红外成像图直接判断。现有技术只能判断故障emmc的rca编号,而无法确定具体的空间位置。而生产之前绑定rca地址和实际空间位置操作较为复杂,没有红外成像图直观,快捷,简易。
33.本发明可以在emmc阵列工作状态时,直接快速检测出故障颗粒,不用更换检测固件,不用将rca与emmc地址绑定,不用采用特殊芯片检测设备,降低了生产成本,减小了检测的复杂度。
附图说明
34.图1为现有技术中基于raim构架的固态硬盘emmc阵列结构框图;
35.图2为图1中channel0中emmc级联结构示意图;
36.图3为本发明实施例的raim构架ssd中故障emmc定位方法的步骤流程图;
37.图4为本发明实施例的raim构架ssd中故障emmc定位方法的emmc阵列红外成像示意图。
具体实施方式
38.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
39.相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修
改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
40.包括通过红外热像仪对emmc进行热成像图的拍摄,根据预设的颜色范围判断emmc是否出现故障。
41.参见图3,包括以下步骤:
42.s1,测试若干个ssd盘,选出故障盘,并记录故障rca;
43.s2,对故障盘中每一个emmc进行编号,并格式化故障盘;
44.s3,测试正常盘不同工作状态下的色温,作为故障检测对比标准;
45.s4,选中s1中非故障的rca,写入数据,获取红外成像图;
46.s5,观测红外成像图,得到正常工作的emmc对应的s4中rca;
47.s6,重复s4和s5,测试正常ssd盘上所有中非故障的rca对应的emmc是否有正常颗粒。
48.具体实施里中,s1,测试若干个ssd盘,选出故障盘,并记录故障rca,具体为依次对盘上所有rca对应的emmc发送擦、写和读命令,通过查看擦除之后,数据反馈线上0bit位的数据判断擦除是否故障,如果0bit位是0,表示擦除成功,如果超出预设擦除时间后0bit位还是1,表示该rca擦除发生故障;再发送写读命令,写入特定的预设值,再读上来进行对比,如果不一致,则写读故障;发生擦写读其中任何一种故障,即认为该rca对应的emmc是故障的,反之正常,记录该盘所有rca的状态,即正常或故障。
49.s2,对故障盘中每一个emmc进行编号,并格式化故障盘,其中故障盘格式化,清除数据,避免在选中阵列中一个emmc进行操作时,其他空闲emmc发生垃圾回收的使芯片发热的情况,使发生误判。
50.s3,测试正常盘不同工作状态下的色温,作为故障检测对比标准,具体为若干次使用红外成像仪获得温度和色温,记录空闲不工作状态下的emmc所处区域的温度对应红外成像图中的颜色范围,记为低温色;记录写数据5分钟工作状态下的emmc的所处区域的温度对应红外成像图中的颜色范围,记为高温色。
51.s4,选中s1中非故障的rca,写入数据,获取红外成像图,具体为选中s1中没有发生故障的一个rca,写入数据5分钟。让该rca对应的emmc工作,温度升高且达到稳定状态,然后使用红外测温仪拍摄红外成像图。
52.s5,观测红外成像图,得到正常工作的emmc对应的s4中rca,具体为观察成像图,如果有一颗emmc所在区域色温范围符合s3中高温色范围,则说明该颗emmc正在正常工作,该颗粒为正常颗粒,且对应s4下发的rca。
53.s6,重复s4和s5,测试正常ssd盘上所有非故障的rca对应的emmc是否是正常颗粒,具体为重复s4和s5,依次测试盘上所有正常rca对应的emmc是否为正常颗粒,检验出盘上所有正常颗粒,剩余的即为故障颗粒。
54.参见图4为正常工作状态下的emmc阵列盘的对应的红外图,利用红外成像技术来定位emmc颗粒故障。电流在通过导体或半导体,总是会有一部分电能转化为热能。芯片内部主要由晶体管构成,晶体管内部通过电流反转实现二进制0和1,在正常工作的emmc颗粒中,有相当数量的晶体管每秒内翻转次数高达上亿次,每次都伴随着电流的消耗和热量的产
生,由于散热速度远远小于其生产速度,形成高温区域。发生故障而不能工作的emmc颗粒则不会因为比特翻转产生热量,相对温度较低。
55.红外热像仪是把物体发出的不可见红外能量转变为可见热图像的仪器,它利用的是红外探测器以及光学成像物镜接受被测目标的红外辐射能量分布图形反映到红外探测器的光敏元件上,生成高质量的红外热像图,热像图与物体表面的热分布场相对应,热成像图的上面的不同颜色代表被测物体的不同温度。
56.host端选定rca0发送读写任务,emmc2内部controller接收到命令,开始存储数据,芯片内部开始运转发热,在红外测温仪中可以看到emmc2所在区域的颜色对应的温度比处于空闲状态的emmc的颜色对应的温度要高,即可知rca0对应实际空间上的颗粒是emmc2,且emmc2为正常颗粒。
57.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1