内存隔离装置以及基于内存隔离装置的多核计算系统制造方法及图纸

技术编号:38651243 阅读:28 留言:0更新日期:2023-09-02 22:40
本发明专利技术公开了内存隔离装置以及基于内存隔离装置的多核计算系统,属于网络安全技术领域,本发明专利技术提供的基于内存隔离装置的多核计算系统,内存隔离装置设置在处理器核CPU与系统内存之间,用于对处理器核CPU发出的访存交易进行检测;内存隔离装置外部与处理器核CPU、内存控制器DDR和上电配置模块POC连接。内存隔离装置包括控制器、匹配矩阵模块和静态地址列表。该内存隔离装置集成方式简单,对原有的系统架构无需太多改动;通过简单巧妙的方法对内存进行分区和隔离,并通过硬件信号控制隔离的区域和隔离的使能,使得内存隔离不受处理器体系架构和操作系统的漏洞影响,也不依赖于任何软件建立的可信链。软件建立的可信链。软件建立的可信链。

【技术实现步骤摘要】
内存隔离装置以及基于内存隔离装置的多核计算系统


[0001]本专利技术涉及网络安全
,具体涉及一种内存隔离装置以及基于内存隔离装置的多核计算系统。

技术介绍

[0002]在多核计算系统中,当某些处理器核心因处理安全事务需要保护其私有数据时,需要通过某种方式对这些处理器核心的内存数据进行隔离。目前比较通用的内存隔离的方法主要基于ARM公司的TrustZone技术。
[0003]TrustZone技术将硬件和软件资源划分为安全(Secure World)和非安全(Normal World)两个世界。多核系统中的每个物理处理器核被虚拟为一个安全核(Secure)和一个非安全核(Non

Secure),安全核运行安全世界的代码,非安全核运行除安全世界外的其它代码。两个虚拟的核以基于时间片的方式运行,根据需要实时占用物理核,并在操作系统的控制下由软件动态配置通过一个名为Monitor Mode的模式进行安全世界和非安全世界的转换。TrustZone地址空间控制器TZASC(TrustZone Address Space Controller)将内存分成多个区域,每个区域可以单独配置为安全或非安全区域,并由处理器核所处的模式来控制内存区域的访问。
[0004]对于多核系统,特别是异构多核系统,基于上述TrustZone技术的通用内存隔离方法存在以下问题:
[0005]1)无法直接应用于异构多核系统:TrustZone技术的安全世界和非安全世界切换由操作系统来控制,由于异构多核系统中各处理器核心的架构不同,无法运行统一的操作系统,因此无法应用TrustZone技术。
[0006]2)无法直接应用于非ARM系统:TrustZone地址空间控制器TZASC是基于AMBA3 AXI的总线组件,非ARM系统需要根据TrustZone和TZASC的原理对整个软硬件系统进行改造。
[0007]3)可能由于处理器体系架构和操作系统的漏洞遭受攻击:TrustZone技术的的安全世界和非安全世界共享同一套物理TLB和Cache,可能由于处理器体系架构和操作系统的漏洞遭受攻击,如熔断漏洞利用CPU乱序执行技术的设计缺陷,破坏了内存隔离机制,使恶意程序可越权访问操作系统内存数据,造成敏感信息泄露。
[0008]4)依赖于启动过程中建立的可信链:由于安全世界和非安全世界的转换由软件动态控制,TrustZone技术依赖于在系统启动之初先从安全世界开始执行,并从bootloader到OS进行逐级验证建立信任链,信任链中的任一个环节被破坏,都会导致整个系统不安全。
[0009]因此开发一种面向多核(包括异构多核)系统的隔离装置,实现在不改变系统本身的整体软硬件设计的情况下,实现内存隔离且不受处理器体系架构和操作系统的漏洞影响,也不依赖于任何软件建立的可信链,这是目前亟待解决的问题。

技术实现思路

