一种互斥访问多端口存储器的方法及多处理器终端技术

技术编号:14361326 阅读:64 留言:0更新日期:2017-01-09 04:32
本发明专利技术提供了一种互斥访问多端口存储器的方法及多处理器终端。其中,该方法包括:当前处理器欲访问多端口存储器时,从多端口存储器中获取每个处理器对应的锁状态变量,其中,锁状态变量与处理器一一对应;当前处理器根据每个处理器对应的锁状态变量,访问多端口存储器内的共享数据区。本发明专利技术通过每个处理器对应的锁状态变量来控制多个处理器进行互斥访问多端口存储器,避免了通过硬件引脚进行状态控制连接,节约了处理器和多端口存储器的引脚资源。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体而言,涉及一种互斥访问多端口存储器的方法及多处理器终端
技术介绍
目前,终端中一般设置多个处理器,但一般只有一个多端口RAM(Random-AccessMemory,随机存取存储器),因此多个处理器需要互斥访问该多端口RAM,以使多个处理器可以正常运行。当前,相关技术中提供了一种互斥访问多端口存储器的方法,包括:多端口RAM通过引脚分别与每个处理器之间建立起数据连接和状态控制连接。当一处理器访问该多端口RAM时,该处理器获取其他处理器对应的状态控制连接的引脚的状态,若其他处理器对应的引脚的状态均为空闲状态,则该处理器通过与该多端口RAM之间的数据连接访问该多端口RAM,并设置其对应的状态控制连接的引脚的状态为忙状态。若其他处理器对应的引脚的状态中存在忙状态,则该处理器停止访问该多端口RAM。在实现本专利技术的过程中,专利技术人发现相关技术至少存在以下问题:多端口RAM通过引脚与处理器进行状态控制连接,占用了处理器与多端口RAM的引脚资源,导致处理器和多端口RAM的引脚资源紧缺。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种互斥访问多端口存储器的方法及多处理器终端,实现通过多个锁状态变量来控制多个处理器进行互斥访问多端口存储器,避免了通过硬件引脚进行状态控制连接。第一方面,本专利技术实施例提供了一种互斥访问多端口存储器的方法,所述方法包括:当前处理器欲访问多端口存储器时,从所述多端口存储器中获取每个处理器对应的锁状态变量,其中,所述锁状态变量与处理器一一对应;所述当前处理器根据所述每个处理器对应的锁状态变量,访问所述多端口存储器内的共享数据区。结合第一方面,本专利技术实施例提供了上述第一方面的第一种可能的实现方式,其中,所述当前处理器从所述多端口存储器中获取每个处理器对应的锁状态变量,包括:当前处理器从所述多端口存储器中获取自身对应的锁状态变量;当所述当前处理器自身对应的锁状态变量指示为空闲状态时,从所述多端口存储器获取其它处理器对应的锁状态变量;当所述当前处理器自身对应的锁状态变量指示为忙状态时,停止获取其它处理器对应的锁状态变量。结合第一方面,本专利技术实施例提供了上述第一方面的第二种可能的实现方式,其中,所述当前处理器根据所述每个处理器对应的锁状态变量,访问所述多端口存储器内的共享数据区,包括:所述当前处理器根据获取的所述每个处理器对应的锁状态变量,判断是否有正在访问所述多端口存储器的处理器;如果没有,所述当前处理器访问所述多端口存储器内的共享数据区;如果有,所述当前处理器退出访问,间隔预设时间段再次执行所述从所述多端口存储器中获取每个处理器对应的锁状态变量的操作。结合第一方面的第二种可能的实现方式,本专利技术实施例提供了上述第一方面的第三种可能的实现方式,其中,所述当前处理器根据所述每个处理器对应的锁状态变量,判断是否有正在访问所述多端口存储器的处理器,包括:所述当前处理器依次判断每个锁状态变量指示的状态是否为空闲状态;如果所述每个锁状态变量指示的状态均为空闲状态,所述当前处理器确定出没有正在访问所述多端口存储器的处理器,将所述每个锁状态变量指示的状态均设置为忙状态;如果所述每个锁状态变量中存在一个锁状态变量指示的状态为忙状态,所述当前处理器确定出有正在访问所述多端口存储器的处理器。结合第一方面及第一方面的第一至第三种可能的实现方式中的任一种方式,本专利技术实施例提供了上述第一方面的第四种可能的实现方式,其中,所述当前处理器访问所述多端口存储器内的共享数据区之后,还包括:所述当前处理器退出访问所述多端口存储器,设置所述每个锁状态变量指示的状态为空闲状态。第二方面,本专利技术实施例提供了一种多处理器终端,所述终端包括多端口存储器和多个处理器,每个处理器包括:锁状态变量获取模块,用于当欲访问所述多端口存储器时,从所述多端口存储器中获取每个处理器对应的锁状态变量,其中,所述锁状态变量与处理器一一对应;数据访问模块,用于根据所述每个锁状态变量,访问所述多端口存储器内的共享数据区。结合第二方面,本专利技术实施例提供了上述第二方面的第一种可能的实现方式,其中,所述锁状态变量获取模块包括:第一获取单元,用于从所述多端口存储器中获取自身对应的锁状态变量;第二获取单元,用于当所述当前处理器自身对应的锁状态变量指示为空闲状态时,从所述多端口存储器获取其它处理器对应的锁状态变量;停止获取单元,用于当所述当前处理器自身对应的锁状态变量指示为忙状态时,停止获取其它处理器对应的锁状态变量。结合第二方面,本专利技术实施例提供了上述第二方面的第二种可能的实现方式,其中,所述数据访问模块包括:判断单元,用于根据获取的所述每个处理器对应的锁状态变量,判断是否有正在访问所述多端口存储器的处理器;访问单元,用于当所述判断单元的判断结果为没有时,访问所述多端口存储器内的共享数据区;退出访问单元,用于当所述判断单元的判断结果为有时,退出访问,间隔预设时间段再次通过所述锁状态变量获取模块从所述多端口存储器中获取每个处理器对应的锁状态变量。结合第二方面的第二种可能的实现方式,本专利技术实施例提供了上述第二方面的第三种可能的实现方式,其中,所述判断单元包括:判断子单元,用于依次判断每个锁状态变量指示的状态是否为空闲状态;第一确定子单元,用于当所述判断子单元判断出所述每个锁状态变量指示的状态均为空闲状态时,确定出没有正在访问所述多端口存储器的处理器,将所述每个锁状态变量指示的状态均设置为忙状态;第二确定子单元,用于当所述判断子单元判断出所述每个锁状态变量中存在一个锁状态变量指示的状态为忙状态时,确定出有正在访问所述多端口存储器的处理器。结合第二方面及第二方面的第一至第三种可能的实现方式中的任一种方式,本专利技术实施例提供了上述第二方面的第四种可能的实现方式,其中,所述装置还包括:退出设置模块,用于退出访问所述多端口存储器,设置所述每个锁状态变量指示的状态为空闲状态。在本专利技术实施例提供的方法及装置中,当前处理器欲访问多端口存储器时,从多端口存储器中获取每个处理器对应的锁状态变量;当前处理器根据每个处理器对应的锁状态变量,访问多端口存储器内的共享数据区。通过每个处理器对应的锁状态变量来实现多个处理器互斥访问多端口存储器,避免了通过硬件引脚进行状态控制连接,节约了处理器和多端口存储器的引脚资源,提高了处理器和多端口存储器的可扩展性。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本专利技术实施例1所提供的一种互斥访问多端口存储器的方法流程图;图2A示出了本专利技术实施例2所提供的一种互斥访问多端口存储器的方法流程图;图2B示出了本专利技术实施例2所提供的两个处理器互斥访问双口RAM的流程图;图3A示出了本专利技术实施例3所提供的一种多处理终端的结构示意图;图3B示出了本专利技术实施例3所提供的另一种多处理终端的结构示本文档来自技高网...
一种互斥访问多端口存储器的方法及多处理器终端

