用于集成微控制器和外部存储系统的块加密安全的制作方法

上传人:ting****789 文档编号:310027881 上传时间:2022-06-14 格式:DOCX 页数:6 大小:25.85KB
返回 下载 相关 举报
用于集成微控制器和外部存储系统的块加密安全的制作方法_第1页
第1页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用于集成微控制器和外部存储系统的块加密安全的制作方法》由会员分享,可在线阅读,更多相关《用于集成微控制器和外部存储系统的块加密安全的制作方法(6页珍藏版)》请在金锄头文库上搜索。

1、用于集成微控制器和外部存储系统的块加密安全的制作方法专利名称:用于集成微控制器和外部存储系统的块加密安全的制作方法技术领域:本发明总地涉及微控制器,并且更具体地,涉及在集成微控制器高速缓冲存储器 (cache)子系统和外部存储设备中数据块(block data)的安全管理。背景技术:一段时间以来,处理器或微控制器内的内容保护(content protection)已经成为 电子工业的一种挑战。由于半导体技术已经得到发展,许多微控制器已经成为复杂集成系 统芯片(systems-on-chip)。然而,系统芯片技术往往受到能够在微控制器中以内部方式被 有效地集成和管理的存储空间量的限制。在微控制器

2、内集成更大的存储器需要在设计该微 控制器时解决如下问题额外的空间、定时、电源以及控制问题。由于微控制器应用的发展 趋势需要更大的存储器来存储数据和指令两者,这种在微控制器内集成内部存储器的问题 将会变得更加重要。为解决这些问题,一种方法是将存储器移至集成微控制器外部的位置。这允许电 源和空间限制都可以被转移到集成微控制器电路之外。对许多微控制器系统来说,根据容 量(size)和成本两者,外部存储器的使用是针于数据和程序码储存的优选方案。然而,对 外部存储器中所储存内容的保护是成问题的,尤其是针对具有高度敏感信息的安全交易, 因为这种储存的数据存在于集成微控制器的安全环境之外。外部存储器的使用会

3、潜在地降 低微控制器的性能,因为,在微控制器系统中,存储器装置之间必须保持数据的一致性。外部存储器的使用还会在微控制器读取/写入命令执行期间引入延迟 (latency),使得微控制器性能降至可接受的水平之下。因为用于存取来自外部存储器的内 容和保证在微控制器和外部存储器之间的这种通信(traffic)安全的时间要求,外部存储 器的使用还会使得微控制器复杂化。具体地,读取和/或写入外部存储器所需的时间对特 定应用来说将会是无法负担的,并且显著地降低微控制器的性能。此外,因为外部存储器内 的内容是安全的,每次该内容在微控制器内被处理时,该微控制器均需要解密该内容,而每 次该内容被储存在外部存储器中

4、时,则需要进行再次加密(re-encrypt)。在许多实时应用中,由解密和加密功能以及相关联的读取和写入操作所引起的时 间限制,将显著地降低微控制器的性能。因此,所需要的是这样的微控制器和外部存储系 统,即能够在实时环境中更有效地管理加密和解密操作,并且管理储存在这个系统中的内 容。此外,微控制器必须在其存储器和高速缓冲存储器系统中保持数据一致性,以确保正常 的操作。发明内容本发明涉及这样的微控制器,该微控制器以安全的方式管理储存在集成高速缓冲 存储器子系统、集成缓冲器子系统以及外部存储器中的信息。该微控制器的各种实施方案 包括这样的结构和方法,即在该高速缓冲存储器子系统和缓冲器子系统以及外部

5、存储器之 间确保数据一致性。此外,通过提供数据块级(block-level)加密在整个微控制器系统中保持数据安全性,该数据块级加密在该外部存储器内保护数据安全,并且在该集成微控制 器和外部存储器之间传输数据期间保护数据安全。在本发明的特定实施方案中,该集成微控制器包括双向数据通路以及指令通路, 这为通过所述两种通路的内容提供强数据块级加密。数据和指令由一个或者更多个加密引 擎加密,所述加密引擎在数据被储存在I/O缓冲器或该微控制器外部的存储器时确保数据 完整性。读取操作被这样提供,即允许该微控制器在跨该高速缓冲存储器子系统、该缓冲器 子系统以及该外部存储器对数据块进行识别和读取方面是资源敏感的