[0010]有鉴于此,本专利技术提供了一种内存隔离装置以及基于内存隔离装置的多核计算系
统,本专利技术面向多核系统,能够在不改变系统本身的整体软硬件设计的情况下,通过简单的方法对内存进行分区和隔离,并通过硬件信号控制隔离的区域和隔离的使能,使得内存隔离不受处理器体系架构和操作系统的漏洞影响,也不依赖于任何软件建立的可信链。
[0011]为达到上述目的,本专利技术的技术方案为:内存隔离装置设置在处理器核CPU与系统内存之间,用于对处理器核CPU发出的访存交易进行检测;内存隔离装置外部与处理器核CPU、内存控制器DDR和上电配置模块POC连接。
[0012]内存隔离装置包括控制器、匹配矩阵模块和静态地址列表。
[0013]控制器接收处理器核CPU发出访存交易,对于其访问的地址信号A进行内部路由,控制器由上电配置模块进行工作模式的设定,在设定的工作模式下,获取来自匹配矩阵模块的匹配检测结果信号,判断地址信号A若是被隔离的地址,则Tranif1不将地址信号A发送到内存控制器DDR,并输出中断反馈给CPU,表明本次访存交易因地址被隔离而无法访问,如果不是被隔离的地址,则Tranif1将地址信号A发送到内存控制器DDR。
[0014]静态地址列表用于存储隔离内存空间的地址列表,静态地址列表中包含多个地址段,每一地址段对应不同外设的地址空间,每一地址段对应接入到匹配矩阵中的一个仲裁单元。
[0015]匹配矩阵模块内部集成多组用于地址匹配检测的仲裁单元,匹配矩阵中的仲裁单元接收CPU发出的地址信号A以及上电配置模块POC发出内存隔离区域配置信号,完成对地址的匹配检测和上电配置模块POC发起的地址标记的选择和检测,并向控制器反馈匹配检测结果信号,用于反馈地址信号A是否被隔离。
[0016]进一步地,控制器内部集成传输门控制单元Tranif1,第一匹配反馈器MUX1、反相器INV以及或门OR。
[0017]处理器核CPU发出访存交易的地址信号A,该地址信号A被传输门控制单元Tranif1的D输入端接收;Tranif1的CTL控制端连接OR或门的输出;Tranif1的输出端连接内存控制器DDR;OR或门的输入包括来自上电配置模块POC的隔离开关信号以及来自匹配矩阵模块的匹配检测结果信号的反相信号;如果隔离开关信号为1,则设定控制器的工作模式为bypass模式,如果隔离开关信号为0,则设定控制器的工作模式为隔离工作模式。
[0018]在bypass工作模式下,Tranif1接收到地址信号A直接透传给内存控制器DDR。
[0019]在隔离工作模式下,Tranif1接收到地址信号A,对地址信号A结合CTL控制端信号,经过逻辑判断之后,判断地址信号A若是被隔离的地址,则Tranif1不将地址信号A发送到内存控制器DDR,并输出中断反馈给CPU,表明本次访存交易因地址被隔离而无法访问,如果不是被隔离的地址,则Tranif1将地址信号A发送到内存控制器DDR。
[0020]第一匹配反馈器MUX1的输入来自匹配矩阵模块的匹配检测结果信号,第一匹配反馈器MUX1的输出反馈至处理器核CPU,用于反馈地址信号A是否被隔离。
[0021]进一步地,每个仲裁单元内部集成第一比较器CMP1、第二比较器CMP2和第二匹配反馈器MUX2;
[0022]第二匹配反馈器MUX2分别以来自电配置模块POC的内存隔离区域配置信号和来自静态地址列表中的地址段为输入,第二匹配反馈器MUX2的输出接入到第二CMP的一个输入端,用于反馈被隔离的地址;
[0023]第一CMP的两个输入分别为CPU发出的访存交易的地址信号A以及静态地址列表中
的一个地址段,第一CMP的输出判断地址信号A是否在该地址段内,若是则输出该地址信号A,否则输出0;第一CMP的输出接入到第二CMP的另一输入端;
[0024]第二CMP判断地址信号A是否被隔离,若是则输出高电平信号,否则直接输出地址信号A,第二CMP的输出即为匹配检测结果信号,匹配检测结果信号一方面送入第一匹配反馈器MUX1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.内存隔离装置,其特征在于,所述内存隔离装置设置在处理器核CPU与系统内存之间,用于对处理器核CPU发出的访存交易进行检测;所述内存隔离装置外部与处理器核CPU、内存控制器DDR和上电配置模块POC连接;所述内存隔离装置包括控制器、匹配矩阵模块和静态地址列表;所述控制器接收处理器核CPU发出访存交易,对于其访问的地址信号A进行内部路由,控制器由上电配置模块进行工作模式的设定,在设定的工作模式下,获取来自匹配矩阵模块的匹配检测结果信号,判断地址信号A若是被隔离的地址,则Tranif1不将地址信号A发送到内存控制器DDR,并输出中断反馈给CPU,表明本次访存交易因地址被隔离而无法访问,如果不是被隔离的地址,则Tranif1将地址信号A发送到内存控制器DDR;所述静态地址列表用于存储隔离内存空间的地址列表,静态地址列表中包含多个地址段,每一地址段对应不同外设的地址空间,每一地址段对应接入到匹配矩阵中的一个仲裁单元;所述匹配矩阵模块内部集成多组用于地址匹配检测的仲裁单元,匹配矩阵中的仲裁单元接收CPU发出的地址信号A以及上电配置模块POC发出内存隔离区域配置信号,完成对地址的匹配检测和上电配置模块POC发起的地址标记的选择和检测,并向控制器反馈匹配检测结果信号,用于反馈地址信号A是否被隔离。2.如权利要求1所述的内存隔离装置,其特征在于,所述控制器内部集成传输门控制单元Tranif1,第一匹配反馈器MUX1、反相器INV以及或门OR;所述处理器核CPU发出访存交易的地址信号A,该地址信号A被传输门控制单元Tranif1的D输入端接收;Tranif1的CTL控制端连接OR或门的输出;Tranif1的输出端连接内存控制器DDR;OR或门的输入包括来自上电配置模块POC的隔离开关信号以及来自匹配矩阵模块的匹配检测结果信号的反相信号;如果隔离开关信号为1,则设定控制器的工作模式为bypass模式,如果隔离开关信号为0,则设定控制器的工作模式为隔离工作模式;在bypass工作模式下,Tranif1接收到地址信号A直接透传给内存控制器DDR;在隔离工作模式下,Tranif1接收到地址信号A,对地址信号A结合CTL控制端信号,经过逻辑判断之后,判断地址信号A若是被隔离的地址,则Tranif1不将地址信号A发送到内存控制器DDR,并输出中断反馈给CPU,表明本次访存交易因地址被隔离而无法访问,如果不是被隔离的地址,则Tranif1将地址信号A发送到内存控制器DDR;所述第一匹配反馈器MUX1的输入来自匹配矩阵模块的匹配检测结果信号,第一匹配反馈...

【专利技术属性】
技术研发人员:程旭韩晓磊
申请(专利权)人:北京北大众志微系统科技有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1