SSD中数据的选择性擦除的制作方法

专利2022-05-10  18


ssd中数据的选择性擦除
技术领域
1.一般来说,本发明大体上涉及用于在固态驱动器(ssd)中提供选择性数据擦除的系统及方法。


背景技术:

2.常规固态驱动器(ssd)经配置以通过被称为“页”的单元将数据存储在非易失性存储装置(例如,nand存储器装置)中。nand存储器装置通常具有多个块,且每一块具有多个页。对于ssd,数据通常被逐页地写入并被逐块地擦除。一旦被写入,页可能不会被重写,除非首先擦除整个块。因此,关于更新数据,响应于接收到更新最初存储在第一页中的数据的写入命令或更新命令,ssd的存储器控制器将经更新数据写入到不同于第一页的第二页。控制器经配置以更新内部映射(例如,通过映射表)以便指示将经更新数据存储在第二页(新物理位置)中。将数据写入到ssd的主机系统使用逻辑寻址方案,其中逻辑地址(例如逻辑块地址(lba))通过逻辑到物理映射表映射到物理nand存储器装置页。当主机重写或更新给定逻辑地址处的数据时,其尚不知晓原始数据仍存储在第一页中并且实际上没有由存储在不同的第二页中的经更新数据物理重写。控制器也经配置以将原始数据(第一页)视为无效的,尽管原始数据本身在第一页内保持完整及可读。
3.除重写逻辑地址处的现有数据之外,主机系统还可以使用根据各种标准的传统命令直接使逻辑地址处的数据无效,例如但不限于由主机的操作系统(os)或文件系统发出trim(sata标准)、deallocate(nvme标准)及unmap(scsi标准)以使ssd中的逻辑地址或地址范围处的数据无效。由逻辑地址映射到的物理页中的原始数据仍保持完整,这是因为仅更新映射以指示页是无效的。
4.因此,与无效页相关联的数据(本文中称为

瞬息数据’)将保持完整,直到选择回收数据所驻存的特定块的垃圾收集事件发生为止。如果逻辑地址处的数据被更新或重写多次,那么可能存在与逻辑地址相关联的位于多个块中的多个无效页中的多代瞬息数据。
5.在垃圾收集事件期间,所选择块的有效页被复制到新位置(即新块中的新有效页)。接着,对所选择块进行擦除,从而致使无效页中的所有瞬息数据均被擦除。由于在使页无效与其驻存在其中的块被擦除之间可能存在不确定时间,因此ssd中的瞬息数据可在不确定的时间长度内可用于检验,所述时间长度不受最初数据被写入的主机系统的控制及影响。
6.出于数据安全或隐私原因,应删除例如瞬息数据的过时数据/信息以防止未经授权的读取或检验。可用于主机的常规擦除功能完全擦除整个驱动器或者单个卷或命名空间。因此,仍需要在ssd中执行数据(包含瞬息数据)的选择性擦除。


技术实现要素:

