嵌入式系统用户多分区存储空间访问权限的安全控制方法

文档序号:6481574阅读:478来源:国知局
专利名称:嵌入式系统用户多分区存储空间访问权限的安全控制方法
技术领域
本发明涉及嵌入式微处理器系统(以下简称"嵌入式系统,,),特别涉及 嵌入式系统用户多分区存储空间访问权限的安全控制方法,属于信息安全技 术领域。
背景技术
随着嵌入式系统的快速发展,单个嵌入式芯片上的功能越来越多, 一方 面,多用户可通过将存储空间进行分区,达到共用一个嵌入式芯片的目的, 给用户带来了极大的方便。另一方面,单一用户使用一个嵌入式系统时,也 存在多种用途的需求,往往也需要对存储空间进行分区,达到方便管理的目 的。但是,无论是对于多用户共用一个嵌入式芯片,还是不同分区做不同用 途,都存在某一分区的程序或数据被其它分区的程序调用的风险,信息的安 全性、可靠性得不到保证。现有技术中,对于拥有操作系统的系统,只要通 过对各个用户进行正确分组,就能解决某一用户分区内的程序或数据被其它 用户分区的程序调用的问题,但是由于功耗、性能和可移植性等因素的影响, 较低端的嵌入式系统一般都不具备安装操作系统的条件,因此存在这方面安
全问题。如图1所示,嵌入式系统启动后CPU可寻址存储空间划分为三类区, 一个是系统区OS Region( 4k )、 一个存储空间控制区MPU Control Space( 64k) 和一个用户区,其中管理员根据需要可以将用户区(用户存储空间)分割成 八个区块,如第一区块Regionl、第六区块Region6,供多用户使用,而且对 用户存储空间内区块的访问权限控制,仅仅是配置为可读、可写和可执行三 个属性的任意组合,这种用户存储空间的访问模式可以解决部分安全性问 题。但由于未能对发起程序进行监控,从而不能有效阻止第六区块Region6 的恶意程序对第一区块Regionl内信息进行恶意的访问(如图1中箭头示意 的访问)。
因此,为了解决上述现有嵌入式系统中所存在的问题,需要一种针对用 户多分区存储空间访问权限的安全控制方法,才能有效的阻止某一分区内的 信息被其它分区的程序调用,从而大大提高嵌入式系统信息的安全性。

发明内容
本发明提供一种嵌入式系统用户多分区存储空间访问权限的安全控制方 法,旨在解决嵌入式系统中用户多分区存储空间之间相互访问存在的安全性 问题。该方法能有效的阻止某一分区内的信息被其它分区的程序调用,大大提高了嵌入式系统信息安全性。
为达到上述目的,本发明采用的技术方案是 一种嵌入式系统用户多分 区存储空间访问权限的安全控制方法,在嵌入式系统中,用户存储空间被分 割成至少两个区块,每个区块具有一个地址范围,其创新在于
(1 )利用对应各区块的属性配置寄存器通过访问特征值来定义各区块 存储空间访问属性,所述访问特征值以及访问属性的含义如下
(2) 设置延时匹配寄存器组,CPU调用某区块内的程序时,延时匹配 寄存器组接收程序计数器输出的程序地址值信号,并在CPU的时钟信号驱动 下,输出延时匹配的程序地址值信号;
(3) 设置发起地址比较器,该发起地址比较器将延时匹配寄存器组输 出端的程序地址值与对应各区块的属性配置寄存器内地址值进行比较,得出 程序发起地的区块信息,并输出 一个发起区块标识信号;
(4 )设置目标地址比较器,该目标地址比较器将程序访问的数据地址 值与对应各区块的属性配置寄存器内地址值进行比较,得出程序目标地的区 块信息,并输出一个目标区块标识信号;
(5)设置一个数值比较器和一个门控电路,所述门控电路设在CPU与 地址、控制和数据三总线之间,数值比较器的输出信号连接门控电路的使能 端,当目标区块的访问特征值有效时,发起地址比较器输出的发起区块标识 信号与目标地址比较器输出的目标区块标识信号通过数值比较器进行比较, 当发起区块标识信号与目标区块标识信号相等时,对门控电路输入一个开启 使能信号,允许访问进行;当发起区块标识信号与目标区块标识信号不相等 时,对门控电路输入一个关闭使能信号,访问被禁止。 上述技术方案中的有关内容解释如下
1、 上述方案中,所述延时匹配寄存器组采取两级寄存器组串联,寄存器 组类型为上升沿触发寄存器组,且均使用CPU时钟频率进行触发,保证目标 地址比较器输入的数据地址值与发起地址比较器输入的程序地址值为同一 个访问。
2、 上述方案中,所述程序目标地是指程序所要访问的区块。
3、 上述方案中,所述程序发起地是指储存程序的区块。
访问特征值 有效 无效
i方问属斗生 仅限本区块内可读可写可执行模式 任何区块可读可写可执行模式4、 上述方案中,所述"用户存储空间"是指系统中对应一个地址范围的 供用户使用的存储空间,可包括嵌入式系统中若干存储器、若干接口模块、
若干外设等。系统启动后CPU可寻址存储空间一般可划分为三类区, 一个是 系统区、 一个控制区和一个用户区。本发明用户存储空间指的是用户区,管 理员根据需要可将用户区任意分割为若干个区块供用户使用。
5、 上述方案中,所述区块的数目小于或等于属性配置寄存器的数目。
6、 上述方案中,所述"访问属性",还可以包括区块属性,区块属性可 选择下列不同类型中的一种
区块属性代码 区块属性含义
0000 R-X
0001 —WX
0002 證X
其中R表示读操作,W表示写操作,X表示执行操作,-表示不允许。 以上区块属性为现有技术,实际上本发明是在现有区块属性的基础上增加了 仅限本区块内可读可写可执行模式,这样进一步提高了系统的安全性。
本发明工作原理是发起地址比较器确定程序发起地所属的区块,目标 地址比较器确定程序目标地所属的区块,使用延时匹配寄存器组对程序地址
的程序地址值为同一个访问,通过比较程序发起地与程序目标地的标识信号,
判读使能访问特征值的区块是否被其它区块访问,来达到阻止该区块内的信
息被其它区块程序调用的目的。
由于上述技术方案运用,本发明与现有^f支术相比具有下列优点和效果 1、本发明的嵌入式系统用户多分区存储空间访问权限的安全控制方法,
能有效的阻止某一区块内的信息被其它区的程序调用,大大提高了嵌入式芯
片信息安全性。
用者对嵌入式系统的储存空间进行管理。
3、本发明通过硬件方式来实现对系统用户多分区存储空间访问权限的安 全控制,相对软件方式来说安全性更好。


附图1为针对用户多分区存储空间原有技术的可读可写可执行模式示意
5附图2为本发明针对用户多分区存储空间的仅限本区块内可读可写可执 行模式示意附图3为本发明实现仅限本区块内可读可写可执行模式的原理框图。
具体实施例方式
下面结合附图及实施例对本发明作进一步描述
实施例 一种嵌入式系统用户多分区存储空间访问权限的安全控制方法 本发明CPU核釆取32位地址线进行寻址,嵌入式系统复位后,将CPU 核可寻址存储空间划分为三类区,如图2所示, 一个系统区OS Region ( 4k)、 一个存储空间控制区MPU Control Space ( 64k)和一个用户区,其中用户区 根据需要分割成八个区块,如第 一 区块Region 1 、第六区块Region6 。 系统区OS Region,用来存》文异常向量表和初始化程序。 存储空间控制区MPU Control Space,用于管控存储空间,包含属性配置 寄存器2 (见图3)。属性配置寄存器2中有八个属性配置寄存器Nol No8 用于设置八个区块的访问属性和地址范围信息,每个属性配置寄存器与一个 区块对应,即第一属性配置寄存器Nol对应第一区块Regionl,第六属性配 置寄存器No6对应第六区块Region6。
图3为本发明实现仅限本区块内可读可写可执行模式的原理框图,从图 中可以看出,用户区包含若干存储器14、 15,若干接口模块16、 17,若干外 设18,其中第一区块Regionl包含存储器14,第六区块包含Region6包含存 储器15和接口模块16。
嵌入式系统内在CPU核9与地址、控制和数据三总线IO之间设有门控 电路8, CPU核9的地址、控制和数据线通过门控电路8对用户区存储空间 进行访问。
八个属性配置寄存器Nol~ No8归属于存储空间控制区MPU Control Space。每个属性配置寄存器中使用一位标识访问特征值,含义如下 访问特征值状态访问特征值代码 访问属性
有效 1 仅限本区块内可读可写可执行模式
无效 0 任何区块可读可写可执行模式
不同区块之间访问的安全控制方法的具体过程描述如下 (1 )第一属性配置寄存器Nol访问特征值为1,第一区块Regionl处于 仅限本区块内可读可写可执行模式。
(2)通常嵌入式系统是按照取指令代码,解码指令,执行指令,写回四级流水的方式执行指令的。在第一个CPU周期,CPU核9根据程序计数器4 内程序地址值,读取第六区块Region6的程序指令,在第二个CPU周期,CPU 核9解码该程序指令,同时,程序计数器4输出的程序地址值信号,在CPU 的时钟信号触发下,从第一延时匹配寄存器组5的输入端传递到第一延时匹 配寄存器组5的输出端,在第三个CPU周期,CPU核9执行程序指令,并发 出要访问的数据地址值,同时,第一延时匹配寄存器组5输出的程序地址值 信号,在CPU的时钟信号触发下,从第二延时匹配寄存器组6的输入端传递 到第二延时匹配寄存器组6的输出端。
(3) 目标地址比较器3接受数据地址值,同时,发起地址比较器l接受 程序地址值,由于程序地址值经过第一、第二延时匹配寄存器组5、 6,此时 目标地址比较器3输入的数据地址值与发起地址比较器1输入的程序地址值 为同一个访问。
(4) 发起地址比较器1将程序地址值依次与八个属性配置寄存器No1 No8的地址范围进行比较,同时,目标地址比较器3也将数据地址值依次与 八个属性配置寄存器Nol No8的地址范围进行比较。
(5) 发起地址比较器1经比较得出,程序地址值在第六属性配置寄存器 No6的地址范围,得出此程序发起地为第六区块Region6,并输出一个发起区 块标识信号,代码如下所示为101,目标地址比较器3经比较得出,数据地址 值在第一属性配置寄存器Nol的地址范围,得出此程序目标地为第一区块 Regionl,并输出一个目标区块标识信号,代码如下所示为000,
标识信号代码标识信号含义
000第一区块
001第二区块
010第三区块
011第四区块
100第五区块
101第六区块
110第七区块
111第八区块
(6 )由于第一区块Regionl的访问特征值有效,目标地址比较器3输出 的目标区块标识信号000,与发起地址比较器1输出的发起区块标识信号101, 经数值比较器7比较,判断出000不等于101,得出第一区块Regionl被第六
7区块Region6非法访问,随后,对门控电路8输入一个关闭使能信号,门控 电路8切断CPU核9与存储空间的地址、控制和数据三总线10的信息传递, 最终,此次访问被禁止。
同 一个区块内部访问的安全控制方法具体过程描述如下
(1) 第一属性配置寄存器Nol访问特征值为1,第一区块Regionl处于 仅限本区块内可读可写可执行模式。
(2) 通常嵌入式系统是按照取指令代码,解码指令,执行指令,写回四 级流水的方式执行指令的。在第一个CPU周期,CPU核9根据程序计数器4 内程序地址值,读取第一区块Regionl的程序指令,在第二个CPU周期,CPU 核9解码程序指令,同时,程序计数器4输出的程序地址值信号,在CPU的 时钟信号触发下,从第一延时匹配寄存器组5的输入端传递到第一延时匹配 寄存器组5的输出端,在第三个CPU周期,CPU核9执行程序指令,并发出 要访问的数据地址值,同时,第一延时匹配寄存器组5输出的程序地址值信 号,在CPU的时钟信号触发下,从第二延时匹配寄存器组6的输入端传递到 第二延时匹配寄存器组6的输出端。
(3) 目标地址比较器3接受数据地址值,同时,发起地址比较器1接受 程序地址值,由于程序地址值经过第一、第二延时匹配寄存器组5、 6,此时 刻的数据地址值是调用此数据的程序对应的程序地址值。
(4) 发起地址比较器1将程序地址值依次与八个属性配置寄存器的地址 范围进行比较,同时,目标地址比较器3也将数据地址值依次与八个属性配 置寄存器Nol No8的地址范围进行比较。
(5) 发起地址比较器1经比较得出,程序地址值在第一属性配置寄存器 Nol的地址范围,得出此程序发起地为第一区块Regionl,并输出一个发起区 块标识信号,代码如上所示为000,目标地址比较器3经比较得出,数据地址 值在第一属性配置寄存器Nol的地址范围,得出此程序目标地为第一区块 Regionl,并输出 一个目标区块标识信号,代码如上所示为000,
(6)由于第一区块Regionl的访问特征值有效,目标地址比较器3输出 的目标区块标识信号000,与发起地址比4交器1输出的发起区块标识信号000, 经数值比较器7比较,判断出000等于000,得出第一区块Regionl内的程序 对本区块Regionl的数据进行访问,根据安全特征值定义,这种访问时合法 的,随后,对门控电路8输入一个开启使能信号,门控电路8导通,CPU核 9可通过地址、控制和数据三总线10与存储空间传输信息。本发明中的数值比较器7可以采用与门来实现,如果发起区块标识信号 和目标区块标识信号可以用一位的"0"和"1"来表示,那么数值比较器7 可以简化成一个与门,这是一种典型情况。如果发起区块标识信号和目标区 块标识信号用多位的,那么数值比较器7可以采用多个与门的组合来实现。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项 技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保 护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明 的保护范围之内。
权利要求
1、一种嵌入式系统用户多分区存储空间访问权限的安全控制方法,在嵌入式系统中,用户存储空间被分割成至少两个区块,每个区块具有一个地址范围,其特征在于(1)利用对应各区块的属性配置寄存器通过访问特征值来定义各区块存储空间访问属性,所述访问特征值以及访问属性的含义如下访问特征值访问属性有效 仅限本区块内可读可写可执行模式无效 任何区块可读可写可执行模式(2)设置延时匹配寄存器组,CPU调用某区块内的程序时,延时匹配寄存器组接收程序计数器输出的程序地址值信号,并在CPU的时钟信号驱动下,输出延时匹配的程序地址值信号;(3)设置发起地址比较器,该发起地址比较器将延时匹配寄存器组输出端的程序地址值与对应各区块的属性配置寄存器内地址值进行比较,得出程序发起地的区块信息,并输出一个发起区块标识信号;(4)设置目标地址比较器,该目标地址比较器将程序访问的数据地址值与对应各区块的属性配置寄存器内地址值进行比较,得出程序目标地的区块信息,并输出一个目标区块标识信号;(5)设置一个数值比较器和一个门控电路,所述门控电路设在CPU与地址、控制和数据三总线之间,数值比较器的输出信号连接门控电路的使能端,当目标区块的访问特征值有效时,发起地址比较器输出的发起区块标识信号与目标地址比较器输出的目标区块标识信号通过数值比较器进行比较,当发起区块标识信号与目标区块标识信号相等时,对门控电路输入一个开启使能信号,允许访问进行;当发起区块标识信号与目标区块标识信号不相等时,对门控电路输入一个关闭使能信号,访问被禁止。
2、根据权利要求1所述的安全控制方法,其特征在于所述延时匹配寄存 器组采取两级寄存器组串联,寄存器组类型为上升沿触发寄存器组,且均使用 CPU时钟频率进行触发,保证目标地址比较器输入的数据地址值与发起地址 比较器输入的程序地址值为同 一个访问。访问特征值 有效 无效访问属性 仅限本区块内可读可写可执行模式 任何区块可读可写可执行模式
全文摘要
一种嵌入式系统用户多分区存储空间访问权限的安全控制方法,该方法包括发起地址比较器确定程序发起地所属的区块,目标地址比较器确定程序目标地所属的区块,使用延时匹配寄存器组对程序地址值进行延时,保证目标地址比较器输入的数据地址值与发起地址比较器输入的程序地址值为同一个访问,通过比较程序发起地与程序目标地的标识信号,判读使能访问特征值的区块是否被其它区块访问,来达到阻止该区块内的信息被其它区块程序调用的目的,该安全控制方法显著提高了嵌入式系统运行的安全性。
文档编号G06F21/24GK101566972SQ20091002757
公开日2009年10月28日 申请日期2009年5月12日 优先权日2009年5月12日
发明者于麦口, 徐小宇, 肖佐楠, 茳 郑 申请人:苏州国芯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1