CN103942018A - 分布式处理像素重叠部分的系统、方法和计算机程序产品 - Google Patents

分布式处理像素重叠部分的系统、方法和计算机程序产品 Download PDF

Info

Publication number
CN103942018A
CN103942018A CN201310752878.6A CN201310752878A CN103942018A CN 103942018 A CN103942018 A CN 103942018A CN 201310752878 A CN201310752878 A CN 201310752878A CN 103942018 A CN103942018 A CN 103942018A
Authority
CN
China
Prior art keywords
pixel
lap
processing
processing module
overlapping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310752878.6A
Other languages
English (en)
Inventor
戴维·怀亚特
托比·布特祖
哈瑞什·钱德勒·饶·乌图库如
大卫·马修·斯蒂尔斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of CN103942018A publication Critical patent/CN103942018A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/34Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
    • G09G3/36Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals
    • G09G3/3611Control of matrices with row and column drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1438Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using more than one graphics controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2352/00Parallel handling of streams of display data
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/18Timing circuits for raster scan displays

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

本发明提供用于分布式处理像素重叠部分的系统、方法和计算机程序产品。在使用中,标识要利用多个显示处理模块跨多个接口处理的多个像素。此外,根据显示处理模块和显示接口的数目将像素分摊到像素的多个重叠部分中。进一步地,以使部分可通过多个显示控制器重新组合成单个连续的最终图像的方式来跨显示处理模块和显示接口对像素的重叠部分的处理进行分布。

Description