7.在某些方面中,ssd装置的本发明实施方案针对用于提供所述ssd装置的数据分段的擦除以防止读取或恢复当前(有效)数据或历史(无效)数据的系统及方法。
附图说明
8.图1展示根据一些实施方案的主机及ssd装置的实例的框图;
9.图2展示根据一些实施方案的用于在ssd中管理数据擦除的实例性过程的流程图;
10.图3展示根据一些实施方案的用于维护映射表的实例性过程的流程图,所述映射表将每一逻辑地址映射到ssd中的一或多个页;及
11.图4a展示根据一些实施方案的用于块的实例性块元数据。
12.图4b展示根据一些实施方案的将每一逻辑地址映射到有效页及无效页的实例性映射表。
具体实施方式
13.在其它方面当中,申请人注意到,传统文件系统可将命令发出到ssd以指示不再使用逻辑地址,且作为相应,ssd控制器更新映射表使得与逻辑地址相关联的页可被确定为无效的并准备好被当成垃圾而收集。无论什么时候,所述页将在稍后时间在垃圾收集周期中被擦除。申请人认识到,客户端或主计算机上运行的传统文件系统及os不具有命令接口,所述命令接口允许传统文件系统及os请求存储媒体(例如,nand存储器装置)擦除特定逻辑地址(例如,逻辑块地址(lba))或特定逻辑地址范围(例如,lba范围)的数据。也就是说,最初为硬盘驱动器定义的(例如ansi ata规范“清理装置特征集(sanitize device feature set)”中所定义的)传统擦除功能会擦除整个驱动器上的所有用户数据,或者执行硬盘的扇区的直接重写,由此擦除数据;而为ssd设计的(例如由nvm express规范在命名空间格式命令中所定义的)较新安全擦除功能会擦除整个驱动器上或个别卷(命名空间)中的用户数据。因此,没有为用于擦除ssd中的数据的特定逻辑地址或特定逻辑地址范围定义传统擦除功能。作为结果,无效/过时瞬息数据可能在存储媒体中存在不确定的时间周期。
14.申请人进一步认识到,虽然常规擦除功能适合于一些应用(例如,适合于从无人驾驶飞行器(uav)的ssd删除数据的军事应用),但其它应用可得益于本文中所描述的选择性擦除功能。如本文中所使用,“选择性擦除”是指从ssd擦除(对应于)特定逻辑地址或特定逻辑地址范围的数据,包含对应于逻辑地址的任何瞬息数据。也就是说,选择性擦除使得能够响应于从主机系统内部地产生或接收到的命令而擦除ssd的物理位置,所述命令包含或以其它方式识别特定逻辑地址或特定逻辑地址范围。随着驱动器容量增加,异构应用(例如,虚拟机)可能需要此类选择性擦除功能。因此,本文中所描述的布置涉及允许选择性擦除所有数据(包含ssd中的无效页面中的瞬息数据)的系统、设备、方法及非暂时性计算机可读媒体。数据(包含无效页中的瞬息数据)对应于ssd的卷或命名空间内的特定逻辑地址或特定逻辑地址范围。
15.通常,ssd的控制器通过被称为逻辑到物理(l2p)映射表的适合映射表来维护逻辑地址/位置(例如,lba)到数据被存储在物理地址(例如,物理页地址)中的位置的映射。本文中所公开的布置涉及修改l2p映射表或添加新映射表,以便除了将逻辑地址映射到有效页之外还将逻辑地址映射(例如,维护逻辑地址的映射)到对应于逻辑地址的无效页。无效页是含有对应于逻辑地址的过时数据或无效数据的页,其中此类过时数据或无效数据尚未被擦除。在替代布置中,每一块的页元数据可在数据被写入时被写入,使得关于每一块中的每一页的元数据含有指向当每一页第一次被写入并且有效时其最初归属于的逻辑地址的反
向指针。通过读取页并用元数据(逻辑地址)检查l2p表,控制器可确定此逻辑地址是否仍指向页的物理地址(在这种情况中,数据是有效的)或另一页地址(在这种情况中,此页中的数据是无效的,这是因为所述数据已被更新并且经更新数据已存储在别处的另一页中)。
16.为了帮助图解说明本发明实施方案的某些方面,图1展示根据一些实施方案的包含主机130及ssd 110的系统100的框图。在一些实例中,主机130可以是由用户操作的用户装置。就那一点来说,主机130可包含os,所述os经配置以提供文件系统及使用文件系统的应用。文件系统经配置以通过适合有线或无线通信链路或网络(未展示)与ssd 110(例如,ssd 110的控制器112)通信,以便管理数据存储并执行对存储在ssd 110中的数据的选择性擦除。特定来说,主机130的文件系统经配置以发送对应于擦除所有数据(包含任何无效数据)的选择性擦除命令,所述数据以所描述的方式映射到特定逻辑地址或特定逻辑地址范围。在一些实例中,主机130的文件系统经配置以依所描述的方式从ssd 110接收选择性擦除命令响应。就那一点来说,主机130包含经配置以将数据发送到ssd 110并从ssd 110接收数据的适合通信链路或网络装置。
17.在一些实例中,主机130及ssd 110驻存在数据中心中(出于简洁目的而未展示)。数据中心包含多个平台,平台中的每一者支撑多个主机(例如但不限于主机130)及ssd装置(例如但不限于ssd 110)。平台可包含具有内部存储装置的计算机节点、作为存储节点的闪盘簇(just a bunch of flash)(jbof)或两者。在一些实例中,平台可对应于填充有多个计算节点(运行虚拟机环境、os及应用)、多个存储节点(维护数据)或其组合的至少一个机架或舱。计算节点可运行虚拟机环境(例如vmware)、os(例如microsoft windows及linux)及应用(例如非结构化查询语言(nosql)数据库服务器)。存储装置可包含维护数据的非易失性存储器(nvm)装置,通常是nand快闪存储器,但其它非易失性存储器技术的实例包含但不限于磁性随机存取存储器(mram)、相变存储器(pcm)、铁电ram(feram)等等。无论平台是采用计算机节点架构、jbof架构还是两者,平台都可以使用ssd装置为具有给定工作负载的一或多个应用提供服务。
18.在一些实施方案中,平台内的ssd装置被连接到机架顶部(tor)交换机,并且可通过tor交换机或另一适合平台内通信机构彼此通信。在一些实施方案中,至少一个路由器可促进不同平台、机架或机柜中的ssd当中的通信。至少一个路由器可促进ssd 110与主机130及/或外部实体(例如,用户)之间的通信。
19.ssd 110包含控制器112、易失性存储装置116及非易失性存储装置118。如所展示,非易失性存储装置118包含nand快闪存储器装置120a

