动态资源共享.pdf

上传人:Y0****01 文档编号:4429987 上传时间:2018-10-01 格式:PDF 页数:26 大小:642.91KB
返回 下载 相关 举报
动态资源共享.pdf_第1页
第1页 / 共26页
动态资源共享.pdf_第2页
第2页 / 共26页
动态资源共享.pdf_第3页
第3页 / 共26页
点击查看更多>>
资源描述

《动态资源共享.pdf》由会员分享,可在线阅读,更多相关《动态资源共享.pdf(26页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 104021037 A (43)申请公布日 2014.09.03 C N 1 0 4 0 2 1 0 3 7 A (21)申请号 201410070908.X (22)申请日 2014.02.28 13/783,100 2013.03.01 US G06F 9/48(2006.01) G06F 9/54(2006.01) (71)申请人英飞凌科技股份有限公司 地址德国瑙伊比贝尔格市坎芘昂112号 (72)发明人 P.巴拉苏布拉马尼安 (74)专利代理机构中国专利代理(香港)有限公 司 72001 代理人张凌苗 胡莉莉 (54) 发明名称 动态资源共享 (57) 摘要 。

2、本发明公开了动态资源共享。设备和技术的 代表性实现提供了资源的动态安全共享。可以将 资源模块划分成多个功能块,可以将这些功能块 分配给非安全应用和安全应用。安全性监视器可 以监视处理器活动并且确定安全资源何时可以被 访问。 (30)优先权数据 (51)Int.Cl. 权利要求书3页 说明书11页 附图11页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书11页 附图11页 (10)申请公布号 CN 104021037 A CN 104021037 A 1/3页 2 1.一种装置,包括: 嗅探器组件,其被布置为:监视处理器并且确定在所述处理器上执行的应用是否请。

3、求 对资源的安全访问;以及 输出组件,其被布置为:当所述应用是安全应用时,输出准予对共享的资源模块的安全 功能块的安全访问的安全模式信号。 2.根据权利要求1所述的装置,还包括中断处理组件,其被布置为:当断言所述安全模 式信号时,使用安全中断服务例程(ISR)处理程序对中断向量寄存器进行重新编程。 3.根据权利要求1所述的装置,其中,所述共享的资源模块被划分为安全功能块和非 安全功能块,所述安全功能块被安全应用访问与所述非安全功能块被非安全应用访问是并 发的。 4.根据权利要求3所述的装置,其中,所述安全功能块与所述非安全功能块是通信地 隔离的。 5.根据权利要求1所述的装置,其中,当被授权的。

4、应用开始安全事务或者发起对安全 资源的访问时,所述装置断言所述安全模式信号,并且当应用结束安全事务或者终止对安 全资源的访问时,所述装置解断言所述安全模式信号。 6.根据权利要求1所述的装置,其中,所述装置被布置为:对安全中断请求进行聚合, 并且将所聚合的安全中断请求转发到所述处理器和/或外部中断控制器。 7.根据权利要求1所述的装置,其中,所述装置被布置为:当所述安全模式信号被断言 时禁用调试基础结构,并且当所述安全模式信号被解断言时启用所述调试基础结构。 8.一种系统,包括: 处理器,其被布置为:并发地执行非安全应用和安全应用; 安全性监视器,其被布置为:监视所述处理器并且当所述安全应用请。

5、求对资源模块的 访问时输出安全模式信号; 一个或多个资源模块,每个资源模块包括多个功能块,所述多个功能块中的一个或多 个功能块被分配给所述非安全应用,并且所述多个功能块中的一个或多个其它功能块被并 发地分配给所述安全应用;以及 一个或多个安全性套接字,其被布置为:确定所述一个或多个资源模块的所分配的功 能块中的每一个的访问许可,所述访问许可基于功能块是被分配给所述非安全应用还是被 分配给所述安全应用。 9.根据权利要求8所述的系统,还包括分配模块,其被布置为:将所述一个或多个资源 模块的所述多个功能块中的一个或多个功能块动态地分配给请求非安全应用和/或将所 述一个或多个资源模块的所述多个功能块。

6、中的一个或多个其它功能块动态地分配给请求 安全应用。 10.根据权利要求8所述的系统,还包括一个或多个存储器存储设备,其包括安全存储 器部分和非安全存储器部分。 11.根据权利要求10所述的系统,其中,当所述安全性监视器断言所述安全模式信号 时,向所述安全应用准予对所述安全存储器的访问,并且其中,当所述安全性监视器解断言 所述安全模式信号时,对所述安全存储器的访问被拒绝。 12.根据权利要求8所述的系统,还包括互连寄存器,其被布置为:确定所述一个或多 权 利 要 求 书CN 104021037 A 2/3页 3 个资源模块的其它访问许可。 13.根据权利要求8所述的系统,其中,所述一个或多个资。

7、源模块包括下列各项中的一 项:实时时钟、中断控制器、小键盘控制器和直接存储器存取(DMA)模块。 14.根据权利要求8所述的系统,其中,允许安全可执行指令使用配置信息对所述安全 性套接字进行编程,并且不允许非安全可执行指令对所述安全性套接字进行编程。 15.一种方法,包括: 从第一应用接收针对模块的资源的第一请求,所述第一应用是安全应用或非安全应用 中的一个; 将所述模块的第一功能块分配给所述第一应用,所述模块包括多个功能块; 从第二应用接收针对所述模块的资源的第二请求,所述第二应用是所述安全应用或所 述非安全应用中的另一个;以及 将所述模块的第二功能块分配给所述第二应用,所述第二应用访问所述。

8、模块与所述第 一应用访问所述模块是并发的,所述第一功能块与所述第二功能块通信地隔离。 16.根据权利要求15所述的方法,还包括:将所述模块划分成所述多个功能块,使得所 述模块的功能块是相似或相同的。 17.根据权利要求15所述的方法,还包括:将包装器关联到所述模块,所述包装器被布 置为:确定所述模块的所分配的功能块的访问许可,所述访问许可基于功能块是被分配给 安全应用还是被分配给非安全应用。 18.根据权利要求17所述的方法,还包括:基于由所述模块的所述包装器确定的访问 许可来允许或拒绝对功能块的总线访问。 19.根据权利要求17所述的方法,其中,所述包装器可由安全可执行指令编程,并且不 可由。

9、非安全可执行指令编程。 20.根据权利要求17所述的方法,还包括:基于由所述模块的所述包装器确定的访问 许可,将所述模块的功能块指派给下列各项中的一项:安全世界、非安全世界、或者既不是 所述安全世界也不是所述非安全世界。 21.根据权利要求20所述的方法,还包括:当安全模式激活时允许应用访问指派给所 述安全世界的功能块,并且当所述安全模式没有激活时拒绝应用访问指派给所述安全世界 的功能块。 22.根据权利要求17所述的方法,还包括:基于所述模块的预定的许可,经由互连结构 来允许或阻断与所述模块的事务。 23.根据权利要求15所述的方法,还包括:将所述模块的下一个可用功能块分配给下 一个请求应用。

10、,不管所述下一个请求应用是安全应用还是非安全应用。 24.根据权利要求23所述的方法,其中,所述下一个功能块与所述第一功能块和所述 第二功能块中的至少一个通信地隔离。 25.一种控制器设备,其包括处理器以及具有存储在其上的处理器可执行指令的一个 或多个存储器存储设备,当由所述处理器执行时,所述处理器可执行指令指引所述处理器 执行包括以下的操作: 从第一应用接收针对模块的资源的第一请求,所述第一应用是安全应用或非安全应用 中的一个; 权 利 要 求 书CN 104021037 A 3/3页 4 将所述模块的第一功能块分配给所述第一应用,所述模块包括多个功能块; 从第二应用接收针对所述模块的资源的。

11、第二请求,所述第二应用是所述安全应用或所 述非安全应用中的另一个;以及 将所述模块的第二功能块分配给所述第二应用,所述第二应用访问所述模块与所述第 一应用访问所述模块是并发的,所述第一功能块与所述第二功能块通信地隔离。 权 利 要 求 书CN 104021037 A 1/11页 5 动态资源共享 背景技术 0001 在知识产权(IP)盗版和其它形式的潜在有害活动是许多操作或计算环境中的主 要担忧。通常,例如,由于硬件的配置,微控制器不提供用于执行专有或保密例程的受信任 的执行环境。例如,硬件的架构可能更多地基于经济的设计考虑,尤其是当硬件要部署在工 业应用中的时候。当考虑到这样的微控制器可能在。

12、其中进行操作的潜在地被暴露的环境 时,这可能是有问题的。诸如固件、软件、数据等之类的宝贵的IP资产在这些情况可能会易 于遭受攻击。 0002 已提出的解决方案通常包括对资源的重复,这可能包括额外的硬件组件或系统。 例如,片上系统(SoC)可以在芯片上包括除了类似通用组件之外的额外的“安全”组件(例 如,出于数字版权管理的目的)。例如,安全组件可以仅由受信任的应用在安全环境中使用。 这种安全组件可以包括时钟、中断控制器、小键盘控制器、DMA模块、存储器等。总的来说, 资源重复需要额外的管芯尺寸和增加的功耗。 0003 在其它所提出的解决方案中,可以使用设计的时间分区将模块从非安全模式切换 到安全。

13、模式并且切换回来,以根据需要来运行安全应用。然而,一旦将模块暂时指派给非安 全应用或者安全应用,整个模块在一段时间期间通常不可用于另一个“世界”(例如,分别为 安全应用/例程或非安全应用/例程),直到所指派的应用将其放弃。一般来说情况是如 此,即使模块包括若干能够并发并且独立使用的功能块。在这种情况下,模块的功能块中的 许多(例如,多数)可以是空闲的,而模块的块中的其余部分(例如,几个)正在由所指派的应 用使用。该技术可能限制设计的应用和/或用例的范围,并且可能是低效的。 发明内容 0004 根据本发明的一个方面,提供了一种装置,包括:嗅探器组件,其被布置为:监视 处理器并且确定在所述处理器上。

14、执行的应用是否请求对资源的安全访问;以及输出组件, 其被布置为:当所述应用是安全应用时,输出准予对共享的资源模块的安全功能块的安全 访问的安全模式信号。 0005 根据本发明的另一个方面,提供了一种系统,包括:处理器,其被布置为:并发地 执行非安全应用和安全应用;安全性监视器,其被布置为:监视所述处理器并且当所述安 全应用请求对资源模块的访问时输出安全模式信号;一个或多个资源模块,每个资源模块 包括多个功能块,所述多个功能块中的一个或多个功能块被分配给所述非安全应用,并且 所述多个功能块中的一个或多个其它功能块被并发地分配给所述安全应用;以及一个或多 个安全性套接字,其被布置为:确定所述一个或。

15、多个资源模块的所分配的功能块中的每一 个的访问许可,所述访问许可基于功能块是被分配给所述非安全应用还是被分配给所述安 全应用。 0006 根据本发明的另一个方面,提供了一种方法,包括:从第一应用接收针对模块的资 源的第一请求,所述第一应用是安全应用或非安全应用中的一个;将所述模块的第一功能 块分配给所述第一应用,所述模块包括多个功能块;从第二应用接收针对所述模块的资源 说 明 书CN 104021037 A 2/11页 6 的第二请求,所述第二应用是所述安全应用或所述非安全应用中的另一个;以及将所述模 块的第二功能块分配给所述第二应用,所述第二应用访问所述模块与所述第一应用访问所 述模块是并发。

16、的,所述第一功能块与所述第二功能块通信地隔离。 0007 根据本发明的另一个方面,提供了一种控制器设备,其包括处理器以及具有存储 在其上的处理器可执行指令的一个或多个存储器存储设备,当由所述处理器执行时,所述 处理器可执行指令指引所述处理器执行包括以下的操作:从第一应用接收针对模块的资源 的第一请求,所述第一应用是安全应用或非安全应用中的一个;将所述模块的第一功能块 分配给所述第一应用,所述模块包括多个功能块;从第二应用接收针对所述模块的资源的 第二请求,所述第二应用是所述安全应用或所述非安全应用中的另一个;以及将所述模块 的第二功能块分配给所述第二应用,所述第二应用访问所述模块与所述第一应用。

17、访问所述 模块是并发的,所述第一功能块与所述第二功能块通信地隔离。 附图说明 0008 参照附图阐述了详细描述。在图中,参考编号的一个或多个最左边的位标识该参 考编号首次出现在其中的图。相同的参考编号在不同的图中的使用指示相似或相同的项 目。 0009 对于本讨论,图中所示的设备和系统被示为具有多个组件。如本文中所描述的,设 备和/或系统的各种实现可以包括更少的组件并且仍然在本公开的范围之内。可替代地, 设备和/或系统的其它实现可以包括额外的组件或者所描述的组件的各种组合,并且仍然 在本公开的范围之内。 0010 图1是根据一种实现的示例微控制器拓扑的一部分的框图,在其中可以应用本文 中公开的。

18、技术和设备。 0011 图2是根据一种实现的、由一些功能块组成的示例模块的框图。示出了该模块和 与其相关联的安全性套接字包装器以及各个互连路径。 0012 图3是根据一种实现的、在功能块级上示出的示例中断传递机制的框图。 0013 图4A是包括专用中断处理的示例中断处理方案的框图。 0014 图4B是根据一种实现的、使用公共中断用于安全和通用使用的示例中断处理方 案的框图。 0015 图5A是根据一种实现的、示例安全性监视器的框图。 0016 图5B是根据一种实现示出非安全世界与安全世界之间的示例切换的状态图。 0017 图6是根据一种实现示出非安全世界与安全世界之间的切换的示例阶段的进度 图。

19、。 0018 图7是根据一种实现示出用于非安全世界与安全世界之间的受控转换的技术的 进度图,尤其详述了所涉及的中断。 0019 图8是根据一种实现示出向非安全应用指派功能块的示例阶段的进度图。 0020 图9是根据一种实现示出向安全应用指派功能块的示例阶段的进度图。 0021 图10是根据一种实现示出用于在非安全应用与安全应用之间提供动态资源共享 的示例过程的流程图。 说 明 书CN 104021037 A 3/11页 7 具体实施方式 0022 概述 设备和技术的代表性实现在不需要重复的硬件以及伴随的增加的管芯尺寸和功耗的 情况下提供了非安全应用和安全应用对资源的动态安全共享。在一个示例中,。

20、可以将资源 模块划分成多个功能块,可以将这些功能块分配给非安全应用和安全应用。在一种实现中, 可以将来自资源模块的一些功能块分配给非安全应用,并且可以并发地将来自资源模块的 其它功能块分配给安全应用,而没有数据泄漏或破坏一个或多个安全应用的安全性。 0023 在一种实现中,安全性监视器可以监视处理器活动,并且基于在该处理器上执行 的应用针对安全资源的请求来确定安全资源何时可以被访问。例如,当安全应用请求访问 资源模块时,安全性监视器可以输出安全模式信号。然后,当对安全资源的访问结束时,安 全性监视器可以对安全模式信号解断言(de-assert)。 0024 在各种实现中,资源模块与布置用于确定。

21、这些资源模块的所分配的功能块中的每 一个功能块的访问许可的安全性套接字相关联。例如,访问许可可以基于功能块是分配给 了非安全应用还是分配给了安全应用。 0025 在本公开中讨论了用于安全资源共享的各种实现和技术。参照附图中示出的示例 微控制器设备和系统对技术和设备进行了讨论。然而,这并非旨在是限制性的,而是为了容 易讨论和说明方便。所讨论的技术和设备可以应用于各种处理器和控制器设备设计、嵌入 式设备和系统、结构等中的许多,并且仍然在本公开的范围之内。在本公开中对术语微控制 器或控制器的使用旨在包括任何和所有这样的处理器设备、系统、结构等。 0026 在下面使用多个示例对实现进行了更加详细的解释。

22、。虽然在这里和下面讨论了各 种实现和示例,但是通过对单独实现和示例的特征和元素进行组合,进一步的实现和示例 可以是可能的。 0027 示例控制器拓扑 图1是根据一种实现的示例控制器(例如,微控制器等)拓扑100的一部分的框图,在 其中可以应用本文中公开的技术和设备。示出示例拓扑100具有至少两个互连总线(L1和 L2)、在L1互连上具有数量“n”个资源(例如,从设备)模块102(“模块”),并且在L2互连 上具有另外数量“m”个模块102。在各种实现中,拓扑100可以具有任意数量的总线、互连 和模块102以及额外的组件。 0028 例如,如下面进一步描述的,在图1的示例拓扑100中,每个模块1。

23、02与布置用于 确定针对模块102的访问许可的安全性套接字104相关联。此外,图1的图示包括中央处 理单元(CPU)106、安全性监视器108、存储器控制器110、安全存储器112、通用存储器114、 桥组件116和总线主设备组件118。在各种实现中,拓扑100可以包括更少的、额外的或者 替代的组件,并且仍然在本公开的范围之内。 0029 在一种实现中,资源模块(“模块”)102表示可以由在CPU 106上执行的应用用来 执行操作或任务的资源。例如,模块102可以包括像实时时钟的基准组件;诸如中断控制器 的任务管理组件;诸如小键盘控制器的输入-输出管理组件;诸如直接存储器存取(DMA)模 块的。

24、存储器管理组件等。应当理解的是:这些示例仅是模块102的大量可能的类型中的几 个示例。一般地说,可以由在CPU 106上执行的应用请求和/或采用的任何和所有资源都 可以是模块102。 说 明 书CN 104021037 A 4/11页 8 0030 在各种实现中,CPU 106被布置为:并发地执行一个或多个非安全应用以及一个 或多个安全应用。CPU 106可以包括单处理器或多处理器计算机、处理器或控制器系统、小 型计算设备、大型设备、以及个人计算机、手持式或移动计算设备(例如,平板电脑、智能电 话等)、基于微处理器的或可编程的消费或工业电子设备等。还可以在分布式计算环境中实 施所示出的方面,在。

25、分布式计算环境中,任务由通过通信网络链接的远程处理设备执行。然 而,本公开的方面中的一些(如果不是全部)方面可以在独立的计算设备上实施。在分布式 计算环境中,程序组件可以位于本地和远程存储器存储设备(诸如存储器设备112、114)两 者中。 0031 在一种实现中,安全性监视器108被布置为:针对由在处理器106上执行的应用进 行的安全模式进入和退出序列来监视处理器(即,CPU 106)。例如,安全性监视器108被布 置为:当被授权的应用开始安全事务或者发起对安全资源的访问时,断言安全模式信号。进 一步的,当应用结束安全事务或者终止对安全资源的访问时,安全性监视器108对安全模 式信号解断言。。

26、 0032 在一种实现中,如图4中所示,安全性监视器108包括嗅探器组件402,其被布置为 监视处理器106并且确定在处理器106上执行的应用是否请求对诸如模块102、存储器114 等的资源的安全访问。 0033 在各种实现中,当进入安全模式的条件满足时,安全性监视器108输出安全模式 信号。例如,当非安全应用通过预定义的合约(例如,经由启动ROM)等请求资源模块102的 功能块202指派给该非安全应用时,启动ROM代码(或者类似的机构)可以执行序列来使安 全性监视器108相信请求是善意的。在这样的示例中,安全性监视器108输出安全模式信 号,从而断言安全模式。在这些实现中,安全性监视器108。

27、可以包括输出组件(未示出),例 如,输出组件可以被布置为:当请求应用是安全应用或者请求应用具有访问安全资源的授 权时,输出准予对共享的资源模块的安全功能块的安全访问的安全模式信号。 0034 在另外的实现中,安全性监视器108被布置为:处理或管理安全中断请求。用这种 方式,中断以安全的方式处理,并且与非安全系统或应用隔离。例如,安全性监视器108可 以对安全中断请求进行聚合,并且将经聚合的安全中断请求转发到处理器106和/或中断 控制器来进行对中断的处理。 0035 在一种示例实现中,安全性监视器108包括中断处理组件(未示出),中断处理组件 被布置为:当安全模式信号被断言时,使用安全中断服务。

28、例程(ISR)处理程序对中断向量 寄存器进行重新编程。例如,安全性监视器108可以被布置为:使用(例如,在安全ROM中定 义的)安全模式ISR的地址对专用安全模式中断向量条目进行编程,并且将中断转发到CPU 106和/或中断控制器来进行对中断的处理。在不同的实现中,其它技术可以用于使用安全 性监视器108来处理安全中断。 0036 因此,对由指派给安全世界的功能块202断言的任何中断进行安全地处理,而没 有来自恶意应用等的拦截。 0037 在进一步的实现中,安全性监视器108被布置为:当断言了安全模式信号时禁用 控制器100的调试基础结构,并且当解断言了安全模式信号时启用调试基础结构。用这种 。

29、方式,安全操作和事务也保持与调试基础结构隔离,从而提供了额外的安全性等级。在各种 实现中,替换的或额外的保护机制可以用于防止当在安全模式中时未授权的调试。 说 明 书CN 104021037 A 5/11页 9 0038 如果包括的话,那么存储器控制器100可以被布置为:基于由安全性监视器108输 出的安全模式信号来控制应用和/或例程对存储器存储设备的访问,所述存储器存储设备 诸如安全存储器112和通用存储器114。例如,当安全性监视器108断言安全模式信号时, 可以向安全应用准予对安全存储器112的访问。相反,当安全性监视器108解断言安全模 式信号时,可以拒绝对安全存储器112的访问。 0。

30、039 在各种实现中,可以使用处理器(即,CPU 106)可访问的任何形式的计算机可读介 质来实现存储器存储设备112和114。例如,计算机可读介质可以包括计算机存储介质和通 信介质。 0040 计算机可读存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块 或其它数据的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。存储器 112、114是计算机可读存储介质的示例。可以给出的另外类型的计算机可读存储介质包括 但不限于:RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字多功能盘(DVD) 或其它光学存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或者。

31、可以用于存储所期望的 信息且可以由处理器106访问的任何其它介质。 0041 相对地,通信介质典型地在调制的数据信号中体现计算机可读指令、数据结构、程 序模块或其它数据,诸如载波或其它传输机制。 0042 如果包括的话,那么桥116提供总线、互连(诸如L1,L2)等之间的信号路径。在各 种实现中,桥116可包括一个或多个端口以适应互连等。 0043 在另一种实现中,拓扑100可以包括总线主设备118。在该实现中,总线主设备118 被布置为指引总线、互连等上的业务。例如,总线主设备118可以指引去往和来自输入/输 出组件(诸如一个或多个模块102)的数据或分组等。在各种实现中,总线主设备118通。

32、常 相对于输入/输出设备和/或模块102对数据、地址等的信号路径进行(动态地或初始地) 控制。在另一种实现中,基于位于诸如CPU 106等的别处的其它(例如,优先级、额外的等) 总线业务控制,总线主设备118可以是第二或后续的总线主设备。 0044 在替代的实现中,控制器拓扑100可以包括更少的组件、额外的组件或替代的组 件来执行所讨论的功能或者用于其它所期望的功能性。 0045 示例资源模块 图2是控制器拓扑100的一部分的框图,其示出了示例模块102以及相关联的组件的 细节。在一种实现中,模块102由一些功能块202组成。在图2的图示中,示出了模块102 和与其相关联的安全性套接字(也被称。

33、为包装器)104以及相关联的分配器204。应当理解 的是:分配器204可以如图所示与模块102相关联、或者可以与另一模块相关联、或者可以 是单独的元件。 0046 在一种实现中,如图2中所示,共享的资源模块102被划分成一些功能块202,这些 功能块202可指派为安全功能块或非安全功能块。在一种实现中,基于功能块202被应用 或例程请求的顺序,并且根据请求应用的安全性质或授权,将功能块202分配为安全或非 安全功能块202。 0047 例如,这由功能块202到特定的“世界”的指派来表示。在一段持续时间内,可以将 每个功能块202指派给通用世界402(即,“非安全世界”、“正常世界”等)或者指派。

34、给“安全 世界” 404(如图4B中所示)。指派给安全世界404意味着:当安全性监视器108断言(即, 说 明 书CN 104021037 A 6/11页 10 输出)安全模式信号时,被授权的应用、例程等可访问功能块202。换句话说,功能块202变 成了在特权操作模式操作的安全模式中(在一段持续时间内)可访问的专用资源。当安 全性监视器108解断言(即,停止)安全模式信号时,任何应用、例程等不可访问功能块202。 例如,当安全模式没有激活时,针对访问功能块202的尝试返回忙信号等。 0048 指派给通用(GP)世界402意味着:无论安全性监视器108是否断言安全模式信 号,任何应用、例程等可访。

35、问功能块202。访问指派给GP世界的功能块202的应用不能预期 它们的操作是安全的或者是与其它操作、例程等隔离的。 0049 此外,功能块202可以在一段持续时间内既不指派给GP世界402也不指派给安全 世界404。这意味着:在这段持续时间内,功能块202是释放的,并且可获得来在未来被指 派给请求应用(非安全或者安全应用)。 0050 例如,在一种实现中,控制器拓扑100可以包括分配器204,该分配器204被布置 为:将一个或多个资源模块102的多个功能块202中的一个或多个功能块动态地分配给请 求非安全应用,和/或将一个或多个资源模块102的多个功能块202中的一个或多个其它 功能块动态地分。

36、配给请求安全应用。在各种实现中,这可以包括来自一个或多个非安全应 用的一系列连续请求和/或来自一个或多个安全应用的一系列连续请求。依照这些请求, 分配器204被布置为:按照这些请求的顺序,将来自被请求模块102的功能块202分配给请 求应用。 0051 然而,在一种实现中,从非安全应用和安全应用背靠背地接收针对模块102的请 求。例如,在该实现中,分配器204可以从第一应用接收针对模块102的资源的第一请求, 其中,第一应用是安全应用或非安全应用。分配器204将模块102的多个功能块202的第 一功能块202分配给第一应用。随后,分配器204从第二应用接收针对同一模块102的资 源的第二请求,。

37、其中,第二应用与第一应用相反,例如,相应地是非安全应用或安全应用。相 应地,分配器204将同一模块102的第二功能块202分配给第二应用。在该实现中,第二应 用与第一应用访问模块102并发地访问模块102,然而,第一功能块202与第二功能块202 通信地隔离,从而使得没有数据泄漏或者对安全应用或分配给其的一个或多个功能块202 的安全性的破坏。 0052 因此,在各种实现中,模块102的一个或多个安全功能块202可以与模块102的一 个或多个非安全功能块202被非安全应用访问并发地被安全应用访问。这可以在没有硬件 重复的情况下实现,因为安全功能块202与非安全功能块202是通信地隔离的。 00。

38、53 此外,可以基于先请求而接收(first-request-received)将同一模块102的额外 的功能块202(当可用时)分配给第一或第二应用,或者分配给额外的应用,不管该额外的 应用安全还是不安全。在替代的实现中,模块102的功能块202的分配可以基于预定义的 优先级系统或者其它设立的规则(例如,考虑操作系统的规则等)而发生。 0054 在各种实现中,分配器204可以包括模块、组件、例程等,或者它们的组合。可以在 硬件、固件和/或软件中实现分配器204的部分。此外,在一些实现中,分配器204对特定模 块102来说可以是本地的(例如,分配器可以位于或至少部分地存储在模块102内),并且。

39、可 以各自地关联到特定的模块102,从而对该模块102的功能块进行分配。在替代的实现中, 分配器204可以更一般地被关联(例如,与一组模块102相关联、关联到互连(L1、L2)等), 并且被布置为对多个模块102的功能块202进行分配。在这样的替代实现中,分配器204 说 明 书CN 104021037 A 10 7/11页 11 的部分可以位于或远程存储到关联到分配器204的多个模块102中的一个或多个上。 0055 图2的图示示出了被划分成“n”个功能块202的从设备(模块)102。在各种实现 中,功能块202在模块102的能力之内可以是相同的,或者非常接近于相同的。在其它实现 中,可以基。

40、于请求应用的资源需要或者基于其它条件来对功能块202进行划分。 0056 在一种实现中,如图2中所示,安全性套接字(也被称为包装器)104关联到特定的 模块102。在替代的实现中,安全性套接字104关联到一个以上的模块102。在各种实现中, 使用安全性套接字104服务的功能块202的配置信息(例如,开始地址、大小、安全访问许可 等)对安全性套接字104进行编程。在一种实现中,安全性套接字104被布置为:确定安全 性套接字104关联到的一个或多个资源模块102的所分配的功能块202中的每一个功能块 的访问许可。例如,访问许可基于功能块202是分配给了非安全应用还是分配给了安全应 用。 0057 。

41、这在图2的图示中通过安全性套接字104图中的功能块202的列表(FB ID 1到 FB ID N)以及功能块202中的每一个功能块的相关联的所指派的世界(“指派的世界”)来 表示。如所提到的,每个功能块202的所指派的世界可以包括通用(GP)世界402、安全世界 404或者两者都不是(例如,可用于指派给世界)。 0058 在一种实现中,允许安全可执行指令使用配置信息对安全性套接字104进行编 程。如本文中所使用的,安全可执行指令包括安全(例如,被授权的、受信任的等)软件或代 码的指令。然而,非安全可执行指令,即非安全(例如,未授权的、不受信任的、未验证的等) 软件或代码的指令,不被允许对安全性。

42、套接字104进行编程。在一种实现中,安全和非安全 可执行指令包括固件,诸如与耦接到控制器100的硬件组件相关联的固件、存储在控制器 100的非易失性存储器存储设备中的固件等。 0059 在各种替代实现中,安全和非安全可执行指令包括任意计算机或处理器可执行指 令,无论它们存储在什么位置或者它们的来源为何(例如,存储器存储设备、嵌入式系统、外 围设备、网络、因特网、云存储,便携式/可移动存储设备或介质等)。例如,仅允许安全可执 行指令对安全性套接字104进行编程,而不管该安全可执行指令的来源。由于安全性套接 字104确定许可,因此这防止非安全源更改与功能块202或模块102相关联的许可。 0060。

43、 在一种实现中,拓扑100还可以包括互连寄存器,该互连寄存器被布置为:确定一 个或多个资源模块102的其它访问许可。例如,模块102可以基于该模块102的预期用途、 安装、资源类型等而具有特定许可(例如,模块102可以为了只读访问而已被硬连线等)。在 这种情况下,基于关于模块102的互连信息,试图进行与该模块的许可相反的操作(例如, 向只读资源模块102进行写操作)的任何应用在执行该操作时将是不成功的。 0061 示例实现 如上面所讨论的,安全性监视器108可以控制对安全中断的处理等。图3是根据一种 实现的、在功能块级上示出的示例中断传递机制300的框图。 0062 在该实现中,如图3中所示,。

44、诸如模块N的模块102被划分成数量为“n”的功能块 202。功能块202中的每一个功能块可以基于在该功能块202处发生的事件来生成中断。在 一种实现中,中断被分隔成一般中断和安全中断。例如,由一般例程使用的功能块202可以 生成一般中断,并且由安全例程使用的功能块202可以生成安全中断。 0063 在该实现中,如图3中所示,就像在任何一般控制器方案中一样,或者根据特定处 说 明 书CN 104021037 A 11 8/11页 12 理器(例如,CPU 106)的一般中断处理,将一般中断引导到常规中断分发302。例如,可以将 中断引导到CPU 106来进行处理。 0064 在该实现中,如图3中。

45、所示,安全中断被聚合到安全模式中断累积器304等。所聚 合的中断与一般中断分开处理,以便保护安全应用、例程、资源等的安全性。例如,如图3中 所示,可以将所累积的安全中断转发到安全性监视器106。如上面所讨论的,安全性监视器 108可以将所聚合的安全中断请求转发到CPU 106和/或中断控制器来进行对中断的处理。 0065 如所示出的,在一种实现中,模块102中的每一个功能块202可以包括一般中断路 径和安全中断路径,以便适应被分配为非安全功能块202或安全功能块202。相应地,在不 同的场景中可以对每个功能块202进行不同的分配(非安全的或安全的),这取决于在CPU 106上执行的一个或多个应。

46、用。 0066 图4A是示例中断处理方案的框图,该中断处理方案包括:使用专用GP中断控制器 (GP intC)406来处理GP世界402中断,并且使用专用安全中断控制器(SEC intC)408来 处理安全世界404中断。在该以及类似的方案中,资源的重复通常用于确保安全中断是隔 离处理的。 0067 相对地,图4B示出了上面参照图3概述的示例方案。例如,可以经由安全性监视 器108来处理安全世界404中断,包括对安全中断进行聚合,并且然后将所聚合的中断信号 转发到CPU 106等来进行处理。当该聚合的中断信号由CPU 106接收时,其可以进一步聚 合到(例如,来自GP应用的)通用中断。以这种方。

47、式,CPU 106以及控制器100和其通用组 件不知道所接收的中断的来源。相应地,安全中断和它们的一个或多个安全应用的安全性 质得到了保护。 0068 图5A是根据一种实现的示例安全性监视器108的框图。如图5A中所示,示例安 全性监视器108可以包括嗅探器组件502,嗅探器组件502被布置为:通过在CPU 106上执 行的应用,针对安全模式进入和退出序列(如图5B和图6-9中所示)来监视CPU 106。在额 外的或替代的实现中,安全性监视器108可以被布置为:经由CPU总线与CPU 106对接和/ 或使用总线接口单元(BIU)504等经由互连(诸如L1、L2)与控制器100对接。 0069 。

48、如上面所讨论的,在其它实现中,安全性监视器108可以被布置为:接收一个或多 个安全中断并且输出聚合的安全模式中断。 0070 图5B是根据一种实现示出非安全GP世界402与安全世界404之间的示例切换的 状态图。示出了各种触发和结果;其中,如所讨论的,通过安全性监视器108断言或者解断 言安全模式信号来促进从“世界”之一到“世界”中的另一个的切换。 0071 图5B的图示示出了来自安全世界404中的应用或例程的安全中断发起向安全模 式的切换,以便处理安全中断。例如,安全世界404中的应用可以在GP世界402激活时引 起中断,从而需要切换到安全世界404来进行安全中断的安全处理。这将导致安全性监。

49、视 器108断言安全模式信号。当在安全世界中时(例如,安全资源、模块102、存储器112等对 于被授权的应用和/或例程来说是可访问的)对安全中断进行处理。安全中断处理的完成 发起回到GP世界402的切换(包括从安全中断返回)。 0072 如图5B中所示,如上面所讨论的,在GP世界402中处理GP中断,并且在安全世界 404中处理安全中断。 0073 图5B的图示还示出了来自GP世界402中的应用或例程的安全服务的受控的调用 说 明 书CN 104021037 A 12 9/11页 13 发起向安全世界404的切换,以便处理请求。例如,这也将导致安全性监视器108断言安全 模式信号。安全服务的受控的调用可以包括:对来自模块102的资源的请求等。如上面所 讨论的,在安全世界404内对请求进行处理,包括提供所请求的一个或多个服务,诸如来自 一个或多个功能块202的模块102资源。安全服务的完成发起回到GP世界402的切换(包 括从受控的调用返回)。 0074 图6是根据一种实现示出非安全40。

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

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


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