发明内容
本发明提供了一种数据擦除方法、装置及计算机存储介质,以解决闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
第一方面,本发明实施例提供了一种数据擦除方法,该方法包括:
当接收到主机发送的擦除命令时,获取与所述擦除命令对应的至少一个目标逻辑映射地址;
根据所述目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与所述目标逻辑映射地址对应的目标擦除区域;
根据所述目标擦除区域进行数据擦除;其中,所述目标擦除区域包括至少一个目标区。
进一步地,所述的方法还包括:
根据各逻辑映射地址将数据存储空间划分为至少两个目标区;其中,同一所述目标区中各逻辑映射地址与物理映射地址之间的映射关系的存放地址存储在同一目标区地址中。
进一步地,所述的方法还包括:
根据各目标区地址将至少所述两个目标区划分为至少两个目标段;其中,同一所述目标段中的各所述目标区对应的目标区地址存储在同一目标段地址中。
进一步地,在根据所述目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与所述目标逻辑映射地址对应的目标擦除区域,还包括:
根据所述目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与所述目标逻辑映射地址对应的至少一个目标段。
进一步地,所述根据所述目标擦除区域进行数据擦除,包括:
当所述目标逻辑映射地址中包括至少一个完整目标段时,将与所述目标段对应的目标段地址设置为无效状态;和/或,
当所述目标逻辑映射地址中包括至少一个完整目标区时,将与所述目标区对应的目标区地址设置为无效状态;和/或,
读取起始逻辑映射地址和结束逻辑映射地址区间内的各逻辑映射地址,并分别获取与所述各逻辑映射地址对应的映射关系,将所述映射关系设置为无效状态。
第二方面,本发明实施例还提供了一种数据擦除装置,该装置包括:
地址获取模块,用于当接收到主机发送的擦除命令时,获取与所述擦除命令对应的至少一个目标逻辑映射地址;
擦除区域确定模块,用于根据所述目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与所述目标逻辑映射地址对应的目标擦除区域;
数据擦除模块,用于根据所述目标擦除区域进行数据擦除;其中,所述目标擦除区域包括至少一个目标区。
进一步地,所述的装置还包括:
目标区划分模块,用于根据各逻辑映射地址将数据存储空间划分为至少两个目标区;其中,同一所述目标区中各逻辑映射地址与物理映射地址之间的映射关系的存放地址存储在同一目标区地址中。
进一步地,所述的装置还包括:
目标段划分模块,用于根据各目标区地址将至少所述两个目标区划分为至少两个目标段;其中,同一所述目标段中的各所述目标区对应的目标区地址存储在同一目标段地址中。
进一步地,所述擦除区域确定模块,还用于:
根据所述目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与所述目标逻辑映射地址对应的至少一个目标段。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的数据擦除方法。
本发明实施例提供了一种数据擦除方法、装置及计算机存储介质,在接收到主机发送的擦除命令时,获取擦除命令对应的目标逻辑映射地址,通过目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定目标擦除区域,并对目标擦除区域进行数据擦除,解决了闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在介绍本发明各实施例之前,先对本发明实施例的应用场景进行说明,eMMC是由多个物理区块组成,每个物理区块都可进行读、写和擦除操作。为了方便用户操作,编程者在编程过程中为每个区块设定了虚拟的逻辑映射地址,不同的物理区块可以通过逻辑映射地址进行链接后形成一个完整的可执行目标程序,但是当主机在运行时执行指令和访问数据都是要通过物理映射地址获取数据,所以必须通过逻辑映射地址和物理映射地址之间的映射关系,将逻辑映射地址转换成物理映射地址。可选的,逻辑映射地址和物理映射地址之间的映射关系可以存储在NAND闪存空间内。为了减少编程操作延时,一个区块内容被修改后,该区块的逻辑映射地址要断开与原来的物理映射地址之间的映射关系,和新的一个物理映射地址建立映射关系,此时断开的映射关系即为无效,新建立的映射关系即为有效,映射关系设置为无效的过程即为数据擦除过程。
实施例一
图1为本发明实施例一提供的数据擦除方法的流程图,本实施例可适用于擦除eMMC中逻辑映射地址与物理映射地址之间的映射关系的情况,该方法可以由本发明实施例提供的数据擦除装置来执行,该装置可采用硬件和/或软件的方式来实现。如图1所示,该数据擦除方法具体包括如下步骤:
步骤101、当接收到主机发送的擦除命令时,获取与擦除命令对应的至少一个目标逻辑映射地址。
其中,当eMMC中的逻辑区块数据存储空间不足时,需要将已被编程过的逻辑区块中的数据进行擦除,释放数据存储空间,此时主机就会发送擦除命令,擦除命令中包含了要进行擦除操作的逻辑区块信息,可选的,逻辑区块信息可以包括要进行擦除操作的逻辑映射地址,即目标逻辑映射地址。要擦除的目标逻辑区块可以是一个,也可以是多个,同样擦除命令对应的目标逻辑映射地址也至少为一个。可选的,当目标逻辑映射地址为多个时,多个目标逻辑映射地址是连续的。
步骤102、根据目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的目标擦除区域。
其中,由步骤101可知,目标逻辑映射地址为要进行擦除操作的逻辑映射地址,且要进行擦除的目标逻辑区块为至少一个逻辑区块,所以目标逻辑映射地址中一定包含了要进行擦除操作的起始逻辑映射地址和结束逻辑映射地址,起始逻辑映射地址对应着开始进行擦除操作的逻辑区块,结束逻辑映射地址对应着结束擦除操作的逻辑区块。根据起始逻辑映射地址和结束逻辑映射地址就可以在所有的逻辑区块中确定要进行目标擦除的逻辑区块对应的区域。
可选的,目标擦除区域包括至少一个目标区zone或者是在至少一个目标区zone的基础上又包括至少一个目标段segment。目标区zone是将数据存储空间按照一定的预设规则进行第一次划分后得到的,第一次划分后的目标区zone至少为两个;目标段segment是将第一次划分后的至少两个目标区zone在此按照一定的预设规则进行第二次划分得到的,第二次划分后的目标段segment同样也是至少两个。两次的预设规则是预先根据存储空间的逻辑区块总数和实际的划分情况而定的,可以是一样的,也可以是不一样的。
步骤103、根据目标擦除区域进行数据擦除。
其中,擦除操作是以逻辑区块为单位进行擦除的,对目标区域进行数据擦除的过程具体可包括将目标擦除区域中各逻辑映射地址和物理映射地址之间的映射关系设置为无效的过程。
本发明实施例提供了一种数据擦除方法,在接收到主机发送的擦除命令时,获取擦除命令对应的目标逻辑映射地址,通过目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定目标擦除区域,并对目标擦除区域进行数据擦除,解决了闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
实施例二
图2为本发明实施例二提供的数据擦除方法的流程图,本实施例在上述实施例的基础上,提供了一种数据擦除方法,适用于擦除eMMC中逻辑映射地址与物理映射地址之间的映射关系的情况,如图2所示,本实施例的数据擦除方法具体可包括如下步骤:
步骤201、根据各逻辑映射地址将数据存储空间划分为至少两个目标区;其中,同一目标区中各逻辑映射地址与物理映射地址之间的映射关系的存放地址存储在同一目标区地址中。
其中,逻辑映射地址是将逻辑区块的逻辑地址经过一定转换后得到的,由于数据存储空间中的逻辑区块个数比较多,为了更高效的对逻辑映射地址与物理映射地址之间的映射关系进行擦除,可以根据逻辑映射地址将数据存储空间的各逻辑区块划分为至少两个目标区,具体的划分规则可以根据存储空间中逻辑区块的总个数和实际的划分情况预先设定,例如,若存储空间中有100000个逻辑区块,具体的划分规则为以每2000个逻辑区块作为一个目标区,即第1个逻辑区块到第2000个逻辑区块属于第1个目标区,第2001个逻辑区块到第4000个逻辑区块属于第2个目标区,以此类推,100000个逻辑区块可以划分为50个目标区。
为了方便擦除逻辑映射地址与物理映射地址之间的映射关系,可以在对逻辑区块进行目标区划分时,将逻辑映射地址与物理映射地址之间的映射关系的存储地址存储在目标区地址中,如果要对目标区中的各逻辑映射地址和物理映射地址的映射关系进行擦除时,就不用从NAND中一个个的去寻找其映射关系,只需将该目标区地址擦除即可。
步骤S202、根据各目标区地址将至少两个目标区划分为至少两个目标段;其中,同一目标段中的各目标区对应的目标区地址存储在同一目标段地址中。
其中,将各逻辑区块划分为目标区后,若目标区的个数较多时,还可以根据各目标区地址将步骤S201划分后的多个目标区继续划分为至少两个目标段。具体的划分规则可以是根据步骤S201划分后的目标区的总个数和实际的划分情况预先设定的,例如,100000个逻辑区块划分为了50个目标区后,可以以每10个目标区作为一个目标段进行目标段的划分,即第1个目标区到第10个目标区属于第1个目标段,第11个目标区到第20个目标区属于第2个目标段,以此类推,50个目标区可以划分为5个目标段。
与目标区类似,每个目标段也有属于自己的目标段地址,其中存储着该目标段中的各目标区对应的目标区地址。如果要将目标段中的各目标区地址进行擦除时,就不用一个个的进行目标区地址的擦除,只需要将该目标段地址擦除即可。
可选的,若划分后的目标段个数还是较多时,可以依据对目标段的划分方法将多个目标段继续进行划分,例如,可以在目标段的基础上继续划分为至少两个目标带等,以实现高效率的数据擦除。
步骤S203、当接收到主机发送的擦除命令时,获取与擦除命令对应的至少一个目标逻辑映射地址。
步骤S204、根据目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的至少一个目标段。
其中,步骤S201和步骤S202已经将数据存储空间中的各逻辑区块进行了目标区和目标段的划分,根据擦除命令对应的目标逻辑映射地址确定擦除区域时,目标逻辑映射地址中的起始逻辑映射地址和结束逻辑映射地址对应的是各逻辑映射地址,所以要先判断起始逻辑映射地址和结束逻辑映射地址对应的目标段。
可选的,目标逻辑映射地址对应的目标段可以是一个完整的目标段和/或某个目标段中的一部分。当目标逻辑映射地址对应的目标段为某个目标段中的一部分时,需要通过起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的至少一个目标区作为目标擦除区域。
进一步地,目标逻辑映射地址对应的目标区可以是一个完整的目标区和/或某个目标区中的一部分。当目标逻辑映射地址对应的目标区为某个目标区中的一部分时,需要通过起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的至少一个逻辑区块作为目标擦除区域。
步骤S205、根据目标擦除区域进行数据擦除。
其中,步骤S204中已经根据目标逻辑映射地址确定了目标擦除区域,此时可以按照如下方法对目标擦除区域进行数据擦除,包括:当目标逻辑映射地址中包括至少一个完整目标段时,将与目标段对应的目标段地址设置为无效状态;和/或,当目标逻辑映射地址中包括至少一个完整目标区时,将与目标区对应的目标区地址设置为无效状态;和/或,读取起始逻辑映射地址和结束逻辑映射地址区间内的各逻辑映射地址,并分别获取与各逻辑映射地址对应的映射关系,将映射关系设置为无效状态。
具体的,根据步骤S204中确定的目标擦除区域,先判断该目标擦除区域是否包括至少一个完整的目标段,若包括完整的目标段时将目标段对应的目标段地址设置为无效状态,即将该目标段所在区域的数据擦除;若不包括完整的目标段或者除了完整的目标段外还存在不完整的目标段时,将与目标区对应的目标区地址设置为无效状态,即将该目标区所在区域的数据擦除;若目标擦除区域不包括完整的目标区或者除了完整的目标区外还存在不完整的目标区时,读取起始逻辑映射地址和结束逻辑映射地址区间内各逻辑映射地址,并分别从NAND中获取与各逻辑映射地址对应的映射关系,将映射关系设置为无效状态。
本发明实施例提供了一种数据擦除方法,对各逻辑区块进行目标区和目标段的两次划分后,根据主机发送的擦除命令,获取对应的至少一个目标逻辑映射地址,进一步确定与目标逻辑映射地址对应的至少一个目标段,从而完成对目标擦除区域的数据擦除,解决了闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
实施例三
图3为本发明实施例三提供的数据擦除方法的流程图,图4A-4B是本发明实施例三提供的eMMC逻辑区块示意图,本实施例在上述各实施例的基础上,提供了一种可选实例,适用于擦除eMMC中逻辑映射地址与物理映射地址之间的映射关系的情况,其中,1颗8GB的eMMC中的部分逻辑区块,其逻辑映射地址为0-1499999,以每2000个逻辑区块作为一个目标区,以每250个目标区作为一个目标段进行划分后,得到如图4A所示的擦除前的eMMC逻辑区块示意图。若接收到主机发送的擦除起始逻辑映射地址为498000、结束逻辑映射地址1000000的擦除命令后,结合图4A-4B对图3的数据擦除方法进行进一步地示意说明,该数据擦除方法包括如下步骤:
步骤S301、判断目标逻辑映射地址中是否包括一个完整目标段,若是,执行步骤S302,若否,执行步骤S304。
判断目标擦除区域的目标逻辑块地址中是否包括一个完整的目标段,若包括则执行步骤S302,对该目标段地址进行处理,若不包括则执行步骤S304,进行是否包括一个完整目标区的判断。示例性的,如图4A所示,目标擦除区域的目标逻辑块地址为49000到1000000,在该目标擦除区域内,存在完整的目标段S1,因此执行步骤S302。
步骤S302、将于目标段对应的目标段地址设置为无效状态。
当目标擦除区域包括一个完整目标段时,则将该完整目标段对应的目标段地址设置为无效状态,即该目标段中的各目标区对应的目标区地址设置为无效状态,由于目标区地址中存储的是各逻辑映射地址与物理映射地址之间的映射关系的存放地址,所以将与目标段对应的目标段地址设置为无效状态,即完成了整个目标段中的逻辑映射地址与物理映射地址之间的映射关系的无效。示例性的,如图4A所示,目标段S1对应的目标段地址设置为无效状态,对应的目标段S1中的各逻辑映射地址和物理映射地址的映射关系设置为无效状态。
步骤S303、判断目标擦除区域是否全部擦除,若是,执行步骤S308,若否,执行步骤S304。
当目标擦除区域中完整的目标段擦除完成后,要进行判断,看目标擦除区域是否全部擦除,若全部擦除说明数据擦除完成,若还存在没有擦除的区域,执行步骤S304,进一步进行数据的擦除。示例性的,如图4A所示,在擦除了目标段S1后,目标擦除区域中目标段S0和目标段S2中还存在没有擦除的部分,所以执行步骤S304。
步骤S304、判断待擦除的目标擦除区域是否包括一个完整的目标区,若是,执行步骤S305,若否,执行步骤S307。
此时待擦除的目标擦除区域中已经没有完整的目标段了,所以要判断是否包括一个完整的目标区,若包括则执行步骤S305,对该目标区地址进行处理,若不包括则执行步骤S307。示例性的,如图4A所示,判断目标段S0和S2在目标逻辑映射地址498000到1000000之间是否包括一个完整的目标区,可以看出,存在完整的目标区Z249,因此执行步骤S305。
步骤S305、将与目标区对应的目标区地址设置为无效状态。
当目标擦除区域包括一个完整目标区,则将该完整目标区对应的目标区地址设置为无效状态,即该目标区地址中存储的各逻辑映射地址与物理映射地址之间的映射关系设置为无效状态。示例性的,如图4A所示,目标区Z249对应的目标区地址设置为无效状态,对应的目标区Z249中的各逻辑映射地址和物理映射地址的映射关系设置为无效状态。
步骤S306、判断目标擦除区域是否全部擦除,若是,执行步骤S308,若否,执行步骤S307。
当完整的目标区擦除完成后,要再进行判断,看此时目标擦除区域是否全部擦除,若全部擦除说明数据擦除完成,若还存在没有擦除的区域,执行步骤S307,进一步进行数据的擦除。示例性的,如图4A所示,在擦除了目标区Z249后,目标擦除区域中目标区Z500中还存在没有擦除的部分,所以,执行步骤S307。
步骤S307、读取起始逻辑映射地址和结束逻辑映射地址区间内的各逻辑映射地址,并分别获取与各逻辑映射地址对应的映射关系,将所述映射关系设置为无效状态。
当不包含完整的目标区时,说明目标擦除区域只剩下少量的逻辑区块,此时,需要分别获取各逻辑映射地址对应的映射关系,即各逻辑映射地址与物理映射地址之间的映射关系,并将所述映射关系设置为无效状态。示例性的,如图4A所示,目标逻辑映射地址498000到1000000之间,待擦除逻辑区块还有L1000000,从NAND中获取与各逻辑映射地址对应的映射关系,将映射关系设置为无效状态。
步骤S308、数据擦除完成。
示例性的,数据擦除完成后的eMMC逻辑区块示意图如图4B所示。
本发明实施例提供了一种数据擦除方法,对目标逻辑映射地址对应的目标擦除区域进行数据擦除时,先进行目标段地址的无效,再进行目标区地址的无效,最后进行逻辑区域地址对应映射关系的无效,解决了闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
实施例四
图5为本发明实施例四提供的数据擦除装置的结构框图,该装置可执行本发明任意实施例所提供的数据擦除方法,具备执行方法相应的功能模块和有益效果。如图5所示,该装置包括:地址获取模块501、擦除区域确定模块502和数据擦除模块503。
其中,地址获取模块501,用于当接收到主机发送的擦除命令时,获取与擦除命令对应的至少一个目标逻辑映射地址;擦除区域确定模块502,用于根据目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的目标擦除区域;数据擦除模块503,用于根据目标擦除区域进行数据擦除;其中,目标擦除区域包括至少一个目标区。
本发明实施例提供了一种数据擦除装置,在接收到主机发送的擦除命令时,获取擦除命令对应的目标逻辑映射地址,通过目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定目标擦除区域,并对目标擦除区域进行数据擦除,解决了闪存转换层在执行大容量擦除操作时需要多次保存映射表的问题,实现高效率的数据擦除。
在上述技术方案的基础上,所述装置还可包括:
目标区划分模块,用于根据各逻辑映射地址将数据存储空间划分为至少两个目标区;其中,同一目标区中各逻辑映射地址与物理映射地址之间的映射关系的存放地址存储在同一目标区地址中。
在上述各技术方案的基础上,所述装置还可包括:
目标段划分模块,用于根据各目标区地址将至少两个目标区划分为至少两个目标段;其中,同一目标段中的各目标区对应的目标区地址存储在同一目标段地址中。
在上述各技术方案的基础上,擦除区域确定模块502还可用于根据目标逻辑映射地址的起始逻辑映射地址和结束逻辑映射地址确定与目标逻辑映射地址对应的至少一个目标段。
在上述各技术方案的基础上,数据擦除模块503可包括:目标段无效单元、目标区无效单元和/或映射关系无效单元。
其中,目标段无效单元,用于当目标逻辑映射地址中包括至少一个完整目标段时,将与目标段对应的目标段地址设置为无效状态;目标区无效单元,用于当目标逻辑映射地址中包括至少一个完整目标区时,将与目标区对应的目标区地址设置为无效状态;映射关系无效单元,用于读取起始逻辑映射地址和结束逻辑映射地址区间内的各逻辑映射地址,并分别获取与各逻辑映射地址对应的映射关系,将映射关系设置为无效状态。
上述装置可执行本发明任意实施例所提供的数据擦除方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的数据擦除方法。
值得注意的是,上述数据擦除装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;例如,该装置可以仅包括通信模块和控制模块,通信模块实现命令的接收与地址的获取;控制模块实现确定、擦除、划分等相关的功能。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例五
本发明实施例五还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可实现上述任意实施例中的数据擦除方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上述实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间的相同或相似的部分互相参见即可。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。