非易失性存储器的操作的制作方法

文档序号:9529302阅读:713来源:国知局
非易失性存储器的操作的制作方法
【专利说明】非易失性存储器的操作
[0001]相关申请的交叉引用
[0002]本申请要求于2013年6月13日提交的题为“NON-VOLATILE MEMORYOPERAT1NS (非易失性存储器的操作)”的第13/917,261号美国非临时专利申请的优先权,并作为该非临时专利申请的继续申请,该非临时专利申请的全部内容通过引用被合并进本文。
技术领域
[0003]本说明涉及非易失性存储器的操作的系统和方法,该非易失性存储器的操作包括电可擦除可编程只读存储器(EEPR0M)的操作。
【背景技术】
[0004]计算机系统包括使用非易失性存储设备来存储诸如设备配置信息和像序列号、标识符和密码密钥的其它敏感信息的数据。非易失性存储设备可以包括包含电可擦除可编程只读存储器(EEPR0M)的非易失性只读存储器(R0M),像上面提到的,非易失性只读存储器(ROM)被用来存储只读码或其它只读信息。在某些情况下,更新的或新的数据可以被写入非易失性存储设备。人们可能希望防止对非易失性存储设备的恶意或意外的重新编程。也可能希望更新或向非易失性存储设备写入新的可信数据

【发明内容】

