具体实施方式
以下参照附图对本发明进行更加明确的描述,附图中显示本发明的实施例。然而,本发明可以按照许多不同的形式实现并且不应解释为这里阐述的实施例的限制。
如图1所示,为本发明一个实施方式所公开的扫描方法流程示意图。扫描方法包括步骤:
步骤S1,接收数据处理***扫描数据的请求,启动对存储设备的扫描;
步骤S2,确定扫描中出现的错误数,根据所述错误数确定所述错误数对应的扫描等级;
需要说明的是,步骤S2中,所述根据错误数确定错误数对应的扫描等级是根据查询ECC记录单元里记录的扫描中出现的错误数的比特数。
步骤S3,根据所述错误数对应的扫描等级,输出对于不同错误数的扫描结果。
其中,接收数据处理***扫描数据的请求之前的步骤还可以包括:
步骤S0,配置所述不同错误数对应的扫描等级;
在本实施方式中,步骤S1启动对存储设备的扫描后,首先ECC检错单元对从存储阵列单元中读出的数据、及ECC校验值进行检错运算,确定从存储阵列单元中读出的数据是否出现错误数;当所述数据出现错误数,则在ECC记录单元里记录错误数的比特数;
步骤S1中,启动对存储设备的扫描后;首先对数据进行ECC编码,将所述数据和ECC编码生成的ECC校验值写入存储阵列单元的至少一页,并扫描所述数据中出现的错误数,记录所述数据中出现的错误数后,根据所述ECC校验值,对扫描中出现的错误数进行纠正。
步骤S1中,可以通过ECC记录单元记录所述数据中出现的错误数,另外,对所述扫描中出现的错误数进行纠正也可以与记录所述数据中出现的错误数同步处理,此处不做限定。
步骤S2中,确定扫描中出现的错误数对应的扫描等级需要查询ECC记录单元里的错误数的比特数的记录,从而确定错误数对应的扫描等级。
本发明实施例中,扫描中采用的ECC校验值可以使用里德所罗门码,汉明码,循环编码等方式。采用不同的ECC校验值方式可以有不同的纠正范围,如汉明码具有纠正1比特错误数,发现2比特错误数的能力,在一个实施方式中,汉明码用于Nand flash的ECC校验值,该Nand flash可以具有512个字节的页面大小,且每个页面可以具有16个字节的备用区,将每一个页面的512个字节分成四个组,每一组包括128比特数据字节,汉明码在每组中编码128比特数据字节,并为该组产生20个代码比特。每一页面的总编码开销是可以是80个代码位,该80个代码位可保留在该页面的备用区中。Nand flash并不局限于512个字节长度,也可以是1KB或2KB。BCH(Bose、Ray-Chaudhuri与Hocquenghem)主要用于单层单元(Single Layer Cell,SLC)和多层单元(Multi-Level Cell,MLC)中,BCH纠正单比特是比特,里德所罗门码纠正 单位是多个比特的组合,通常以字节为单位,根据应用需要可以配置BCH或里德所罗门码的可纠正范围。如果错误数累积过多,则有可能超出存储设备的ECC纠正单元的纠正范围。
例如,存储设备中纠正算法的纠正范围为每512字节,可纠正16比特错误,而所读出的数据中,每512字节中只有15比特错误,则数据可被纠正,如果不能纠正,则错误数超出ECC纠正单元的纠正范围。本实施例中,根据扫描等级,对错误数进行处理前,如果确定扫描中出现的错误数比特数是0,则说明读取的数据未出现错误数,此时,将数据直接传送至数据处理***,结束扫描数据。
本发明实施例提供的扫描方法,可以及时对存储设备中的错误数进行扫描并输出对应的扫描结果,以避免错误数在存储阵列单元中累积超出了ECC纠正单元的纠正范围,从而减少了这种错误数超过ECC纠正单元的纠正范围后对存储设备的读写性能和数据存储的可靠性带来的不良影响。
如图2所示,为了更清楚地阐述本发明,本发明实施例以纠正范围为12比特、3个扫描等级为例来进行说明。
具体地说,启动对存储设备的扫描前可以配置不同错误数对应的扫描等级,所述扫描等级可根据需要灵活设置不同的扫描等级;
扫描等级可以包括:
第一扫描等级,表示当错误数比特数为第一门限范围内的某个数值,例如,0~4(比特)之间,包括错误数比特数为1和4的情况;则对所述错误数进行纠正后直接传送经过纠正的数据至数据处理***。
第二扫描等级,表示当错误数的比特数为位于第二门限范围,例如,5~8(比特)之间,包括错误数比特数为5和8的情况;回写经过ECC纠正错误后的数据;
第三扫描等级,表示当错误数的比特数位于第三门限范围,例如9~12(比特)之间,包括错误数比特数为9和12的情况;
第三扫描等级时,错误数比特数接近ECC可纠正上限,存放数据的数据块被列为怀疑对象,即可以标示该数据块为不可用数据块,不可用数据块用于表示在扫描过程中,尚未确定该数据块是否是坏块,在这种情况下,需要查找 至少一个新数据块,并将错误数所属的不可用数据块中的所有数据搬移到该新数据块中;
FAIL,表示错误数比特数超过ECC纠正范围,此时数据中的错误数不能恢复,本发明实施方式经过上述三个扫描等级的扫描可有效完成对错误数的预处理,可有效减少错误数超过ECC可纠正范围的情况。
本发明实施例提供的三个扫描等级的扫描方法,可以及时对存储设备中的错误数进行扫描并输出对应的扫描结果,以避免错误数在存储阵列单元中累积超出了ECC纠正单元的纠正范围,从而减少了这种错误数超过ECC纠正单元的纠正范围后对存储设备的读写性能和数据存储的可靠性带来的不良影响。
需要说明的是,以上列举的三个扫描等级的扫描方法仅是出于说明的目的,而不是对本发明的限制,本发明实施例可以包括其中的一个或多个扫描等级,或包括更多扫描等级,本发明实施例在实际应用中对错误数对应的扫描等级的确定依据可以包括以下几个因素:不同类型Nand Flash的误码率,用户在实际应用中对存储设备的可靠性的要求。
图3示出了第一扫描等级对应的扫描结果;
步骤S20,查询错误数,确定错误数对应的扫描等级;
其中,确定错误数对应的扫描等级需要对从存储阵列单元中读出的数据、及ECC校验值进行检错运算,并确定从存储阵列单元中读出的数据是否出现错误数;当所述数据出现错误数,则在ECC记录单元里记录错误数比特数;通过查询错误数比特数确定扫描中出现的错误数的扫描等级。
步骤S30中,当确定错误数对应的扫描等级是第一扫描等级时,说明扫描数据出现的错误数比特数在1~4之间,此时错误数比特数较少,可暂时不处理扫描数据中的正确数据,根据第一扫描等级输出扫描结果,本发明实施例中,步骤S30包括:
步骤S301,对扫描中出现的错误数进行纠正;
在这种情况下,需要对扫描数据中出现的错误数进行纠正,并将纠正后的数据发送至数据处理***。
本实施例中,读取每一数据字节时,将该数据字节所属页面作为产生ECC值的页面,对从存储阵列单元中读出的数据及ECC校验值进行检错运算,确 定从存储阵列单元中读出的数据及ECC校验值是否出现错误数,所述检错是通过将所述存储在页面的ECC校验值与所述通过ECC编码运算产生的校验值进行比较。ECC纠正单元在控制单元控制下,经过相关运算,搜索到每一错误数的位置,并纠正每一错误数,通过ECC记录单元记录错误数比特数。
步骤S302,记录出现错误数的数据块的物理地址。
在对存储设备的正常读写操作中,频繁出现的错误数主要是在第一扫描等级对应的错误数范围内,因此在本发明实施例中,当第二扫描等级和第三扫描等级对应的扫描结果输出后,并不会对存储阵列单元的盘片性能造成较大影响。
如图3示出了第二扫描等级对应的扫描结果;
步骤S20,查询错误数,确定所述错误数对应的扫描等级;
其中,首先对从存储阵列单元中读出的数据、及ECC校验值进行检错运算,确定从存储阵列单元中读出的数据是否出现错误数;当所述数据出现错误数,则在ECC记录单元里记录错误数比特数;查询错误数是根据ECC记录单元里记录的扫描中出现的错误数比特数。
步骤S31,确定所述错误数对应的扫描等级为第二扫描等级时,根据第二扫描等级输出扫描结果;
本发明实施例中,步骤S31包括:
步骤S311,在存储单元中找一个新的存储空间,并读取错误数所属页的所有数据;
步骤S312,对扫描中出现的错误数纠正;
步骤S313,回写经过纠正后的数据到查找到的新的存储空间。
本实施例中,写操作数据长度必须是页的整数倍,读操作的基本单比特通常要比写操作小,读操作的最小长度就是ECC编解码操作的基本数据长度。读操作过程中出现ECC可以纠正的错误,需要将所述错误数所属页的所有数据都读出来再进行回写,具体的,经过ECC检错和纠正后再经过重新编码写入到Nand Flash中新的存储空间。
图3示出了第三扫描等级对应的扫描结果:
步骤S20,查询错误数,确定所述错误数对应的扫描等级;
其中,首先从存储阵列单元中读出数据、根据ECC校验值进行检错运算,确定从存储阵列单元中读出的数据是否出现错误数;当所述数据出现错误数,则在ECC记录单元里记录错误数比特数;查询错误数所属扫描等级是根据ECC记录单元里记录的扫描中出现的错误数比特数。
步骤S32,确定出错误数对应的扫描等级为第三扫描等级时,根据第三扫描等级输出扫描结果;
本发明实施例中,步骤S32包括:
步骤S321,启动坏块读操作;
具体的,首先查找至少一个新数据块;将错误数所属页所属的数据块的有效数据都搬移到所述新数据块中,并标示所述错误数所属页所属块为不可用数据块,然后结束对错误数所属页所属的数据块的其他页的扫描。其中,不可用数据块表示该数据块暂时不可用,需要进行坏块扫描;
步骤S322,启动坏块写操作;
此时应根据错误数所属页的块的地址等信息,通过标注逻辑地址、块号或其他对应标记等方式,建立其与错误数所属页所属块之间的对应关系,以便于将暂存块的数据复制到新数据块的对应页中。可选的,根据SSFDC协议可以将存储单元分成若干个区(Zone),每个区由若干个数据块构成,并且每个区都有设置至少一个空白存储块,用于将要保留的数据复制到该数据块中。
步骤S323,当***空闲时,对不可用数据块进行坏块扫描操作;在本实施方式中,***空闲时是指存储设备未检测到来自数据处理***的读取和写入数据操作的期间,或者在存储设备加电后直到进行来自数据处理***的数据读取和写入操作的期间。坏块扫描操作用于检测坏块,坏块主要包括生产过程中产生固有的坏块和存储设备使用过程中出现的使用坏块,例如,如果某个数据块的首页的冗余区的第6个位标记等于0x00,则扫描可获知该数据块为坏块,所述坏块扫描和坏块标记可以由数据处理***的软件或存储设备中的固件处理,每个坏块在坏块记录表具有对应的物理地址,如果经过坏块扫描,扫描出某个不可用数据块非坏块,则将不可用数据块作为可使用的数据块。通过擦除操作将坏块中的所有比特设置为逻辑“1”。当然,为了保证有效数据的安全性,对擦除坏块的操作必须在将要保留的数据全部复制到新数据块中之后 进行优选的,对存储阵列单元存储设备的存储芯片进行格式化时,一般的,要预留一定数量的块,存储设备实际被格式化的存储容量会扣除这些数量的数据块所占的容量。所以查找新的存储空间时可以找到一个以上的经过坏块扫描后回收使用的不可用数据块,并且这些数据块可以根据存储空间大小及对存储单元的管理而灵活分配。坏块扫描的操作与回写控制操作不同在于,在回写控制操作中,回写控制单元需要通过写数据单元回写当前错误的页的数据到新查找到的存储空间,例如,某个页中;而坏块扫描中,坏块处理单元需要将错误数所属页所属数据块的所有有效数据都搬移到新的数据块中。
当上述步骤S3中,确定到所述错误数的错误状态为:Fail:说明错误数超过ECC纠正单元的纠正范围,此时数据不能纠正,需要停止对存储设备的读取操作,对于错误数超过ECC纠正单元的纠正范围的此种情况,在本发明实施例上,通过三个扫描等级的扫描结果,可以及时对错误数进行扫描,并输出对应的扫描结果,以避免错误数在存储阵列单元中累积超出了ECC纠正单元的纠正范围,从而减少了这种错误数超过ECC纠正单元的纠正范围后对存储设备的读写性能和数据存储的可靠性带来的不良影响。
本实施例中,对于上述扫描处理,例如第一扫描等级中对于错误数较少的数据段,可以不做特殊处理,这样不会影响到存储设备的盘片性能,直到对于错误数到达某个等级后才启动回写操作,可以避免错误数在存储设备中累积到达或超过存储设备的ECC纠正范围,从而可以有效提高存储设备的可靠性。
本领域的技术人员可以理解的是,以上列举的三个扫描等级的方式仅是出于说明的目的,而不是对本发明的限制,本发明实施例可以包括其中的一个或多个扫描等级,或包括更多扫描等级的处理方式,本发明在实际应用中对错误数对应的扫描等级的确定依据包括以下几个因素:不同类型Nand Flash的误码率,用户在实际应用中对存储设备的可靠性的要求。
图4示出了根据本发明的一个实施方式的扫描装置,包括:
接口控制单元10,用于接收数据处理***的扫描数据请求,启动对存储设备的扫描;
扫描单元20,用于确定所述扫描数据请求中所请求数据出现的错误数, 根据所述错误数确定所述错误数对应的扫描等级;
扫描结果输出单元30,用于根据所述错误数对应的扫描等级,输出对于不同错误数的扫描结果。
具体的,接口控制单元10响应于数据处理***的请求,根据数据处理***的请求启动对存储设备的扫描;例如,本实施例中,接口控制单元10可被配置为控制各种类型接口的方式与Nor闪速存储器、Nand闪速存储器、等按照***组件互联,国际组织标准或/和通用串行总线彼此通信。
本发明实施例中,扫描单元20可以通过查询ECC检错并纠正错误的同时所记录下的错误数比特数,确定出错误数对应的扫描等级。
本发明实施例提供的扫描装置,可以及时对存储设备中的错误数进行扫描并输出对应的扫描结果,以避免错误数在存储阵列单元中累积超出了ECC纠正单元的纠正范围,从而减少了这种错误数超过ECC纠正单元的纠正范围后对存储设备的读写性能和数据存储的可靠性带来的不良影响。
如图5所示是本发明一个实施方式的扫描装置;
其中,本发明实施例中,在初始时间,需要配置单元21设置扫描单元20的参数,所述参数可以包括:ECC校验值、数据段长度值、物理页长度值、每数据块中物理页数等。
在本发明实施例中,扫描装置包括:扫描结果输出单元30、扫描单元20、接口控制单元10、配置单元21;
其中,配置单元21,用于预先设定不同错误数对应的扫描等级,以便于当扫描单元20和扫描结果输出单元30启动后,扫描单元20用于确定数据中出现的错误数,并确定所述错误数对应的扫描等级。
具体的,当接口控制单元10接收数据处理***发送的扫描数据请求之前,配置单元21预先设定所述不同错误数的扫描等级,配置单元21可以通过固化软件的方式设定在数据处理***上或设定在存储设备中,以便于扫描结果输出单元30可以采用分不同扫描等级处理的方式输出不同的扫描结果,例如,错误数对应的扫描等级为第一扫描等级,或第二扫描等级,不同的扫描等级需要输出对应的扫描结果,各扫描等级的判别标准可以通过软件动态配置或通过 固化软件功能配置等,例如,第一扫描等级,表示当错误数比特数为第一门限范围;第二扫描等级,表示当错误数比特数为比特第二门限范围;第三扫描等级,表示错误数比特数为比特第三门限范围。
接口控制单元10通过选择器连接缓冲存储器,缓冲存储器被配置为以512个字节为一个扇区单位大小来描述本实施例,但是可以理解,其他单位大小的扇区也可以被采用。缓冲存储器可以是易失性存储器,如SDRAM、SRAM、DRAM等,用于对存储设备进行据写入和读出时,用于暂时保存数据。所述缓冲存储器可以被配置为用于临时存储数据的单个寄存器或双寄存器的模式。
本领域的技术人员可以理解的是,以上列举的三个扫描等级的方式仅是出于说明的目的,而不是对本发明的限制,本发明实施例可以包括其中的一个或多个扫描等级,或包括更多扫描等级的处理方式,本发明在实际应用中对错误数对应的扫描等级的确定依据包括以下几个因素:不同类型Nand Flash的误码率,用户在实际应用中对存储设备的可靠性的要求。
如图6所示,图6示出了扫描装置的模块图;
当接口控制单元10接收到数据处理***发送的扫描数据请求之后,启动对存储设备的扫描;当所述扫描数据请求通过接口控制单元10转发于扫描单元20后;扫描单元20用于确定数据中出现的错误数,并确定所述错误数对应的扫描等级。
扫描单元20包括:
ECC编码单元201、ECC检错单元202、ECC纠正单元203、ECC记录单元204;
其中,ECC编码单元201,用于对数据进行ECC编码,并将所述数据和ECC编码生成的ECC校验值写入存储阵列单元的至少一页;
ECC检错单元202,用于根据所述ECC校验值扫描所述数据中出现的错误数;
ECC纠正单元203,用于当扫描所述数据中出现错误数时,对所述出现的错误数进行纠正;
ECC记录单元204,用于当扫描所述数据中出现错误数时,记录所述扫描数据中出现的错误数。
查询单元205,用于查询ECC记录单元204中记录的错误数,确定所述错误数对应的扫描等级。
本发明实施例中,对于写入操作而言,首先,扫描单元20向存储设备中的存储阵列单元或某一个存储单元发送第一个命令把所述存储单元的地址指向数据处理***配置的地址,扫描单元20在写入数据的同时,ECC编码单元201在扫描单元20的控制下,对数据进行ECC编码,ECC编码单元201对数据进行ECC编码时,例如,可以对数据进行ECC编码,并将所述数据和ECC编码生成的ECC校验值写入存储阵列单元的至少一页;然后,在扫描单元20控制下,ECC编码单元201对每个数据段进行ECC编码运算,产生ECC校验值并添加在数据段后。当扫描单元20将数据分为多个512比特的基本单元被写入存储阵列单元中的某个存储单元时,所有ECC校验值存储在RAM中,其中,ECC编码可以采用汉明编码或里德所罗门编码等编码规则,在此不做限定。此时,扫描单元20会发送改写地址命令,将RAM中的ECC校验值发送到所述存储阵列单元的某个存储单元的备用区中。当扫描单元20开始扫描时,ECC检错单元202在扫描单元20的控制下,对从存储阵列单元中读出的数据、及ECC校验值进行检错运算,并确定从存储阵列单元中某个存储单元读出的数据及ECC校验值是否出现错误数,所述ECC检错是通过确定错误数所属行的地址,行中的符号位置,以及包含出现错误数误数的符号的纠正值。进一步的,ECC纠正单元203在扫描单元20的控制下,经过相关运算,搜索到每一错误数的位置,并纠正每一错误数,通过ECC记录单元204记录所述错误数,查询单元205通过查询上述ECC记录单元204可以获取记录错误数的比特数,以便于扫描单元20确定所述错误数对应的扫描等级。最后,如果确认纠正成功,则所述ECC纠正单元203将已纠正数据提供给所属选择器,用于将纠正的数据传输给所述缓冲存储器。
本领域的技术人员可以理解,对于纠正错误数范围不同的存储设备,本发明实施例的扫描等级可以灵活配置,并不局限于设定的扫描等级对应的特定的错误数。
在本发明实施例中,扫描结果输出单元30用于根据扫描单元20确定的所述错误数对应的扫描等级,输出对于不同错误数的扫描结果。
扫描结果输出单元30包括读数据单元311、写数据单元312、回写控制单元302、坏块处理单元303,其中:
读数据单元311,用于当所述扫描单元确定扫描等级为第一扫描等级时,将所述纠正的数据发送至所述数据处理***端,或将所述纠正的数据发送至缓冲存储器;
具体的,当ECC检错单元202对从存储阵列单元中读出的数据、及ECC校验值进行检错运算后,读数据单元311用于确定ECC错误表204中查询到的错误数比特数在配置单元的级别是第一扫描等级时,通过ECC纠正单元203对所述错误数进行纠正。
写数据单元312,用于在回写控制单元302的控制下,向所述存储阵列单元中的至少一个页中写入数据;
回写控制单元302,用于当扫描单元确定扫描等级为第二扫描等级时,控制所述写数据单元312,并根据第二扫描等级输出扫描结果;
本发明实施例中,回写控制单元302具体用于当所述扫描单元确定错误数为第二扫描等级时,选择新的存储空间中的至少一页,回写控制单元控制所述写数据单元向所述至少一页写入述纠正数据。
具体的,回写控制单元302控制所述读数据单元311读出对应整个页的数据,选择新的存储空间中至少一页,通过写数据单元312向所述新的存储空间中的至少一页写入纠正数据,将纠正的数据发送至数据处理***;或将所述纠正的数据发送至缓冲存储器。坏块处理单元303,用于当所述扫描单元20确定扫描等级为第三扫描等级时,根据第二扫描等级输出扫描结果。
本发明实施例中,坏块处理单元303用于当扫描单元确定所述错误数为第三扫描等级时,选择至少一个新的存储空间,启动所述写数据单元312向所述新的存储空间中所有页写入所述错误数所属块中的数据,并判断所述错误数所属数据块是否为坏块,如所述错误数所属数据块为坏块,坏块处理单元标记所述错误数所属数据块为坏块。
具体的,坏块处理单元303用于在所述存储空间中查找至少一个新数据块,再通过所述读数据单元311读出所述错误数所属页所属数据块的有效数据后,将所述错误数所属页所属数据块的有效数据都搬移到所述新数据块中,将所述错误数所属页所属数据块标示为不可用数据块,表示该数据块未经过坏块扫描操作,暂时为不可用状态。第三扫描等级中,当通过写数据单元312向至少一个新数据块中所有页写入所述错误数所属页所属数据块中的数据后,若存储设备空闲,可以进一步确定所述错误数所属页所属数据块是否为坏块,如所述错误数所属页所属数据块为坏块,坏块处理单元303则标记所述错误数所属页所属数据块为坏块。
本发明实施例提供的扫描装置,可以及时对存储设备中的错误数进行扫描并输出对应的扫描结果,以避免错误数在存储阵列单元中累积超出了ECC纠正单元的纠正范围,从而减少了这种错误数超过ECC纠正单元的纠正范围后对存储设备的读写性能和数据存储的可靠性带来的不良影响。
需要说明的是,以上列举的扫描装置的模块图的功能按照三个扫描等级的方式,仅是出于说明的目的,而不是对本发明扫描装置的限制,本发明实施例的扫描装置可以包括其中的一个或多个扫描等级,或包括更多扫描等级,本发明实施例在实际应用中对错误数对应的扫描等级的确定依据可以包括以下几个因素:不同类型Nand Flash的误码率,用户在实际应用中对存储设备的可靠性的要求等。
本发明实施例中,扫描装置位于的存储设备通过外设接口连接于主处理器,;在一个实施方式中,多个存储单元串联连接形成存储阵列单元,存储单元优选为NAND Flash,存储设备可以是固态硬盘和闪速存储器等。例如,如果存储设备是Nand闪速存储器或Nor闪速存储器,则存储设备可分别使用Nand闪速存储器或Nor闪速存储器接口模式与存储阵列进行通信。本发明实施例的存储设备也可以是相比特可改变存储器或其他的非易失性存储器。本发明实施例的扫描装置可应用在电子设备,如记忆卡、多媒体卡、便携式多媒体控制器或移动电话中,以及应用固态硬盘的军事、工控、视频监控、网络监控、网络终端、电力、医疗、导航设备等领域。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅 仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储单元中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。