当前位置: 首页 > 专利查询>谷歌公司专利>正文

具有二维执行通道阵列和二维移位寄存器的图像处理器上区块操作的核处理制造技术

技术编号:17009211 阅读:27 留言:0更新日期:2018-01-11 05:20
描述了一种方法,其包含在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,随着每个下一次的迭代将所述二维移位寄存器阵列的多个行或列的同时移位量加倍。该方法还包含在迭代的移位之间在所述二维执行通道阵列的相应的通道内执行一个或多个指令。描述了另一种方法,其包含在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,在执行通道阵列的相应通道内重复地执行一个或多个指令,该指令在相同的阵列位置的不同寄存器中的内容之间进行选择,所述相同的阵列位置在二维移位寄存器阵列中的数据的多个行或列的重复的同时移位之间。

【技术实现步骤摘要】
具有二维执行通道阵列和二维移位寄存器的图像处理器上区块操作的核处理
本专利技术的领域通常涉及图像处理,更具体地说,是具有二维执行通道阵列和二维移位寄存器的图像处理器上区块操作的核处理。
技术介绍
图像处理典型地包含被组织成为阵列的像素值的处理。在此,空间组织的二维阵列捕获图像的二维性质(附加维度可以包含时间(例如,二维图像的序列)和数据类型(例如,颜色)。在典型情况下,成阵列的像素值由已经产生静止图像或帧序列的相机提供,以捕获动作的图像。常规的图像处理器通常落在两个极端的任何一侧上。第一个极端将图像处理任务作为在通用处理器或类通用的处理器(例如,具有向量指令增强的通用处理器)上执行的软件程序来进行。尽管第一极端典型地提供了高度通用的应用软件开发平台,但是其更细颗粒度的数据结构结合与相关开销(例如,指令获取和解码、片上和片外数据的处理、推测性执行)的使用最终导致在执行程序代码期间,每单元数据消耗的能量更大。第二个相反的极端将固定功能的硬连线电路系统应用于更大的数据区块。更大(相对于更细的颗粒度)的数据区块直接应用于定制设计的固定功能电路,大大地减少了每数据单元的功率消耗。但是,定制设计的固定功能电路的使用通常导致处理器只可以进行有限的一组任务。如此,广泛万能的(与第一极端相关联的)编程环境在第二极端中是缺乏的。提供高度通用的应用软件的开发机会以及改善每数据单元的功率效率相结合的技术平台仍然是期望但却还缺失的解决方案。
技术实现思路
描述了一种方法,其包含在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,随着每个下一次的迭代将二维移位寄存器阵列的多个行或列的同时移位量加倍。该方法还包含在迭代的移位之间在二维执行通道阵列的相应的通道内执行一个或多个指令。描述了另一种方法,其包含在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,在执行通道阵列的相应通道内重复地执行一个或多个指令,该指令在相同的阵列位置的不同寄存器中的内容之间进行选择,所述相同的阵列位置在二维移位寄存器阵列中的数据的多个行或列的重复的同时移位之间。描述了一种设备,其包含构件,用于在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,随着每个下一次的迭代将所述二维移位寄存器阵列的多个行或列的同时移位量加倍。该设备还包含在迭代的移位之间在所述二维执行通道阵列的相应的通道内执行一个或多个指令的构件。描述了另一种设备,其包含构件,用于在具有二维执行通道阵列和二维移位寄存器阵列的图像处理器上,在执行通道阵列的相应通道内重复地执行一个或多个指令,该指令在相同的阵列位置的不同寄存器中的内容之间进行选择,所述相同的阵列位置在二维移位寄存器阵列中的数据的多个行或列的重复的同时移位之间。附图说明以下描述和附图用于说明本专利技术的各种实施例。在附图中:图1示出了技术平台的各种组件;图2a示出了用内核构建的应用软件的实施例;图2b示出了内核的结构的实施例;图3示出了内核的操作的实施例;图4a、4b和4c描绘了在较高级别的应用软件开发环境中开发内核线程的虚拟处理器的存储器模型的各个方面;图5a示出了以具有位置相对格式的加载指令写入的线程的实施例;图5b示出了具有不同像素密度的图像;图6示出了应用软件开发和仿真环境的实施例;图7示出了图像处理器硬件架构的实施例;图8a、8b、8c、8d和8e描绘了将图像数据解析成线组,将线组解析为表单和在具有重叠的模板的表单上进行的操作;图9a示出了模板处理器的实施例;图9b示出了模板处理器的指令字的实施例;图10示出了模板处理器中的数据计算单元的实施例;图11a、11b、11c、11d、11e、11f、11g、11h、11i、11j和11k描绘了使用二维移位阵列和执行通道阵列以确定具有重叠的模板的一对相邻的输出像素值的示例;图12示出了用于集成执行通道阵列和二维移位阵列的单元格的实施例;图13示出了二维行/列的求和操作;图14a、14b、14c和14d示出了用于实现二维行的求和操作的低级别操作;图15示出了二维前缀的求和操作;图16a、16b、16c和16d示出了用于实现二维前缀的求和操作的低级别操作;图17涉及二维查找最小值操作;图18a、18b、18c和18d示出了用于实现二维查找最小值操作的低级别操作;图19a和19b示出了矩阵乘法操作;图20a、20b、20c、20d和20e示出了通过二维移位寄存器实现矩阵乘法操作的低级别操作;图21示出了DFT操作;图22a、22b、22c、22d、22e和22f示出了通过二维移位寄存器实现DFT操作的低级别操作;图23示出了蝶形操作;图24a、24b和24c示出了通过二维移位寄存器实现的蝶形操作;图25示出了具有区块图像的基底图像和替代图像;图26a、26b、26c和26d示出了进行区块匹配算法的低级别操作;图27示出了用于产生目标为具有二维执行通道阵列和二维移位寄存器阵列的硬件平台的程序代码的环境;图28示出了计算系统的实施例。具体实施方式引言以下描述描述了关于新的图像处理技术平台的众多实施例,该技术平台提供了使用更大的数据区块(例如,下面进一步描述的线线组和表单)的广泛通用的应用软件开发环境,以提供改善的功率效率。1.0应用软件开发环境a.内核的应用和结构图1示出了图像处理器技术平台的高级别视图,其包含虚拟图像处理环境101、实际图像处理硬件103和编译器102,该编码器用于将为虚拟处理环境101编写的较高级别的代码翻译为实际硬件103物理执行的对象代码。如以下更详细描述的,虚拟处理环境101在可开发的应用方面是广泛通用的,并且被定制以便于应用的构成处理的容易地可视化。在由开发者104完成程序代码开发工作之后,编译器102将在虚拟处理环境101中编写的代码翻译成目标为实际硬件103的对象代码。图2a示出了在虚拟环境中写入的应用软件的结构和形式的示例。如图2a所示,程序代码可以期望是处理输入图像数据201的一个或多个帧,以影响一些在输入图像数据201上的总体变换。变换以程序代码201的一个或多个内核的操作实现,该程序代码操作在由开发人员表述的编排序列中的输入图像数据上。例如,如图2a所示,总体变换首先通过使用第一内核K1处理每个输入图像而被影响。由内核K1产生的输出图像然后通过内核K2操作。由内核K2产生的每个输出图像然后通过内核K3_1或K3_2操作。由(一个或多个)内核K3_1/K3_2产生的输出图像然后通过内核K4操作。内核K3_1和K3_2可以是设计为通过利用在K3阶段处的并行处理来加速总体处理的相同的内核,或者,可以是不同的内核(例如,内核K3_1操作在第一指定种类的输入图像上并且内核K3_2操作在第二个不同种类的输入图像上)。如此,较大的总体图像处理序列可以采用图像处理流水线或有向非周期图(DAG)的形式,并且可以通过正在开发的程序代码的代表来配备开发环境,用以实际呈现开发者。内核可以通过开发者单独地开发、和/或可以通过任何底层技术(例如其实际的信号处理器硬件和/或设计)的实体和/或通过第三方(例如,为开发环境而写入的内核软件的供应商)提供。如此,可以预料的是,名义上的开发环境将包含一个内核的“库(library)”,开发人员可以通过各种方式自由地“接合”本文档来自技高网...
具有二维执行通道阵列和二维移位寄存器的图像处理器上区块操作的核处理

【技术保护点】
一种含有程序代码的机器可读储存介质,所述程序代码在通过包括二维执行通道阵列和二维移位寄存器阵列的图像处理器处理时,引起所述图像处理器进行一种方法,所述方法包括:随着每个下一次的迭代,将所述二维移位寄存器阵列的多个行或列的同时移位量加倍;在迭代的移位之间在所述二维执行通道阵列的相应的通道内执行一个或多个指令。

【技术特征摘要】
2016.07.01 US 15/201,2691.一种含有程序代码的机器可读储存介质,所述程序代码在通过包括二维执行通道阵列和二维移位寄存器阵列的图像处理器处理时,引起所述图像处理器进行一种方法,所述方法包括:随着每个下一次的迭代,将所述二维移位寄存器阵列的多个行或列的同时移位量加倍;在迭代的移位之间在所述二维执行通道阵列的相应的通道内执行一个或多个指令。2.根据权利要求1所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的行或者列求和操作。3.根据权利要求1所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的行或者列前缀求和操作。4.根据权利要求1所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的查找最小值或者查找最大值操作,所述操作在相应的行或者列之上重复最小值或者最大值的索引值。5.根据权利要求1所述的机器可读储存介质,其中将所述二维移位寄存器阵列移位包括将所述二维寄存器阵列的内容围绕在所述二维移位寄存器阵列的相对的边缘。6.根据权利要求1所述的机器可读储存介质,其中所述方法用于进行以下任何:a)计算统计;b)抑制噪音;c)下采样;d)确定完整的图像;e)加速箱式过滤器;f)后处理区块匹配算法。7.一种含有程序代码的机器可读储存介质,所述程序代码在通过包括二维执行通道阵列和二维移位寄存器阵列的图像处理器处理时,引起所述图像处理器进行一种方法,所述方法包括:在所述执行通道阵列的相应通道内重复地执行一个或多个指令,该指令在相同的阵列位置的不同寄存器中的内容之间进行选择,所述相同的阵列位置在所述二维移位寄存器阵列中的数据的多个行或列的重复的同时移位之间。8.根据权利要求7所述的机器可读储存介质,其中所述方法还包括将所述同时移位的距离重复地加倍。9.根据权利要求8所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的行或者列前缀求和操作。10.根据权利要求8所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的查找最小值或者查找最大值操作,所述操作在相应的行或者列之上重复最小值或者最大值的索引值。11.根据权利要求7所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的行或者列前缀求和操作。12.根据权利要求7所述的机器可读储存介质,其中所述方法是在数据阵列的多个相应的行或者列上同时进行的查找最小值或者查找最大值操作,所述操作在相应的行或者列之上重复最小值或者最大值的索引值。13.根据权利要求7所述的机器可读储存介质,其中所述方法是用于快速傅里叶变换的蝴蝶操作。14.根据权利要求7所述的机器可读储存介质其中,所述方法用于进行以下任何:a)确定完整的图像;b)加速箱式过滤器;c)计算统计;d)后处理区块匹配...

【专利技术属性】
技术研发人员:A梅克斯纳DF芬切尔斯坦D帕特森WR马克JR雷德格雷夫O沙查姆
申请(专利权)人:谷歌公司
类型:发明
国别省市:美国,US

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

1