当前位置: 首页 > 专利查询>赛灵思公司专利>正文

用于异构多处理器系统中处理器间中断的机制技术方案

技术编号:15203008 阅读:85 留言:0更新日期:2017-04-22 20:45
本公开提供了用于在异构多处理器系统(100)中处理处理器间中断(IPI)的设备和方法。此处提供的可扩展IPI机制需要最少的逻辑,并且可以用于异构处理器间(诸如应用处理器、实时处理器和FPGA加速器间)的通信。这种机制在逻辑面积和可编程复杂度两方面也是低成本的。一个示例系统(100)通常包括第一处理器(102),具有与第一处理器不同的处理器类型的第二处理器(104)和IPI电路(108)。IPI电路通常包括与第一处理器相关联的第一寄存器(2020),其中第一寄存器中的第一比特指示第一处理器是否已请求中断第二处理器;以及与所述第二处理器相关联的第二寄存器(2021),其中所述第二寄存器中的第二比特指示所述第二处理器是否已请求中断所述第一处理器。

Mechanism for inter processor interrupts in heterogeneous multiprocessor systems

An apparatus and method for processing inter processor interrupts (IPI) in a heterogeneous multiprocessor system (100) is disclosed. The scalable IPI mechanism provided here requires minimal logic and can be used for communication between heterogeneous processors such as application processors, real-time processors, and FPGA accelerators. This kind of mechanism is also low cost in two aspects of logic area and programmable complexity. An example system (100) typically includes a first processor (102), a processor () and a IPI circuit (108) having a processor type different from the first processor. IPI is usually associated with the first processor circuit includes a first register contact (2020), wherein the first bit first register the instructions in the first processor has second processor interrupt request; and a second processor associated with second registers (2021), which indicates that the second second bit registers in the processor are second the first processor interrupt request.