6、。在本发明的各种实施方案中,该安全微控制器系统被提供有使用者可编程的写入 策略,所述策略允许个人相对于该微控制器的预期应用平衡数据完整性和系统性能。在 透写(write-through)模式中,数据一致性是按优先次序排列的,从而在该集成高速缓冲 存储器子系统和外部存储器之间的一致性在该系统写入策略中被排列在高等级。在回写 (write-back)模式中,系统性能是按优先次序排列的,从而对该外部存储器的写入操作排 队且等候该存储器总线空闲,或者在停止(stall)该存储器总线且执行该写入操作之前, 等候排队写入操作总计数超过阈值。本领域技术人员将理解数据块级、在该微控制器中提供的基于高速缓冲存储

7、器加 密的相对强度。在高速缓冲存储器子系统和外部存储器之间的这种加密安全性和数据管 理,允许该微控制器在许多不同应用和不同环境中有效地操作。已经在该发明内容章节总地描述了本发明的特定特征和优点;然而,在本文中给 出了另外的特征、优点和实施方案,或者查看了文本的附图、说明书和权利要求书的本领域 普通技术人员将清楚另外的特征、优点和实施方案。因此,应该理解,本发明的范围应当不 受该发明内容章节中所公开的特定实施方案的限制。现在将参照本发明的实施方案,本发明的实施例可以在附图中被图示。这些附图 意图是图示说明性的而非限制性的。尽管本发明是在这些实施方案的上下文中进行描述 的,但是应该理解,并非意图将

8、本发明的范围限于这些特定实施方案。图1根据本发明的各种实施方案总地图示包括集成微控制器和外部存储器的系 统。图2根据本发明的各种实施方案图示说明安全微控制器,该微控制器使用块加密 来保护与外部存储器装置进行通信的内容。图3根据本发明的各种实施方案图示说明集成在安全微控制器内的数据高速缓 冲存储器。图4为根据本发明的各种实施方案的数据高速缓冲存储器子系统的图示说明。图5为根据本发明的各种实施方案的流程图,图示说明用于从外部存储器读取加 密数据块并对其进行解密的方法。图6为根据本发明的各种实施方案的另一流程图,图示说明用于跨高速缓冲存储 器子系统和外部存储器读取数据块的方法。图7为根据本发明的各种

9、实施方案的另一流程图,图示说明用于跨高速缓冲存储 器子系统和外部存储器的写入命令管理的方法。具体实施例方式本发明的实施方案提供用于安全微控制器的系统、器件以及方法。在如下的说明 中,出于解释说明的目的,阐明具体细节以提供对本发明的理解。然而,对本领域技术人员 来说将会清楚的是,本发明无需这些细节也可以实现。本领域技术人员将理解,下面描述的 本发明的实施方案可以以各种方式且使用各种装置来实现。本领域技术人员还将理解,附 加的修改、变通以及实施方案落入本发明的范围,本发明可以提供实用性的附加领域也落 入本发明的范围。因此,下面描述的实施方案为本发明的具体实施方案的示例,并且是意图 要避免模糊本发明

10、。说明书中提及“一个实施方案”、“实施方案”等是指结合所述实施方案所描述的具 体的特征、结构、特性或功能被包含在本发明的至少一个实施方案中。在说明书不同地方出 现的短语“在一个实施方案中”、“在实施方案中”或类似的短语不是必定都是指相同的实施方案。A.安全微控制器根据本发明的各种实施方案描述这样的安全微控制器系统,该系统包括集成高速 缓冲存储器子系统、加密引擎、缓冲器子系统以及外部存储器。安全微控制器引入块加密方 法,来确保在集成微控制器和外部存储器之间的通信内容受到保护并且系统的实时性能得 到保持。此外,微控制器系统提供使用者可配置的存储器写入策略,其中存储器写入协议可 以被选择来平衡数据一

11、致性和系统性能。安全微控制器针对指令和数据利用片上(on-chip)高速缓冲存储器子系统实施, 这允许在高速缓冲存储器子系统和外部存储器之内动态执行读取/写入命令。在操作期 间,安全微控制器使用双向数据通路,该通路为针对外部数据存储器的读取操作提供实时 解密,并且为针对外部数据存储器的写入操作提供实时加密。微控制器使用对储存在外部 存储器中的数据和指令两者的数据块级基于高速缓冲存储器的加密和解密。在美国专利 No. 6,996,725中描述了对块加密的说明,通过引用将该专利的全部内容并入本申请。提 供存储器管理单元来在集成高速缓冲存储器子系统和外部存储器中控制这些操作的定时 (timing)和

