具有降低布线复杂度的移位寄存器制造技术

技术编号:18179420 阅读:34 留言:0更新日期:2018-06-09 21:27
描述了一种移位寄存器。所述移位寄存器包括多个单元和寄存器空间。所述移位寄存器包括具有用于接收移位数据的输入端和用于发送移位数据的输出端的电路,其中:i)物理地位于第一和第二逻辑有序单元之间的单元的电路被配置成不执行任何逻辑移位;ii)耦合以接收由紧接在前的逻辑有序单元所发送的移位数据的单元的电路包括用于将在指派了在正由所述移位寄存器执行的移位命令中所指定的移位量的输入端处接收到的数据写入到本地寄存器空间中的电路,以及,iii)耦合以将移位数据发送到紧接在后的逻辑有序单元的单元的电路包括用于从根据在上面接收到所述数据的输入端的移位量指派了递增的移位量的输出端发送数据的电路。

【技术实现步骤摘要】
【国外来华专利技术】具有降低布线复杂度的移位寄存器相关案例本申请要求2015年12月4日提交的标题为“ShiftRegisterWithReducedWiringComplexity”的美国临时申请No.62/263,530的权益,其通过引用整体地并入。
专利
一般地涉及计算科学,并且更具体地,涉及具有降低布线复杂度的移位寄存器。
技术介绍
图像处理通常涉及被组织成阵列的像素值的处理。这里,空间组织的二维阵列捕获图像的二维性质(附加维度可以包括时间(例如,二维图像的序列)和数据类型(例如,颜色))。在典型场景中,阵列化像素值由已生成静止图像或一系列帧以捕获运动图像的相机提供。传统的图像处理器通常落在两个极端的任一侧。第一极端将图像处理任务作为在通用处理器或通用类处理器(例如,具有矢量指令增强功能的通用处理器)上执行的软件程序来执行。尽管第一极端通常提供高度通用的应用软件开发平台,然而与相关开销(例如,指令预取和解码、片上和片外数据的处理、推测执行)组合的其对较细粒度的数据结构的使用最终导致在程序代码的执行期间每单位数据消耗更大量的能量。第二相反极端对大得多的数据块应用固定功能硬连线电路。直接应用于定制设计电路的较大(与较细粒度相对)数据块的使用大大地降低每单位数据的功耗。然而,定制设计固定功能电路的使用一般地产生处理器能够执行的一组有限的任务。因此,广泛通用的编程环境(其与第一极端相关联)在第二极端中缺乏。提供高度通用的应用软件开发机会以及每单位数据的改进的功率效率两者的技术平台仍然是所希望的但缺少的解决方案。
技术实现思路
描述了一种移位寄存器。所述移位寄存器包括多个单元和寄存器空间。所述移位寄存器包括具有用于接收移位数据的输入端和用于发送移位数据的输出端的电路,其中:i)物理地位于第一和第二逻辑有序单元之间的单元的电路被配置成不执行任何逻辑移位;ii)耦合以接收由紧接在前的逻辑有序单元所发送的移位数据的单元的电路包括用于将在指派了在正由所述移位寄存器执行的移位命令中所指定的移位量的输入端处接收到的数据写入到本地寄存器空间中的电路,以及,iii)耦合以将移位数据发送到紧接在后的逻辑有序单元的单元的电路包括用于从根据在上面接收到所述数据的输入端的移位量指派了递增的移位量的输出端发送数据的电路。描述了一种移位寄存器的单元,所述单元具有用于在相应的输入端上接收相应的数据项的装置,其中,所述输入端各自被指派了不同的相应的移位量。用于所述移位寄存器的所述单元也具有用于将在具有通过移位命令指定的移位量的所述输入端中的一个上接收到的所述数据项中的一个写入到寄存器空间中的装置。用于所述移位寄存器的所述单元也具有用于从与在上面相应地接收到所述数据项中的其它数据项的所述相应的输入端的那些移位量相比指派了递增更高的移位量的相应的输出端发送所述数据项中的所述其它数据项的装置,其中,所述递增较大的移位量小于通过所述移位命令指定的移位量。所述移位寄存器的所述单元也具有用于从寄存器空间读取数据项并且从指派了具有幅度为1的移位量的输出端发送所读取的数据项的装置。附图说明以下描述和附图用于图示本专利技术的实施例。在附图中:图1示出闭环移位寄存器;图2a示出具有未按照严格的逻辑次序布局的单元的闭环移位寄存器;图2b示出具有未按照严格的逻辑次序布局的单元并且在单个循环中支持不同移位量的闭环移位寄存器;图3示出用于在单个循环中支持不同移位量的改进的移位寄存器的架构;图4示出用于图3的移位寄存器的单元的支持逻辑电路的单位单元设计;图5a、图5b和图5c示出由移位寄存器进行的不同的移位操作;图6示出由具有与图5a、图5b和图5c的移位寄存器不同的物理布局的移位寄存器进行的移位操作;图7示出移位单位单元逻辑电路设计;图8示出双向移位寄存器;图9示出二维移位寄存器阵列;图10示出用于使用本申请的移位寄存器的二维移位寄存器阵列的设计;图11示出二维移位寄存器的水平和垂直移位寄存器之间的耦合;图12示出二维移位寄存器的水平和垂直移位寄存器单位单元电路之间的耦合;图13示出由如本文中所描述的移位寄存器执行的方法学;图14示出图像处理器的模板(stencil)处理器组件;图15示出计算系统。具体实施方式图1示出具有维度为八的示例性闭环移位寄存器电路100。这里,唯一数据被存储在八个单元中的每一个中。在移位命令后,每个寄存器的内容将针对除第八单元之外的所有单元使一个单元“向右”移位,所述第八单元使其内容滚回到第一单元。也就是说,单元0将使其内容移位到单元1中,单元1将使其内容移位到单元2中等,并且单元7将使其内容移位到单元0中。图1描绘移位寄存器的示例性物理布局。如图1中观察到的,这些单元物理地按照逻辑次序布局。也就是说,单元0物理地紧挨着单元1,单元1物理地紧挨着单元2等。物理地按照逻辑次序布局单元的问题是线101的长度。这里,如现有技术中所理解的,较长的线对于给定驱动强度来说对应于更多的电阻和电容并因此对应于较慢的传播延迟(或者相反地,如果将按与其它单元之间的较短长度的线相同的传播延迟而驱动线101,则单元7的输出驱动器有更多的功耗)。这里,信号线是RC占主导的。因此一旦中继器被插入,延迟就与距离成线性比例。假定线101与其它单元之间的较短线相比具有更长的传播延迟,即使与单元9可使其内容移位到单元0中相比,具有短得多的输出线的单元0至6可使其内容快得多地移位到其邻近单元,移位寄存器100的性能也受到线101限制。对上面刚刚描述的问题的解决方案是物理地按照与其逻辑次序不同的次序布局移位寄存器的单元。图2a演示用于图1的移位寄存器的这种方法。如图2a中观察到的,单元1物理地紧挨着单元5。通过物理地按照与其逻辑次序不同的次序物理布局单元,图2a的移位寄存器中的最长的线比图1的线101短,这进而对应于与图1的移位寄存器相比通过图2a的移位寄存器可能有更好的性能。图1和图2a的两个移位寄存器仅描绘+1移位寄存器(移位寄存器仅能够使数据内容向右移位一个逻辑单位单元的距离)。图2b示出图2a的在它被进一步设计成支持+2移位和+1移位情况下的移位寄存器。也就是说,在单个循环中,图2b的移位寄存器的任何单元可使其内容移位到其下一个逻辑邻居或其再下一个逻辑邻居中。例如,从图2b的直接布线,单元0可(经由线201)使其内容移位到单元1中,或者(经由线202)使其内容移位到单元2中。然而图2b的直接布线方法的问题是布线复杂度。简单地说,比较图2a和图2b,通过仅仅引入再一个逻辑移位,与图2a的电路相比大量较长的线被引入到图2b的电路中。对于较大维度移位寄存器(在单位单元的数目方面)和/或支持更宽范围的逻辑移位(例如,+1、+2、+3和+4)的移位寄存器来说布线复杂度问题使它本身恶化。利用r个寄存器,为了支持+n的移位,图2b的方法将需要r*n条线,其中最长的线为2*(n-1)个单位长度。因此,例如,对于期望更高的性能和减小的功耗的具有各式各样的逻辑移位选项的大维度移位寄存器来说,需要更好的移位寄存器设计。图3示出改进的移位寄存器设计300的物理架构。如图3中观察到的,移位寄存器300可被视为其支持逻辑具有上部部分301和下部部分302的单位单元。逻辑和物理移位发生在围绕移位寄存器的“回路本文档来自技高网...
具有降低布线复杂度的移位寄存器