【技术实现步骤摘要】
【国外来华专利技术】
本公开的例子总体上涉及处理器中断,具体而言,涉及异构多处理器系统中的处理器间中断。
技术介绍
集成电路(IC)可以被实施用来执行特定的功能。一种类型的IC为可编程IC,例如现场可编程门阵列(FPGA)。FPGA通常包括可编程片(programmabletiles)的阵列。这些可编程片可以包括,例如,输入/输出模块(IOB)、可配置逻辑模块(CLB)、专用随机存取存储器模块(BRAM)、乘法器、数字信号处理模块(DSP)、处理器、时钟管理器、延迟锁定环(DLL)等等。每个可编程片通常都包括可编程互连电路和可编程逻辑电路两者。可编程互连电路通常包括通过可编程互连点(PIP)互连的不同长度的大量互连线。可编程逻辑电路使用可编程元件来实现用户设计的逻辑,可编程元件可以包括例如函数发生器、寄存器、算术逻辑等等。可编程互连电路和可编程逻辑电路通常通过将配置数据流加载到内部配置存储器单元中来被编程,该内部配置存储器单元定义了可编程元件如何被配置。配置数据可以从存储器(例如,从外部PROM)读取或通过外部设备写入FPGA。从而各个存储器单元的集合状态确定了FPGA的功能。另一种类型的可编程IC是复杂可编程逻辑器件或CPLD。CPLD包括通过互连开关矩阵连接在一起并连接到输入/输出(I/O)资源的两个或更多个“功能块”。CPLD的每个功能块包括类似于在可编程逻辑阵列(PLA)和可编程阵列逻辑(PAL)器件中使用的两级AND/OR结构。在CPLD中,配置数据通常片上地存储在非易失性存储器中。在一些CPLD中,配置数据片上地存储在非易失性存储器中,然后作为初始配置(编程)序列的一部分下载到易失性存储器。对于所有这些可编程IC,器件的功能由为此目的提供给器件的数据比特控制。数据比特可以存储在易失性存储器(例如,静态存储器单元,如在FPGA和一些CPLD中的)、非易失性存储器(例如,FLASH存储器,如在一些CPLD中的)或任何其它类型的存储器单元中。通过应用处理层(processinglayer),例如金属层,可以对其它可编程IC进行编程,该应用处理层可编程地互连器件上的各种元件。这些可编程IC被称为掩模可编程器件(maskprogrammabledevice)。可编程IC还可以以其他方式(例如,使用熔丝或反熔丝技术)来实施。词组“可编程IC”可以包括但不限于这些器件,并且还可以包括仅部分可编程的器件,包括例如专用集成电路(ASIC)。例如,另一种类型的可编程IC包括硬编码晶体管逻辑(hard-codedtransistorlogic)和与该硬编码晶体管逻辑可编程互连的可编程开关结构(programmableswitchfabric)的组合。一些现代IC(包括上面讨论的IC的一些变形)包括能够执行程序代码的嵌入式处理器。该处理器可以作为一部分被制造在包括可编程逻辑电路和可编程互连电路(也统称为IC的“可编程电路”)的相同裸片(die)上。应当理解,处理器内的程序代码的执行可区别于在IC上可用的对可编程电路的“编程”或“配置”。编程或配置IC的可编程电路的动作导致了由可编程电路中的配置数据指定的不同实体电路的实施。
技术实现思路
本公开的示例大体上涉及管理异构多处理器系统中的处理器间中断。本公开的一个示例为一种系统。所述系统大体包括:第一处理器;具有与所述第一处理器不同的处理器类型的第二处理器;以及与所述第一处理器和所述第二处理器耦接的处理器间中断(IPI)电路。所述IPI电路通常包括:与所述第一处理器相关联的第一寄存器,其中所述第一寄存器中的第一比特指示所述第一处理器是否正在请求中断所述第二处理器;以及与所述第二处理器相关联的第二寄存器,其中所述第二寄存器中的第二比特指示所述第二处理器是否正在请求中断所述第一处理器。本公开的另一个示例为一种集成电路(IC)。所述IC通常包括:具有一个或多个硬连线处理器的处理系统(PS)部分,具有一个或多个具有实体可配置电路的软处理器的可编程逻辑(PL)部分,以及一个或多个处理器间中断(IPI)电路。每个IPI电路通常被配置为在不同处理器之间生成一个或多个中断信号,其中至少一个中断信号在所述PS部分中的所述硬连线处理器之一与所述PL部分中的所述软处理器之一之间。本公开的又一个示例是用于处理IPI的方法。所述方法通常包括:在IPI电路处接收来自第一处理器用以中断第二处理器的请求,其中所述第二处理器具有与所述第一处理器不同的处理器类型;基于所接收的请求,更新与所述第一处理器相关联的第一寄存器中的第一比特,其中所述第一比特指示所述第一处理器正在请求中断所述第二处理器;以及基于所述更新从所述IPI电路向所述第二处理器发送中断信号。附图说明为了可以详细地理解本公开的上述特征,可以通过参考示例来对上面简要概述的实施方式进行更具体的描述,其中一些示例在附图中示出。然而,应当注意,附图仅示出本公开的典型示例,因此不应被认为是对其范围的限制,因为本公开可以允许其他等效的示例。图1A示出了根据本公开的一个示例的示例异构多处理器系统;图1B示出了根据本公开的一个示例的使用互连的图1A的所述示例异构多处理器系统;图2示出了根据本公开的一个示例的图1A和1B的系统中的处理器间中断(IPI)控制器中的示例寄存器;图3示出了根据本公开的一个示例的用于基于图2中寄存器的内容产生中断的IPI控制器中的示例逻辑;图4示出了根据本公开的一个示例的具有可配置为实施不同实体电路的硬连线处理系统(PS)和可编程逻辑(PL)的示例集成电路(IC);图5示出了根据本公开的一个示例的图4的系统中的IPI控制器之一中的示例寄存器;图6示出了根据本公开的一个示例的用于基于图5中寄存器的内容产生中断的IPI控制器之一中的示例逻辑;图7是根据本公开的一个示例的用于在异构多处理器系统中处理中断的示例操作的流程图。具体实施方式本公开的示例提供了用于在异构多处理器系统中处理处理器间中断的技术和装置,其中至少一些处理器具有不同的特性并且可能不能直接中断另外的处理器。这里描述的处理器间中断(IPI)机制提供了IPI控制器作为各种处理器之间的IPI接口。IPI控制器包括用于每个IPI源的触发寄存器、用于每个IPI目标的状态寄存器和用于每个IPI目标的清除寄存器(clearregister),其中寄存器根据系统中的处理器的数量增加而扩展。这种可扩展的IPI机制使得诸如应用处理器、实时处理器和现场可编程门阵列(FPGA)加速器的多种处理器能够经由中断彼此通信。IPI机制在逻辑面积和可编程复杂度方面也都是低成本的。通用异构多处理器系统中的示例性IPI机制在具有多个处理器的系统中,可能期望各种处理器能彼此中断。IPI机制通常用于实施例如高速缓存一致性同步点(coherencysynchronizationpoint)、通信信道或邮箱。然而,多处理器系统可能包括不同性质的各种处理器,这些处理器可能不具有用于同步的内置结构并且不能彼此直接中断。如本文所使用的,词组“直接中断”通常是指一个处理器能够在没有中介的情况下中断另一个处理器(例如,通过从一个处理器向另一个处理器发送中断信号)。图1A示出了根据本公开的一个示例的示例异构多处理器系统100。如本公开所本文档来自技高网
...
用于异构多处理器系统中处理器间中断的机制