【技术保护点】
一种互斥访问多端口存储器的方法,其特征在于,所述方法包括:当前处理器欲访问多端口存储器时,从所述多端口存储器中获取每个处理器对应的锁状态变量,其中,所述锁状态变量与处理器一一对应;所述当前处理器根据所述每个处理器对应的锁状态变量,访问所述多端口存储器内的共享数据区。

【技术特征摘要】
1.一种互斥访问多端口存储器的方法,其特征在于,所述方法包括:当前处理器欲访问多端口存储器时,从所述多端口存储器中获取每个处理器对应的锁状态变量,其中,所述锁状态变量与处理器一一对应;所述当前处理器根据所述每个处理器对应的锁状态变量,访问所述多端口存储器内的共享数据区。2.根据权利要求1所述的方法,其特征在于,所述当前处理器从所述多端口存储器中获取每个处理器对应的锁状态变量,包括:当前处理器从所述多端口存储器中获取自身对应的锁状态变量;当所述当前处理器自身对应的锁状态变量指示为空闲状态时,从所述多端口存储器获取其它处理器对应的锁状态变量;当所述当前处理器自身对应的锁状态变量指示为忙状态时,停止获取其它处理器对应的锁状态变量。3.根据权利要求1所述的方法,其特征在于,所述当前处理器根据所述每个处理器对应的锁状态变量,访问所述多端口存储器内的共享数据区,包括:所述当前处理器根据获取的所述每个处理器对应的锁状态变量,判断是否有正在访问所述多端口存储器的处理器;如果没有,所述当前处理器访问所述多端口存储器内的共享数据区;如果有,所述当前处理器退出访问,间隔预设时间段再次执行所述从所述多端口存储器中获取每个处理器对应的锁状态变量的操作。4.根据权利要求3所述的方法,其特征在于,所述当前处理器根据所述每个处理器对应的锁状态变量,判断是否有正在访问所述多端口存储器的处理器,包括:所述当前处理器依次判断每个锁状态变量指示的状态是否为空闲状态;如果所述每个锁状态变量指示的状态均为空闲状态,所述当前处理器确定出没有正在访问所述多端口存储器的处理器,将所述每个锁状态变量指示的状态均设置为忙状态;如果所述每个锁状态变量中存在一个锁状态变量指示的状态为忙状态,所述当前处理器确定出有正在访问所述多端口存储器的处理器。5.根据权利要求1-4任一项所述的方法,其特征在于,所述当前处理器访问所述多端口存储器内的共享数据区之后,还包括:所述当前处理器退出访问所述多端口存储器,设置所述每个锁状态变量指示...

【专利技术属性】
技术研发人员:王雷
申请(专利权)人:北京佳讯飞鸿电气股份有限公司
类型:发明
国别省市:北京;11

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

1