120n。nand快闪存储器装置120a

120n包括快闪存储器。举例来说,nand快闪存储器装置120a

120n中的每一者包含一或多个个别nand快闪裸片,所述nand快闪裸片是能够在不具有电力的情况下保持数据的nvm。因此,nand快闪存储器装置120a

120n是指ssd 110内的多个nand快闪存储器装置或裸片。nand快闪存储器装置120a

120n中的每一者包含具有一或多个平面的裸片。每一平面具有多个块,且每一块具有多个页。数据可以连续次序写入到块中的页,一旦所有页都被写入,那么直到块被擦除才能写入更多数据,于是页可以连续次序被再次写入新数据,以此类推。
20.控制器112可组合多个nand快闪存储器装置120a

120n中的原始数据存储,使得那些nand快闪存储器装置120a

120n像存储装置一样起作用。控制器112可包含微控制器、寄存器、错误校正功能性快闪转换层(ftl)及快闪接口模块、软件以及用于实施此类功能的固
件。在一些布置中,软件/固件可存储在非易失性存储装置118或任何其它适合计算机可读存储媒体中。
21.控制器112包含用于执行本文中所描述的功能的适合处理及存储能力,其它功能也包括在内。如所描述,控制器112管理nand快闪存储器装置120a

120n的各种特征,包含但不限于i/o处置、读取、写入、擦除、监测、记录、错误处置、垃圾收集、损耗均衡、逻辑到物理地址映射等等。因此,控制器112对nand快闪存储器装置120a