【技术保护点】
一种系统,其特征在于,所述系统包括:第一处理器;第二处理器,具有与所述第一处理器不同的处理器类型;以及处理器间中断(IPI)电路,与所述第一处理器和所述第二处理器耦接,并且包括:第一寄存器,与所述第一处理器相关联,其中所述第一寄存器中的第一比特指示所述第一处理器是否正在请求中断所述第二处理器;以及第二寄存器,与所述第二处理器相关联,其中所述第二寄存器中的第二比特指示所述第二处理器是否正在请求中断所述第一处理器。

【技术特征摘要】
【国外来华专利技术】2014.08.20 US 14/464,6541.一种系统,其特征在于,所述系统包括:第一处理器;第二处理器,具有与所述第一处理器不同的处理器类型;以及处理器间中断(IPI)电路,与所述第一处理器和所述第二处理器耦接,并且包括:第一寄存器,与所述第一处理器相关联,其中所述第一寄存器中的第一比特指示所述第一处理器是否正在请求中断所述第二处理器;以及第二寄存器,与所述第二处理器相关联,其中所述第二寄存器中的第二比特指示所述第二处理器是否正在请求中断所述第一处理器。2.根据权利要求1所述的系统,其特征在于,所述IPI电路还包括:第三寄存器,与所述第一处理器相关联,其中所述第三寄存器中的第三比特指示所述第一处理器是否被所述第二处理器中断;以及第四寄存器,与所述第二处理器相关联,其中所述第四寄存器中的第四比特指示所述第二处理器是否被所述第一处理器中断。3.根据权利要求2所述的系统,其特征在于,所述IPI电路还包括:第五寄存器,与所述第一处理器相关联,其中所述第五寄存器中的第五比特指示所述第三寄存器中的所述第三比特是否要被清除;以及第六寄存器,与所述第二处理器相关联,其中所述第六寄存器中的第六比特指示所述第四寄存器中的所述第四比特是否要被清除。4.根据权利要求1所述的系统,其特征在于,所述系统还包括耦接到所述IPI电路的第三处理器,其中所述第一寄存器中的第三比特指示所述第一处理器是否正在请求中断所述第三处理器,并且其中所述第二寄存器中的第四比特指示所述第二处理器是否正在请求中断所述第三处理器。5.根据权利要求4所述的系统,其特征在于,所述IPI电路包括逻辑门,用于在所述第一寄存器中的所述第三比特与所述第二寄存器中的所述第四比特之间应用逻辑或运算以产生用于所述第三处理器的中断信号。6.根据权利要求1所述的系统,其特征在于,所述系统还包括一个或多个附加处理器,其中所述第一寄存器包括一个或多个附加比特,用于指示所述第一处理器是否正在请求生成用于中断所述一个或多个附加处理器的相应中断信号,并且其中所述第二寄存器包括一个或多个附加比特,用于指示所述第二处理器是否正在请求生成...

【专利技术属性】
技术研发人员:A·R·安萨里F·伯顿
申请(专利权)人:赛灵思公司
类型:发明
国别省市:美国;US

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

1