非易失性数据存储器数据更新备份系统及方法.pdf

上传人:a1 文档编号:975226 上传时间:2018-03-22 格式:PDF 页数:11 大小:638.79KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910197484.2

申请日:

2009.10.21

公开号:

CN101694636A

公开日:

2010.04.14

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 11/14申请日:20091021|||公开

IPC分类号:

G06F11/14; G06F12/06

主分类号:

G06F11/14

申请人:

上海坚芯电子科技有限公司

发明人:

洪享; 卢君明

地址:

201203 上海市张江高科技园区达尔文路88号1幢305室

优先权:

专利代理机构:

北京中博世达专利商标代理有限公司 11274

代理人:

申健

PDF下载: PDF下载
内容摘要

本发明提供一种非易失性数据存储器数据更新备份系统,涉及数字信息应用技术领域。所述系统包括逻辑寻址空间和物理寻址空间,所述逻辑寻址空间包括若干数据,每个数据对应物理寻址空间中的数据块;所述物理寻址空间包括至少两个数据存储区以及一个数据有效区指示位。其中,两个数据存储区都分别保存了若干数据块,两个数据存储区内保存的数据块具有一一对应的关联性;数据有效区指示位用于指示当前有效数据块所在的数据存储区。本发明还提供一种非易失性数据存储器数据更新备份方法,采用本发明的方法和系统,即使芯片在非易失性数据存储器编程时出现

权利要求书

1: 一种非易失性数据存储器数据更新备份系统,所述系统包括逻辑寻址空间和物理寻址空间,所述逻辑寻址空间包括若干数据,每个数据对应物理寻址空间中的数据块;其特征在于:所述物理寻址空间包括至少两个数据存储区以及一个数据有效区指示位;其中, 两个数据存储区都分别保存了若干数据块,两个数据存储区内保存的数据块具有一一对应的关联性; 数据有效区指示位用于指示当前有效数据块所在的数据存储区。
2: 如权利要求1所述的非易失性数据存储器数据更新备份系统,其特征在于:当对非易失性数据存储器进行数据读操作时,首先读取数据有效区指示位,判断当前有效数据块所在的数据存储区,然后再对该数据存储区进行数据读操作。
3: 如权利要求2所述的非易失性数据存储器数据更新备份系统,其特征在于:当对非易失性数据存储器进行数据写操作时,先读取数据有效区指示位,判断当前有效数据块所在的数据存储区,然后再对非有效数据所在的数据存储区进行数据写入操作。
4: 如权利要求3所述的非易失性数据存储器数据更新备份系统,其特征在于:所述数据写操作时,标记当前数据块的更新,以便确认数据存储区是否全部更新。
5: 如权利要求4所述的非易失性数据存储器数据更新备份系统,其特征在于:当数据写操作完成后,数据有效区指示位指引的有效数据块所在数据存储区为完成数据写操作的数据存储区。
6: 如权利要求1-5任一项所述的非易失性数据存储器数据更新备份系统,其特征在于:数据有效区指示位具有不同的位宽。
7: 如权利要求6所述的非易失性数据存储器数据更新备份系统,其特征在于:所述数据有效区指示位占用1位非易失性数据存储器基本单元,采用0或1标示当前有效数据块所在的数据存储区。
8: 如权利要求6所述的非易失性数据存储器数据更新备份系统,其特征在于:所述数据有效区指示位占用n位非易失性数据存储器基本单元,n为大于1的正整数;当非易失性数据存储器擦除后为“0”时,可采用数据有效区指示位的n位全为“0”或者非n位全为“0”表示当前有效数据块所在的数据存储区;当非易失性数据存储器擦除后为“1”时,可采用数据有效区指示位的n位全为“1”或者非n位全为“1”表示当前有效数据块所在的数据存储区。
9: 采用如权利要求1所述系统的非易失性数据存储器数据更新备份方法,其特征在于,该方法包括如下步骤: 第一步、读取数据有效区指示位,以判断当前有效数据块所在的数据存储区,当前有效数据块所在的数据存储区为第一数据存储区; 第二步、对非有效数据块所在的第二数据存储区进行数据写操作; 第三步、修改数据有效区指示位,使其指引第二数据存储区为当前有效数据块所在的数据存储区。
10: 如权利要求9所述的非易失性数据存储器数据更新备份方法,其特征在于:所述方法还包括数据读操作,其步骤如下: A、读取数据有效区指示位,判断当前有效数据块所在的数据存储区; B、对当前有效数据块所在的数据存储区进行数据读操作。
11: 如权利要求9所述的非易失性数据存储器数据更新备份方法,其特征在于:如果在第二步所述的数据写操作过程中出现异常情况,则进一步包括如下步骤: C1、非易失性数据存储器重新上电复位; C2、先读取数据有效区指示位,其指引为第一存储区,可从第一存储区读取到原来的数据,写操作失败。
12: 如权利要求9所述的非易失性数据存储器数据更新备份方法,其特征在于:如果在第三步所述的修改数据有效区指示位过程中出现异常情况,则进一步包括如下步骤: X1、非易失性数据存储器重新上电复位; X2、读取数据有效区指示位,此时会出现两种情况:数据有效区指示位尚未被修改,指引第一存储区,可从第一存储区读取到原来的数据,写操作失败;当数据有效区指示位已被修改,指引第二存储区,用户可从第二存储区读取到写入的数据,则写操作成功。
13: 如权利要求9-12任一项所述的非易失性数据存储器数据更新备份方法,其特征在于:数据有效区指示位具有不同的位宽。