[0005]本文件描述用于在非易失性存储设备中以安全的方式控制数据的设备和技术。在一个示例实现方式中,非易失性存储设备包括被分割成用于存储数据的多个分区的非易失性存储模块。例如,该非易失性存储模块可以被分割成第一分区和第二分区。第一分区可以被指定为只读存储区域,而第二分区可以被指定为只写分区。以这种方式,数据可以仅从只读分区被读取。控制器控制哪个分区是只读分区和哪个分区是只写分区。以这种方式,外部设备可以仅从只读分区中读取。
[0006]新数据可以被外部设备写入第二分区,在这个示例中第二分区是只写分区。新数据可以包括附加于新数据的签名。通过使用被存储在非易失性存储设备上的密钥存储模块中的密钥来验证签名,控制器确认这个新数据是可信的和安全的。在接收到新数据的完整的副本并且验证签名后,控制器可以将现在存储新数据的第二分区重新指定为只读分区,并且将第一分区重新指定为只写分区,其中其它新数据可以被写入。以这种方式,被写入非易失性存储设备的新数据或图像,在新数据可以被从设备读出之前,先通过验证附加于新数据的签名来确认其被认证或被信任。不完整或不能被验证的新数据可能被丢弃。
[0007]在一个示例实现方式中,控制器和密钥存储模块可能与非易失性存储模块位于相同的芯片上。在另一个示例实现方式中,控制器和密钥存储模块可能位于与非易失性存储模块分离的芯片上。在一个示例实现方式中,密钥存储模块可能与控制器位于相同芯片上,而在另一个示例实现方式中,密钥存储模块可能与非易失性存储模块位于相同的芯片上,该芯片可能与包含控制器的芯片是分离的。
[0008]在一个示例实现方式中,在制造和生产过程期间,描述的设备和技术可以被用于对非易失性存储设备编程或重新编程。
[0009]根据一个一般方面,装置包括接口模块、控制器、密钥存储模块和非易失性存储模块,其中该密钥存储模块被配置为存储密钥,该非易失性存储模块被配置为存储数据。该非易失性存储模块具有第一分区和第二分区,其中第一分区被指定为数据的只读存储区域,并且第二分区被指定为新数据的只写存储区域。响应于新数据与签名一起被写入第二分区并且控制器使用被存储在密钥存储模块中的密钥来验证签名,第一分区被重新指定为其它新数据的只写存储区域,并且第二分区被重新指定为新数据的只读存储区域。
[0010]在另一个一般的方面,装置包括接口模块和被配置为存储密钥的密钥存储模块。控制器被可操作地耦合到接口模块和密钥存储模块。该控制器被配置为与用于存储数据的外部非易失性存储设备接口。该控制器被配置为将该外部非易失性存储设备分割为第一分区和第二分区。第一分区被指定作为数据的只读存储区域,并且第二分区被指定作为通过接口模块接收到的新数据的只写存储区域。该控制器被配置为通过接口模块接收具有签名的新数据并将该新数据写入第二分区,使用被存储在密钥存储模块中的密钥来验证签名,并且响应于使用被存储在密钥存储模块中的密钥来验证签名,将第一分区重新指定为其它新数据的只写存储区域,并且将第二分区重新指定为新数据的只读存储区域。
[0011]在另一个一般的方面,方法包括将非易失性存储设备分割成第一分区和第二分区。第一分区被指定为数据的只读存储区域,并且第二分区被指定为通过接口模块接收到的新数据的只写存储区域。该方法包括通过接口模块接收具有签名的新数据,并且将所述新数据写入第二分区,通过控制器利用被存储在密钥存储模块中的密钥来验证签名,并且响应于利用被存储在所述密钥存储模块中的密钥来验证签名,将所述第一分区重新指定为其它新数据的只写存储区域,并且将所述第二分区重新指定为新数据的只读存储区域。
[0012]在另一个一般的方面,装置包括用于对接的设备、用于控制的设备、用于存储密钥的设备和用于非易失性存储的设备,其中用于存储密钥的设备被配置为存储密钥,用于非易失性存储的设备被配置为存储数据。用于非易失性存储的设备具有第一分区和第二分区,其中第一分区被指定为数据的只读存储区域,并且第二分区被指定为新数据的只写存储区域。响应于新数据与签名一起被写入第二分区并且用于控制的设备使用被存储在用于存储密钥的设备中的密钥来验证签名,第一分区被重新指定为其它新数据的只写存储区域,并且第二分区被重新指定为新数据的只读存储区域。
[0013]—个或多个实现方式的细节在下面的附图和说明中有详尽的解释。其它的特征根据说明和附图以及权利要求会变得显而易见。
【附图说明】
[0014]图1是非易失性存储设备的示例框图。
[0015]图2是非易失性存储设备和安全设备的示例框图。
[0016]图3是图2的多个非易失性存储设备和安全设备的示例框图。
[0017]图4是图示图1-3的设备的示例操作的示例流程图。
【具体实施方式】
[0018]图1是非易失性存储设备102的示例框图。非易失性存储设备102包括非易失性存储模块104、接口模块106、控制器108、密钥存储模块110和策略模块112。一般地,非易失性存储设备102被配置为通过接口模块106接收数据并且将数据写入非易失性存储模块104。例如,外围设备114可以将数据写入非易失性存储设备102。数据也可以通过接口模块106被从非易失性存储设备102读取。例如,外围设备114可以通过接□模块106从非易失性存储设备102中读取数据。
[0019]在整个文件中,非易失性存储设备102也可以被交换地称为存储设备102来指代相同的组件。非易失性存储设备102可以是不同类型的存储设备,包括不同类型的只读存储器(ROM)设备。例如,非易失性存储设备102可以是电可擦除可编程只读存储器(EEPR0M)。在其它的示例中,非易失性存储设备102可以是闪存、相变存储器(PCM)、自旋力矩转移(STT)存储器、忆阻器以及其它非易失性存储设备。
[0020]在一个示例实现方式中,接口模块106可以是串行接口模块。例如,接口模块106可以是能支持一个或多个串行接口的串行接口模块,串行接口包括,但不限于,低引脚数(LPC)接口、1-平方_C(I2C)接口、1线接口、串行外围接口(SPI)和单线接口。其它的串行接口也可以被实现。将接口模块106连接到外围设备114的读写总线可以是对应于接口模块106所支持的接口类型的总线。在某些实现方式中,接口模块106可以支持多于一种类型的串行接口。
[0021]在一个示例实现方式中,接口模块106可以是并行接口模块。例如,接口模块106可以是能支持一个或多个并行接口的并行接口模块。将接口模块106连接到外围设备114的读写总线可以是对应于接口模块106所支持的接口类型的总线。在某些实现方式中,接口模块106可以支持多于一种类型的并行接口。
[0022]在一个示例实现方式中,接口模块106可以能够支持串行和并行两种接口。例如,接口模块106可以能够支持一个或多个以上描述的串行接口和一个或多个以上描述的并行接口。
[0023]非易失性存储设备102中的非易失性存储模块104可以被配置为存储数据。在整个文件中,非易失性存储模块104也可以被交换地称为存储模块104来意指相同的组件。存储模块104可以被实现为不同的存储容量。例如,存储模块104可以包括8K字节、16K字节、32K字节、64K字节、128K字节、256K字节的存储容量。在其它实现方式中,存储模块104可以包括更大规模的存储容量。
[0024]控制器108可以被配置为将存储模块104分割为多个分区。在一个示例实现方式中,控制器
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1