内存访问方法、内存访问控制器和片上系统技术方案

技术编号:21089485 阅读:21 留言:0更新日期:2019-05-11 09:56
本发明专利技术提供一种内存访问方法、内存访问控制器和片上系统,该方法包括:接收步骤,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存访问模块的标识、要访问的内存区域名;检测处理步骤,根据当前存储的内存访问请求以及预定的内存访问控制表,对所述内存访问请求进行检测,根据检测结果对所述内存访问请求进行相应的处理,并得到更新存储的内存访问请求,检测返回步骤,对所述更新存储的内存访问请求进行检测,根据检测结果将所述内存访问请求的访问结果传送给对应的内存访问模块。本发明专利技术可以有效地保护内存,避免敏感信息的泄漏,同时可以高效地访问内存。

Memory access methods, memory access controllers and on-chip systems

【技术实现步骤摘要】
内存访问方法、内存访问控制器和片上系统
本专利技术涉及微体系结构,尤其涉及一种内存访问方法、内存访问控制器和片上系统。
技术介绍
在当前的片上系统(SystemonChip,SoC)中,安全性已经是系统中非常重要的一部分。通常在基于ARM公司架构的片上系统中,会存在多个不同的内存访问模块,例如中央处理器、图像处理器、视频音频解码器等。这些内存访问模块可以共享内存。现有的架构将系统中不同的内存访问模块划分为安全模块和非安全模块,对于内存空间则划分为安全区域和非安全区域。安全模块可以访问所有的内存区域,而非安全模块则只能访问非安全区域。这样的内存访问控制策略过于简单,无法满足现在愈发复杂的用户场景。尤其对于中央处理器,图像处理器等模块,在不同的应用中,这些模块负责了不同的工作,如果简单的将这些模块设置为安全模块,势必会导致一些敏感信息会泄漏。
技术实现思路
本专利技术提供了一种内存访问方法、内存访问控制器以及片上系统。本专利技术提供了一种内存访问方法,该方法包括:接收步骤,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存访问模块的标识、要访问的内存区域名;判断处理步骤,根据当前存储的内存访问请求以及预定的内存访问控制表,对所述内存访问请求进行判断,根据判断结果对所述内存访问请求进行相应的处理,并得到更新存储的内存访问请求,检测返回步骤,对所述更新存储的内存访问请求进行检测,根据检测结果将更新存储的内存访问请求中的每个内存访问请求的访问结果传送给对应的内存访问模块。其中,所述内存访问控制表中包含多个内存区域名,以及与每个内存区域名对应的标识白名单。其中,所述判断处理步骤进一步包括:第一判断步骤,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同且有错误标记的内存访问请求,如果是,则对所述内存访问请求的处理结束,如果否,则进入第二判断步骤;第二判断步骤,判断所述内存访问请求中的所述标识是否在所述要访问的内存区域名的所述对应的标识白名单中,如果是,则进入存储转发步骤,如果否,则进入第三判断步骤;第三判断步骤,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同的其他内存访问请求,如果是,则进入存储步骤,如果否,则进入第一返回步骤;存储转发步骤,存储所述内存访问请求,得到所述更新存储的内存访问请求,并经由所述总线将所述内存访问请求传送给所述内存;存储步骤,将所述错误标记添加到所述内存访问请求中,并进行存储,得到所述更新存储的内存访问请求;第一返回步骤,将错误消息作为所述内存访问请求的所述访问结果返回给对应的内存访问模块。其中,所述检测返回步骤进一步包括:第四判断步骤,判断所述更新存储的内存访问请求中具有相同标识的内存访问请求是否只包含添加有所述错误标记的内存访问请求,如果是,则进入第三返回步骤,如果否,则进入所述第二返回步骤;第二返回步骤,当从所述内存接收到返回结果时,经由总线,将所述返回结果中的成功消息作为所述访问结果传送给与所述返回结果对应的内存访问请求的标识所对应的内存访问模块,并删除与所述返回结果对应的内存访问请求;第三返回步骤,经由总线,将所述错误消息作为所述访问结果传送给添加有所述错误标记的内存访问请求的标识所对应的内存访问模块,并删除所述添加有所述错误标记的内存访问请求。其中,所述总线是高级可扩展总线。本专利技术还提供一种内存访问控制器,所述控制器包括:接收单元,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存访问模块的标识、要访问的内存区域名;判断处理单元,根据当前存储的内存访问请求以及预定的内存访问控制表,对所述内存访问请求进行判断,根据判断结果对所述内存访问请求进行相应的处理,并得到更新存储的内存访问请求;检测返回单元,对所述更新存储的内存访问请求进行检测,根据检测结果将更新存储的内存访问请求中的每个内存访问请求的访问结果传送给对应的内存访问模块。其中,所述内存访问控制表中包含多个内存区域名,以及与每个内存区域名对应的标识白名单。其中,所述判断处理单元进一步包括:第一判断单元,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同且有错误标记的内存访问请求,如果是,则对所述内存访问请求的处理结束;第二判断单元,判断所述内存访问请求中的所述标识是否在所述要访问的内存区域名的所述对应的标识白名单中;第三判断单元,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同的其他内存访问请求;存储单元,如果所述第二判断单元的判断结果为是,则所述存储单元存储所述内存访问请求,得到所述更新存储的内存访问请求,并经由所述总线将所述内存访问请求传送给所述内存;如果所述第三判断单元的判断结果为是,则所述存储单元将所述错误标记添加到所述内存访问请求中,并进行存储,得到所述更新存储的内存访问请求;第一返回单元,如果所述第三判断单元的判断结果为否,则所述第一返回单元将错误消息作为所述内存访问请求的访问结果返回给对应的内存访问模块。其中,所述检测返回单元进一步包括:第四判断单元,判断所述更新存储的内存访问请求中具有相同标识的内存访问请求是否只包含添加有所述错误标记的内存访问请求;第二返回单元,如果所述第四判断单元的判断结果为否,则当从所述内存接收到返回结果时,所述第二返回单元将所述返回结果中的成功消息作为所述访问结果传送给与所述返回结果对应的内存访问请求的标识所对应的内存访问模块,并删除与所述返回结果对应的内存访问请求;如果所述第四判断单元的判断结果为是,则所述第二返回单元将所述错误消息作为所述访问结果返回给添加有所述错误标记的内存访问请求的标识所对应的内存访问模块,并删除所述添加有所述错误标记的内存访问请求。其中,所述总线是高级可扩展总线。本专利技术进一步提供一种内存访问系统,所述系统包括:至少一个内存访问模块,内存,总线,以及如上所述的内存访问控制器,其中,所述至少一个内存访问模块经由所述总线和所述内存访问控制器来访问所述内存。通过本专利技术,可以有效地保护内存,避免敏感信息的泄漏,可以使得内存访问模块高效地访问内存。附图说明图1是根据本专利技术的实施例的片上系统的结构图;图2是根据本专利技术的实施例的内存访问控制器的结构图;图3是根据本专利技术的实施例的内存访问方法的流程图;图4是根据本专利技术的实施例的内存访问控制器中的判断处理单元的结构图;图5是根据本专利技术的实施例的内存访问方法中的判断处理步骤的流程图;图6是根据本专利技术的实施例的内存访问控制器中的检测返回单元的结构图;图7是根据本专利技术的实施例的内存访问方法中的检测返回步骤的流程图。具体实施方式下面结合附图,对本专利技术的具体实施例进行详细说明。图1是根据本专利技术的实施例的片上系统10的结构图。如图1所示,片上系统10包括至少一个内存访问模块(例如,内存访问模块1、2……n),内存访问控制器11、总线12、以及内存13。其中,内存访问模块1、2……n经由总线12和内存访问控制器10来访问内存13。本例中,总线12例如是高级可扩展总线(AXI总线)。图2是根据本专利技术的实施例的内存访问控制器11的结构图。如图2所示,内存访问控制器11包括接收单元111、判断处理单元112和检测返回本文档来自技高网...