说明书


非易失性数据存储器数据更新备份系统及方法

    【技术领域】

    本发明涉及数字信息应用技术领域,尤其涉及芯片内非易失性数据存储器一致性数据更新备份系统及方法。

    背景技术

    随着数字信息技术的发展,电子数据存储技术已在生活中随处可见,非易失性数据存储器(EEPROM,FLASH等)与包括磁介质类型的传统数据存储介质相比,具有高稳定性、写保护数据和高安全性等优点,被广泛接纳为下一代多媒体信息介质。

    非易失性数据存储器支持的一次编程大小称为块,一般非易失性数据存储器的数据块大小一般为1字节到几十字节范围内,当存储数据量超过一个块的大小后,就必须分成几个块来完成编程。

    在很多芯片系统中,例如电视机配置存储芯片、墨盒墨量控制芯片、遥控器存储芯片、涉及安全的控制芯片及涉及断电记忆功能设备,如当前流行的MP3/MP4/GPS等设备内的配置控制器等,都采用了非易失性数据存储器作为关键数据的存储。在上述系统中,其存储数据量一般都大于非易失性数据存储器的数据块大小,而这些需要跨非易失性数据存储器数据块的数据具有一定的关联性,即按照数据块进行更新时,如果仅部分非易失性数据存储器的数据块内数据更新成功,而其他数据块的数据未作更新时,就会存在格式或数据出错的情况。这些跨非易失性数据存储器数据块且具有一定关联性的数据称之为一致性数据。

    如针对1024位公共密钥系统,其密钥为1024位,这1024位数据就是一致性数据,如果对该系统的密钥进行更新时,其1024位密钥需要看成一个整体,称之为一致性数据更新备份。

    目前使用的非易失性数据存储器在写入新数据之前需要进行电子擦除的动作。因此,非易失性数据存储器编程分成两步:第一步,对待写入的数据块进行电子擦除,使其全部固定为“0”或“1”;第二步,将数据写入非易失性数据存储器对应的数据块中。擦除和写入过程均在1~2ms(毫秒)的量级。

    非易失性数据存储器针对一致性数据的写入新数据的操作只可能有以下三种情况:1、更新成功;2、更新失败,数据未被更新;3、更新失败,数据既非更新前数据,也非期望更新的数据。

    对给定的数据,用户期望要么更新成功、要么不更新,而不期望出现未预期的数据(即第三种情况),这是芯片内非易失性数据存储器数据更新的要求,也是保证内嵌该类非易失性数据存储器的芯片系统正常工作的重要保证。然而,在一致性数据更新过程中,由于电源电压波动、断电或者其他主客观的原因,很容易导致非易失性数据存储器的擦除和写入过程被意外中止。该意外中止会导致正常数据的更新工作异常结束,使非易失性数据存储器内的数据修改成非客户预期的数据,如全0、全1或其它值。此时,必须对非易失性数据存储器内的一致性数据进行特殊处理,否则,因异常结束的芯片再次进行操作时,后续工作无法进行,尤其是当数据为密钥数据和格式控制数据等重要数据时,一次异常编程就可能导致该芯片永久失效。

    【发明内容】

    为了克服上述传统系统及方法的缺点,本发明的目的是提供一种非易失性数据存储器数据更新备份系统及方法,其能确保非易失性数据存储器内一致性数据安全更新。

    为解决上述技术问题,本发明提供一种非易失性数据存储器数据更新备份系统,所述系统包括逻辑寻址空间和物理寻址空间,所述逻辑寻址空间包括若干数据,每个数据对应物理寻址空间中的数据块;其中,所述物理寻址空间包括至少两个数据存储区以及一个数据有效区指示位;其中,

    两个数据存储区都分别保存了若干数据块,两个数据存储区内保存的数据块具有一一对应的关联性;

    数据有效区指示位用于指示当前有效数据块所在的数据存储区。

    作为本发明的进一步改进,当对非易失性数据存储器进行数据读操作时,首先读取数据有效区指示位,判断当前有效数据块所在的数据存储区,然后再对该数据存储区进行数据读操作。

    作为本发明的进一步改进,当对非易失性数据存储器进行数据写操作时,先读取数据有效区指示位,判断当前有效数据块所在的数据存储区,然后再对非有效数据所在的数据存储区进行数据写入操作。

    作为本发明的进一步改进,所述数据写操作时,标记当前数据块的更新,以便确认数据存储区是否全部更新。

    作为本发明的进一步改进,当数据写操作完成后,数据有效区指示位指引的有效数据块所在数据存储区为完成数据写操作的数据存储区。

    作为本发明的进一步改进,数据有效区指示位具有不同的位宽。

    作为本发明的进一步改进,所述数据有效区指示位占用1位非易失性数据存储器基本单元,采用0或1标示当前有效数据块所在的数据存储区。

    作为本发明的进一步改进,所述数据有效区指示位占用n位非易失性数据存储器基本单元,n为大于1的正整数;可采用数据有效区指示位地n位全为“0”或者非n位全为“0”表示当前有效数据块所在的数据存储区。

    本发明还提供一种非易失性数据存储器数据更新备份方法,该方法包括如下步骤:

    第一步、读取数据有效区指示位,以判断当前有效数据块所在的数据存储区,当前有效数据块所在的数据存储区为第一数据存储区;

    第二步、对非有效数据块所在的第二数据存储区进行数据写操作;

    第三步、修改数据有效区指示位,使其指引第二数据存储区为当前有效数据块所在的数据存储区。

    作为本发明的进一步改进,所述方法还包括数据读操作,其步骤如下:

    A、读取数据有效区指示位,判断当前有效数据块所在的数据存储区;

    B、对当前有效数据块所在的数据存储区进行数据读操作。

    作为本发明的进一步改进,如果在第二步所述的数据写操作过程中出现异常情况,则进一步包括如下步骤:

    C1、非易失性数据存储器重新上电复位;

    C2、先读取数据有效区指示位,其指引为第一存储区,可从第一存储区读取到原来的数据,写操作失败。

    作为本发明的进一步改进,如果在第三步所述的修改数据有效区指示位过程中出现异常情况,则进一步包括如下步骤:

    X1、非易失性数据存储器重新上电复位;

    X2、读取数据有效区指示位,此时会出现两种情况:数据有效区指示位尚未被修改,指引第一存储区,可从第一存储区读取到原来的数据,写操作失败;当数据有效区指示位已被修改,指引第二存储区,用户可从第二存储区读取到写入的数据,则写操作成功。

    作为本发明的进一步改进,数据有效区指示位具有不同的位宽。

    采用本发明的方法和系统,即使芯片在非易失性数据存储器编程时出现异常中断,也能避免出现存储的数据被破坏,有效提高了数据更新备份的安全性和一致性。

    【附图说明】

    为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。

    图1是非易失性数据存储器数据更新备份系统的原理框图。

    图2是芯片执行读操作时的流程图。

    图3是芯片执行写操作时的流程图。

    【具体实施方式】

    下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

    本发明提供一种非易失性数据存储器数据更新备份系统及方法,所述的非易失性数据存储器应用于芯片内,其数据的更新备份采用了非易失性存储器基本单元的固有特性,即其值非0即1和非1即0特性。

    非易失性数据存储器的存储空间分为数据存储区A和B,数据存储区A和B分别包括多个用于存储数据的数据块。所述数据写操作时,标记当前数据块的更新,以便确认一致性数据存储区是否全部更新。

    此外,所述存储空间还进一步包括一个数据有效区指示位Flag。当外部设备对芯片进行数据读操作时,数据有效区指示位Flag用于指示外部设备选择数据存储区A或B,以便外部设备正确读取数据;当外部设备对芯片进行数据写操作时,按照数据有效区指示位Flag的指引选择数据存储区A或B写入数据;以便正确写入数据。以下对数据有效区指示位Flag的具体指引做出详细说明。

    一、如果所述数据有效区指示位Flag占用1位非易失性数据存储器基本单元。

    1-1、当数据有效区指示位Flag为“0”时,表示当前有效数据块在数据存储区A,当数据有效区指示位Flag为“1”时,表示当前有效数据块在数据存储区B。

    1-2、当数据有效区指示位Flag为“0”时,表示当前有效数据块在数据存储区B,当数据有效区指示位Flag为“1”时,表示当前有效数据块在数据存储区A。

    二、在本发明其他较佳实施例中,所述数据有效区指示位Flag可占用n位非易失性数据存储器基本单元(n为大于的1正整数)。

    2-1、当非易失性数据存储器擦除后为“0”时,若数据有效区指示位Flag的n位全为“0”,表示当前有效数据块在数据存储区A,若数据有效区指示位Flag为非n位全“0”时,表示当前有效数据块在数据存储区B;或者,若数据有效区指示位Flag的n位全为“0”时,表示当前有效数据块在数据存储区B,若数据有效区指示位Flag为非n位全“0”时,表示当前有效数据块在数据存储区A。

    2-2、当非易失性数据存储器擦除后为“1”时,若数据有效区指示位Flag的n位全为“1”,表示当前有效数据块在数据存储区A,若数据有效区指示位Flag的n位非全为“1”时,表示当前有效数据块在数据存储区B;或者,若数据有效区指示位Flag的n位全为“1”时,表示当前有效数据块在数据存储区B,若数据有效区指示位Flag的n位非全为“1”时,表示当前有效数据块在数据存储区A。

    当外部设备对芯片进行数据写操作时,首先根据数据有效区指示位Flag判断当前有效数据块的位置:若数据有效区指示位Flag指引当前有效数据块在数据存储区A,则对数据存储区B内数据块进行写操作;若当前有效数据块在数据存储区B,则对数据存储区A内数据块进行写操作。

    当写操作全部完成后,对数据有效区指示位Flag进行编程修改,此编程修改也根据当前数据有效区指示位Flag的具体数值决定:

    X1、如果所述数据有效区指示位Flag占用1位非易失性数据存储器基本单元。

    X1-1、当前数据有效区指示位Flag为“0”,则对其进行编程修改为“1”;

    X1-2、如果当前数据有效区指示位Flag为“1”,则将对其进行编程修改为“0”。

    X2、在本发明其他较佳实施例中,所述数据有效区指示位Flag可占用n位非易失性数据存储器基本单元(n为大于的1正整数)。

    X2-1、当非易失性数据存储器擦除后为“0”时,如果当前数据有效区指示位Flag的n位全为“0”,则对其进行编程修改为非n位全为“0”;如果当前数据有效区指示位Flag为非n位全为“0”,则对其进行编程修改为n位全为“0”。

    X2-2、当非易失性数据存储器擦除后为“1”时,如果当前数据有效区指示位Flag的n位全为“1”,则对其进行编程修改为非n位全为“1”;如果当前数据有效区指示位Flag为非n位全为“1”,则对其进行编程修改为n位全为“1”。

    请参阅图1,一个一致性数据为10块逻辑数据块,其每个逻辑数据块(即用户看到的地址空间)对应有两个物理上的存储区,即数据存储区A和B,同时非易失性数据存储器空间内有一个存储空间用于存储数据有效区指示位Flag,以指示当前有效逻辑数据块的所在的存储区。

    当用户读取逻辑数据块1时,其当前有效逻辑数据块可能存储在数据存储区的数据块A1中或存储在数据备份区的数据块B1中;具体的存储位置由数据有效区指示位Flag来确定。例如,当Flag为“0”时,表明数据块A1为逻辑数据块1当前有效逻辑数据块;当Flag为“1”时,表明数据块B1为逻辑数据块1当前有效逻辑数据块。

    当用户对逻辑数据块1进行写操作时,首先确定当前有效逻辑数据块所在的位置;当Flag为“0”时,表明数据存储区A的数据块A1为当前有效逻辑数据块,将需要写入的数据写入当前非有效逻辑数据块所在的存储空间,即写入数据存储区B的数据块B1;当Flag为“1”时,表明数据存储区B的数据块B1为当前有效逻辑数据块,将需要写入的数据写入数据存储区A的数据块A1。

    在一致性数据存储区A或B的所有一致性数据编程结束后,进行对应的数据有效区指示位Flag进行取反修改。

    因此,在用户对芯片内数据更新备份操作时,对非易失性数据存储器有两个编程步骤:

    第一步,写入一致性数据;

    第二步,修改数据有效区指示位Flag。

    如果在第一步过程中出现异常情况,例如,假设写入数据之前Flag为“0”,表明当前有效逻辑数据块为数据存储区A内的数据块,此时写入数据至数据存储区B内数据块。如果在写入数据存储区B数据块时出现异常中断情况,不论数据块的数据破坏与否,此时Flag为“0”没有修改。在芯片再次上电复位后,用户访问逻辑数据块1时,此时Flag为“0”,用户仍然从逻辑数据块A1中读取到原有的数据,即用户写入数据失败,但数据未改变。

    如果在第二步过程中出现异常情况,假设写入数据块之前Flag为“0”,表明当前有效数据块为数据存储区A内的数据块,写入数据至数据存储区B内的数据块,写入数据成功,启动Flag修改,将Flag取反修改为“1”。如果在Flag修改过程中出现异常中断情况,则会出现两种情况:Flag保持在“0”或Flag已修改成“1”。当Flag保持为“0”时,在芯片再次上电复位后,用户访问逻辑数据块1时,由于此时Flag为“0”,用户仍然从数据块A1中读取到原有的数据,即用户写入数据失败,数据未改变;如果Flag已修改成“1”时,在芯片再次上电复位后,用户访问逻辑数据块1时,此时Flag为“1”,用户从数据块B1中读取到新写入的数据,即用户写入数据成功。

    综上所述,可见在非易失性数据存储器两个编程步骤中,不论异常中断情况出现在任何时间节点上,都不会出现非客户期望的数据出现。以上是以假设写入数据块之前Flag为“0”的情况下进行说明的,但是可以理解当Flag为“1”时同样可以得出不论异常中断情况出现在任何时间节点上,都不会出现非客户期望的数据出现。

    在具体实施中,可以在现有的芯片内的非易失性数据存储器存储空间的基础上增加物理存储空间,以存储数据有效区指示位Flag。在外部设备读取或写入芯片非易失性数据存储器流程中读取对应数据有效区指示位Flag,是在现有的外部设备数据读取或写入流程中增加读取对应数据有效区指示位Flag的步骤,以便实现一致性数据安全更新备份功能。读取对应数据有效区指示位Flag是在芯片内部由程序控制实现的,在外部设备使用芯片时,与未实现一致性数据安全更新备份处理的芯片的使用过程感觉上没有区别。

    请参阅图2,芯片执行读操作包括如下步骤:

    I1、首先判断判断当前有效数据块是否在数据存储区A,如果是,则执行步骤I2,如果否,则执行步骤I3;

    I2、从数据存储区A读取数据,将对应的数据送到芯片外

    I3、当前有效数据块在数据存区B,从数据存储区B读取数据,并将对应的数据送到芯片外。

    请参阅图3,是芯片执行写操作包括如下步骤:

    V1、芯片接收到写操作的指令,判断当前有效数据块是否在数据存储区A,如果是则执行步骤V2,如果否,则直接执行步骤V3

    V2、对非有效数据块所在的数据存储区B内的数据块进行写操作,然后执行步骤V4

    V2、对非有效数据块所在的数据存储区A内的数据块进行写操作,然后执行步骤V4

    V4、标记当前数据块已被更新;

    V5、判断当前非有效存储区A或B数据块是否全部被更新,如果是,则执行步骤V6,如果否,则执行步骤V7;更新数据有效区指示位Flag、并清楚所有数据块已被更新标记;

    V6、继续等待其他数据块的写操作指令,返回步骤V1。

    以上通过具体实施方式对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,如采用不同位宽的数据有效区指示位Flag等均可以作出改变,这些改变结构也应视为本发明的保护范围。

非易失性数据存储器数据更新备份系统及方法.pdf_第1页
第1页 / 共11页
非易失性数据存储器数据更新备份系统及方法.pdf_第2页
第2页 / 共11页
非易失性数据存储器数据更新备份系统及方法.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《非易失性数据存储器数据更新备份系统及方法.pdf》由会员分享,可在线阅读,更多相关《非易失性数据存储器数据更新备份系统及方法.pdf(11页珍藏版)》请在专利查询网上搜索。

本发明提供一种非易失性数据存储器数据更新备份系统,涉及数字信息应用技术领域。所述系统包括逻辑寻址空间和物理寻址空间,所述逻辑寻址空间包括若干数据,每个数据对应物理寻址空间中的数据块;所述物理寻址空间包括至少两个数据存储区以及一个数据有效区指示位。其中,两个数据存储区都分别保存了若干数据块,两个数据存储区内保存的数据块具有一一对应的关联性;数据有效区指示位用于指示当前有效数据块所在的数据存储区。本发。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1