《用于在同一个微控制器上管理安全和不安全应用的系统.pdf》由会员分享,可在线阅读,更多相关《用于在同一个微控制器上管理安全和不安全应用的系统.pdf(11页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201380016147.3 (22)申请日 2013.04.04 1253552 2012.04.18 FR G06F 21/55(2006.01) G06F 21/85(2006.01) G06F 12/14(2006.01) (71)申请人 施耐德电器工业公司 地址 法国吕埃 - 马迈松 (72)发明人 P. 贾劳迪亚斯 (74)专利代理机构 北京市柳沈律师事务所 11105 代理人 史新宏 (54) 发明名称 用于在同一个微控制器上管理安全和不安全 应用的系统 (57) 摘要 本发明的主题是一种电子微控制器系统, 包 括 : 几个。
2、处理器 (CPU1、 CPU2、 CPU3) ; 用于与至少 一个外围装置 (LCD、 USB、 PCIe、 MAC) 交换的至少 一个接口, 所述外围装置是所述电子微控制器系 统的用户主外围装置 ; 对于共享存储器空间的访 问(CT)的部件 ; 互连矩阵(M), 用于互连所述交换 接口、 所述处理器 (CPU1、 CPU2、 CPU3) 和所述对于 共享存储器空间的访问(CT)的部件。 所述电子微 控制器系统而且包括用于管理涉及被保证水平的 安全性和完整性的应用以及显示出未被保证水平 的安全性和完整性的应用的部件。根据本发明, 所述交换接口与位于所述用户主外围装置 (LCD、 USB、 PC。
3、Ie、 MAC) 和互连矩阵 (M) 之间的存储器的 安全隔离单元 (SMIC) 合作。 (30)优先权数据 (85)PCT国际申请进入国家阶段日 2014.09.23 (86)PCT国际申请的申请数据 PCT/EP2013/057116 2013.04.04 (87)PCT国际申请的公布数据 WO2013/156314 FR 2013.10.24 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书5页 附图3页 (10)申请公布号 CN 104380303 A (43)申请公布日 2015.02.25 CN 104380303 A 1/。
4、2 页 2 1. 一种电子微控制器系统, 包括电子微控制器, 并且包括 : - 至少两个处理器 (CPU1、 CPU2、 CPU3), 其中, 被称为安全处理器的一个处理器 (CPU3) 专用于涉及被保证水平的安全性和完整性的应用 ; - 至少一个交换接口, 用于与至少一个外围装置 (LCD、 USB、 PCIe、 MAC) 的交换, 所述外 围装置是所述电子微控制器系统的用户主外围装置 ; - 对于共享存储器空间的访问 (CT) 的部件 ; -互连矩阵(M), 用于互连所述交换接口、 所述处理器(CPU1、 CPU2、 CPU3)和所述对于共 享存储器空间的访问 (CT) 的部件, 所述电子。
5、微控制器系统而且包括用于管理涉及被保证水平的安全性和完整性的应用 以及显示出未被保证的安全性和完整性的应用的部件, 所述交换接口与位于所述用户主外围装置 (LCD、 USB、 PCIe、 MAC) 和所述互连矩阵 (M) 之间的用于所述存储器的安全隔离的单元 (SMIC) 合作, 并且, 所述微控制器系统进一步包 括几个用户主外围装置 (LCD、 USB、 PCIe、 MAC), 每一个用户主外围装置具有用于所述存储器 的安全隔离的单元 (SMIC), 用于所述存储器的安全隔离的每一个单元 (SMIC) 被所述安全 处理器 (CPU3) 管理。 2. 根据权利要求 1 所述的微控制器系统, 其。
6、特征在于, 每一个处理器 (CPU1、 CPU2、 CPU3) 配备了用于管理所述安全存储器的单元。 3. 根据权利要求 1 至 2 之一所述的微控制器系统, 其特征在于, 所述安全处理器 (CPU3) 没有任何操作系统, 其他一个或多个处理器 (CPU1、 CPU2) 显示出标准的操作系统 (OS1、 OS2)。 4. 根据权利要求 1 至 2 之一所述的微控制器系统, 其特征在于, 所述安全处理器 (CPU3) 包括特定操作系统 (OS3), 所述其他一个或多个处理器 (CPU1、 CPU2) 显示出标准操 作系统 (OS1、 OS2), 所述特定操作系统 (OS3) 与所述标准操作系统 。
7、(OS1、 OS2) 不同。 5. 根据权利要求 1 所述的微控制器系统, 包括三个处理器 (CPU1、 CPU2、 CPU3), 所述三 个处理器被以下述方式配置 : - 第一处理器 (CPU1) 意欲用于实现涉及未被保证水平的安全性和完整性的应用, 并且 依赖于第一标准操作系统 (OS1) ; - 第二处理器 (CPU2) 意欲用于实现涉及与通信和交换功能对应的、 未被保证水平的安 全性和完整性的应用, 并且依赖于可以与所述第一标准操作系统 (OS1) 相同的第二标准操 作系统 (OS2) ; - 第三处理器 (CPU3) 专用于实现涉及被保证水平的安全性和完整性的应用并且不依 赖于任何操。
8、作系统, 或者依赖于与所述第一和第二标准操作系统 (OS1, OS2) 不同的第三操 作系统 (OS3)。 6. 根据在前的权利要求之一所述的微控制器系统, 其中, 所述用户主外围装置 (LCD、 USB、 PCIe、 MAC) 寻求访问所述共享存储器空间的地址, 所述共享存储器空间显示出被保护 地址的范围, 其特征在于, 位于所述用户主外围装置 (LCD、 USB、 PCIe、 MAC) 和所述互连矩阵 (M) 之间的用于所述存储器的安全隔离的所述单元 (SMIC) 包括过滤器, 所述过滤器应用到 所述用户主外围装置 (LCD、 USB、 PCIe、 MAC) 寻求访问的所述存储器的所述地址。
9、, 以便实现 : 如果所述地址属于所述共享存储器的被保护地址的范围则禁止所述用户主外围装置 (LCD、 权 利 要 求 书 CN 104380303 A 2 2/2 页 3 USB、 PCIe、 MAC) 在所述地址处的写入的部件 ; 以及, 两个比较器 (COMP1, COMP2), 用于分别 在所述过滤器的滤波之前和之后验证所述地址, 以便检测与所述地址相关的可能已经产生 的可能错误。 权 利 要 求 书 CN 104380303 A 3 1/5 页 4 用于在同一个微控制器上管理安全和不安全应用的系统 技术领域 0001 本发明涉及一种用于在同一个微控制器系统上管理显示出高度的安全性和完。
10、整 性的应用以及不显示任何特定关键性的应用的系统。 0002 因此, 本发明涉及在关键应用和非关键应用的在同一个控制器上的同时操作的框 架内的、 从安全性和完整性的视点看关键的系统的管理, 该关键应用被称为 “安全” , 并且因 此显示出高的和被保证水平的完整性和安全性, 该非关键应用被称为 “不安全” , 并且显示 出未被保证水平的完整性和安全性。 背景技术 0003 在本发明中涉及的系统是显示出具有几个处理器或微处理器的架构的控制器, 并 且根据本发明的系统处理它们在对于与这些系统的被识别的认证的一般棘手问题相关联 的安全性的棘手问题敏感的环境中的使用, 以便保证安全性和完整性。SIL( 。
11、安全完整水 平 ) 标准用于例如评估可编程电子和电气系统的安全功能的可靠性, 并且给出这样的认 证。存在在 “欧洲功能安全标准” 中定义的、 范围从 1 至 4 的、 从最小安全至最大安全的各 种 SIL“整合的安全水平” 。 0004 当前, 为了考虑处理被称为 “安全” 的应用 ( 即, 涉及高和被保证水平的完整性和 安全性 ) 和 “不安全” 应用 ( 即, 不涉及高和被保证水平的完整性和安全性 ) 的共存的棘手 问题, 已知技术实质上涉及虚拟化和管理程序的概念。 0005 本领域内的技术人员在他的一般知识中具有这些技术的主要特性。简而言之, 可 以回想起, 虚拟化技术由安全软件机制构成。
12、, 其中, 显示出很高水平的可靠性的、 被例如管 理程序占用的管理层包括用于分离在同一个处理器上运行的独立软件平台的部件。 为了如 此进行, 所述管理程序基于每一个处理器一个存储器管理单元来管理一个或多个存储器管 理单元, 其通常被称为 MMU, 使得有可能在各个应用之间划分共享资源的使用, 特别是存储 器空间的使用。 0006 这样的管理程序可以显示独立地管理几个处理器的能力 ; 例如, 所述管理程序可 以具有重启与操作系统相关联的处理器而不重启其他处理器的能力。 0007 通过用于实现以上所述的虚拟化技术的技术的说明, 有可能参见文件 EP1067461A1。而且, 文件 US200811。
13、4906A1 和 US7389390B2 描述了具有几个处理器的系统, 该几个处理器配备了至少一个交互接口, 用于与至少一个外围装置交换。 0008 然而, 虽然它处理管理在同一个微控制器系统上的 “安全” 和 “不安全” 应用的共 存的一般棘手问题, 但是管理程序的实现方式显示特定的缺点。 首先, 管理程序的使用使得 系统的性能变差, 因为该工具消耗资源并且导致系统的变慢。这也可能对于与特定应用相 关联的 “实时” 约束的方面有害, 不论该应用是 “安全” 或 “不安全” 。而且, 管理程序必须本 身被认证, 例如 SIL, 就像执行 “安全” 应用的操作系统必须那样。而且, 管理主外围装置。
14、的 软件必须被划分以在管理程序的引领下执行关键部分, 并且, 以标准方式执行在操作系统 中的非关键部分。 因此, 必须将驱动器的部分整合到管理程序内, 并且因此同样形成认证的 说 明 书 CN 104380303 A 4 2/5 页 5 主题。 0009 而且, 今天, 该类型的文件在具有或没有认证的情况下显示出很高的获取成本。 0010 因此, 由本发明针对的技术问题可以被认为是对于系统的搜索, 使得有可能以降 低的成本, 因此通过规避涉及虚拟化和认证的管理程序的已知的但昂贵的技术来管理在同 一个微控制器系统上的 “安全” 和 “不安全” 应用的共存。本发明使得有可能以诱导的方式 来限制要求。
15、认证的代码的数量和复杂度。在其原理上, 它特别通过用于存储器的安全隔离 的、 优选地认证的单元的插入来以主外围装置的管理作为目标, 使得有可能保留在不需要 形成认证的主题的代码的部分中管理这些主外围装置的软件, 并且因此使用标准驱动器。 发明内容 0011 为了这个目的, 本发明的主题是一种电子微控制器系统, 包括 : 0012 至少两个处理器, 其中, 被称为安全处理器的一个处理器专用于涉及被保证水 平的安全性和完整性的应用 ; 0013 至少一个交换接口, 用于与至少一个外围装置的交换, 所述外围装置是所述电 子微控制器系统的用户主外围装置 ; 0014 对于共享存储器空间的访问的部件 ;。
16、 0015 互连矩阵, 用于互连所述交换接口、 所述处理器和所述对于共享存储器空间的 访问的部件。 0016 根据本发明, 所述电子微控制器系统而且包括用于管理涉及被保证水平的安全性 和完整性的应用以及显示出未被保证的安全性和完整性的应用的部件, 并且所述交换接口 与位于所述用户主外围装置和所述互连矩阵之间的用于存储器的安全隔离的单元合作。 而 且, 根据本发明的所述微控制器系统包括几个用户主外围装置, 每一个用户主外围装置具 有用于所述存储器的安全隔离的单元, 用于所述存储器的安全隔离的每一个单元被所述安 全处理器管理。 0017 有益地, 每一个处理器配备了用于管理所述安全存储器的单元。 。
17、0018 有益地, 所述安全处理器没有任何操作系统, 其他一个或多个处理器显示出标准 的操作系统。 0019 替代地, 所述安全处理器包括特定操作系统, 所述其他一个或多个处理器显示出 标准操作系统, 所述特定操作系统与所述标准操作系统不同。 0020 根据一个实施例, 所述微控制器系统包括三个处理器, 所述三个处理器被以下述 方式配置 : 0021 第一处理器意欲用于实现涉及未被保证水平的安全性和完整性的应用, 并且依 赖于第一标准操作系统 ; 0022 第二处理器意欲用于实现涉及与通信和交换功能对应的、 未被保证水平的安全 性和完整性的应用, 并且依赖于可以与所述第一标准操作系统相同的第二。
18、标准操作系统 ; 0023 第三处理器专用于实现涉及被保证水平的安全性和完整性的应用并且不依赖 于任何操作系统, 或者依赖于与所述第一和第二标准操作系统不同的第三操作系统。 0024 有益地, 在所述用户主外围装置寻求访问所述共享存储器空间的地址并且所述共 享存储器空间显示出被保护地址的范围的情况下, 位于所述用户主外围装置和所述互连矩 说 明 书 CN 104380303 A 5 3/5 页 6 阵之间的用于所述存储器的安全隔离的所述单元包括过滤器, 所述过滤器应用到所述用户 主外围装置寻求访问的所述存储器的所述地址, 以便实现 : 用于如果所述地址属于所述共 享存储器的被保护地址的范围则禁。
19、止所述用户主外围装置在所述地址处的写入的部件 ; 以 及, 两个比较器, 用于分别在所述过滤器的滤波之前和之后验证所述地址, 以便检测与所述 地址相关的可能已经产生的可能错误。 附图说明 0025 其他特性和优点在参考附图提供的随后的详细说明中将变得清楚, 附图表示 : 0026 图 1 : 用于表示根据本发明的系统的实现方式的第一功能图 ; 0027 图 2 : 在根据本发明的系统中的用于存储器的安全隔离的单元的示例性实施例 ; 0028 图 3 : 用于图示根据本发明的示例性系统的第二功能图。 具体实施方式 0029 参考图 1, 根据本发明的系统涉及 “安全” 应用和 “不安全” 应用的。
20、管理, 该 “安全” 应用即显示安全性、 保密性和完整性的水平, 其在同一时间被保证和高, 该 “不安全” 应用即 显示未被保证的安全水平。 0030 图 1 示意和部分地表示示例性电子微控制器系统, 其包括三个处理器, 所述处理 器通过对于所述处理器提供的主端口 M1、 M2、 M3 来访问微控制器系统的一组资源。图 1 的 示例包括三个处理器, 但是清楚的是, 本发明也适用于配备了几个处理器的任何电子微控 制器系统, 该几个处理器例如是两个处理器或超过三个处理器。微控制器系统的各个处理 器可以彼此不同。 另一方面, 可以将各个处理器整合到同一个电子组件内, 看作它们通过互 连矩阵链接在一起。
21、。 0031 微控制器系统而且经由端口C1、 C2、 C3通过存储器控制器CT来与共享存储器空间 交互, 并且通过从端口 S1、 S2、 S3 查看由没有微控制器的使用的主动权的从外围装置 SLA1、 SLA2、 SLA3 实现的功能。串行链路接口、 SDcard 接口、 CompactFlash 接口是从外围装置的 示例。 0032 最后, 微控制器系统被用户主外围装置调用, 该用户主外围装置通过专用接口链 接到它, 并且通过对于所述主外围装置提供的主端口 M4、 M5、 M6、 M7 而访问微控制器的资 源。 这些外围装置被称为 “用户主” , 因为它们在下述意义上是微控制器系统的主用户 。
22、: 与不 能直接访问共享存储器空间本身的从外围装置对比, 它们具有访问共享存储器空间本身的 能力。 0033 用户主外围装置具体地说是与标准对应的外围装置, 例如, LCD( 液晶显示器 ) 触 摸屏、 USB外围装置(通用串行总线, 来自与串行传输计算机总线相关的公知标准的名称)、 PCIe 或 PCI Express 扩展板 ( 外围组件互连快递, 来自允许扩展板到主板的连接的已知标 准的名称 ) 或用于连接到网络的 MAC 以太网板。 0034 互连矩阵 M 经由存储器控制器 CT、 诸如 LCD、 USB、 PCIe、 MAC 和它们的专用接口的 用户主外围装置以及从外围装置 SLA1。
23、、 SLA2、 SLA3 进行在处理器 CPU1、 CPU2、 CPU3、 共享存 储器空间之间的互连。 0035 根据本发明, 在图 1 中表示的微控制器系统进一步包括位于所述 LCD、 USB、 PCIe、 说 明 书 CN 104380303 A 6 4/5 页 7 MAC 用户主外围装置和互连矩阵 M 之间的、 用于存储器的安全隔离的单元 SMIC。实际上, 每 一个用户主外围装置经由不同的用于存储器的安全隔离的单元 SMIC 来连接到互连矩阵 M。 0036 在经由互连矩阵M向共享存储器空间的存储器控制器CT的它们的发送之前, 这些 用于存储器的安全隔离的单元 SMIC 有益地能够过。
24、滤对于由 LCD、 USB、 PCIe、 MAC 用户主外 围装置所需的共享存储器空间的访问。 0037 在图2中呈现了这样的用于存储器的安全隔离的单元SMIC的一个示例性实施例。 0038 因此, 图 2 呈现了位于诸如 MAC 以太网板的微控制器的用户主外围装置和互连矩 阵 M 之间的用于存储器的安全隔离的单元 SMIC 的架构。 0039 在这个示例中, 考虑源自主外围装置 MAC 的 32 比特的源地址总线 SAB。诸如比特 20-31 的高阶比特通过 12 比特的 “高” 地址总线 HAB 被传送到强制功能 Force, 而诸如比特 0 至 19 的低阶地址比特经由 20 比特的 “。
25、低” 地址总线 LAB 被传输, 而不过滤。包括 20 被过 滤比特和 12 未被过滤比特的 32 比特的集其后经由被过滤的地址总线 FAB 被引导到主端口 M7。强制功能 Force 能够强制主外围装置 MAC 被授权访问以便具体地写入新值的地址。第 一寄存器 Addressfi lter 规定强制地址向强制功能 Force 的值。 0040 在本发明的框架内, 分别在通过强制功能 Force 的强制之前和之后, 两个比较器 COMP1和COMP2测试主外围装置MAC试图访问以便具体地写入新值的地址和在接口M7上提 供的地址的值。该两个比较器 COMP1 和 COMP2 通过下述方式来验证要。
26、测试的地址确实对应 于被授权的地址 : 将诸如高阶比特 20-31 的高地址比特的值与例如 12 比特的大小的、 在第 二寄存器 AddressFilterTest 中存储的值作比较。如果比较器 COMP1 或 COMP2 检测到在所 比较地址之间的不等, 则引发寻址错误, 以便允许所述错误的检测。 0041 在本发明的框架内, 要过滤在该情况下要强制和比较的地址比特的范围 的大小可以是可变的。在第三寄存器 AddressFilterSize1 中保存的值因此规定要强制的 地址比特的数量, 而在第四寄存器 AddressFilterSize2 中的值规定要比较的比特的数量。 0042 在图 2。
27、 中呈现的这个用于存储器的安全隔离的单元 SMIC 能够满足由与工业设备 的安全相关的标准限定的认证标准, 因为在任何时刻检测到向强制装置内的错误的引入。 0043 连续地, 在所考虑的应用的执行期间, 强制功能 Force 预先阻止在归于主外围装 置 MAC 的地址的范围之外写入主外围装置 MAC 的任何风险。主外围装置 MACA 的缺陷不干 扰微控制器或其中它被整合的设备的项目的安全, 因为它不干扰任何被保护的数据 ; 而且, 需要检测到这样的缺陷。 在第一寄存器AddressFilter或第三寄存器AddressFiltersize1 中的强制功能 Force 中的缺陷可能干扰微控制器或。
28、其中它被整合的设备的项目的安全, 但 是用于存储器的安全隔离的单元 SMIC 将通过比较错误而检测到该缺陷。在该情况下, 微控 制器或其中它被整合的设备的项目将被置于安全位置中。 0044 比较装置, 即, 比较器 COMP1、 COMP2 和第四寄存器 AddressFiltersize2 按照定义 是诊断工具 ; 它们不能直接地破坏应用的数据在执行期间的完整性。在测试阶段期间 , 优 选地包括当开始其中整合了微控制器的设备的项目时的至少一个测试阶段期间, 可以暂停 该应用, 并且通过下述方式来测试其数据 : 引入错误, 例如, 向第一寄存器 AddressFilter 内引入与在第二寄存器。
29、 AddressFiltertest 的层处预期的不同的值。 0045 因此, 在图 2 中呈现的用于存储器的安全隔离的单元 SMIC 使得有可能实现本发 明。 说 明 书 CN 104380303 A 7 5/5 页 8 0046 图 3 呈现了本发明的一个优选实施例, 其中, 微控制器系统包括三个处理器。根据 图 3 的实施例, 根据本发明的微控制器系统因此以下述方式被配置 : 0047 - 第一处理器 CPU1 致力于 “不安全” 应用的实现, 并且依赖于第一标准操作系统 OS1 ; 0048 - 第二处理器 CPU2 致力于与通信和交换功能对应的 “不安全” 应用的实现, 该通信 和交。
30、换功能特别例如用于与连接到由微控制器系统管理的 USB 或以太网总线的设备的交 互, 并且第二处理器CPU2依赖于可以与所述第一标准操作系统OS1相同的第二标准操作系 统 OS2 ; 0049 - 第三处理器 CPU3( 所谓的安全处理器 ) 致力于 “安全” 应用的实现并且不依赖于 任何操作系统, 或者依赖于与所述第一和第二标准操作系统 OS1、 OS2 不同的第三操作系统 OS3。 0050 以优选的方式, 第三处理器有可能与两个前面的那些不同。事实上,“安全” 应用不 要求例如与 “不安全” 应用相同的计算能力。 0051 在操作系统 OS1、 OS2、 OS3 的每一个的层处, 分别提。
31、供了存储器管理单元 MMU, 其禁 止由 “不安全” 应用对于 “安全” 应用的访问。 0052 以有益的方式, 仅需要从安全的视点认证这些存储器管理单元 MMU, 以便获得系统 整体的认证。 0053 有益地, 为了基于这样的微控制器系统来获得用于设备的工业项目的功能安全性 认证, 这些存储器管理单元的认证可能证明是对于在应用之间的存储器隔离的标准要完成 的充分条件。 0054 而且, 当通过所谓的安全处理器 (CPU3) 的 “安全” 应用来管理每一个用户主外围 装置 (LCD、 USB、 PCIe、 MAC) 的用于存储器的安全隔离的单元 (SMIC) 时, 这使得有益地有可 能免除用户。
32、主外围装置的软件驱动器的认证。事实上, 即使外围装置的软件驱动器本身未 被认证, 由 “安全” 应用对于用于存储器的安全隔离的单元的管理使得有可能避免从这些软 件驱动器产生的可能不良的不合时宜的存储器管理。 0055 总之, 根据本发明的系统包括用于保证在同一个微控制器上的 “安全” 和 “不安全” 应用的安全管理的部件, 具体地说是通过明智地位于所述微控制器的用户主外围装置和它 包括的互连矩阵之间的用于存储器的安全隔离的单元的实现。 说 明 书 CN 104380303 A 8 1/3 页 9 图 1 说 明 书 附 图 CN 104380303 A 9 2/3 页 10 图 2 说 明 书 附 图 CN 104380303 A 10 3/3 页 11 图 3 说 明 书 附 图 CN 104380303 A 11 。