【技术保护点】
1.一种内存访问方法,其特征在于,所述方法包括:接收步骤,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存访问模块的标识、要访问的内存区域名;判断处理步骤,根据当前存储的内存访问请求以及预定的内存访问控制表,对所述内存访问请求进行判断,根据判断结果对所述内存访问请求进行相应处理,并得到更新存储的内存访问请求;检测返回步骤,对所述更新存储的内存访问请求进行检测,根据检测结果将所述更新存储的内存访问请求中的每个内存访问请求的访问结果传送给对应的内存访问模块。

【技术特征摘要】
1.一种内存访问方法,其特征在于,所述方法包括:接收步骤,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存访问模块的标识、要访问的内存区域名;判断处理步骤,根据当前存储的内存访问请求以及预定的内存访问控制表,对所述内存访问请求进行判断,根据判断结果对所述内存访问请求进行相应处理,并得到更新存储的内存访问请求;检测返回步骤,对所述更新存储的内存访问请求进行检测,根据检测结果将所述更新存储的内存访问请求中的每个内存访问请求的访问结果传送给对应的内存访问模块。2.如权利要求1所述的方法,其特征在于,所述内存访问控制表中包含多个内存区域名,以及与每个内存区域名对应的标识白名单。3.如权利要求2所述的方法,其特征在于,所述判断处理步骤进一步包括:第一判断步骤,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同且有错误标记的内存访问请求,如果是,则对所述内存访问请求的处理结束,如果否,则进入第二判断步骤;第二判断步骤,判断所述内存访问请求中的所述标识是否在所述要访问的内存区域名的所述对应的标识白名单中,如果是,则进入存储转发步骤,如果否,则进入第三判断步骤;第三判断步骤,判断所述当前存储的内存访问请求中是否存在与所述内存访问请求中的所述标识相同的其他内存访问请求,如果是,则进入存储步骤,如果否,则进入第一返回步骤;存储转发步骤,存储所述内存访问请求,得到所述更新存储的内存访问请求,并经由所述总线将所述内存访问请求传送给所述内存;存储步骤,将所述错误标记添加到所述内存访问请求中,并进行存储,得到所述更新存储的内存访问请求;第一返回步骤,将错误消息作为所述内存访问请求的所述访问结果返回给对应的内存访问模块。4.如权利要求3所述的方法,其特征在于,所述检测返回步骤进一步包括:第四判断步骤,判断所述更新存储的内存访问请求中具有相同标识的内存访问请求是否只包含添加有所述错误标记的内存访问请求,如果是,则进入第三返回步骤,如果否,则进入所述第二返回步骤;第二返回步骤,当从所述内存接收到返回结果时,经由所述总线,将所述返回结果中的成功消息作为所述访问结果传送给与所述返回结果对应的内存访问请求的标识所对应的内存访问模块,并删除与所述返回结果对应的内存访问请求;第三返回步骤,经由所述总线,将所述错误消息作为所述访问结果传送给添加有所述错误标记的内存访问请求的标识所对应的内存访问模块,并删除所述添加有所述错误标记的内存访问请求。5.如权利要求1-4中任一项所述的方法,其特征在于,所述总线是高级可扩展总线。6.一种内存访问控制器,其特征在于,所述控制器包括:接收单元,经由总线从内存访问模块接收内存访问请求,所述内存访问请求包括所述内存...

【专利技术属性】
技术研发人员:李博
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:广东,44

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

1