CN113157509A - 一种内存安全性检测方法和片上系统 - Google Patents
一种内存安全性检测方法和片上系统 Download PDFInfo
- Publication number
- CN113157509A CN113157509A CN202110448527.0A CN202110448527A CN113157509A CN 113157509 A CN113157509 A CN 113157509A CN 202110448527 A CN202110448527 A CN 202110448527A CN 113157509 A CN113157509 A CN 113157509A
- Authority
- CN
- China
- Prior art keywords
- memory
- detected
- detection
- fault
- attack
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 344
- 238000000034 method Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000007123 defense Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种内存安全性检测方法和片上系统,片上系统包括安全策略控制器和待检测内存,安全策略控制器包括检测模块。安全策略控制器接收检测信号,检测信号携带待检测内存的待检测故障和/或攻击标识,根据待检测故障和/或攻击标识从片外存储器获得与待检测故障和/或攻击标识对应的检测算法,片外存储器存储多种故障和/或攻击标识对应的检测算法,根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障和/或攻击。实现对待检测内存相应故障和/或攻击的安全性检测,无需在系统中同时部署多个复杂的检测电路,根据不同检测信号调用相应检测算法配置相应检测电路即可,降低功耗,提高效率。
Description
技术领域
本申请涉及硬件安全技术领域,特别涉及一种内存安全性检测方法和片上系统。
背景技术
随着物联网技术飞速发展,物联网设备被广泛使用。用户使用物联网设备,使生活变得方便快捷,物联网设备依托用户,在收集用户个人信息的同时为用户提供各类服务。
片上系统是物联网设备的硬件基础,而内存作为片上系统的重要组成部分,若内存出现故障或遭到硬件木马等攻击,则会导致物联网设备的功能改变,或泄露用户的个人信息,甚至给用户带来损失。
为了保证内存的安全,需要进行内存安全性检测以及时发现故障并告警。而传统的内存检测方法大都无法根据不同的故障和/或攻击进行灵活更新,只能对某一类故障或者攻击进行检测,若要部署针对多种内存故障的检测方案,则会增加系统的开销,功耗较多,且针对多种内存故障和/或攻击检测的同时部署的多个检测电路复杂不易于管理。
因此,如何对多种内存故障和/或攻击进行检测,且功耗较低,是本领域亟待解决的技术问题。
发明内容
为了解决以上技术问题,本申请提供一种内存安全性检测方法和片上系统,能够对多种内存故障进行检测,且功耗较低。
第一方面,本申请实施例提供了一种内存安全性检测方法,应用于片上系统,所述片上系统与片外存储器连接;所述片上系统包括安全策略控制器和待检测内存;所述安全策略控制器用于对所述待检测内存进行故障和/或攻击检测,所述安全策略控制器包括检测模块;该方法包括:
接收所述片上系统的外部发送的检测信号,所述检测信号携带待检测内存的待检测故障和/或攻击标识;
根据所述待检测故障和/或攻击标识从所述片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法;所述片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法;
根据获得的检测算法对所述检测模块进行配置获得检测电路,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
可选的,所述根据获得的检测算法对所述检测模块进行配置获得检测电路,包括:
将所述检测算法分解为电路元件算法和连接关系算法;
根据所述电路元件算法配置得到对应的电路元件;
根据所述连接关系算法将所述电路元件进行连接获得所述检测电路。
可选的,所述检测算法包括检测电路比特流;所述根据所述待检测故障和/或攻击标识从所述片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法,包括:
根据所述待检测故障和/或攻击标识从所述片外存储器中获得所述待检测故障和/或攻击标识对应的检测电路比特流;所述检测电路比特流包括电路元件比特流和连接关系比特流;
所述电路元件比特流用于配置得到对应的所述电路元件;所述连接关系比特流用于将所述电路元件进行连接获得所述检测电路;
所述片外存储器中存储有多种故障和/或攻击标识分别对应的检测电路比特流,不同的故障和/或攻击标识对应不同的检测电路比特流。
可选的,所述片上系统还包括内存包装器电路;在所述根据获得的检测算法对所述检测模块进行配置获得检测电路之后,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击标识之前,所述方法还包括:
将所述待检测内存的地址转存进所述内存包装器电路的地址寄存器中,待所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击后,再将所述待检测内存的地址转存回所述待检测内存;
将所述待检测内存的数据转存进所述内存包装器电路的数据寄存器中,待所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击后,再将所述待检测内存的数据转存回所述待检测内存。
可选的,在所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击的过程中,若出现系统访问内存,所述方法还包括:
当所述系统访问的内存地址是所述待检测内存的地址时,则将所述系统访问输入所述地址寄存器和所述数据寄存器中以完成所述系统访问内存;
当所述系统访问的内存地址不是所述待检测内存的地址时,则暂停所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击,待所述系统访问结束后,再继续所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
第二方面,本申请实施例提供了一种用于内存安全性检测的片上系统,所述片外系统与片外存储器连接,所述片上系统包括:待检测内存和安全策略控制器;所述安全策略控制器用于对所述待检测内存进行故障和/或攻击检测,所述安全策略控制器包括检测模块;
所述安全策略控制器和所述待检测内存连接;
所述安全策略控制器,用于接收所述片上系统的外部发送的检测信号,所述检测信号携带所述待检测内存的待检测故障和/或攻击标识,根据所述待检测故障和/或攻击标识从片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法,所述片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对所述检测模块进行配置获得检测电路,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
可选的,所述安全策略控制器,包括:内部配置访问端口;
所述内部配置访问端口用于将所述检测算法分解为电路元件算法和连接关系算法,根据所述电路元件算法配置得到对应的电路元件,根据所述连接关系算法将所述电路元件进行连接获得所述检测电路。
可选的,所述安全策略控制器,包括:部分可重构控制器;所述检测算法包括检测电路比特流;
所述部分可重构控制器与所述内部配置访问端口连接;
所述部分可重构控制器用于根据所述待检测故障和/或攻击标识从所述片外存储器中获得所述待检测故障和/或攻击标识对应的检测电路比特流,所述检测电路比特流包括电路元件比特流和连接关系比特流;
所述电路元件比特流用于配置得到对应的所述电路元件;所述连接关系比特流用于将所述电路元件进行连接获得所述检测电路;
所述片外存储器中存储有多种故障和/或攻击标识分别对应的检测电路比特流,不同的故障和/或攻击标识对应不同的检测电路比特流。
可选的,所述片上系统还包括:内存包装器电路;所述内存包装器电路包括地址寄存器和数据寄存器;
所述内存包装器电路与所述安全策略控制器连接;
所述地址寄存器用于存储所述待检测内存的地址;
所述数据寄存器用于存储所述待检测内存的数据。
可选的,所述安全策略控制器,包括:检测流程控制器;
所述检测流程控制器用于当出现系统访问内存时,当所述系统访问的内存地址是所述待检测内存的地址时,则将所述系统访问输入所述地址寄存器和所述数据寄存器中以完成所述系统访问内存;
所述检测流程控制器还用于当出现系统访问内存时,当所述系统访问的内存地址不是所述待检测内存的地址时,则暂停利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击,待所述系统访问结束后,再继续利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
与现有技术相比,本申请至少具有以下优点:
本申请提供了一种内存安全性检测方法和片上系统,片上系统包括安全策略控制器和待检测内存,安全策略控制器用于对待检测内存进行故障检测,安全策略控制器包括检测模块。安全策略控制器可以接收片上系统的外部发送的检测信号,检测信号携带待检测内存的待检测故障和/或攻击标识,根据待检测故障和/或攻击标识从片外存储器中获得与待检测故障和/或攻击标识对应的检测算法,片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障和/或攻击标识。实现了对待检测内存相应故障和/或攻击标识的安全性检测,这样无需在系统中同时部署多种内存故障的检测方案,无需同时部署多个复杂的检测电路,可以通过在线配置的方式进行替换,相当于在一个资源空间内可实现不同的功能,根据检测信号的不同从片外存储器调用相应的检测算法配置相应的检测电路即可,由此降低了功耗,而配置不同的检测方法,则提高了检测覆盖率,其中具体的检测碰撞机制,提高了检测效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出了本申请实施例提供的一种内存安全性检测方法的流程图;
图2示出了本申请实施例提供的一种片上系统的框架图;
图2A示出了本申请实施例提供的一种安全策略控制器的内部结构设计图;
图3示出了本申请实施例提供的又一种片上系统的框架图;
图4示出了本申请实施例提供的另一种片上系统的框架图;
图4A示出了本申请实施例提供的又一种安全策略控制器的内部结构设计图;
图5示出了本申请实施例提供的又一种片上系统的框架图;
图5A示出了本申请实施例提供的一种内存包装器电路的内部结构图;
图6示出了本申请实施例提供的一种完整的内存安全性检测的流程图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,但是本申请还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施例的限制。
正如背景技术中的描述,随着物联网技术飞速发展,物联网设备被广泛使用。用户使用物联网设备,使生活变得方便快捷,物联网设备依托用户,在收集用户个人信息的同时为用户提供各类服务。
片上系统是物联网设备的硬件基础,而内存作为片上系统的重要组成部分,若内存出现故障或遭到硬件木马等攻击,则会导致物联网设备的功能改变,或泄露用户的个人信息,甚至给用户带来损失。
为了保证内存的安全,需要进行内存安全性检测以及时发现故障并告警。而传统的内存检测方法大都无法根据不同的故障和/或攻击进行灵活更新,只能对某一类故障或者攻击进行检测,若要部署针对多种内存故障的检测方案,则会增加系统的开销,功耗较多,且针对多种内存故障检测的同时部署的多个检测电路复杂不易于管理。
因此,如何对多种内存故障和/或攻击进行检测,且功耗较低,是本领域亟待解决的技术问题。
基于此,本申请提供了一种内存安全性检测方法和片上系统,片上系统包括安全策略控制器和待检测内存,安全策略控制器用于对待检测内存进行故障检测,安全策略控制器包括检测模块。安全策略控制器可以接收片上系统的外部发送的检测信号,检测信号携带待检测内存的待检测故障和/或攻击标识,根据待检测故障和/或攻击标识从片外存储器中获得与待检测故障和/或攻击标识对应的检测算法,片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障和/或攻击标识。实现了对待检测内存相应故障和/或攻击标识的安全性检测,这样无需在系统中同时部署多种内存故障的检测方案,无需同时部署多个复杂的检测电路,可以通过在线配置的方式进行替换,相当于在一个资源空间内可实现不同的功能,根据检测信号的不同从片外存储器调用相应的检测算法配置相应的检测电路即可,由此降低了功耗,而配置不同的检测方法,则提高了检测覆盖率,其中具体的检测碰撞机制,提高了检测效率。
为了更好地理解本申请的技术方案和技术效果,以下将结合附图对具体的实施例进行详细的描述。
示例性方法
参考图1所示,为本申请实施例提供的一种内存安全性检测方法的流程图,包括以下步骤:
S01:接收所述片上系统的外部发送的检测信号,所述检测信号携带待检测内存的待检测故障和/或攻击标识。
参考图2所示,为本申请实施例提供的片上系统的框架图,本申请实施例提供的一种内存安全性检测方法应用于片上系统201中,片上系统指的是在单个芯片上集成的一个完整的系统,片上系统201与片外存储器202连接,片上系统201可以包括安全策略控制器203和待检测内存204,安全策略控制器203用于对待检测内存进行故障和/或攻击检测,安全策略控制器包括检测模块205。
本申请实施例提供的的安全策略控制器203可以接收片上系统201的外部发送的检测信号,检测信号中可以携带待检测内存的待检测故障和/或攻击标识。需要说明的是,本申请实施例对待检测故障的和/或攻击标识不作具体限定,例如,检测故障标识例如可以为地址译码故障(Address Decoder Fault,AF)、固定型故障(Stuck-at Fault,SAF)、转换故障(Transition Fault,TF)和/或耦合故障(Coupling Fault,CF)等。
可选的,参见图2A所示,安全策略控制器203还可以包括部分可重构控制器2031,由部分可重构控制器2031接收检测信号,部分可重构控制器2031还可以将检测信号发送至片外存储器202。
S02:根据所述待检测故障和/或攻击标识从所述片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法;所述片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法;
参考图3所示,当安全策略控制器203接收到片上系统201的外部发来的检测信号后,由于检测信号携带待检测内存的待检测故障和/或攻击标识,可以根据待检测故障和/或攻击标识从片外存储器202中获得与待检测故障和/或攻击标识对应的检测算法,其中,片外存储器202中存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应着不同的检测算法。
可选的,参见图2A所示,安全策略控制器203中的部分可重构控制器2031还可以接收片外存储器202发来的与待检测故障和/或攻击标识对应的检测算法。
可选的,安全策略控制器203可以将检测信号发送到通信总线206上,通信总线206再将检测信号转发到中央处理器207上,再由中央处理器207将检测信号转发到片外存储器202上,当片外存储器202接收到检测信号后,根据检测信号携带的待检测故障和/或攻击标识,将其中存储的对应的检测算法,再通过中央处理器207和通信总线206返回到安全策略控制器203中。
可选的,检测算法可以包括检测电路比特流,可以根据待检测故障和/或攻击标识从片外存储器202中获得与待检测故障和/或攻击标识对应的检测电路比特流,检测电路比特流可以包括电路元件比特流和连接关系比特流。其中,检测电路比特流包括电路元件比特流和连接关系比特流,电路元件比特流用于配置得到对应的电路元件,连接关系比特流用于将电路元件进行连接获得检测电路。
S03:根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障和/或攻击。
在本申请实施例中,参考图4所示,当安全策略控制器203获得检测算法后,可以根据检测算法对检测模块205进行配置获得检测电路,利用检测电路判断待检测内存204是否出现待检测故障和/或攻击。
可选的,参见图4A所示,安全策略控制器203中的部分可重构控制器2031接收到片外存储器202发来的检测算法后,可以将检测算法传输给内部配置访问端口2032,内部配置访问端口2032可以根据检测算法对检测模块205进行配置得到检测电路,检测模块205,参见图4A,即可重构分区2033,即内部配置访问端口2032可以根据检测算法对可重构分区2033进行配置得到检测电路,可重构分区2033利用检测电路判断待检测内存是否出现待检测故障和/或攻击,即配置完成检测电路后,对待检测内存204进行故障和攻击检测。
可选的,安全策略控制器203中还可以包括检测流程控制器2034,可以根据当前检测状态和系统状态,输出检测控制信号,协助可重构分区2033在尽可能不降低系统性能的前提下,完成检测任务。
可选的,安全策略控制器203中还可以包括错误记录寄存器2035,可以负责记录在对待检测内存204进行检测的过程中发现的故障和攻击等,并可以通过通信总线206将发现的故障和攻击等通过通信总线206通知中央处理器207,以便使中央处理器207采取相应的防御处理。
可选的,根据获得的检测算法对检测模块进行配置获得检测电路,具体的,可以将检测算法分解为电路元件算法和连接关系算法,根据电路元件算法配置得到对应的电路元件,根据连接关系算法将电路元件进行连接获得检测电路。
此外,在本申请实施例中,可选的,参见图5所示,片上系统201还可以包括内存包装器电路208,内存包装器电路208包裹在待检测内存204外部,负责接收来自安全策略控制器203的控制信号、安全策略控制器203的读写检测信息和通信总线206的读写信息,并根据系统的检测和运行状态,选取安全策略控制器或总线的读写信息,输入到包裹着的待检测内存204中。
具体的,内存包装器电路208中可以包括内存包装器控制电路2081,可以接收来自安全策略控制器203的控制信号,根据输入的控制信号和内部状态,输出相应的路由选通信号,内存包装器控制电路2081中可以包括地址寄存器20811,可以存储待检测内存的地址信息;内存包装器电路208中还可以包括访存选通模块2082,可以接收来自内存包装器控制电路2081的路由选通信号,根据输入的选通信号,选择通信总线或安全策略控制器的访存信息进入内存,访存选通模块2082中可以包括数据寄存器20822,负责存放备份出来的待检测内存中的数据。
由于在对待检测内存进行检测时,一般采用March算法对待检测内存进行检测,具体的,MarchC-算法时间复杂度适中,且可检测多种和/或攻击,因此,可选的,本申请实施例可以采用MarchC-算法,MarchC-算法通过向不同的内存单元中写入不同的值,并把它们读取出来与期望值比对,以此判断内存单元中是否存在故障和/或攻击,即在对待检测内存进行检测的过程中,会改变待检测内存中的值。需要说明的是,本申请实施例在此不对内存检测算法作具体限定,本领域技术人员可根据实际情况进行设定。
因此,在根据获得的检测算法对检测模块205进行配置获得检测电路之后,利用检测电路判断待检测内存是否出现待检测故障和/或攻击之前,参见图5A所示,还可以将待检测内存204的地址转存进内存包装器电路208的地址寄存器20811中,待利用检测电路判断待检测内存是否出现所述待检测故障和/或攻击后,再将待检测内存204的地址转存回待检测内存204;将待检测内存204的数据转存进内存包装器电路208的数据寄存器20822中,待利用检测电路判断待检测内存204是否出现待检测故障和/或攻击后,再将待检测内存的数据转存回待检测内存204。
可选的,当在利用检测电路判断待检测内存204是否出现待检测故障和/或攻击的过程中,若出现系统访问内存,首先可以判断系统访问的内存的地址。当系统访问的内存地址是待检测内存204的地址时,则将系统访问输入地址寄存器20811和数据寄存器20822中以完成系统访问内存;当系统访问的内存地址不是待检测内存的地址时,则暂停利用检测电路判断待检测内存204是否出现待检测故障和/或攻击,待系统访问结束后,再继续利用检测电路判断待检测内存204是否出现待检测故障和/或攻击。从而可以防止待检测内存中检测前的原数据丢失。
可选的,在本申请实施例中,当检测到待检测内存204存在待检测的故障和/或攻击时,可以进行告警,需要说明的是,本申请实施例在此不对告警的具体方式作具体限定,本领域技术人员可以根据实际情况自行设定。
可选的,当片上系统在预设时段内没有收到片外发来的检测信号时,可以自动进行内存安全性检测,从而可以及时发现故障,通知中央处理器并采取相应的防御措施,确保内存的安全运行。
可选的,在本申请实施例中,进行一次完整的内存检测流程的过程可以参见图6所示:
(1)空闲状态IDLE:内存包装器电路中所包裹的待检测内存响应通信总线发来的系统访问,内存包装器控制电路选通总线信号到待检测内存的通路,系统执行正常操作;
(2)备份状态Copy_MEM:安全策略控制器发送请求检测信号,状态机进入Copy_MEM状态,将待检测内存的地址信息写入地址寄存器中,允许安全策略控制器读取待检测内存中的值;
(3)写数据状态Write_Reg:待检测内存中的数据被成功读出后,安全策略控制器发送请求转存信号,状态机进入Write_Reg状态,允许安全策略控制器将读出的待检测内存单元中的数据转存到数据寄存器中;
(4)检查状态Checking:待检测内存中的数据转存到数据寄存器中后,安全策略控制器发送请求正式检测信号,状态机进入Checking状态,允许安全策略控制器向待检测内存的被检测单元中输入检测信息;
(5)检查中碰撞处理状态1Check_Reg:在安全策略控制器检测过程中,若内存包装器电路收到来自通信总线的系统访问信号,则会触发状态机的跳转,首先判断该系统访问的地址是否是地址寄存器中保存的地址,若等于,则状态机进入Check_Reg状态,状态机控制电路将通信总线发来的系统访问信号重定向到数据寄存器,即选通通信总线信号到数据寄存器的通路,并继续选通安全策略控制发出的信号到待检测内存的通路。此操作可使得待检测内存在被检测的过程中,内存包装器电路也可以接收并处理系统访问信号,从而最大程度地降低内存检测对系统性能的影响。当内存包装器电路响应完系统访问信号后,状态机由Check_Reg状态跳回到Checking状态;
(6)检查中碰撞处理状态2Check_MEM:在内存包装器电路收到来自通信总线的系统访问信号后,若是判断该系统访问地址不等于地址寄存器中保存的地址,则状态机由Checking状态跳转到Check_MEM状态。内存包装器电路选通系统访问信号到待检测内存的通路,将通信总线的系统访问信号发送到待检测内存中,并请求安全策略控制器暂时中止内存安全性检测,安全策略控制器收到请求中止信号,保存检测现场并中止检测。当内存包装器电路响应完系统访问信号后,状态机由Check_MEM状态跳转回Checking状态;
(7)重备份状态Recopy_Reg:当内存安全性检测结束后,安全策略控制器发送检测结束信号,状态机由Checking状态跳转到Recopy_Reg状态,允许安全策略控制器读出数据寄存器中的数据;
(8)写回状态Write_MEM:当数据寄存器中的数据被成功读出后,安全策略控制器发送请求写回信号,状态机进入Write_MEM状态,允许安全策略控制器将读出的数据写回到待检测内存中;
(10)空闲状态IDLE:当数据写回结束后,安全策略控制器发送写回结束信号,状态机进入IDLE状态,系统执行正常操作。
本申请提供了一种内存安全性检测方法,片上系统包括安全策略控制器和待检测内存,安全策略控制器用于对待检测内存进行故障检测,安全策略控制器包括检测模块。安全策略控制器可以接收片上系统的外部发送的检测信号,检测信号携带待检测内存的待检测故障类型和/或攻击标识,根据待检测故障类型和/或攻击标识从片外存储器中获得与待检测故障类型和/或攻击标识对应的检测算法,片外存储器存储有多种故障类型和/或攻击标识分别对应的检测算法,不同的故障类型和/或攻击标识对应不同的检测算法,根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障类型和/或攻击标识。实现了对待检测内存相应故障类型和/或攻击标识的安全性检测,这样无需在系统中同时部署多种内存故障的检测方案,无需同时部署多个复杂的检测电路,可以通过在线配置的方式进行替换,相当于在一个资源空间内可实现不同的功能,根据检测信号的不同从片外存储器调用相应的检测算法配置相应的检测电路即可,降低了功耗,提高了检测效率。由此降低了功耗,而配置不同的检测方法,则提高了检测覆盖率,其中具体的检测碰撞机制,提高了检测效率。
示例性片上系统
参见图2,为本申请实施例提供的一种用于内存安全性检测的片上系统,所述片上系统201与片外存储器202连接,所述片上系统201包括:待检测内存204和安全策略控制器203;所述安全策略控制器203用于对所述待检测内存204进行故障和/或攻击检测,所述安全策略控制器203包括检测模块205;
所述安全策略控制器203和所述待检测内存204连接;
所述安全策略控制器203,用于接收所述片上系统201的外部发送的检测信号,所述检测信号携带所述待检测内存的待检测故障和/或攻击标识,根据所述待检测故障和/或攻击标识从片外存储器202中获得与所述待检测故障和/或攻击标识对应的检测算法,所述片外存储器202存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对所述检测模块205进行配置获得检测电路,利用所述检测电路判断所述待检测内存204是否出现所述待检测故障和/或攻击。
可选的,所述安全策略控制器203,包括:内部配置访问端口;
所述内部配置访问端口用于将所述检测算法分解为电路元件算法和连接关系算法,根据所述电路元件算法配置得到对应的电路元件,根据所述连接关系算法将所述电路元件进行连接获得所述检测电路。
可选的,所述安全策略控制器203,包括:部分可重构控制器;所述检测算法包括检测电路比特流;
所述部分可重构控制器与所述内部配置访问端口连接;
所述部分可重构控制器用于根据所述待检测故障和/或攻击标识从所述片外存储器中获得所述待检测故障和/或攻击标识对应的检测电路比特流,所述检测电路比特流包括电路元件比特流和连接关系比特流;
所述电路元件比特流用于配置得到对应的所述电路元件;所述连接关系比特流用于将所述电路元件进行连接获得所述检测电路;
所述片外存储器中存储有多种故障和/或攻击标识分别对应的检测电路比特流,不同的故障和/或攻击标识对应不同的检测电路比特流。
可选的,所述片上系统201还包括:内存包装器电路;所述内存包装器电路包括地址寄存器和数据寄存器;
所述内存包装器电路与所述安全策略控制器连接;
所述地址寄存器用于存储所述待检测内存的地址;
所述数据寄存器用于存储所述待检测内存的数据。
可选的,所述安全策略控制器203,包括:检测流程控制器;
所述检测流程控制器用于当出现系统访问内存时,当所述系统访问的内存地址是所述待检测内存的地址时,则将所述系统访问输入所述地址寄存器和所述数据寄存器中以完成所述系统访问内存;
所述检测流程控制器还用于当出现系统访问内存时,当所述系统访问的内存地址不是所述待检测内存的地址时,则暂停利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击,待所述系统访问结束后,再继续利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
本申请提供了一种内存安全性检测片上系统,片上系统包括安全策略控制器和待检测内存,安全策略控制器用于对待检测内存进行故障检测,安全策略控制器包括检测模块。安全策略控制器可以接收片上系统的外部发送的检测信号,检测信号携带待检测内存的待检测故障和/或攻击标识,根据待检测故障和/或攻击标识从片外存储器中获得与待检测故障和/或攻击标识对应的检测算法,片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对检测模块进行配置获得检测电路,利用检测电路判断待检测内存是否出现待检测故障和/或攻击标识。实现了对待检测内存相应故障和/或攻击标识的安全性检测,这样无需在系统中同时部署多种内存故障的检测方案,无需同时部署多个复杂的检测电路,可以通过在线配置的方式进行替换,相当于在一个资源空间内可实现不同的功能,根据检测信号的不同从片外存储器调用相应的检测算法配置相应的检测电路即可,由此降低了功耗,而配置不同的检测方法,则提高了检测覆盖率,其中具体的检测碰撞机制,提高了检测效率。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于片上系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅是本申请的优选实施方式,虽然本申请已以较佳实施例披露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。
Claims (10)
1.一种内存安全性检测方法,其特征在于,应用于片上系统,所述片上系统与片外存储器连接;所述片上系统包括安全策略控制器和待检测内存;所述安全策略控制器用于对所述待检测内存进行故障和/或攻击检测,所述安全策略控制器包括检测模块;该方法包括:
接收所述片上系统的外部发送的检测信号,所述检测信号携带待检测内存的待检测故障和/或攻击标识;
根据所述待检测故障和/或攻击标识从所述片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法;所述片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法;
根据获得的检测算法对所述检测模块进行配置获得检测电路,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
2.根据权利要求1所述的方法,其特征在于,所述根据获得的检测算法对所述检测模块进行配置获得检测电路,包括:
将所述检测算法分解为电路元件算法和连接关系算法;
根据所述电路元件算法配置得到对应的电路元件;
根据所述连接关系算法将所述电路元件进行连接获得所述检测电路。
3.根据权利要求2所述的方法,其特征在于,所述检测算法包括检测电路比特流;所述根据所述待检测故障和/或攻击标识从所述片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法,包括:
根据所述待检测故障和/或攻击标识从所述片外存储器中获得所述待检测故障和/或攻击标识对应的检测电路比特流;所述检测电路比特流包括电路元件比特流和连接关系比特流;
所述电路元件比特流用于配置得到对应的所述电路元件;所述连接关系比特流用于将所述电路元件进行连接获得所述检测电路;
所述片外存储器中存储有多种故障和/或攻击标识分别对应的检测电路比特流,不同的故障和/或攻击标识对应不同的检测电路比特流。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述片上系统还包括内存包装器电路;在所述根据获得的检测算法对所述检测模块进行配置获得检测电路之后,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击之前,所述方法还包括:
将所述待检测内存的地址转存进所述内存包装器电路的地址寄存器中,待所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击后,再将所述待检测内存的地址转存回所述待检测内存;
将所述待检测内存的数据转存进所述内存包装器电路的数据寄存器中,待所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击后,再将所述待检测内存的数据转存回所述待检测内存。
5.根据权利要求4所述的方法,其特征在于,在所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击的过程中,若出现系统访问内存,所述方法还包括:
当所述系统访问的内存地址是所述待检测内存的地址时,则将所述系统访问输入所述地址寄存器和所述数据寄存器中以完成所述系统访问内存;
当所述系统访问的内存地址不是所述待检测内存的地址时,则暂停所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击,待所述系统访问结束后,再继续所述利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
6.一种用于内存安全性检测的片上系统,其特征在于,所述片上系统与片外存储器连接,所述片上系统包括:待检测内存和安全策略控制器;所述安全策略控制器用于对所述待检测内存进行故障和/或攻击检测,所述安全策略控制器包括检测模块;
所述安全策略控制器和所述待检测内存连接;
所述安全策略控制器,用于接收所述片上系统的外部发送的检测信号,所述检测信号携带所述待检测内存的待检测故障和/或攻击标识,根据所述待检测故障和/或攻击标识从片外存储器中获得与所述待检测故障和/或攻击标识对应的检测算法,所述片外存储器存储有多种故障和/或攻击标识分别对应的检测算法,不同的故障和/或攻击标识对应不同的检测算法,根据获得的检测算法对所述检测模块进行配置获得检测电路,利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
7.根据权利要求6所述的片上系统,其特征在于,所述安全策略控制器,包括:内部配置访问端口;
所述内部配置访问端口用于将所述检测算法分解为电路元件算法和连接关系算法,根据所述电路元件算法配置得到对应的电路元件,根据所述连接关系算法将所述电路元件进行连接获得所述检测电路。
8.根据权利要求7所述的片上系统,其特征在于,所述安全策略控制器,包括:部分可重构控制器;所述检测算法包括检测电路比特流;
所述部分可重构控制器与所述内部配置访问端口连接;
所述部分可重构控制器用于根据所述待检测故障和/或攻击标识从所述片外存储器中获得所述待检测故障和/或攻击标识对应的检测电路比特流,所述检测电路比特流包括电路元件比特流和连接关系比特流;
所述电路元件比特流用于配置得到对应的所述电路元件;所述连接关系比特流用于将所述电路元件进行连接获得所述检测电路;
所述片外存储器中存储有多种故障和/或攻击标识分别对应的检测电路比特流,不同的故障和/或攻击标识对应不同的检测电路比特流。
9.根据权利要求6-8任一项所述的片上系统,其特征在于,所述片上系统还包括:内存包装器电路;所述内存包装器电路包括地址寄存器和数据寄存器;
所述内存包装器电路与所述安全策略控制器连接;
所述地址寄存器用于存储所述待检测内存的地址;
所述数据寄存器用于存储所述待检测内存的数据。
10.根据权利要求9所述的片上系统,其特征在于,所述安全策略控制器,包括:检测流程控制器;
所述检测流程控制器用于当出现系统访问内存时,当所述系统访问的内存地址是所述待检测内存的地址时,则将所述系统访问输入所述地址寄存器和所述数据寄存器中以完成所述系统访问内存;
所述检测流程控制器还用于当出现系统访问内存时,当所述系统访问的内存地址不是所述待检测内存的地址时,则暂停利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击标识,待所述系统访问结束后,再继续利用所述检测电路判断所述待检测内存是否出现所述待检测故障和/或攻击。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110448527.0A CN113157509A (zh) | 2021-04-25 | 2021-04-25 | 一种内存安全性检测方法和片上系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110448527.0A CN113157509A (zh) | 2021-04-25 | 2021-04-25 | 一种内存安全性检测方法和片上系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113157509A true CN113157509A (zh) | 2021-07-23 |
Family
ID=76870553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110448527.0A Pending CN113157509A (zh) | 2021-04-25 | 2021-04-25 | 一种内存安全性检测方法和片上系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113157509A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114780323A (zh) * | 2022-06-17 | 2022-07-22 | 新华三信息技术有限公司 | 一种服务器中内存的故障检测方法、装置及设备 |
CN116069603A (zh) * | 2021-09-28 | 2023-05-05 | 华为技术有限公司 | 应用的性能测试方法、建立性能测试模型的方法及装置 |
-
2021
- 2021-04-25 CN CN202110448527.0A patent/CN113157509A/zh active Pending
Non-Patent Citations (1)
Title |
---|
WANG JIAN 等: "RDAMS: An Efficient Run-Time Approach for Memory Fault and Hardware Trojans Detection", HTTPS://DOI.ORG/10.3390/INFO12040169, 14 April 2021 (2021-04-14), pages 1 - 18 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116069603A (zh) * | 2021-09-28 | 2023-05-05 | 华为技术有限公司 | 应用的性能测试方法、建立性能测试模型的方法及装置 |
CN116069603B (zh) * | 2021-09-28 | 2023-12-08 | 华为技术有限公司 | 应用的性能测试方法、建立性能测试模型的方法及装置 |
CN114780323A (zh) * | 2022-06-17 | 2022-07-22 | 新华三信息技术有限公司 | 一种服务器中内存的故障检测方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113157509A (zh) | 一种内存安全性检测方法和片上系统 | |
US7185148B2 (en) | Read access and storage circuitry read allocation applicable to a cache | |
US6907548B2 (en) | Automatic testing for multi-core architecture | |
JP2006259869A (ja) | マルチプロセッサシステム | |
US20170344419A1 (en) | Correctable Error Filtering for Input/Output Subsystem | |
JPH1091529A (ja) | データ処理システムにおけるレジスタへのアクセス方法 | |
US8166273B2 (en) | Degeneration method and information processing apparatus | |
KR20100070027A (ko) | 제이태그 인증 기능을 구비하는 장치 및 제이태그 인증방법 | |
WO2016127600A1 (zh) | 异常处理方法及装置 | |
CN111858187A (zh) | 一种电子设备及业务切换方法、装置 | |
JPH10143285A (ja) | リセット装置及びそれを用いた動作モードの設定方法 | |
CN113535441B (zh) | 一种嵌入式系统故障诊断装置及方法 | |
CN111177028B (zh) | 一种动态多级缓存的方法和设备 | |
CN101119233A (zh) | 获取设备运行状态的方法、装置及系统 | |
US6438686B1 (en) | Method and apparatus for eliminating contention with dual bus masters | |
CN100357905C (zh) | 一种地址总线的故障检测方法 | |
JPH11219321A (ja) | データモニタ回路 | |
JP7183841B2 (ja) | 電子制御装置 | |
US7500154B2 (en) | Method and system for generating a console log | |
US11175340B1 (en) | System and method for managing testing and availability of critical components on system-on-chip | |
US20240159812A1 (en) | Method for monitoring in a distributed system | |
JP2904130B2 (ja) | プログラム誤動作検出開発支援装置およびプログラム誤動作検出方法 | |
WO2008062511A1 (fr) | Système multiprocesseur | |
CN117950929A (zh) | 基于门控功能的通用测试方法和装置 | |
JP2003337758A (ja) | 二重化メモリシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |