使用缓冲器和存储器的数据重排序制造技术

技术编号:17746071 阅读:25 留言:0更新日期:2018-04-18 19:31
公开了用于将以非毗连次序接收的数据重排序为毗连次序的装置和方法。在所公开的技术的一个示例中,一种装置包括多个输入缓冲器、多个FIFO输出缓冲器以及重排序单元,该多个输入缓冲器包括至少第一先进先出(FIFO)输入缓冲器和第二FIFO输入缓冲器,该重排序单元被配置为将从图像传感器接收的非毗连数据的第一部分存储在第一输入缓冲器中,将接收的数据的第二部分存储在第二FIFO输入缓冲器中,将由该第一和第二FIFO输入缓冲器输出的相应像素的数据存储在该存储器中的第一地址位置处,并且根据次序遍历该存储器以将相应像素存储在FIFO输出缓冲器中。该装置因此可被用于在进一步图像处理之前对像素数据重排序。

【技术实现步骤摘要】
【国外来华专利技术】使用缓冲器和存储器的数据重排序背景传感器和其他电子组件产生作为可以使用中央处理单元(CPU)进一步处理的像素的数据。来自图像传感器的像素数据可以使用移动处理器行业接口格式以光栅次序发送到CPU。CPU可以对像素数据执行图像处理操作。这种基于像素的图像传感器可以被结合到各种消费产品中,例如相机、运动传感器、智能电话、汽车和平板。概述公开了用于对接收的数据流执行数据重排序操作的方法、装置和计算机可读存储介质。在一些示例中,使用多个FIFO缓冲器和存储器来处理从图像传感器接收的非毗连像素数据以重排序为光栅次序。通过使用所公开的技术执行重排序操作,可以改善系统性能和/或减少能量使用,同时还允许系统中的通用处理资源被应用于执行其他操作。在所公开的技术的一些示例中,一种具有重排序单元的装置被配置为将从数据流接收的数据重排序为毗连排序,所述装置包括多个输入缓冲器、存储器和多个输出FIFO缓冲器,每个输入缓冲器被配置为以先进先出(FIFO)次序输出数据。重排序单元被配置为控制缓冲器和存储器以便执行本文公开的重排序操作,并因此可以根据新的毗连排序来输出数据。提供本概要从而以简要形式引入将在下面具体实施例中进一步描述的概念的选择。本概要不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用来限制所要求保护的主题的范围。参考附图阅读以下详细描述,将更清楚所公开的实施例的前述和其他目标、特征和优点。附图简述图1是概述了如可在所公开的技术的某些示例中使用的示例性计算环境的框图。图2是概述了如可在所公开的技术的某些示例中使用的包括重排序单元的示例硬件的框图。图3是解说如可以在所公开的技术的某些示例中处理的非毗连和毗连的数据的图。图4是概述可以在所公开的技术的某些示例中执行的对数据进行重排序的示例方法的流程图。图5是描绘如可以在所公开的技术的某些示例中执行的数据的重排序的图。图6是概述可以在所公开的技术的某些示例中执行的对从图像传感器接收的像素数据进行重排序的示例方法的流程图。图7是概述了如根据所公开技术的某些示例可以处理的非毗连和毗连数据的另一示例的图。图8是描绘如根据所公开的技术的某些示例可以执行的非毗连像素数据的处理的图。图9是可用于实现所描述的一些实施例的示例计算系统的图示。图10是可以结合本文所述的技术中的至少一些技术来使用的示例移动设备。图11是可结合本文所述的技术中的至少一些技术来使用的示例云支持环境。详细描述一般考虑本公开是在代表性实施例的上下文中阐述的,所述代表性实施例不旨在以任何方式进行限制。如在本申请中使用的,单数形式“一”、“一个”和“该”包括复数形式,除非上下文清楚地另外指明。另外,术语“包括”意味着“开放性包含”。此外,术语“耦合”包含机械的、电气的、磁的、光学的、以及其它可行形式的将物体耦合或链接到一起,并且不排除耦合的物体之间的中间元件的存在。而且,如本文使用的术语“和/或”指短语中的项的任意一项或项组合。本文所述的系统、方法和装置不应被解释为以任何方式进行限制。相反,本公开针对各种所公开实施例的所有新颖的和非显而易见的特征和方面,既可以单独也可以彼此进行各种组合和子组合。所公开的系统、方法和装置不限于任何具体方面或特征或它们的组合,所公开的事物和方法也不要求存在任一个或多个具体优点或者解决问题。而且,所公开的实施例的任何特征或方面可在与彼此的任何组合和子组合中使用。尽管以特定的顺序次序描述所公开方法的一些的操作以便于方便呈现,但应当理解,这一描述方式包含重排,除非以下提出的具体语言要求特定的次序。例如,顺序描述的操作可以在一些情况下并行地重排或同时执行。此外,为简洁起见,附图可能不示出所公开的事物和方法可以结合其他事物和方法使用的各种方式。另外,本说明书有时使用像“产生”、“生成”、“显示”、“接收”、“发射”、“存储”、“重排序”、“执行”和“发起”等术语来描述所公开的方法。这些术语是所执行的实际操作的高等级描述。与这些术语相对应的实际操作将取决于特定实现而变化,且易于被本领域普通技术人员辨别。为了更好理解的目的,已经提供了本文中参考本公开的装置或方法呈现的操作理论、科学原理或其它理论描述,并且其不旨在对范围进行限制。所附权利要求中的装置和方法不限于以这些操作理论描述的方式起作用的那些装置和方法。所公开的方法中的任一个可被实现为存储在一个或多个计算机可读介质(例如,计算机可读介质,诸如一个或多个光学介质盘、易失性存储器组件(诸如DRAM或SRAM)或非易失性存储器组件(诸如硬驱动器))上并且在计算机(例如,任何可购买的计算机,包括智能电话或包含计算硬件的其它移动设备)上执行的计算机可执行指令。用于实现所公开的技术的计算机可执行指令中的任一个以及在所公开的实施例的实现期间创建和使用的任何数据可被存储在一个或多个计算机可读介质(例如,计算机可读存储介质)上。计算机可执行指令可以是例如专用软件应用或者经由web浏览器或其他软件应用(诸如远程计算应用)访问和下载的软件应用的一部分。这种软件可以例如在单个本地计算机(例如,在任何适当的商业可购买计算机上执行的线程)上或者使用一个或多个网络计算机在网络环境(例如,经由互联网、广域网、局域网、客户端-服务器网络(诸如云计算网络)、或者其他这样的网络)中执行。为清楚起见,仅描述了基于软件的实现方式的特定所选方面。省略了本领域公知的其他细节。例如,应当理解,所公开的技术不限于任何具体的计算机语言或程序。例如,所公开的技术可以通过以C、C++、Java或者任何其他适当的编程语言编写的软件来实现。同样,所公开的技术不限于任何特定的计算机或硬件类型。适当计算机和硬件的特定细节是公知的,并且不需要在本公开中详细提出。而且,基于软件的实施例(包括例如用于使计算机执行所公开方法的任一种的计算机可执行指令)中的任一者可以通过适当的通信手段被上载、下载或远程地访问。这种适当的通信手段包括例如互联网、万维网、内联网、软件应用、电缆(包括光纤电缆)、磁通信、电磁通信(包括RF、微波和红外通信)、电子通信或者其他这样的通信手段。对所公开的技术的介绍通常期望将从现实世界传感器接收的数据(例如从图像传感器接收的像素数据)对于传感器的每一行从传感器以非光栅次序发送。例如,以非毗连次序对像素排序可以降低功耗和/或改善这种传感器的性能。然而,应用于这种像素数据的图像处理技术通常是对以毗连(例如,光栅)次序排列的像素执行的。本文公开的某些装置和方法允许使用功率和/或空间高效的硬件将像素或其他这样的传感器数据排序为不同的次序。因此,在许多应用中期望通过支持将非光栅次序的信息传输和转换为光栅次序以供进一步下游处理来降低功耗。在一些示例中,装置和/或方法本质上是通用的,但是可以应用于可以呈现复杂但规则的模式的此类数据的不同的任意排序。在所公开的技术的一些示例中,期望使用有限量的存储资源来执行数据重排序(例如,像素重排序),例如,通过仅缓冲光栅图像的两个行。在一些示例中,行缓冲器可以具有比从图像传感器接收的相应光栅图像的宽度更小的宽度。在一些示例中,要被重排序的数据被流传输,换句话说,随着重排序操作被执行,数据的输入速率近似等于数据的输出速率。在一些示例中,只要在所接收的数据行之间有足本文档来自技高网...
使用缓冲器和存储器的数据重排序

【技术保护点】
一种被配置为将从数据流接收的数据重排序为毗连排序的装置,所述数据被根据第一排序排列,所述装置包括:多个输入缓冲器,包括第一输入缓冲器和第二输入缓冲器,所述输入缓冲器中的每一个被配置为以先进先出的次序输出由相应输入缓冲器存储的数据;以及重排序单元,被配置为:将所述接收的数据的第一部分存储在所述第一输入缓冲器中,所述第一部分包括第一多个数据单元,将所述接收的数据的第二部分存储在所述第二输入缓冲器中,所述第二部分包括第二多个数据单元,以及通过产生由所述第一输入缓冲器输出的第一数据单元和由所述第二输入缓冲器输出的第二数据单元来将所述数据重排序为第二次序。

【技术特征摘要】
【国外来华专利技术】2015.08.13 US 14/826,0311.一种被配置为将从数据流接收的数据重排序为毗连排序的装置,所述数据被根据第一排序排列,所述装置包括:多个输入缓冲器,包括第一输入缓冲器和第二输入缓冲器,所述输入缓冲器中的每一个被配置为以先进先出的次序输出由相应输入缓冲器存储的数据;以及重排序单元,被配置为:将所述接收的数据的第一部分存储在所述第一输入缓冲器中,所述第一部分包括第一多个数据单元,将所述接收的数据的第二部分存储在所述第二输入缓冲器中,所述第二部分包括第二多个数据单元,以及通过产生由所述第一输入缓冲器输出的第一数据单元和由所述第二输入缓冲器输出的第二数据单元来将所述数据重排序为第二次序。2.如权利要求1所述的装置,其特征在于,进一步包括:可寻址存储器,其中所述重排序单元被进一步配置为将由所述第一输入缓冲器和所述第二输入缓冲器产生的所述第一部分和所述第二部分存储为存储在所述可寻址存储器中的字。3.如权利要求2所述的装置,其特征在于,进一步包括:多个输出缓冲器,所述输出缓冲器中的每一个被配置为以相应的先进先出次序输出由相应的输出缓冲器存储的数据;以及其中所述重排序单元被进一步配置为将从所述存储器输出的所述第一数据单元和所述第二数据单元存储在所述输出缓冲器中的第一输出缓冲器中,由此产生经重排序的数据。4.如权利要求3所述的装置,其特征在于,所述重排序单元被进一步配置为:将所述第一部分的第三数据单元和所述第二部分的第四数据单元存储在所述存储器中的第二地址位置处;以及将所述第三数据单元和所述第四数据单元存储在所述输出缓冲器中的第二输出缓冲器中。5.如权利要求1-4中的任一项所述的装置,其特征在于,所述缓冲器中的每一个缓冲器被实现为以下中的至少一个或多个:移位寄存器、专用读取/写入FIFO缓冲器、或并行读取/写入FIFO缓冲器,并且其中所述缓冲器中的每个缓冲器是同步FIFO缓冲器或异步FIFO缓冲器。6.如权利要求1-5中任一项所述的装置,其特征在于,还包括图像传感器,其中所述图像传感器被配置为以非毗连次序将所述接收的数据生成为一系列像素,并且其中所述数据单元中的每个数据单元对应于所述一系列像素中的一个像素。7.如权利要求1-6中任一项所述的装置,其特征在于,所述重排序单元可操作以被重配置为将以不同于所述第一排序的第...

【专利技术属性】
技术研发人员:M·克什R·哈拉登
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

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

1