分布式处理像素重叠部分的系统、方法和计算机程序产品
技术领域
本发明涉及处理像素,并且,更具体地,涉及在分布式处理环境中处理像素。
背景技术
按照惯例,出于各种原因,像素在输出到显示器上之前被处理。为了增加像素处理能力,已开发出在其中对像素的处理进行分布的系统。例如,单个图像中的不同组的像素可由不同处理模块来处理。不同的所处理的像素组的显示布置可能变化,诸如通过对组进行组合以在单个显示器上形成单个图像或通过将每个所处理的像素组输出到分开的显示器。在任何情况下,像素的分布式处理一般一直与各种限制相关联。
仅以示例的方式,所处理的像素组的布置常规地产生至少一个可视接缝(例如边),在该处一个所处理组的像素与另一所处理组的像素相邻。在这类示例中,两个所处理的像素组可以以左/右配置的方式加以组合,采用接缝作为中心的垂线,在该处位于左边的所处理的像素组与位于右边的所处理的像素组相遇。接缝的可见性可能通过由处理模块所实施的处理中的变形所导致,诸如当用于组的边内的像素与形成用于该组的边的像素被不同地处理时。在其他实施例中,当产生自特定组的处理的输出像素假定是源自该输出像素的邻近像素、但特定像素组不包括用于该输出像素的所有邻近像素时(例如输出像素是像素组的边),可能导致接缝的可见性。
因此存在对解决这些问题和与现有技术相关联的其他问题的需求。
发明内容
提供用于分布式处理像素重叠部分的系统、方法和计算机程序产品。在使用中,标识要利用多个处理模块和/或显示接口处理的多个像素。此外,根据处理模块的数目和显示接口的数目将像素分摊(apportion)到像素的多个重叠部分中。进一步地,跨处理模块对像素的重叠部分的处理进行分布。还有,跨显示接口对像素的重叠部分的传送进行分布。
附图说明
图1示出根据一个实施例的、用于分布式处理像素重叠部分的方法。
图2示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到显示器的方法。
图3示出根据又一实施例的、分摊到重叠部分中的图像。
图4示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到多个显示器的系统。
图5示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到单个显示器的系统。
图6示出根据又一实施例的、用于分布式处理像素重叠部分的、具有单个图形处理单元(GPU)的系统。
图7示出根据再一实施例的、用于分布式处理像素重叠部分的、具有多个GPU的系统。
图8示出根据另一实施例的、用于分布式处理像素重叠部分的系统,所述系统具有单个GPU、时序控制器、以及多个显示接口,所述时序控制器在其间具有双向通信。
图9示出根据另一实施例的、用于分布式处理像素重叠部分的系统,所述系统具有单个GPU、时序控制器、以及多个显示接口,所述时序控制器在其间具有单向通信。
图10示出根据另一实施例的、用于分布式处理像素重叠部分的系统,所述系统具有单个GPU、单个时序控制器、以及多个显示接口,所述时序控制器与线缓冲区通信。
图11示出在其中可实现各先前实施例的各架构和/或功能性的示例性系统。
具体实施方式
图1示出根据一个实施例的、用于分布式处理像素重叠部分的方法100。如操作102所示,标识要利用多个处理模块和/或多个显示接口处理的多个像素。像素可以是要利用处理模块处理的像素的任何集合。例如,像素可形成图像帧。
作为选项,像素可响应于从应用被接收而被标识。应用可以是基于应用的用户界面,诸如游戏界面、用户软件应用等。通过该方式,像素可响应于从应用被接收而被标识用于实施前述处理和其后续输出用于显示。
当然,应注意的是,可以以与利用处理模块的后续处理相关的任何其他方式标识像素。在一个实施例中,可通过像素管线接收像素,所述像素管线包括要被利用用于处理像素的处理模块。在各示例中,像素的这类处理可包括(例如图像帧的)缩放、抖动等。
此外,如操作104所示,根据处理模块的数目和显示接口的数目将像素分摊到像素的多个重叠部分中。处理模块可以是能够被利用来处理像素的(一个或多个图形处理器中的)任何处理电路。此外,显示接口可以是能够将所处理的像素传送到显示设备的、到显示设备的任何接口。
在本描述中,将像素分摊到重叠部分中可包括细分、分区、或以其他方式将像素分成至少部分重叠的像素组(即部分)。可以如上文所提到的以产生像素的重叠部分的任何预配置的方式将像素分摊。因此产生自分摊的重叠部分可采取任何预配置的形式。例如,像素可分摊到相邻的像素块。在另一示例中,像素可分摊到分开的行中。在任何情况中,可以以使来自这些部分的像素能够组合以形成单个连续图像帧的方式来将像素分摊。
这些部分重叠到的范围可被预定义并可以是特定的实施分摊的方式的结果。例如,这些部分重叠到的范围可被预定义为像素的子块,其中具体来讲重叠可以以像素的子块的形式。下文将参考后续示图描述像素的各部分的重叠性质的进一步示例。
在一个实施例中,可基于最终图像的大小、这些部分的数目和布置、以及每部分所要求的图像滤波的程度来计算这些部分重叠到的范围。可选地,重叠部分的所确定的重叠量可以是预先固定的或动态地编程到显示设备控制器中。
此外,像素的产生自分摊的这些部分中的每一个可关于像素的产生自分摊的其他部分中的至少一个而重叠。应注意的是,像素的这些部分的重叠性质可以使得重叠部分中的每一个具有与重叠部分中的至少另一个重叠的像素。在像素分摊到相邻块、行等中的实施例中,像素的每个特定部分(例如块)可以仅关于像素的其他部分(例如其他块)而重叠,其中像素的该特定部分与像素的其他部分是相邻的。
如上文所提到的,根据处理模块的数目和显示接口的数目来分摊像素。在处理模块对显示接口的比是一比一的一个实施例中,像素可分摊到数目与处理模块的数目(和相同数目的相应的显示接口)相同的重叠部分中,使得每个处理模块被指派重叠部分中的一个用于其处理。在处理模块对显示接口的比是一比多的另一实施例中,像素可分摊到数目是处理模块的数目的倍数(和与显示接口的数目相同)的重叠部分中,使得每个处理模块被指派相同数目的重叠部分用于其处理,并使得每个显示接口将不同的所处理的部分传送到显示设备。
进一步地,如操作106所示,跨处理模块对像素的重叠部分的处理进行分布。跨处理模块对重叠部分的处理进行分布可包括将重叠部分中的不同的一个(或多个)发送到处理模块中的每一个。如上文所提到的,处理可以是重叠部分的缩放、抖动等。这类分布可用来增加在操作102中所接收的像素的处理速度、增加应用到在操作102中所接收的像素的处理能力等。
仅作为示例,像素的重叠部分中的特定一个的处理可使用被包括在其中的、与重叠部分中的至少另一个重叠的像素的至少第一部分以处理被包括在其中的、不与重叠部分中的至少另一个重叠的像素的至少第二部分。因此,当处理非重叠像素时处理可考虑重叠的像素。
仅作为示例,当将(例如形成图像的)像素缩放到较大大小时,可通过生成附加到所标识的像素的新像素来实施缩放,所述所标识的像素用作对实施缩放的函数的输入。这些新像素中的每一个可通过将函数应用到新像素的邻近像素来具体地生成,诸如通过将函数应用到邻近像素的颜色分量或其他特征以确定新像素的颜色分量或其他特征。在针对像素的特定部分所生成的新像素位于相邻重叠部分中的两个之间的接缝(即边)的情况中,可使用关于像素的特定部分和像素的相邻部分重叠的邻近像素来生成新像素。因此,可通过在处理模块的缩放滤波器中重新使用邻近重叠部分的像素来达成对重叠部分中的每一个中的图像的缩放以形成单个连续的整图像帧。
作为另一示例,在形成用于像素的这些部分中的特定一个的边的像素(即外部(outer)像素)与在用于该特定部分的边内的像素(即内部(inner)像素)被不同地处理的情况中,重叠的像素可被包括在特定部分中,使得沿着像素的特定部分与另一相邻部分之间的接缝的像素视为内部像素,并因此作为内部像素处理。因此,作为将重叠的像素包括在像素的特定部分中的结果,特定部分的所有非重叠像素可视为内部像素,并因此得到相同处理。
为此,否则会出现在不具有重叠像素的像素的相邻部分之间的可见的接缝可被避免。例如,由于重叠的像素对特定处理模块不可用(例如无法使用邻近像素、处理外部像素中的变形等)所导致的、造成可见接缝的像素处理中的差别,可通过将与相邻部分中的一个重叠的像素(即位于接缝的另一侧)提供到处理模块来加以防止(并因此防止可见的接缝)。
进一步地,如操作108所示,跨显示接口对像素的重叠部分的传送进行分布。例如,每个显示接口可将重叠部分中的不同的一个传送到显示设备用于其显示。具体来讲,显示接口中的每一个可接收由处理模块中的一个所处理的重叠部分,并可将这类所处理的重叠部分传送到显示设备。应注意的是,可经由显示接口传送由处理模块所处理的重叠部分的整体,或可经由显示接口传送由处理模块所处理的重叠部分的子部分(例如在重叠部分已被丢弃(discard)的情况中),如下文所更详细描述的。为此,可以以使这些部分可通过多个显示控制器重新组合成单个连续的最终图像的方式来跨显示处理模块和显示接口对像素的重叠部分的处理进行分布。
现在将就各种可选架构和特征阐述更多示例性的信息,根据用户意愿可以或可以不采用其实现前述框架。应特别注意的是,仅出于示例性目的阐述下面的信息,并且不应视为以任何方式加以限制。任何下面的特征可以可选地被包含,排斥或不排斥所描述的其他特征。
图2示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到显示器的方法200。作为选项,本方法200可实行在图1的方法100的上下文中。然而当然,方法200可实行在任何期望的环境中。还应注意的是,可在本描述期间可应用前述定义。
如决策202所示,确定是否接收要处理的像素用于显示。例如,像素可接收自基于用户界面的应用用于以用户界面的形式输出到显示器上。然而在显示之前,可能要求像素的处理。例如,像素可能随着对由像素所形成的图像进行缩放、关于由像素所形成的图像实施抖动等的命令一起被接收。
如果确定没有接收要处理的像素用于显示,那么方法200继续等待要接收的像素。一旦确定接收要处理的像素用于显示,则标识处理模块的数目。注意操作204。数目可以是指示被利用来处理像素的处理模块的计数的任何数字值。
如操作206所示,像素随后分摊到数目与处理模块的数目相同的重叠部分中。可以以任何产生数目与处理模块的数目相同的部分的形式来实施分摊,其中这类产生的部分至少部分地相互重叠。当然,作为另一选项(未示出),像素可分摊到数目是处理模块的数目的倍数的重叠部分中。无论哪种情况,均可跨处理模块对像素进行分摊用于像素的这些部分的均匀分布。
如操作208所示,处理模块中的每一个随后处理重叠部分中的不同的一个。处理可包括生成要显示的最终像素的集合。例如,重叠部分中的不同的一个可输入到处理模块中的一个,并且处理模块可使用被输入的重叠部分的像素以生成要显示的最终像素的集合。这类处理可具体使用被输入的重叠部分的、与重叠部分中的至少另一个重叠的像素以生成要显示的最终像素的集合。
进一步地,针对所处理的部分中的每一个(其是产生自操作208的输出),丢弃与所处理的部分中的另一个重叠的像素。注意操作210。因此,针对所处理的部分中的每一个,可从针对该所处理的部分所生成的最终像素的集合中丢弃(例如移除)所处理的部分的、只包括与所处理的部分中的另一个重叠的像素的子部分。可以以任何期望的方式标识这类子部分用于其丢弃,诸如例如通过标记子部分的像素、随每个所处理的部分包括指示子部分的参数、从与所处理的部分中的另一个相邻的所处理的部分的每个边中标识预配置数目的像素、采用为所有所处理的部分指示子部分的常数提前进行预编程等。
作为选项,最终像素的集合可传送到显示设备,并且在显示最终像素的集合的剩余部分之前可由显示设备实施丢弃。作为另一选项,可由生成最终像素的集合的处理模块或由显示控制器、从而在发送到显示设备之前实施丢弃。由处理模块/显示控制器实施丢弃(与由显示设备相对)可通过减少传送到显示设备的像素的数目来减少将要显示的像素传送到显示设备所要求的带宽、可通过防止显示设备不得不确定丢弃哪些像素来减少位于显示设备上的互操作性负担,等等。
随后输出剩余像素用于显示,如操作212所示。例如,在由处理模块实施丢弃的情况中,在操作210的丢弃之后剩余的像素可输出到显示设备以由在显示剩余像素中由显示设备使用。作为另一示例,在由显示设备实施丢弃的情况中,在操作210的丢弃之后剩余的像素可输出到显示设备的显示面板。无论哪种情况,显示设备均可显示剩余像素(例如以形成由剩余像素所形成的、所处理的用户界面)。应注意的是,可使用多个显示接口以分布式方式实施操作212的输出,如上文关于图1的操作108所描述的。
图3示出根据又一实施例的、分摊到重叠部分中的图像300。作为选项,图像300可实行在图1-2的上下文中。然而当然,图像300可实行在任何期望的环境中。再一次地,还应注意的是,可在本描述期间应用前述定义。
如所示,图像300分摊到两个重叠部分302和304中。图像300包括多个像素,使得两个重叠部分302和304每个包括那些像素的重叠部分。具体来讲,重叠部分中的第一个302包括像素的第一部分,所述像素的第一部分与构成重叠部分中的第二个304的像素的第二部分至少部分地重叠。虽然以左/右配置示出重叠部分302和304,但应注意的是可以以关于图像300的任何配置诸如顶/底配置等来定义重叠部分302和304。
部分302和304重叠到的范围可被预配置,并可产生自特定方式,在该特定方式中利用函数来生成两个重叠部分302和304使图像300分摊。在呈现的实施例中,通过将被包括在部分302和304中的每一个中的像素块包括在部分302和304中的另一个中来使部分302和304重叠。
重叠部分302和304中的每一个被输入到分开的处理模块并由其所处理。因此,在呈现的实施例中,利用两个处理模块用于处理,即重叠部分302和304中的每一个被输入到两个处理模块中的不同一个并由其所处理。根据处理,由每个处理模块生成像素的最终集合。
被包括在为部分302和304中的特定一个所生成的像素的每个最终集合中的、与部分302和304中的另一个的像素重叠的像素随后被丢弃以形成要输出的像素的子部分306和308用于显示。如所示,生成从重叠部分中的第一个302中所生成的像素的最终集合,并且被包括在其中的、与重叠部分中的第二个304重叠的像素被丢弃以形成要输出的像素的第一子部分306用于显示。类似地,生成从重叠部分中的第二个304中所生成的像素的最终集合,并且被包括在其中的、与重叠部分中的第一个302重叠的像素被丢弃以形成要输出的像素的第二子部分308用于显示。
通过丢弃在两个部分302和304之间重叠的像素,剩余子部分306和308可在两个子部分306和308毗连的接缝310处进行组合。可随后显示毗连的子部分306和308。进一步地,通过以考虑被包括在像素的子部分306和308中的另一个中的像素(即,与像素的子部分306和308中的另一个重叠的像素)的方式来生成像素的子部分306和308中的每一个,当显示毗连的子部分306和308时可减少和/或防止接缝310的可见性。
图4示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到多个显示器的系统400。作为选项,系统400可实现在图1-3的环境的功能性的上下文中。然而当然,系统400可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
如所示,在呈现的实施例中示出为图形处理单元(GPU)的处理器402与多个显示设备404A-B通信。应注意的是,虽然处理器402示出为GPU,但处理器可以是能够处理要由显示设备404A-B所显示的像素的任何处理器(例如图形处理器等)。进一步地,虽然仅示出两个显示设备404A-B,但应注意的是,可由处理器402驱动任何数目的不同显示设备。
处理器402包括多个处理模块406A-B,其每一个与显示设备404A-B中的分开的一个通信并对其进行驱动。处理模块406A-B可以是处理器402的、能够在像素输出到显示设备404A-B之前处理像素的任何硬件或软件部件。例如,处理模块406A-B可以是像素管线的部件(像素管线的其他部件不一定在呈现的系统400中示出)。
处理模块406A-B可以与应用或从其可接收要被处理用于输出到显示设备404A-B的像素的其他系统400部件(未示出)通信。在呈现的实施例中,处理模块406A-B中的每一个接收(例如形成图像的)像素的集合的重叠部分中的各自一个用于其处理。处理模块406A-B可随后将产生自处理的像素的最终集合输出到显示设备404A-B。
显示设备404A-B每个包括时序控制器(TCON)408A-B以及显示面板410A-B。TCON408A-B可根据针对各自的显示设备404A-B所预配置的时序来将像素写入到显示面板410A-B,使得像素对查看各自的显示设备404A-B的用户可见。在一个实施例中,一经由显示设备404A-B中的每一个从处理模块406A-B的相应一个中接收到像素的最终集合,则显示设备404A-B可丢弃被包括在其中的、与由另一个显示设备404A-B所接收的像素的最终集合中的另一个重叠的像素。例如,单个显示设备504的TCON508可标识重叠的像素并丢弃所标识的重叠的像素。随后可使用TCON408A-B将在实施丢弃之后剩余的像素写入到显示设备404A-B的显示面板410A-B。因此,可防止被包括在像素的最终集合中的每一个中的重叠的像素写入到显示设备404A-B。
在另一实施例中,处理模块406A-B可每个标识重叠的像素并在将像素输出到各自的显示设备404A-B之前丢弃所标识的重叠的像素。因此,仅在实施丢弃之后剩余的像素可输出到显示设备404A-B。该实施例可允许显示设备404A-B中的每一个按惯例将所接收的像素写入到显示面板410A-B,而不要求显示设备404A-B配置为标识和丢弃重叠的像素。
图5示出根据另一实施例的、用于将像素的重叠部分的分布式处理的结果输出到单个显示器的系统500。作为选项,系统500可实现在图1-3的环境的功能性的上下文中。然而当然,系统500可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
如所示,在呈现的实施例中示出为图形处理单元(GPU)的处理器502,与单个显示设备504通信。应注意的是,虽然处理器502示出为GPU,但处理器可以是能够处理要由显示设备504所显示的像素的任何处理器(例如图形处理器等)。
处理器502包括多个处理模块506A-B,其每一个与单个显示设备504通信并对其进行驱动。处理模块506A-B可以是处理器502的、能够在像素输出到单个显示设备504之前处理像素的任何硬件或软件部件。例如,处理模块506A-B可以是像素管线的部件(像素管线的其他部件不一定在呈现的系统500中示出)。
处理模块506A-B可以与应用或从其可接收要被处理用于输出到单个显示设备504的像素的其他系统500部件(未示出)通信。在呈现的实施例中,处理模块506A-B中的每一个接收(例如形成图像的)像素的集合的重叠部分中的各自一个用于其处理。处理模块506A-B可随后将产生自处理的像素的最终集合输出到单个显示设备504。
单个显示设备504包括时序控制器(TCON)508以及显示面板510。TCON508可根据针对单个显示设备504所预配置的时序来将像素写入到显示面板510,使得像素对查看单个显示设备504的用户可见。在一个实施例中,一经由单个显示设备504从处理模块506A-B中接收到像素的两个最终集合,则单个显示设备504可丢弃被包括在像素的最终集合中的每一个中的、与由像素的最终集合中的另一个重叠的像素。例如,单个显示设备504的TCON508可标识重叠的像素并丢弃所标识的重叠的像素。
在另一实施例中,处理模块506A-B可每个标识重叠的像素并在将像素输出到单个显示设备504之前丢弃所标识的重叠的像素。因此,仅在实施丢弃之后剩余的像素可输出到单个显示设备504。该实施例可允许单个显示设备504按惯例将所接收的像素写入到显示面板510,而不要求单个显示设备504配置为标识和丢弃重叠的像素。
随后可使在实施丢弃之后剩余的像素通过单个显示设备504所毗连,并使用TCON508将其写入到单个显示设备504的显示面板510。因此,可防止被包括在像素的最终集合中的每一个中的重叠的像素写入到单个显示设备504。
图6示出根据又一实施例的、用于分布式处理像素重叠部分的具有单个图形处理单元(GPU)的系统600。作为选项,系统600可实现在图1-3的环境的功能性的上下文中。然而当然,系统600可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
如所示,在呈现的实施例中示出为GPU的处理器与多个时序控制器(TCON)通信,每个TCON与分开的显示设备相关联。在呈现的实施例中,处理器包括多个处理模块,其每一个与TCON中的各自一个通信。如所示,GPU经由分开的通信总线(分别示出为DP1和DP2)与TCON中的每一个通信。
处理模块中的每一个接收(例如形成图像的)像素的集合的重叠部分中的各自一个用于其处理。处理模块可每个随后经由相关联的TCON将产生自处理的像素的最终集合输出到各自的显示设备。如所示,随着时间,第一处理模块只通过第一通信总线(DP1)与第一TCON通信,使得针对由GPU所处理的每个图像,第一处理模块负责处理图像的第一重叠部分用于由显示设备中的第一个进行显示。类似地,随着时间,第二处理模块只通过第二通信总线(DP2)与第二TCON通信,使得针对由GPU所处理的每个图像,第二处理模块负责处理图像的第二重叠部分用于由显示设备中的第二个进行显示。
图7示出根据再一实施例的、用于分布式处理像素重叠部分的具有多个GPU的系统700。作为选项,系统700可实现在图1-3的环境的功能性的上下文中。然而当然,系统700可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
图7的系统700的操作类似于图6的该系统600,不同之处是图7的系统700包括多个GPU,其每一个与TCON中的不同一个通信。在呈现的实施例中,GPU中的每一个可包括多个处理模块,其中两个GPU的处理模块每个处理相同图像帧的重叠部分。如所示,在GPU之间建立双向通信,以促进图像帧的重叠部分的分摊和相关联的分布。
图8示出根据另一实施例的、用于分布式处理像素重叠部分的系统800,所述系统800具有单个GPU、时序控制器、以及多个显示接口,所述时序控制器在其间具有双向通信。作为选项,系统800可实现在图1-3的环境的功能性的上下文中。然而当然,系统800可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
图8的系统800的操作类似于图6的该系统600,不同之处是双向通信建立在图8的系统800中的TCON之间。这类通信可促进跨显示接口(示出为源极驱动器和栅极驱动器)来分布式传送图像帧的所处理的重叠部分。如所示,TCON中的每一个与显示接口的不同子集通信,用于以分布式方式将图像帧的所处理的重叠部分传送到显示设备。具体来讲,图像帧的每个所处理的重叠部分经由不同的源极驱动器/栅极驱动器对来传送,使得所处理的部分写入到显示设备的显示屏的、与源极驱动器/栅极驱动器对的行/列地址相关联的部分。
图9示出根据另一实施例的、用于分布式处理像素重叠部分的系统900,所述系统900具有单个GPU、时序控制器、以及多个显示接口,所述时序控制器在其间具有单向通信。作为选项,系统900可实现在图1-3的环境的功能性的上下文中。然而当然,系统900可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
图9的系统900的操作类似于图6的该系统600,不同之处是单个GPU与两个TCON通信以驱动四个显示设备。单向通信建立在TCON之间以促进由GPU所处理的图像帧的重叠部分的分布式传送。如所示,第一TCON从GPU接收图像帧的、要分别由显示设备#1和#3所显示的两个所处理的重叠部分,而第二TCON从GPU接收图像帧的、要分别由显示设备#2和#4所显示的两个所处理的重叠部分。TCON之间的单向通信使能图像帧的所处理的重叠部分的分布式传送,使得所处理的每一个传送到控制显示设备中的一个的特定部分的不同的源极驱动器/栅极驱动器对。
图10示出根据另一实施例的、用于分布式处理像素重叠部分的系统,所述系统具有单个GPU、单个时序控制器、以及多个显示接口,所述时序控制器与线缓冲区通信。作为选项,系统1000可实现在图1-3的环境的功能性的上下文中。然而当然,系统1000可实现在任何期望的环境中。还应注意的是,可在本描述期间应用前述定义。
如所示,单个GPU与单个TCON通信以提供图像帧的重叠部分的分布式处理和进一步的到显示设备的传送。GPU交替地经由两个通信总线(D1和D2)将图像帧的所处理的重叠部分与TCON通信。此外,在将接收自GPU的图像帧的所处理的重叠部分以分布式方式经由各显示接口(即源极驱动器/栅极驱动器对)传送到显示器之前,TCON使用线缓冲区以存储这类部分。
图11示出在其中可实现各先前实施例的各架构和/或功能性的示例性系统1100。如所示,提供了系统1100,其包括至少一个连接到通信总线1102的主机处理器1101。系统1100还包括主存储器1104。控制逻辑(软件)和数据存储在可采取随机存取存储器(RAM)形式的主存储器1104中。
系统1100还包括图形处理器1106以及显示器1108,即计算机监视器。在一个实施例中,图形处理器1106可包括多个着色器模块、光栅化模块等。前述模块中的每一个实际上可布置于单个半导体平台上以形成图形处理单元(GPU)。
在本描述中,单个半导体平台可以指单独一个的基于半导体的集成电路或芯片。应注意的是,术语单个半导体平台还可以指具有增强的连通性的多芯片模块,其仿真片上操作,并通过利用常规中央处理单元(CPU)和总线实现方案做出实质的改进。当然,各模块还可根据用户的期望分开地或以半导体平台的各种组合来布置。
系统1100还可包括二级存储1110。二级存储1110包括例如硬盘驱动器和/或表示软盘驱动器、磁带驱动器、压缩光盘驱动器等的可移动存储驱动器。可移动存储驱动器以公知的方式从可移动存储单元读取和/或写入到可移动存储单元。
计算机程序或计算机控制逻辑算法可存储在主存储器1104和/或二级存储1110中。这类计算机程序当被执行时使得系统1100能够实施各种功能。存储器1104、存储1110和/或任何其他存储是计算机可读介质的可能的示例。
在一个实施例中,可在以下内容的上下文中实现各先前示图的架构和/或功能性:主机处理器1101、图形处理器1106、能够具有主机处理器1101和图形处理器1106二者的能力的至少一部分的集成电路(未示出)、芯片集(即设计为作为用于实施相关功能的单元来工作和出售的集成电路组等)和/或用于此的任何其他集成电路。
还有就是,可在以下内容的上下文中实现各先前示图的架构和/或功能性:通用计算机系统、电路板系统、专用于娱乐目的的游戏机系统、特定于应用的系统和/或任何其他所期望的系统。例如,系统1100可采取台式计算机、膝上型计算机、和/或任何其他类型的逻辑的形式。还有就是,系统1100可采取各种其他设备的形式,包括但不限于个人数字助理(PDA)设备、移动电话设备、电视机等。
进一步地,虽然未示出,但系统1100可耦连到网络(例如电信网络、局域网(LAN)、无线网、诸如互联网的广域网(WAN)、对等网络、电缆网络等等)用于通信目的。
虽然上文已描述了各实施例,但应理解的是它们通过仅示例而非限制的方式加以呈现。因此,优选实施例的宽度和范围不应被上文所述的示例性实施例中的任何一个所限制,而应仅根据下面的权利要求和其等同物来加以限定。