12、执行。图1为根据本发明的各种实施方案的安全微控制器系统的方框图。如图1所示, 该系统包括集成微控制器100和外部存储器110。集成微控制器100包括中央处理单元 (“CPU”)、存储器管理单元、高速缓冲存储器子系统、缓冲器子系统、加密引擎以及各种其他 部件。在本发明的特定实施方案中,微控制器核心100的CPU被实施为流水线(pipelined) 处理器。对线性码来说代码执行是单周期的,但除非采取进一步的措施(例如分支预测单 元),否则代码分支招致单时钟周期的损失(penalty)。一般地,指令码操作包括若干个限 定具体功能的代码执行的周期。此外,术语“代码(code)”、“程序码(progra

13、m code)”以及 “指令码(instruction code) ”被认为是含义相同的。在各种实施方案中,处理器使用具有独立的程序存储器和数据存储器的哈佛存储 体系结构。这种存储体系结构通过允许同时存取程序存储器和数据存储器,改善了系统带 宽;还允许针对数据储存使用不同字长。在本发明的特定实施方案中,程序存储器和数据存 储器都被集成在单个外部存储器中。然而,本领域技术人员将理解的是,还可以使用多个外部存储设备。本领域技术人员将理解的是,根据本发明的实施方案,可以实施各种处理器体系 结构、时钟方案以及寻址方法。包括高速缓冲存储器子系统和外部存储器的系统存储器,将各种类型的数据和指 令储存在微控

14、制器系统中,微控制器系统包括高速缓冲存储器子系统和外部存储器。本领 域技术人员将理解的是,可以利用各种存储器技术(例如SRAM、DRAM、闪存等)实施数据存 储器。图2根据本发明的各种实施方案图示说明集成微控制器和外部存储器系统。该 系统包括使微控制器CPU250与外部存储器110连接的双向加密/解密数据通路。加密/ 解密数据通路包括对连接到外部存储器110的数据总线的接口、数据I/O缓冲器201、加密 引擎202、解密输出缓冲器/解密输入缓冲器203,以及连接到微控制器CPU250的数据高 速缓冲存储器(D-cache)204。该系统还包括指令总线,该指令总线包括指令I/O缓冲器 210、加

15、密引擎202、解密缓冲器211以及连接到微控制器CPU250的指令高速缓冲存储器 (I-CaChe)212。该系统还具有存储器管理单元(“MMU”)205、密钥寄存器和随机数发生器 220以及数据块地址生成器230。加密引擎202按照数据高速缓冲存储器子系统的需求来工作,并且实施本领域技 术人员认可的强密码算法。加密引擎202采用块密码来沿双向数据通路和指令通路执行块 加密。具体地,加密引擎202采用块密码并且以多字节/字的块的形式处理数据,该数据通 常比针对处理器及其内部储存元件的数据宽度要大。块密码的实施例包括DES、三重DES、 AES以及其他本领域技术人员已知的方式。实际实施的块密码可

16、以影响执行数据块加密所 需的时间。对于许多应用,加密引擎202在指令通路和数据通路之间可以是共享的,因为高 速缓冲存储器行(cache line)仅仅按照需求进行替换,并且指令高速缓冲存储器和数据高 速缓冲存储器的命中率(hit rate)均高。当两种高速缓冲存储器及其相关联的缓冲器同 时未命中(miss)时,系统才停止。在这种情况下,数据回写具有指令和数据加密操作的优 先权。针对具有大量数据通信量的应用,专用的加密引擎可以被引入来用于单独的数据通 路和单独的指令通路。本领域技术人员将理解的是,各种加密结构(例如加密引擎的实施 方式)和相关联的方法可以用来在微控制器系统中管理数据通路和指令通路。关于数据通路,外部存储器110储存微控制器所使用的加密数据(encrypted data) 0外部存储器110还可以储存未受保护的数据或未加密数据(clear data)。如果未 受保护的数据正在被检索,微控制器体系结构支持旁路通路,在该旁路通路上未受保护的 数据直接储存到数据高速缓冲存储器204并且由微控制器250读取。在特定实施方案中, 这种未受保护的数据

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号