适用于多处理器系统的硬件同步电路结构及其实现方法技术方案

技术编号:3843595 阅读:186 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种适用于多处理器系统的硬件同步电路结构,该硬件同步电路结构支持多个处理器通过一定的互联方式与其相联,提供了配置和访问接口;目标系统至少包括多个处理器、一个硬件同步电路结构和一个互斥信号量单元。本发明专利技术同时公开了一种实现多处理器系统的硬件同步电路结构的方法。本发明专利技术能够高效的实现多处理器通信和并行任务调度,而且简化多处理器的并行编程工作。该电路结构相对其他同步结构和方法简单易用,复杂度低,并且可以方便的整合到系统设计过程中。

【技术实现步骤摘要】

本专利技术涉及片上多处理器系统
,具体涉及一种。
技术介绍
随着多媒体、移动通信等技术的发展,人们对处理器运算能力的需求越来越高。然 而传统单核由于功耗、存储器带宽和工作频率等方面的条件制约,在性能提高上受到了较 大限制,因此提高处理器并行度成了提高其运算能力的新的突破口。多处理器体系结构有 效的提高计算的并行度,适应计算密集型应用的要求,然而在存储器数据一致性、软件编 程、任务调度方面,多处理器结构确引入的新的难点。在多核共享存储器设计中,处理器可以拥有自己的数据缓存器(Cache)。当一个 处理器修改了共享存储器数据时,必须通过一种同步机制,告诉其他处理器修改他们私有 Cache的数据,从而避免在以后的运行中使用过时数据而引发错误。并行程序设计中,同步 原语尤其重要,它是协调各个进程按照合理的顺序协作完成复杂任务的基础。例如在分布 式多媒体系统中,数据的传输、解码、音视频同步都需要精确的同步控制。同步设计已经成为了多处理器系统设计的关键。不同的多处理器系统都提供了相 应的硬件原语来支持这些同步操作。在分布式系统中,比如通过MPI协议构建的多处理器 系统中,就利用了栅栏同步(BarrierSynchronize)操作来确保多个进程的同步操作。其具 体的实现一般包括定时同步、中断控制等方式。定时同步多用在分布式网络操作系统的一种同步方式。如果一台节点处理器需要 其他节点并发完成某项任务,可以向其他节点发送带有定时信息的数据包。由于全网采用 同一时钟,其他节点根据接收数据包,将在同一时刻启动任务,从而达到同步目的。这种方 式适用于基于网络的大型分布式系统,具有较高的同步代价。而且同步数据包往往还会受 到网络阻塞等因素影响,而错过同步时间。另一种广泛使用的同步机制是中断(Interrupt),它在片上多处理器系统和多核 处理器系统上都有效。通过触发中断,强迫处理器暂停当前任务,与中断发起者同步完成某 一任务。但是不同的处理器中断响应速度不同,而且被动中断过程也无法精确定位中断前 处理器的程序执行状态,加大了软件开发的复杂度。避免由于“定时同步”和“中断”引起的同步开销和编程复杂度增加,就是确保同 步操作软件透明,由硬件自动完成。任何一个这样的操作都必须以单个指令执行,中间不能 中断,且为基本指令。这些原子操作的基本指令可以适用于各种体系结构的处理器。
技术实现思路
(一)要解决的技术问题有鉴于此,本专利技术的主要目的在于为多处理器系统提供一种适用于多处理器系统 的硬件同步电路结构及其实现方法,以满足多个处理器协作完成复杂任务时的调度与同步等要求。(二)技术方案 为达到上述目的,本专利技术提供的技术方案是这样的一种适用于多处理器系统的硬件同步电路结构,其特征在于,该硬件同步电路结 构由连接在系统总线101上的硬件同步单元电路构成,该硬件同步单元电路包括读使能 107、写使能104、读数据102、写数据105、读应答103和处理器ID号106,该硬件同步单元 电路还包括有效标志位108、同步请求寄存器109、同步完成寄存器110以及状态控制逻辑 单元111。优选地,所述有效标志位108用于记录该硬件同步单元电路是否被使用,同步请 求寄存器109用于记录需要进行同步操作的处理器编号,同步完成寄存器110用于记录已 经完成同步操作的处理器编号。优选地,所述系统总线101连接有读数据102、读应答103、写使能104、写数据 105、处理器ID号106和读使能107,其中,写数据105有效位宽和同步请求寄存器109、同 步完成寄存器110相同,每一比特分别对应一个处理器。优选地,所述处理器对硬件同步单元电路进行配置操作时,在获得该硬件同步单 元电路相关联信号量后,对其进行写操作,配置需要同步的处理器组。优选地,所述处理器对硬件同步单元电路进行读操作时,硬件同步单元电路根据 内部寄存器状态决定返回处理器的各类响应,而处理器通过分析读数据可得出已同步的处 理器信息以及该硬件同步单元电路的可使用情况。优选地,所述处理器对硬件同步单元电路进行读操作,包括以下多种结果1)、硬件同步单元电路有效标志位为0,读操作立即返回特定值,该值表示同步单 元未被使用;或者2)、硬件同步单元电路有效标志位为1,同步请求寄存器中对应该处理器位为0, 读操作立即返回特定值,该值表示该处理器并未被要求实现同步操作;或者3)、不向处理器返回值,使该处理器一直处于读操作未完成状态,等其同步请求寄 存器中列举的其他处理器全部进行同步操作后,修改同步单元电路状态,并向所有等待读 操作结果的处理器返回完成状态。一种适用于多处理器系统的硬件同步电路结构的目标系统,该目标系统至少包括 多个处理器、一个硬件同步电路结构和一个互斥信号量模块;所述多个处理器通过一定的 互联方式与硬件同步电路结构相连,可并发读操作访问该硬件同步电路结构,并可通过互 斥信号量模块对该硬件同步电路结构进行写操作访问。优选地,所述硬件同步电路结构由多个功能相同的硬件同步单元电路构成,每个 硬件同步单元电路包含有一个有效标志位和两个状态寄存器,有效标志位用于记录该同步 单元是否被使用,状态寄存器组用于记录需要同步的处理器组和已经同步的处理器组。优选地,所述硬件同步单元电路是处理器在存储空间中的一段地址空间,处理器 通过读该地址空间的地址完成同步操作,硬件同步单元电路可实现任意一组处理器的同步 操作;处理器可写该地址空间对硬件同步单元电路进行配置管理;一个互斥信号量单元与 一个硬件同步单元电路或者多个硬件同步电路相对应,该对应关系不是硬件上存在的关 联,是软件可设置的对应关系。优选地,所述硬件同步单元电路中状态寄存器长度与处理器个数对应,寄存器中 每一位唯一代表一个处理器。一种实现多处理器硬件同步电路结构的方法,该方法包括 处理器通过互斥信号量单元独占的对硬件同步单元电路进行写操作,配置硬件同 步单元电路,标记需要同步的处理器组;处理器对硬件同步单元电路进行读操作,在硬件同步单元电路中标记自己以完成 同步,等待其他处理器;硬件同步单元电路根据有效标志位、同步请求寄存器和同步完成寄存器,决定返 回何种响应信号给处理器;处理器读操作结束,根据返回值表示同步操作状态。优选地,所述处理器对硬件同步单元电路进行写操作,需申请互斥信号量;对于硬 件同步单元电路的写操作是独占式的访问,且如果处理器申请写操作不成功,则可选择阻 塞或者返回两种模式。优选地,所述硬件同步单元电路根据有效标志位、同步请求寄存器和同步完成寄 存器,决定返回何种响应信号给处理器,包括硬件同步单元电路有效标志位为0,读操作立即返回,返回值表示无效含义;或者硬件同步单元电路有效标志位为1,同步请求寄存器组中对应该处理器位为0,读 操作立即返回,返回值表示无效含义;或者硬件同步单元电路有效标志位为1,同步请求寄存器组中对应该处理器位为1,则 将同步完成寄存器中对应该处理器位置1,并检查同步请求寄存器与同步完成寄存器是否 相同;如果二者相同,释放寄存器中标记的全部处理器,完成同步,并将同步单元电路恢复 初始状态;否则阻塞该处理器。优选地,所述处理器读操作结束时,返回值表示同步操作状态,包含有已同步的处 理器信息以及该硬件同步单元电路的可本文档来自技高网
...

【技术保护点】
一种适用于多处理器系统的硬件同步电路结构,其特征在于,该硬件同步电路结构由连接在系统总线(101)上的硬件同步单元电路构成,该硬件同步单元电路包括读使能(107)、写使能(104)、读数据(102)、写数据(105)、读应答(103)和处理器ID号(106),该硬件同步单元电路还包括有效标志位(108)、同步请求寄存器(109)、同步完成寄存器(110)以及状态控制逻辑单元(111)。

【技术特征摘要】

【专利技术属性】
技术研发人员:许汉荆刘建陈杰
申请(专利权)人:中国科学院微电子研究所
类型:发明
国别省市:11[中国|北京]

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

1
相关领域技术
  • 暂无相关专利