【技术实现步骤摘要】
本申请的各实施例涉及控制处理系统中的处理器之间的数据流。
技术介绍
处理系统总体上包括一个或者多个处理器(或者“处理单元”),比如中央处理单元(CPU)、数字信号处理器(DSP)和/或图形处理单元(GPU),仅给出一些示例。处理器通常被配置为执行计算机系统的操作,比如在处理系统内移动数据和/或操控数据。例如,程序的操作可以涉及到对数据项执行算术,比如乘法或者加法。一些处理器可以比其它处理器更适合特定任务。例如,CPU可以被设计为可以相当高效地处理多种操作的通用处理器,而DSP可以被具体地设计成它的架构对于数字信号处理的操作需要而被优化,而GPU可以被具体地设计用于处理图形数据。存在许多不同计算机编码语言,计算机程序员可以按照它们编写计算机程序,但是语言中的一些语言比其它语言更流行,例如C代码广泛地为计算机程序员所知。可以有用的是处理系统包括被设计为处理用常见计算机语言(比如C)编写的程序的代码,从而使得易于程序员编写可以由处理系统处理的代码。然而,在一些情形中,可以有益的是处理系统在专用处理器上执行特定类型的操作,这些操作适合用于执行那些特定类型的操作。例如,在DSP上而不是在CPU上执行用于数字信号处理的操作可能更高效(例如,在时间、功率和/或对处理资源的使用方面)。因此,可以在处理系统中包括两个或者更多处理器,由此操作可以由最适合执行操作的处理器执行。例如,处理系统可以包括可以在其上执行程序的主处理器(或者“程序处理器”)(例如,通用CPU)和适合执行特定类型的操作的专用处理器(例如,DSP或者GPU)。在程序处理器开始在程序内的特定类型的操作(例< ...
【技术保护点】
一种处理系统,包括:专用处理器,适合用于执行特定类型的操作;程序处理器,被配置为执行包括多个操作的程序,其中所述程序处理器被配置为使得所述程序的为所述特定类型的操作由所述专用处理器执行;一组两个或者更多个寄存器组,被配置为存储与所述特定类型的操作有关的数据;对接模块,被配置为通过以下各项来使用所述一组寄存器组来控制所述程序处理器与所述专用处理器之间的数据流:并发地:(i)向所述专用处理器提供对所述寄存器组中的存储用于当前操作的先前加载的数据的寄存器组的访问,由此允许所述专用处理器执行所述当前操作,以及(ii)访问所述寄存器组中的不同寄存器组以向所述寄存器组中的所述不同寄存器组中加载用于后续操作的数据以用于设立用于由所述专用处理器后续执行的所述后续操作;以及在所述专用处理器完成所述当前操作的执行之后,控制所述一组寄存器组以向所述专用处理器提供对来自所述一组寄存器组的所述寄存器组之一的用于所述后续操作的所述数据的访问,由此允许所述专用处理器执行所述后续操作。
【技术特征摘要】
2015.03.24 GB 1504979.41.一种处理系统,包括:专用处理器,适合用于执行特定类型的操作;程序处理器,被配置为执行包括多个操作的程序,其中所述程序处理器被配置为使得所述程序的为所述特定类型的操作由所述专用处理器执行;一组两个或者更多个寄存器组,被配置为存储与所述特定类型的操作有关的数据;对接模块,被配置为通过以下各项来使用所述一组寄存器组来控制所述程序处理器与所述专用处理器之间的数据流:并发地:(i)向所述专用处理器提供对所述寄存器组中的存储用于当前操作的先前加载的数据的寄存器组的访问,由此允许所述专用处理器执行所述当前操作,以及(ii)访问所述寄存器组中的不同寄存器组以向所述寄存器组中的所述不同寄存器组中加载用于后续操作的数据以用于设立用于由所述专用处理器后续执行的所述后续操作;以及在所述专用处理器完成所述当前操作的执行之后,控制所述一组寄存器组以向所述专用处理器提供对来自所述一组寄存器组的所述寄存器组之一的用于所述后续操作的所述数据的访问,由此允许所述专用处理器执行所述后续操作。2.根据权利要求1所述的处理系统,其中所述对接模块被配置为在步骤(ii)中使用对所述寄存器组中的所述不同寄存器组的所述访问以在用于所述后续操作的所述数据被加载到所述寄存器组中的所述不同寄存器组中之前从所述寄存器组中的所述不同寄存器组读取用于由所述专用处理器执行的先前操作的结果数据。3.根据权利要求1所述的处理系统,其中所述专用处理器被配置为向与所述一组寄存器组不同的存储器写入由所述专用处理器执行的操作的结果。4.根据权利要求3所述的处理系统,其中所述对接模块被配置为指示所述存储器中的哪些存储器地址是用于所述结果被写入到的有效地址。5.根据任一前述权利要求所述的处理系统,其中所述对接模块被配置为对于将由所述专用处理器执行的操作序列中的每个操作迭代并发步骤(i)和(ii)。6.根据任一前述权利要求所述的处理系统,其中所述对接模块被配置为控制所述一组寄存器组以响应于确定所述专用处理器已经完成所述当前操作的执行并且用于所述后续操作的所述数据已经被加载到所述寄存器组中的所述不同寄存器组中、来向所述专用处理器提供对来自所述寄存器组的所述寄存器组之一的用于所述后续操作的所述数据的访问。7.根据权利要求6所述的处理系统,其中所述对接模块被配置为维持对数据是否已经完成加载到所述寄存器组之一中以用于等待由所述专用处理器执行的操作的指示,其中所述对接模块被配置为使用所述指示以确定用于所述后续操作的所述数据是否已经被加载到所述寄存器组中的所述不同寄存器组中。8.根据任一前述权利要求所述的处理系统,其中在所述一组寄存器组中有两个寄存器组,其中所述寄存器组中的每个寄存器组被配置为在任何给定的时间耦合到所述专用处理器或者所述对接模块,其中所述对接模块被配置为控制对所述寄存器组的所述耦合,从而使得在所述专用处理器耦合到所述寄存器组中的第一寄存器组时,所述对接模块耦合到所述寄存器组中的第二寄存器组,并且反之亦然。9.根据权利要求8所述的处理系统,其中所述对接模块被配置为响应于确定所述专用处理器已经完成所述当前操作的执行并且用于所述后续操作的所述数据已经被加载到所述寄存器组中的所述不同寄存器组中、来转换所述寄存器组到所述专用处理器和所述对接模块的所述耦合。10.根据权利要求1至7中的任一权利要求所述的处理系统,其
\t中在所述一组寄存器组中有三个寄存器组,其中:所述寄存器组中的第一寄存器组耦合到所述对接模块;所述寄存器组中的第二寄存器组耦合到所述专用处理器;以及所述寄存器组中的第三寄存器组耦合到所述第二寄存器组;其中所述对接模块被配置为控制所述寄存器组,从而使得响应于确定所述专用处理器已经完成所述当前操作的执行并且用于所述后续...
【专利技术属性】
技术研发人员:P·默林,G·戴维斯,A·安德森,
申请(专利权)人:想象技术有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。