120n及与其相关联的ftl提供可见性。
22.控制器112(例如,ftl接口模块)可处理l2p映射表122,l2p映射表122可保存在易失性存储装置116及非易失性存储装置118中以由控制器112进行写入及读取。l2p映射表122是保持逻辑地址与物理地址之间的对应关系的记录的映射表。举例来说,l2p映射表122可将关于逻辑块的读取命令及写入命令(从主机130接收)转译成引用物理块的低级命令。在一些实例中,从主机130接收的读取命令或写入命令至少包含lba。lba是识别逻辑块的逻辑地址,所述逻辑块可以是扇区中的区域。在一些实例中,写入命令还可以包含数据将被写入到的若干个区域/扇区。l2p映射表122存储每一逻辑地址与存储逻辑地址的有效数据及当前数据的一或多个物理地址(例如,页)之间的映射。
23.控制器112(例如,ftl接口模块)可基于l2p映射表122来执行l2p操作。举例来说,控制器112可将lba转译成物理地址,因此解析对应于lba的物理地址。响应于从主机130接收到写入命令或读取命令(其中含有lba),控制器112(例如,ftl接口模块)可通过使用l2p映射表122来查找对应于lba的物理地址,以便对物理地址进行写入或读取。
24.在一些布置中,l2p映射表122经修改或经配置以存储每一逻辑地址与存储逻辑地址的任何当前有效数据及无效数据、过时数据或历史数据(如果有)的存储器页的一或多个物理地址之间的映射。存储逻辑地址的无效数据、过时数据或历史数据的页在本文中被称为“无效页”。举例来说,响应于接收到更新最初存储在第一页中的数据的写入命令,控制器112将经更新数据写入到不同于第一页的第二页。控制器112经配置以通过添加物理地址来更新l2p映射表122以指示将经更新数据存储在第二页(新物理位置)中。在一些布置中,还可以通过设置在l2p映射表中包含有原始第一页的物理地址的有效性状态位来将原始数据(第一页)标记为无效的。在一些实例中,l2p映射表122经配置以除了存储每一逻辑地址与对应于每一逻辑地址的有效页之间的映射之外还存储每一逻辑地址与对应于每一逻辑地址的先前有效但现在无效的页之间的映射。在另一实例中,响应于接收到使最初存储在第一页中的数据无效的修整命令、解除分配命令或取消映射命令,控制器112经配置以更新l2p映射表122以便指示存储在第一页中的数据无效,举例来说,在一些布置中通过设置有效性状态位。
25.另一选择是,l2p映射表122存储每一逻辑地址与对应于每一逻辑地址的有效页之间的映射而不存储每一逻辑地址与对应于每一逻辑地址的无效页之间的映射。而是,例如无效页表123的单独映射表经配置以存储每一逻辑地址与对应于每一逻辑地址的无效页之间的映射。
26.在一些布置中,l2p映射表122经修改或经配置以存储每一逻辑地址与单个物理地址(例如,存储器页的地址)或指针之间的映射,所述单个物理地址指示所述地址含有有效数据或无效数据,所述指针指向无效页表123,无效页表123是物理地址的列表,其中列表中
的第一条目是可含有有效数据或无效数据的存储器页的地址,且列表中的任何剩余条目是含有无效数据的存储器页的地址。在其它布置中,物理地址可包含有效性位。
27.在一些布置中,l2p映射表122(及无效页表123,如果有)可存储在非易失性存储装置118的所指定位置或地址中,非易失性存储装置118可位于或可不位于nand快闪存储器装置120a

120n中的一者中。假定对易失性存储装置116及控制器112的本地存储器的读取及写入比对非易失性存储装置118的读取或写入快,那么当读取并更新l2p映射表122(及无效页表123,如果有)时,l2p映射表122(及无效页表123,如果有)可被加载(缓冲)到易失性存储装置116或控制器112的适合本地存储器中。在一些实例中,对映射表的更新可直接应用于易失性存储装置中的经高速缓冲副本且稍后传播到非易失性存储装置118。在其它实例中,对l2p映射表122的更新可首先存储在易失性存储装置116中的单独日志(未展示)中,其中在一些实例中,所述日志可在稍后更方便的时间(例如,基于日志的最大大小或若干个条目)被刷新到易失性存储装置116及非易失性存储装置118中的l2p映射表。在其它实例中,可基于定时器周期性地将日志刷新到非易失性存储装置118。在其它实例中,可在关机事件之后刷新日志,无论是计划事件还是由于突然断电而导致的非预期事件。在处理从主机130接收到的写入命令、解除分配命令、修整命令或取消映射命令期间,可在易失性存储装置116或控制器112的本地存储器中创建、更新或修改日志。
28.在一些布置中,在无效页(例如,无效页驻存在其上的块)被擦除之后,在易失性存储装置116/控制器112的本地存储器中以及在非易失性存储装置118中擦除存储到无效页的映射的表122或123中的对应条目。换句话说,在已回收含有无效页的块之后,在易失性存储装置116/控制器112的本地存储器的日志中对表122或123做出的改变被刷新到非易失性存储装置118,以确保不存在无效页已被擦除的鉴定审核线索。
29.在一些布置中,易失性存储装置116可以是控制器112的本地存储器。在一些布置中,易失性存储装置116可以是不同于控制器112的本地存储器或除控制器112的本地存储器之外的存储器装置。易失性存储装置116的实例包含但不限于随机存取存储器(ram)、动态随机存取存储器(dram)及静态随机存取存储器(sram)。
30.举例来说,主机130通过将写入命令及读取命令发送到ssd 110来对ssd 110进行存取。主机130可通过例如但不限于以下各项的适合接口与ssd 110通信:通用串行总线(usb)接口、串行高级技术附件(sata)接口、增强型小型磁盘接口(esdi)、小型组件小型接口(scsi)、外围组件互连(pci)接口、快速串行附接scsi(sas)、集成驱动电子装置(ide)接口及非易失性存储器快速(nvme)接口。
31.图2展示根据一些实施方案的用于在ssd 110中管理选择性擦除的过程200的流程图。参考图2,过程200提供擦除由特定逻辑地址映射到的页驻存在其中的块的选择性擦除功能。虽然描述了逻辑地址的页,但可以类似方式选择性地擦除由逻辑地址范围映射到的页(例如,可使用过程200选择性地擦除逻辑地址范围中的每一逻辑地址)。逻辑地址可映射到含有有效数据的一或多个页、含有无效数据的一或多个页、或者其中至少一个页含有有效数据且至少一个页含有无效数据的两个或两个以上页。
32.在210处,控制器112维护将每一逻辑地址映射到ssd 110的nand快闪存储器装置120a