Claims (23)

1.一种方法,包括:
标识要利用多个显示处理模块和/或多个显示接口处理的多个像素;
根据所述处理模块的数目和所述显示接口的数目将所述像素分摊到所述像素的多个重叠部分中;
跨所述处理模块对所述像素的所述重叠部分的处理进行分布;以及
跨所述显示接口对所述像素的所述重叠部分的传送进行分布。
2.根据权利要求1所述的方法,其中来自所述部分的所述像素能够被组合以形成单个连续的图像帧。
3.根据权利要求1所述的方法,其中所述像素响应于从应用被接收而被标识。
4.根据权利要求1所述的方法,其中所述像素分摊到与所述处理模块和/或显示接口的所述数目至少相同数目的重叠部分中。
5.根据权利要求1所述的方法,其中所述重叠部分中的每一个具有与所述重叠部分中的至少另一个重叠的像素。
6.根据权利要求1所述的方法,其中所述像素分摊到相邻像素块中使得所述重叠部分中的每一个是所述相邻像素块中的一个。
7.根据权利要求6所述的方法,其中针对所述重叠部分中的每一个,所述重叠部分具有与和所述重叠部分相邻的其他所述重叠部分重叠的像素。
8.根据权利要求1所述的方法,其中对所述重叠部分中的每一个中的所述图像进行缩放以形成单个连续的整图像帧通过在缩放滤波器中重新使用邻近重叠部分的像素来达成。
9.根据权利要求1所述的方法,其中所述部分重叠到的范围基于最终图像的大小、所述部分的数目和布置、以及每部分所要求的图像滤波的程度来计算。
10.根据权利要求1所述的方法,其中所述重叠部分的所确定的重叠量可以是预先固定的或动态地编程到显示设备控制器中。
11.根据权利要求9所述的方法,其中所述部分重叠到的所述范围被预定义为像素的子块。
12.根据权利要求1所述的方法,其中跨所述处理模块对所述重叠部分的处理进行分布包括向所述处理模块中的每一个发送所述重叠部分中的不同的一个。
13.根据权利要求1所述的方法,其中所述处理包括缩放。
14.根据权利要求1所述的方法,其中所述处理包括抖动。
15.根据权利要求1所述的方法,其中所述处理模块是单个图形处理器的部件。
16.根据权利要求1所述的方法,其中所述处理模块是多个图形处理器的部件。
17.根据权利要求1所述的方法,其中所述重叠部分中的每一个的所述处理使用被包括在其中的、与所述重叠部分中的至少另一个重叠的像素的至少第一部分以处理被包括在其中的、不与所述重叠部分中的至少另一个重叠的像素的至少第二部分。
18.根据权利要求1所述的方法,其中被包括在产生自所述处理的所述输出中的重叠的像素由显示控制器所丢弃。
19.根据权利要求18所述的方法,其中所述重叠的像素在显示在显示设备的屏幕上之前被丢弃。
20.根据权利要求19所述的方法,其中所述重叠的像素由显示控制器所丢弃,并且所述输出中的所述像素中的剩余一些由所述显示设备所显示。
21.一种具体化在非暂时性计算机可读介质上的计算机程序产品,包括:
计算机代码,用于标识要利用多个显示处理模块和/或多个显示接口处理的多个像素;
计算机代码,用于根据所述处理模块的数目和所述显示接口的数目将所述像素分摊到所述像素的多个重叠部分中;
计算机代码,用于跨所述处理模块对所述像素的所述重叠部分的处理进行分布;以及
计算机代码,用于跨所述显示接口对所述像素的所述重叠部分的传送进行分布。
22.一种设备,包括:
处理器,其用于:
标识要利用多个显示处理模块和/或多个显示接口处理的多个像素;
根据所述处理模块的数目和所述显示接口的数目将所述像素分摊到所述像素的多个重叠部分中;
跨所述处理模块对所述像素的所述重叠部分的处理进行分布;以及
跨所述显示接口对所述像素的所述重叠部分的传送进行分布。
23.根据权利要求22所述的设备,其中所述处理器经由总线与存储器和显示器维持通信。
CN201310752878.6A 2013-01-18 2013-12-31 分布式处理像素重叠部分的系统、方法和计算机程序产品 Pending CN103942018A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/745,705 US20140204005A1 (en) 2013-01-18 2013-01-18 System, method, and computer program product for distributed processing of overlapping portions of pixels
US13/745,705 2013-01-18