【技术保护点】
一种移位寄存器,包括:多个单元;寄存器空间;以及电路,所述电路具有用于接收移位数据的输入端和用于发送移位数据的输出端,其中:i)物理地位于第一逻辑有序单元和第二逻辑有序单元之间的单元的电路被配置成不执行任何逻辑移位;ii)耦合以接收由紧接在前的逻辑有序单元所发送的移位数据的单元的电路包括用于将在被指派了移位量的输入端处接收到的数据写入到本地寄存器空间中的电路,所述移位量是在正由所述移位寄存器执行的移位命令中指定的,以及,iii)耦合以将移位数据发送到紧接在后的逻辑有序单元的单元的电路包括用于从下述输出端发送数据的电路:该输出端被指派了相对于接收到所述数据的输入端的移位量递增的移位量。

【技术特征摘要】
【国外来华专利技术】2015.12.04 US 62/263,530;2016.11.15 US 15/352,2601.一种移位寄存器,包括:多个单元;寄存器空间;以及电路,所述电路具有用于接收移位数据的输入端和用于发送移位数据的输出端,其中:i)物理地位于第一逻辑有序单元和第二逻辑有序单元之间的单元的电路被配置成不执行任何逻辑移位;ii)耦合以接收由紧接在前的逻辑有序单元所发送的移位数据的单元的电路包括用于将在被指派了移位量的输入端处接收到的数据写入到本地寄存器空间中的电路,所述移位量是在正由所述移位寄存器执行的移位命令中指定的,以及,iii)耦合以将移位数据发送到紧接在后的逻辑有序单元的单元的电路包括用于从下述输出端发送数据的电路:该输出端被指派了相对于接收到所述数据的输入端的移位量递增的移位量。2.根据权利要求1所述的移位寄存器,其中,以上iii)的所述电路还包括用于从其本地寄存器空间读取数据并且从指派了具有幅度为1的移位量的输出端发送所述数据的电路。3.根据权利要求1或权利要求2所述的移位寄存器,其中,所述单元被布置为使得所述移位寄存器按照所述单元物理地被布局的次序在通过所述移位寄存器的闭合回路中物理地传播数据。4.根据权利要求3所述的移位寄存器,其中,所述单元物理地被布置为使得移位沿着所述闭合回路在第一方向上或在第二方向上发生。5.根据任一前述权利要求所述的移位寄存器,其中,所述移位寄存器是双向移位寄存器。6.根据任一前述权利要求所述的移位寄存器,其中,所述移位寄存器是二维移位寄存器。7.根据权利要求6所述的移位寄存器,其中,所述二维移位寄存器是图像处理器的一部分。8.一种图像处理器,所述图像处理器包括根据权利要求6所述的二维移位寄存器,并且包括沿着所述二维移位寄存器的轴线的至少两个单元。9.一种方法,包括:在移位寄存器的单元处执行以下操作:在相应输入端上接收相应数据项,所述输入端各自被指派了不同的相应移位量;将在具有通过移位命令指定的移位量的所述输入端中的一个输入端上接收到的所述数据项中的一个数据项写入到寄存器空间中;从与相应地接收到所述数据项中的其它数据项的所述相应输入端的那些移位量相比被指派了递增更高的移位量的相应输出端发送所述其它数据项,所述递增更高的移位量小于通过所述移位命令所指定的所述移位量;以及,从寄...

【专利技术属性】
技术研发人员:杰森·鲁珀特·莱德格雷夫
申请(专利权)人:谷歌有限责任公司
类型:发明
国别省市:美国,US

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

1