120n的一或多个页的映射表。此类映射表可以是l2p映射表122(传统l2p映射表122的经修改版本),l2p映射表122除了存储每一逻辑地址到有效页之间的映射之外还存储每一
逻辑地址到一或多个无效页之间的映射。另一选择是,此类映射表可以是无效页表123,使得l2p映射表122仅需要维护有效页的映射信息。
33.图3是框210的实例性实施方案且展示根据一些实施方案的用于维护映射表的过程300的流程图,所述映射表将每一逻辑地址映射到ssd 110中的页。图4a展示根据一些实施方案的用于块的块元数据400a。图4b展示根据一些实施方案的将每一逻辑地址映射到有效页及无效页的映射表400b。参考图1

4b,在一些实例中,块元数据400a或映射表400b可以是无效页表123。在一些实例中,映射表400b可以是l2p映射表122。
34.在310中,控制器112将逻辑地址映射到指针列表(物理地址)。所述指针列表中的每一指针对应于有效页及无效页中的相应一者。如特定块的块元数据400a中所展示,除提供关于指示所述页是有效、无效还是空闲的每一页的标志识别符之外,块元数据400a还进一步包含指向每一页的逻辑地址(例如,lba(2))的反向指针,如果有。如所展示,对于例如页(0)的无效页,块元数据400a包含指向lba(2)的反向指针。对于例如页(1)的有效页,块元数据400a包含指向lba(2)的反向指针。页(m

1)空闲,因此不与逻辑地址相关联。一旦块(块2)被擦除,就更新指向每一页的逻辑地址的反向指针(例如,从块元数据400a移除)。
35.除了使用块元数据400a来跟踪无效页及对应逻辑地址之外,或者作为替代,可使用映射表400b。如映射表400b中所展示,将逻辑地址lba(2)映射到指向块2的页(0)及页(1)的指针列表。页(0)无效且页(1)有效。因此,控制器112通过以下方式来维护映射表400b:通过将标志添加到指针以指示物理地址含有有效数据、无效数据或是空闲的(已擦除或尚未写入有效数据)将对应于逻辑地址的页标记为无效的。一旦块(块2)被擦除,就更新从逻辑地址到有效页及无效页的映射(例如,通过删除由逻辑地址映射到的指针列表来移除)。
36.在320处,控制器112确定是否已从主机130接收到写入命令。写入命令识别逻辑地址且对应于更新最初存储在原始(第一)页中的第一数据。在接收写入命令之前,第一数据是有效数据及当前数据,并且第一页是所述逻辑地址的有效页。
37.响应于确定尚未接收到此类写入命令(320:no),方法300返回到框320。另一方面,响应于确定已接收到此类写入命令(320:yes),在330处,控制器112将经更新数据(例如,经更新第一数据)写入新的可用页(例如,第二页)中。第二页不同于第一页。
38.更新将逻辑地址映射到有效页的映射表(例如,l2p映射表122)以反映第二页现在正在存储所述逻辑地址的经更新数据及当前数据。举例来说,将对应于第二页的指针作为逻辑地址的有效页添加到l2p映射表122。
39.在340处,举例来说,控制器112使用块元数据400a或映射表400b将原始(第一)页识别为映射到逻辑地址的无效页。举例来说,响应于接收到更新最初存储在块2的页(0)中的数据的写入命令(例如,在320处),控制器112经配置以将经更新数据写入块2的页(1)中(例如,在330处)。在340处,在实施块元数据400a的一些实例中,将页(0)设置为无效的且将页(1)设置为有效的,并且使用反向指针将两个页映射到lba(2)。因此,在每次更新数据时更新块元数据400a。在340处,在实施映射表400b的一些实例中,对将lba(2)映射到有效页(1)的指针进行设置,并且也对将lba(2)映射到无效页(0)的指针进行设置。因此,每次更新数据时,将对应于一或多个无效页的指针添加到映射表400b,使得控制器112能够跟踪对应于逻辑地址的有效页及无效页。
40.返回到图2,在220处,控制器112确定是否已从主机130接收到选择性擦除命令。选
择性擦除命令至少包含逻辑地址(例如,lba)或者以其它方式识别逻辑地址。在一些实例中,主机130将选择性擦除命令周期性地发送到ssd 110(控制器112)。在一些实例中,响应于由主机130接收到的用户输入,主机130将选择性擦除命令发送到ssd 110(控制器112)。在一些实例中,响应于需要擦除数据(举例来说,删除文件系统中的文件)的任何用户或主机系统活动,主机130将选择性擦除命令发送到逻辑地址的ssd 110(控制器112)。
41.响应于确定尚未接收到选择性擦除命令(220:no),方法200返回到框210。
42.另一方面,响应于确定已接收到选择性擦除命令(220:yes),在230处,控制器112经配置以基于块元数据400a或映射表400b来擦除由逻辑地址映射到的一或多个页位于其中的块。举例来说,控制器112在块元数据400a或映射表400b中查找逻辑地址(在所接收的经选择性擦除的命令中含有)以识别一或多个页。在一个实例中,响应于以选择性擦除命令接收lba(2)作为逻辑地址,控制器112经配置以查找块元数据400a或映射表400b以便识别块2中的页(0)及页(1)。接着,控制器112识别一或多个页位于其中的块(例如,块2)。
43.如所描述,块元数据400a或映射表400b可存储在易失性存储装置116/控制器112的本地存储器以及非易失性存储装置118中。请考虑存储在易失性存储装置116/控制器112的本地存储器以及非易失性存储装置118中的块元数据400a或映射表400b的版本。对来自存储在易失性存储装置116/控制器112的本地存储器中的块元数据400a或映射表400b的输出(例如,由逻辑地址映射到的页)以及来自存储在非易失性存储装置118中的块元数据400a或映射表400b的输出进行汇总(组合,在移除冗余结果的情况下)。擦除所汇总组的页(所汇总组的页驻存在其上的块)。
44.在块被擦除之前,将来自逻辑地址未映射到的要被擦除的块的有效数据/页复制到其它块。在一些实例中,响应于确定块被擦除,控制器112经配置以将选择性擦除命令响应发送到主机130。
45.提供先前描述旨在使得任何所属领域技术人员能够实践本文中所描述的各个方面。所属领域技术人员将容易明了对这些方面的各种修改,且本文中所定义的通用原理可应用于其它方面。因此,权利要求书并不打算限于本文中所展示的方面,而是应赋予其与语言权利要求相一致的全部范围,其中以单数形式对要素的提及并不打算意指“一个且仅一个”(除非具体如此陈述),而是意指“一或多个”。除非另有具体陈述,否则术语“一些”是指一或多个。所属领域技术人员已知的或后来知晓的在先前说明通篇描述的各个方面的要素的所有结构性及功能性等效物明确地以引用方式并入本文中且打算由权利要求书涵盖。此外,本文中所公开的任何内容均不打算贡献给大众,而不管此类公开内容是否明确地叙述于权利要求书中。任何权利要求要素均不应被解释为手段加功能,除非所述要素是使用短语“手段”明确叙述的。
46.应理解,所公开的过程中的步骤的具体次序或层次是说明性方法的实例。基于设计偏好,应理解,可在保持归属于先前说明的范围内的同时重新布置过程中的步骤的具体次序或层次。随附方法权利要求以实例性次序呈现各个步骤的要素,而未必意在限于所呈现的具体次序或层次。
47.提供所公开实施方案的先前说明以使得所属领域技术人员能够制作或使用所公开标的物。所属领域技术人员将易于明了对这些实施例的各种修改,且在本文中定义的通用原理可在不脱离本发明的精神或范围的情况下应用于其它实施方案。因此,并非打算将
先前说明限于本文中所展示的实施方案,而是将赋予其与本文所公开的原理及新颖特征相一致的最宽广范围。
48.仅将所图解说明及所描述的各种实例提供为实例以图解说明权利要求书的各种特征。然而,关于任何给定实例而展示及描述的特征不一定仅限于相关联实例,而是可与所展示及所描述的其它实例一起使用或组合。此外,权利要求书并不打算受限于任何一个实例。
49.仅将前述方法说明及过程流程图提供为说明性实例,且并不打算要求或暗示各种实例的步骤必须以所呈现的次序执行。如所属领域技术人员将了解,可以任何次序执行前述实例中的步骤的次序。例如“此后”、“然后”、“接下来”等词并不打算限制步骤的次序;这些词只是用以通过方法的描述来引导读者。此外,对以单数形式的权利要求要素的任何引用(举例来说,使用冠词“一个(a)”、“一个(an)”或“所述”)不应被解释为将所述要素限制为单数。
50.结合本文中所公开的实例描述各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。一般来说,为了清楚地图解说明硬件及软件的这种可互换性,已在上文根据其功能性对各种说明性组件、块、模块、电路及步骤进行描述。是将此类功能性实施为硬件还是软件取决于特定应用及对施加在整个系统上的设计约束。所属领域技术人员可针对每一特定应用以不同方式实施所描述功能性,但此类实施方案决策不应被解释为导致脱离本发明的范围。
51.用以实施结合本文中所公开的实例来描述的各种说明性逻辑、逻辑块、模块及电路的硬件可借助通用处理器、dsp、asic、fpga或者经设计以执行本文中所描述的功能的其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任一组合来实施或执行。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可以实施为计算装置的组合,例如,dsp与微处理器的组合、多个微处理器、与dsp核心结合的一或多个微处理器或者任何其它此类配置。另一选择是,一些步骤或方法可由特定于给定功能的电路执行。
52.在一些示范性实例中,所描述的功能可以硬件、软件、固件或其任一组合实施。如果以软件实施,那么所述功能可存储为非暂时性计算机可读存储媒体或非暂时性处理器可读存储媒体上的一或多个指令或代码。本文中所公开的方法或算法的步骤可以可驻存在非暂时性计算机可读或处理器可读存储媒体上的处理器可执行软件模块体现。非暂时性计算机可读或处理器可读存储媒体可以是可由计算机或处理器存取的任何存储媒体。通过实例但非限制的方式,此类非暂时性计算机可读或处理器可读存储媒体可包含ram、rom、eeprom、快闪存储器、cd

rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置或者可用于以指令或数据结构的形式存储所期望程序代码且可由计算机存取的任何其它媒体。如本文中所使用,磁盘及光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字通用光盘(dvd)、软磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘借助激光以光学方式再现数据。以上各项的组合也包含于非暂时性计算机可读及处理器可读媒体的范围内。另外,方法或算法的操作可作为代码及/或指令中的一者或任一组合或者集驻存在可并入到计算机程序产品中的非暂时性处理器可读存储媒体及/或计算机可读存储媒体上。
53.提供所公开实例的前述说明以使得任何所属领域技术人员能够制作或使用本发
明。所属领域技术人员将易于明了对这些实例的各种修改,并且本文中所定义的通用原理可在不脱离本发明的精神或范围的情况下应用于一些实例。因此,本发明并不打算限于本文中所展示的实例,而是将赋予其与以下权利要求书以及本文中所公开的原理及新颖特征相一致的最宽广范围。
转载请注明原文地址:https://doc.8miu.com/read-1350096.html

最新回复(0)