Publications (1)

Publication Number Publication Date
CN103942018A true CN103942018A (zh) 2014-07-23

Family

ID=51064362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310752878.6A Pending CN103942018A (zh) 2013-01-18 2013-12-31 分布式处理像素重叠部分的系统、方法和计算机程序产品

Country Status (4)

Country Link
US (1) US20140204005A1 (zh)
CN (1) CN103942018A (zh)
DE (1) DE102013114306A1 (zh)
TW (1) TW201430763A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108230229A (zh) * 2018-01-04 2018-06-29 上海兆芯集成电路有限公司 图像处理装置以及图像处理方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105474300B (zh) * 2013-09-27 2018-07-13 英特尔公司 显示器接口分区
GB2533565A (en) * 2014-12-18 2016-06-29 Stmicroelectronics (Research & Development) Ltd A method, apparatus and system
KR102329233B1 (ko) * 2015-04-29 2021-11-19 엘지디스플레이 주식회사 표시장치
CN107633477B (zh) * 2017-10-20 2021-04-20 上海兆芯集成电路有限公司 图像处理方法及其装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425026B1 (en) * 2000-02-23 2002-07-23 Teranex, Inc. Distribution, processing, and reconstruction of variable-sized images using multiple processor arrays
US6825845B2 (en) * 2002-03-28 2004-11-30 Texas Instruments Incorporated Virtual frame buffer control system
CN101080705A (zh) * 2004-12-17 2007-11-28 辉达公司 具有集成无线电路的图形处理器
US7969444B1 (en) * 2006-12-12 2011-06-28 Nvidia Corporation Distributed rendering of texture data
CN102867168A (zh) * 2011-07-04 2013-01-09 光宝新加坡有限公司 图像提取系统及其图像处理方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6414682B1 (en) * 1998-12-28 2002-07-02 Microsoft Corporation System and method for transitioning between two filters, allowing for the use of higher order interpolation
US7733533B2 (en) * 2006-04-06 2010-06-08 Infoprint Solutions Company Llc Generating threshold values in a dither matrix
CN101639930B (zh) * 2008-08-01 2012-07-04 辉达公司 一连串绘图处理器处理绘图数据的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425026B1 (en) * 2000-02-23 2002-07-23 Teranex, Inc. Distribution, processing, and reconstruction of variable-sized images using multiple processor arrays
US6825845B2 (en) * 2002-03-28 2004-11-30 Texas Instruments Incorporated Virtual frame buffer control system
CN101080705A (zh) * 2004-12-17 2007-11-28 辉达公司 具有集成无线电路的图形处理器
US7969444B1 (en) * 2006-12-12 2011-06-28 Nvidia Corporation Distributed rendering of texture data
CN102867168A (zh) * 2011-07-04 2013-01-09 光宝新加坡有限公司 图像提取系统及其图像处理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108230229A (zh) * 2018-01-04 2018-06-29 上海兆芯集成电路有限公司 图像处理装置以及图像处理方法
CN108230229B (zh) * 2018-01-04 2021-07-06 格兰菲智能科技有限公司 图像处理装置以及图像处理方法

