可再编程存储器中的一次编程的制作方法_4

文档序号:9201485阅读:来源:国知局
据值不同,则可以确定先前写入的数据可以被永久存储在存储位置。这意味着存储位置已进入写入故障模式,后续的写入操作不会改变存储数据值的代表值。在这种情况下,比较器132可以返回192存储位置的写入故障模式的指示。然后所示方法180结束。
[0075]在另一实施例中,可以使用软读取机制来实现非破坏性的但是非对称的读取操作。例如,OTP存储功能在使存储设备从“调试”模式进入“释放”模式时可以是有用的。在这种转变中,调试能力中的一些可能被熔断掉,使得这些调试能力在退出调试模式之后不可用。在示例中,存储器的字节可以用在调试模式中以存储值0x55(0b01010101)。为了从调试模式切换到释放模式,可以多次写入反值OxAA(0bl0101010),直到达到写入故障状态。在这种情况下,简单读取EEPROM可以得知设备是否仍然处于调试模式,或者是否处于释放模式。该方法是非对称的,因为攻击者能够容易地将可再编程EEPROM值改变成并非0x55的另一值,以在EEPROM尚未烧断时假装处于释放模式。然而在本文描述的实施例中,存储元件中存储的值的熔断状态不能被改变,因此存储设备不能从释放模式变回调试模式。因此在该设置中,设备能够处于调试模式并上千次被测试,而不用担心过早熔断EEPR0M,熔断EEPROM意味着决定性地切换到释放模式。
[0076]在其他实施例中,可以有用的是,建立算法以找到存储设备内的弱单体(weakcell)并将弱单体中的一些或全部指定为OPT存储元件114。对于给定的技术,弱单体可以表征为可靠性特性低于期望的可靠性特性。例如,如果一些单体被标识为在达到写入故障状态之前有可能具有较少的写入周期,则可以将这些单体指定为弱单体,从而指定为存储设备的OPT存储元件114。在一些实施例中,应用幅度和/或时间可以使特定存储元件表现为较弱,从而更适合于OPT存储元件114的实现。
[0077]本文描述的实施例可以包括至少一个存储控制器,所述存储控制器通过诸如数据总线、地址总线和/或控制总线等系统总线直接或间接耦合到存储元件。存储元件可以包括:在程序代码的实际执行期间采用的本地存储器;体存储装置;以及高速缓存存储器,所述高速缓存存储器提供对至少一些程序代码的临时存储以减小执行期间必须从体存储装置获取代码的次数。
[0078]还应注意,可以使用存储在计算机可读存储介质上以便由计算机执行的软件指令来实现本文描述的方法的操作中的至少一些。作为示例,计算机程序产品的实施例包括一种计算机可使用存储介质,用于存储计算机可读程序,所述计算机可读程序在计算机上执行时使计算机执行本文描述的操作。
[0079]在以上描述中提供了多个实施例的特定细节。然而不必用这些特定细节的全部也可以实现一些实施例。在其他实例中,为了简要和清楚,没有更详细描述某些方法、过程、组件、结构和/或功能来实现本发明的各个实施例。
[0080]尽管以特定顺序示出和描述了本文的方法的操作,然而每个方法的操作的顺序是可以改变的,使得某些操作可以按照相反顺序执行或者使得某些操作可以至少部分地与其他操作同时执行。在另一实施例中,可以以间歇和/或交替的方式来实现不同操作的指令或子操作。
[0081]尽管描述和示出了本发明目的特定实施例,然而本发明不限于这些特定形式以及如此描述和示出的部分的布置。本发明的范围由所附在此的权利要求及其等同物来限定。
【主权项】
1.一种存储设备,包括: 多个电可擦存储元件,配置为存储数据,其中每个存储元件在达到写入故障状态之前可编程多个写入周期;以及 控制器,耦合到所述多个存储元件,其中所述控制器包括: 接收机,配置为接收用于将所选的存储元件驱动到写入故障状态的指令;以及写入引擎,在多个写入操作中将数据值重复地写入所选的存储元件,直到建立所选的存储元件的写入故障状态为止。2.根据权利要求1所述的存储设备,其中所述写入引擎还配置为执行预定数目的写入操作以将数据值写入所选的存储元件,并发起写入操作以将测试数据值写入所选的存储元件,其中所述测试数据值与所述数据值不同;并且 所述控制器还包括比较器,所述比较器配置为产生将所选的存储元件存储的数据值与测试数据值相比较的比较结果,其中所述比较结果表示测试数据值是否被存储在所选的存储元件中。3.根据权利要求2所述的存储设备,其中所述写入引擎还配置为响应于确定所存储的数据值等于测试数据值来执行附加的写入操作以将数据值写入所选的存储元件。4.根据权利要求3所述的存储设备,其中所述控制器还配置为控制所述写入引擎和所述比较器来重复: 写入操作以写入测试数据值; 比较;以及 附加的写入操作, 直到比较结果表明存储的数据值不等于测试数据值为止。5.根据权利要求2所述的存储设备,其中所述写入引擎还配置为响应于确定所存储的数据值不等于测试数据值,执行最终的附加写入操作集合,以将数据值写入所选的存储元件。6.根据权利要求1所述的存储设备,其中所述写入引擎还配置为: 执行第一写入操作序列,以将数据值重复地写入所选的存储元件,其中所述第一写入操作序列包括与写入周期的第一阈值数目相等或比写入周期的第一阈值数目大的写入操作数目;以及 响应于确定所选的存储元件能够存储新写入的数据值,执行第二写入操作序列以将数据值写入所选的存储元件。7.根据权利要求6所述的存储设备,其中所述控制器还包括: 读取引擎,配置为在每个写入操作序列之后从所选的存储元件读取所存储的数据值;其中所述写入引擎还配置为响应于后续确定所选的存储元件能够存储另一新写入的数据值来重复第二写入操作序列。8.根据权利要求7所述的存储设备,其中所述控制器还包括: 数据值产生器,产生任意数据值, 其中所述写入引擎还配置为在所述读取引擎读取所存储的数据值之前将所述任意数据值写入所选的存储元件;以及 比较器,配置为将所选的存储元件的所存储的数据值与所述任意数据值相比较以确定所述任意数据值是否存储在所选的存储元件中。9.根据权利要求1所述的存储设备,其中所述控制器还配置为管理所述多个存储元件的映射图,其中所述映射图指定要驱动到写入故障状态的存储元件的块,用于存储不能被后续写入操作改变的熔断数据值。10.根据权利要求9所述的存储设备,其中所述控制器还包括 越权引擎,其中所述越权引擎防止在映射图中指定用于存储熔断数据值的存储元件的块的耗损均衡过程。11.一种方法,包括: 接收用于将所选的存储元件块驱动到写入故障状态以永久存储数据值的指令; 执行多个重复的写入操作以向多个电可擦存储元件中所选的存储元件块写入数据值;以及 确认不同的写入操作不会改变数据值。12.根据权利要求11所述的方法,其中执行多个重复的写入操作还包括:将数据值重写到所选的存储元件块,直到所选的存储元件块实现了写入故障状态为止。13.根据权利要求11所述的方法,其中确认不同的写入操作不会改变数据值还包括: 发起写入操作以将测试数据值写入所选的存储元件块,其中所述测试数据值与所述数据值不同;以及 产生将所选的存储元件块所存储的数据值与测试数据值相比较的比较结果,其中所述比较结果表示测试数据值是否存储在所选的存储元件块中。14.根据权利要求11所述的方法,还包括: 确定所存储的数据值不等于测试数据值;以及 执行最终写入操作序列以将数据值写入所选的存储元件块,从而强制实施所选的存储元件块的写入故障状态。15.根据权利要求11所述的方法,还包括: 确定存储的数据值等于测试数据值;以及 执行附加的写入操作序列以将数据值写入所选的存储元件块,从而实现所选的存储元件块的写入故障模式。16.根据权利要求11所述的方法,还包括:保留所述多个电可擦存储元件的一部分以驱动到写入故障状态,并存储不能被后续写入操作改变的数据。17.根据权利要求11所述的方法,还包括:防止对所选的存储元件块施加耗损均衡技术。18.—种系统,包括: 存储设备内的多个可重写存储元件,其中所述存储元件中的至少一些被指定为在所指定的存储元件不能被重写的状态下使用;以及 控制器,耦合到所述多个存储元件,其中所述控制器配置为将数据值多次写入指定的存储元件内的块,直到所述数据值在指定的存储元件内的块中熔断为止。19.根据权利要求18所述的系统,其中所述控制器包括: 写入引擎,将数据值多次写入指定的存储元件内的块,然后尝试将测试数据值写入指定的存储元件内的块; 读取引擎,从指定的存储元件内的块读取所存储的数据值;以及 比较器,提供表示所存储的数据值是否等于测试数据值的比较结果。20.根据权利要求19所述的系统,其中,控制器还配置为存储以下指定:将指定的存储元件内的块指定为存储不能被后续写入操作改变的熔断数据值。
【专利摘要】使用可再编程存储设备的一部分来实现永久数据存储。存储设备包括多个电可擦存储元件和控制器。多个电可擦存储元件配置为存储数据。每个存储元件在达到写入故障状态之前可编程多个写入周期。控制器耦合到所述多个存储元件。控制器包括接收机和写入引擎。接收机配接收用于将所选的存储元件驱动到写入故障状态的指令。写入引擎在多个写入操作中将数据值重复写入所选的存储元件,直到建立所选的存储元件的写入故障状态为止。
【IPC分类】G11C16/06
【公开号】CN104916321
【申请号】CN201510111801
【发明人】马克·沃克莱尔, 菲利普·特温
【申请人】恩智浦有限公司
【公开日】2015年9月16日
【申请日】2015年3月13日
【公告号】EP2919236A1, US20150261458
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1