Also Published As

Publication number Publication date
US20140204005A1 (en) 2014-07-24
DE102013114306A1 (de) 2014-07-24
TW201430763A (zh) 2014-08-01

Similar Documents

Publication Publication Date Title
CN103942018A (zh) 分布式处理像素重叠部分的系统、方法和计算机程序产品
US10110936B2 (en) Web-based live broadcast
CN109597965B (zh) 基于深度神经网络的数据处理方法、系统、终端及介质
JP6503061B2 (ja) 画像合成方法、画像チップ及び画像デバイス
CN111161195B (zh) 一种特征图处理方法、装置、存储介质及终端
US9208752B2 (en) Method for synchronous representation of a virtual reality in a distributed simulation system
US9753532B2 (en) Image processing method and image processing apparatus
CN109725701B (zh) 显示面板和装置、图像处理方法和装置、虚拟现实系统
JP2012185697A (ja) 画像処理装置、画像処理方法及びプログラム
CN104599235A (zh) 一种图像处理方法和装置
CN112053419A (zh) 图像叠加处理方法及装置、存储介质、电子装置
WO2016095474A1 (en) Display data transmission method and apparatus, display panel drive method and apparatus
CN108228074A (zh) 展示控制方法、展示系统、电子设备和计算机可读介质
CA2855819C (en) Graphics processing apparatus, display apparatus for an aircraft cockpit, and method for displaying graphical data
US11211035B1 (en) System and method for causing graphical information to be rendered
US9865075B2 (en) Graphics processing apparatus and graphics processing method
WO2023198190A1 (zh) 一种图像显示方法、装置、终端设备及存储介质
CN104700788A (zh) 一种显示面板的驱动装置及显示面板
US20170076702A1 (en) Systems and methods for graphical layer blending
CN112328532B (zh) 多gpu通信的方法及装置、存储介质、电子装置
US11501134B2 (en) Convolution operator system to perform concurrent convolution operations
CN106851213A (zh) 监控系统中云平台的分组任务分配方法及系统
JP2014164551A (ja) 画像処理lsi及び画像処理プログラム
JP5708303B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP5968497B2 (ja) 制御方法、システム及びプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140723