CN103620667B - 用于使用色场顺序显示器生成图像的方法和设备 - Google Patents
用于使用色场顺序显示器生成图像的方法和设备 Download PDFInfo
- Publication number
- CN103620667B CN103620667B CN201280031428.1A CN201280031428A CN103620667B CN 103620667 B CN103620667 B CN 103620667B CN 201280031428 A CN201280031428 A CN 201280031428A CN 103620667 B CN103620667 B CN 103620667B
- Authority
- CN
- China
- Prior art keywords
- data
- pixel
- frame
- color
- image
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title abstract description 79
- 230000004888 barrier function Effects 0.000 claims description 33
- 239000003086 colorant Substances 0.000 claims description 9
- 239000004973 liquid crystal related substance Substances 0.000 claims description 2
- 238000005070 sampling Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 103
- 238000012856 packing Methods 0.000 abstract description 32
- 238000003860 storage Methods 0.000 description 53
- 230000015654 memory Effects 0.000 description 38
- 230000008569 process Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 29
- 238000005516 engineering process Methods 0.000 description 19
- 238000013316 zoning Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 12
- 239000000284 extract Substances 0.000 description 11
- 239000012634 fragment Substances 0.000 description 11
- 238000009826 distribution Methods 0.000 description 9
- 238000005286 illumination Methods 0.000 description 8
- 238000000605 extraction Methods 0.000 description 7
- 235000019587 texture Nutrition 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000007688 edging Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005520 cutting process Methods 0.000 description 3
- 238000011068 loading method Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 244000287680 Garcinia dulcis Species 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003750 conditioning effect Effects 0.000 description 2
- 230000004438 eyesight Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000012884 algebraic function Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005282 brightening Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 235000019580 granularity Nutrition 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 235000019615 sensations Nutrition 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000011273 social behavior Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control 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/34—Control 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/3406—Control of illumination source
- G09G3/3413—Details of control of colour illumination sources
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control 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/34—Control 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/36—Control 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/3611—Control of matrices with row and column drivers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2310/00—Command of the display device
- G09G2310/02—Addressing, scanning or driving the display screen or processing steps related thereto
- G09G2310/0235—Field-sequential colour display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2320/00—Control of display operating conditions
- G09G2320/02—Improving the quality of display appearance
- G09G2320/0209—Crosstalk reduction, i.e. to reduce direct or indirect influences of signals directed to a certain pixel of the displayed image on other pixels of said image, inclusive of influences affecting pixels in different frames or fields or sub-images which constitute a same image, e.g. left and right images of a stereoscopic display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/16—Determination of a pixel data signal depending on the signal applied in the previous frame
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/001—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
- G09G3/003—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to produce spatial visual effects
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/04—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using circuits for interfacing with colour displays
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
本发明的一个实施例阐述用于生成视频帧数据并将视频帧数据从图形处理单元(GPU)传送到色场顺序显示设备的方法。包括逐像素打包的颜色通道的帧缓冲区图像被变换为包括与颜色子场区之间插入垂直消隐区的颜色通道相对应的区的帧缓冲区图像。经变换的帧缓冲区图像的每个区被顺序地传送到色场顺序显示设备用于相应颜色通道的显示。由GPU控制每个颜色通道的背光照明用于在垂直消隐间隔期间与每个颜色通道的显示进行时间对齐。GPU可基于相应的先前的颜色通道值对单独像素的颜色通道值进行补偿,以最小化相邻色场之间的串扰。
Description
相关申请的交叉引用
本申请要求于2011年5月10日所提交的序列号为13/104,867的美国专利申请和2011年5月10日所提交的序列号为13/104,876的美国专利申请的优先权。这些申请中的每一个在此被本文通过援引的方式加以合并。
技术领域
本发明的实施例总地并且更具体地涉及用于使用色场顺序(colorfieldsequential)显示器生成图像的方法和设备。
背景技术
色场顺序(CFS)显示器包括采用与像素颜色通道相对应的背光颜色的序列所照明的像素的二维阵列。用于每个像素的背光颜色经由时间整合(temporalintegration)被组合成单个感觉色,人类视觉感知的基本特性。基于液晶显示器(LCD)技术的CFS显示器包括灰阶像素的二维阵列以及背光,该背光配置为循环通过与要显示的图像内的每个像素内的颜色通道相对应的诸如红、绿和蓝的原色的序列。随着LCD背光循环通过每个颜色,灰阶像素配置为发出相应颜色的光的强度。虽然每个灰阶像素一次仅发出单个颜色,但当被观察者观察时时间整合得到完整的颜色。
常规LCD设备配置为接收打包(packed)的红、绿和蓝色像素数据,因为需要打包的像素数据,以逐行基准,用于常规LCD设备的适当刷新。类似地,常规图形设备配置为生成打包的像素数据用于显示。然而,因为在CFS显示设备中实际一次仅显示一个颜色通道,所以CFS显示设备需要存储数据用于不是当前正显示的其他颜色通道。例如,CFS显示设备可接收打包的红、绿和蓝色数据,但可能在给定显示帧的持续期仅显示用于一个颜色通道的数据。最初,仅显示红色数据,然后是仅绿色数据,然后是仅蓝色数据。为了可用于后续显示,绿和蓝色数据需要存储在CFS显示设备内。然而,对于CFS显示设备,存储数据的完整帧增添了成本和复杂性。
如前所述,本领域中所需要的是用于省略CFS显示设备内的帧存储的技术。
发明内容
本发明的一个实施例阐述用于在色场顺序显示器上显示颜色帧信息的方法。方法包括从输入帧缓冲区读取被组织成打包的颜色通道的像素数据,其中针对顺序显示器的色场中的每个颜色存在单独的颜色通道,针对每个颜色通道从像素数据提取颜色通道信息,依据颜色通道信息生成帧缓冲区写入数据,以及存储帧缓冲区写入数据作为目标帧缓冲区中的颜色子帧信息。
本文所描述的技术的一个优点是可修改用于显示的新像素值以针对新像素值和先前的像素值之间的差进行补偿。差可能导致降低图像质量的帧间噪声干扰。补偿新像素值减少帧间噪声。此外,基于色场顺序显示设备的自动立体显示器与现有技术相比是有利的,因为在色场顺序显示设备中消除了与常规RGB显示技术相关联的彩色边缘(chromaticfringing)。
附图说明
因此,可以详细地理解本发明的上述特征,并且可以参考实施例得到对如上面所简要概括的本发明更具体的描述,其中一些实施例在附图中示出。然而,应当注意的是,附图仅示出了本发明的典型实施例,因此不应被认为是对其范围的限制,本发明可以具有其他等效的实施例。
图1是示出了配置为实现本发明的一个或多个方面的计算机系统的框图;
图2是根据本发明的一个实施例的、用于图1的计算机系统的并行处理子系统的框图;
图3A是根据本发明的一个实施例的、图2的PPU之一内的GPC的框图;
图3B是根据本发明的一个实施例的、图2的PPU之一内的分区单元的框图;
图3C是根据本发明的一个实施例的、图3A的SPM的一部分的框图;
图4是根据本发明的一个实施例的、图2的PPU中的一个或多个可配置为实现的图形处理管线的示意图;
图5A是根据本发明的一个实施例的、耦连到显示设备的并行处理子系统的更详细的框图;
图5B是根据本发明的一个实施例的、从背光到单个像素输出的光路的示意图;
图6A是根据本发明的一个实施例的、子帧提取到用于显示的不同帧的示意图;
图6B示出根据本发明的一个实施例的、用于显示的不同颜色帧的扫描输出(scanout)时序;
图7A是根据本发明的一个实施例的、子帧提取到用于显示的单个帧的不同场的示意图;
图7B示出根据本发明的一个实施例的、用于显示的单个帧内的不同色场的扫描输出时序;
图8示出根据本发明的一个实施例的像素补偿;
图9是根据本发明的一个实施例的、基于色场顺序显示器的透镜自动立体(auto-stereoscopic)显示器的示意图;
图10是根据本发明的一个实施例的、基于色场顺序显示器的视差屏障自动立体显示器的示意图;
图11是根据本发明的一个实施例的、用于实施子帧提取的方法步骤的流程图;
图12是根据本发明的一个实施例的、用于计算经补偿的像素强度的方法步骤的流程图;
图13是根据本发明的一个实施例的、用于计算经补偿的像素值的方法步骤的流程图。
具体实施方式
在下面的描述中,将阐述大量的具体细节以提供对本发明更透彻的理解。然而,本领域的技术人员应该清楚,本发明可以在没有一个或多个这些具体细节的情况下得以实施。在其他实例中,未描述公知特征以避免对本发明造成混淆。
系统概述
图1为示出了配置为实现本发明的一个或多个方面的计算机系统100的框图。计算机系统100包括经由可以包括存储器桥105的互连路径通信的中央处理单元(CPU)102和系统存储器104。存储器桥105可以是例如北桥芯片,经由总线或其他通信路径106(例如超传输(HyperTransport)链路)连接到I/O(输入/输出)桥107。I/O桥107,其可以是例如南桥芯片,从一个或多个用户输入设备108(例如键盘、鼠标)接收用户输入并且经由路径106和存储器桥105将该输入转发到CPU102。并行处理子系统112经由总线或其他通信路径113(例如PCIExpress、加速图形端口或超传输链路)耦连到存储器桥105;在一个实施例中,并行处理子系统112是将像素传递到显示设备110(例如常规的基于CRT或LCD的监视器)的图形子系统。系统盘114也连接到I/O桥107。交换器116提供I/O桥107与诸如网络适配器118以及各种插卡120和121的其他部件之间的连接。其他部件(未明确示出),包括USB或其他端口连接、CD驱动器、DVD驱动器、胶片录制设备及类似部件,也可以连接到I/O桥107。图1中的与各种部件互连的通信路径可以使用任何适合的协议实现,诸如PCI(外围部件互连)、PCI-Express、AGP(加速图形端口)、超传输或者任何其他总线或点到点通信协议,并且如本领域已知的,不同设备间的连接可使用不同协议。
在一个实施例中,并行处理子系统112包含经优化用于图形和视频处理的电路,包括例如视频输出电路,并且构成图形处理单元(GPU)。在另一个实施例中,并行处理子系统112包含经优化用于通用处理的电路,同时保留底层(underlying)的计算架构,本文将更详细地进行描述。在又一个实施例中,可以将并行处理子系统112与一个或多个其他系统元件集成,诸如存储器桥105、CPU102以及I/O桥107,以形成片上系统(SoC)。
应该理解,本文所示系统是示例性的,并且变化和修改都是可能的。连接拓扑,包括桥的数目和布置、CPU102的数目以及并行处理子系统112的数目,可根据需要修改。例如,在一些实施例中,系统存储器104直接连接到CPU102而不是通过桥,并且其他设备经由存储器桥105和CPU102与系统存储器104通信。在其他替代性拓扑中,并行处理子系统112连接到I/O桥107或直接连接到CPU102,而不是连接到存储器桥105。而在其他实施例中,I/O桥107和存储器桥105可能被集成到单个芯片上。大型实施例可以包括两个或更多个CPU102以及两个或更多个并行处理系统112。本文所示的特定部件是可选的;例如,任何数目的插卡或外围设备都可能得到支持。在一些实施例中,交换器116被去掉,网络适配器118和插卡120、121直接连接到I/O桥107。
图2示出了根据本发明的一个实施例的并行处理子系统112。如所示的,并行处理子系统112包括一个或多个并行处理单元(PPU)202,每个并行处理单元202都耦连到本地并行处理(PP)存储器204。通常,并行处理子系统包括U个PPU,其中U≥1。(本文中,类似对象的多个实例需要时以标识对象的参考数字和标识实例的括号中的数字来表示。)PPU202和并行处理存储器204可使用一个或多个集成电路设备来实现,诸如可编程处理器、专用集成电路(ASIC)或存储器设备,或者以任何其他技术可行的方式来实现。
再参考图1,在一些实施例中,并行处理子系统112中的一些或所有PPU202是具有渲染管线的图形处理器,其可以配置为实施与下述相关的各种任务:经由存储器桥105和总线113从CPU102和/或系统存储器104所供应的图形数据生成像素数据,与本地并行处理存储器204(可被用作图形存储器,包括例如常规帧缓冲区(buffer))交互以存储和更新像素数据,传递像素数据到显示设备110等等。在一些实施例中,并行处理子系统112可包括一个或多个作为图形处理器而操作的PPU202以及一个或多个用于通用计算的其他PPU202。这些PPU可以是同样的或不同的,并且每个PPU可具有其专用并行处理存储器设备或不具有专用并行处理存储器设备。一个或多个PPU202可输出数据到显示设备110,或者每个PPU202可输出数据到一个或多个显示设备110。
在操作中,CPU102是计算机系统100的主处理器,控制和协调其他系统部件的操作。具体地,CPU102发出控制PPU202的操作的命令。在一些实施例中,CPU102写入用于每个PPU202的命令流到入栈缓冲区中(在图1或图2中未明确示出),该入栈缓冲区可位于系统存储器104、并行处理存储器204、或CPU102和PPU202都可访问的另一存储位置中。PPU202从入栈缓冲区读取命令流,然后相对于CPU102的操作异步地执行命令。
现在返回参考图2,每个PPU202包括经由连接到存储器桥105(或者,在一个替代性实施例中,直接连接到CPU102)的通信路径113与计算机系统100的其余部分通信的I/O(输入/输出)单元205。PPU202到计算机系统100的其余部分的连接也可以变化。在一些实施例中,并行处理子系统112可实现为可插入到计算机系统100的扩展槽中的插卡。在其他实施例中,PPU202可以和诸如存储器桥105或I/O桥107的总线桥集成在单个芯片上。而在其他实施例中,PPU202的一些或所有元件可以和CPU102集成在单个芯片上。
在一个实施例中,通信路径113是PCI-EXPRESS链路,如本领域所知的,其中专用通道被分配到每个PPU202。也可以使用其他通信路径。I/O单元205生成用于在通信路径113上传送的包(或其他信号),并且还从通信路径113接收所有传入的包(或其他信号),将传入的包引导到PPU202的适当部件。例如,可将与处理任务相关的命令引导到主机接口206,而将与存储器操作相关的命令(例如,对并行处理存储器204的读取或写入)引导到存储器交叉开关单元210。主机接口206读取每个入栈缓冲区,并且将由入栈缓冲区所指定的工作输出到前端212。
有利地,每个PPU202都实现高度并行处理架构。如详细示出的,PPU202(0)包括处理集群阵列230,该阵列230包括C个通用处理集群(GPC)208,其中C≥1。每个GPC208能够并发执行大量的(例如,几百或几千)线程,其中每个线程是程序的实例(instance)。在各种应用中,可分配不同的GPC208用于处理不同类型的程序或用于实施不同类型的计算。例如,在图形应用中,可分配GPC208的第一集合以实施曲面细分(tessellation)操作并产生用于面片(patch)的基元拓扑,并可分配GPC208的第二集合以实施曲面细分着色以评估用于基元拓扑的面片参数并确定顶点位置和其他逐顶点的属性。GPC208的分配可以取决于因每种类型的程序或计算所产生的工作量而变化。
GPC208经由工作分布单元200接收所要执行的处理任务,该工作分布单元接收定义来自前端单元212的处理任务的命令。处理任务包括所要处理的数据的索引,例如表面(面片)数据、基元数据、顶点数据和/或像素数据,以及定义数据将被如何处理(例如,什么程序将被执行)的状态参数和命令。工作分布单元200可配置为获取与任务相对应的索引,或者工作分布单元200可接收来自前端212的索引。前端212确保在由入栈缓冲区所指定的处理发起前,将GPC208配置为有效状态。
当PPU202用于图形处理时,例如用于每个面片的处理工作量被分成近似相等大小的任务以使能将曲面细分处理分布到多个GPC208。工作分布单元200可配置为以能够将任务提供到多个GPC208用于处理的频率产生任务。相反,在常规系统中,处理典型地由单个处理引擎来实施,而其他处理引擎保持空闲,在开始它们的处理任务之前等待该单个处理引擎完成其任务。在本发明的一些实施例中,GPC208中的部分配置为实施不同类型的处理。例如,第一部分可配置为实施顶点着色和拓扑的生成。第二部分可配置为实施曲面细分和几何着色。第三部分可配置为在屏幕空间中实施像素着色以产生经渲染的图像。由GPC208所产生的中间数据可存储在缓冲区中以允许中间数据在GPC208之间传送用于进一步处理。
存储器接口214包括D个分区单元215,每个分区单元215直接耦连到并行处理存储器204的一部分,其中D≥1。如所示的,分区单元215的数目一般等于DRAM220的数目。在其他实施例中,分区单元215的数目也可以不等于存储器设备的数目。本领域的技术人员应该理解DRAM220可以用其他合适的存储设备来替代并且可以是一般常规的设计。因此省略了详细描述。诸如帧缓冲区或纹理映射图的渲染目标可以跨DRAM220加以存储,这允许分区单元215并行写入每个渲染目标的各部分以有效地使用并行处理存储器204的可用带宽。
任何一个GPC208都可以处理要被写到并行处理存储器204内的任何DRAM220的数据。交叉开关单元210配置为路由每个GPC208的输出到任何分区单元215的输入或到另一个GPC208用于进一步处理。GPC208通过交叉开关单元210与存储器接口214通信,以对各种外部存储器设备进行读取或写入。在一个实施例中,交叉开关单元210具有到存储器接口214的连接以和I/O单元205通信,以及到本地并行处理存储器204的连接,从而使得在不同GPC208内的处理核心能够与系统存储器104或对于PPU202而言非本地的其他存储器通信。在图2所示的实施例中,交叉开关单元210直接与I/O单元205连接。交叉开关单元210可使用虚拟信道来分开GPC208与分区单元215之间的业务流。
另外,GPC208可被编程以执行与种类繁多的应用相关的处理任务,包括但不限于,线性和非线性数据变换、视频和/或音频数据过滤、建模操作(例如,应用物理定律以确定对象的位置、速率和其他属性)、图像渲染操作(例如,曲面细分着色器、顶点着色器、几何着色器、和/或像素着色器程序)等等。PPU202可将数据从系统存储器104和/或本地并行处理存储器204转移到内部(片上)存储器中,处理该数据,并且将结果数据写回到系统存储器104和/或本地并行处理存储器204,其中这样的数据可以由其他系统部件访问,所述其他系统部件包括CPU102或另一个并行处理子系统112。
PPU202可配备有任何容量(amount)的本地并行处理存储器204,包括没有本地存储器,并且可以以任何组合方式使用本地存储器和系统存储器。例如,在统一存储器架构(UMA)实施例中,PPU202可以是图形处理器。在这样的实施例中,将不提供或几乎不提供专用的图形(并行处理)存储器,并且PPU202会以排他或几乎排他的方式使用系统存储器。在UMA实施例中,PPU202可集成到桥式芯片中或处理器芯片中,或作为具有高速链路(例如,PCI-EXPRESS)的分立芯片提供,所述高速链路经由桥式芯片或其他通信手段将PPU202连接到系统存储器。
如上所示,在并行处理子系统112中可以包括任何数目的PPU202。例如,可在单个插卡上提供多个PPU202、或可将多个插卡连接到通信路径113、或可将一个或多个PPU202集成到桥式芯片中。在多PPU系统中的PPU202可以彼此同样或不同。例如,不同的PPU202可能具有不同数目的处理核心、不同容量的本地并行处理存储器等等。在存在多个PPU202的情况下,可并行操作那些PPU从而以高于单个PPU202所可能达到的吞吐量来处理数据。包含一个或多个PPU202的系统可以以各种配置和形式因素来实现,包括台式电脑、笔记本电脑或手持式个人计算机、服务器、工作站、游戏控制台、嵌入式系统等等。
处理集群阵列概述
图3A为根据本发明的一个实施例的在图2的PPU202之一内的GPC208的框图。每个GPC208可配置为并行执行大量线程,其中术语“线程”是指在特定输入数据集上执行的特定程序的实例。在一些实施例中,单指令、多数据(SIMD)指令发出技术用于在不提供多个独立指令单元的情况下支持大量线程的并行执行。在其他实施例中,单指令、多线程(SIMT)技术用于使用配置为向GPC208中的每一个内的处理引擎集发出指令的公共指令单元来支持大量一般来说同步的线程的并行执行。不同于所有处理引擎通常都执行同样指令的SIMD执行机制,SIMT执行通过给定线程程序允许不同线程更容易跟随分散执行路径。本领域技术人员应该理解SIMD处理机制代表SIMT处理机制的功能子集。
经由将处理任务分布到流多处理器(SPM)310的管线管理器305来有利地控制GPC208的操作。管线管理器305还可配置为通过为由SPM310所输出的处理数据指定目的地来控制工作分布交叉开关330。
在一个实施例中,每个GPC208包括M个SPM310,其中M≥1,每个SPM310配置为处理一个或多个线程组。另外,如本领域已知的,每个SPM310有利地包括可以管线化的同样功能执行单元集(例如算术逻辑单元和加载-存储单元—在图3C中示出为Exec单元302和LSU303),其允许在前一个指令完成之前发出新指令。可提供功能执行单元的任何组合。在一个实施例中,功能单元支持各种各样的操作,包括整数和浮点运算(例如加法和乘法)、比较操作、布尔操作(AND、OR、XOR)、移位和各种代数函数的计算(例如平面插值、三角函数、指数函数和对数函数等等);以及相同功能单元硬件可均衡地用来实施不同的操作。
如本文之前所定义的,传送到特定GPC208的一系列指令构成线程,并且跨SPM310内的并行处理引擎(未示出)的某一数目的并发执行线程的集合在本文中称为“线程束(warp)”或“线程组”。如本文所使用的,“线程组”是指对不同输入数据并发执行相同程序的一组线程,所述组的一个线程被指派到SPM310内的不同处理引擎。线程组可以包括比SPM310内的处理引擎数目少的线程,在这种情况下一些处理引擎将在该线程组正在被处理的周期期间处于闲置状态。线程组还可以包括比SPM310内的处理引擎数目多的线程,在这种情况下处理将在连续的时钟周期内发生。因为每个SPM310可以并发支持多达G个线程组,结果是在任何给定时间在GPC208中可以执行多达G*M个线程组。
此外,多个相关线程组可以在SPM310内同时活动(在执行的不同阶段)。该线程组集合在本文中称为“协作线程阵列”(“CTA”)或“线程阵列”。特定CTA的大小等于m*k,其中k是线程组中并发执行线程的数目并且通常是SPM310内的并行处理引擎数目的整数倍,以及m是SPM310内同时活动的线程组的数目。CTA的大小一般由编程者以及可用于CTA的硬件资源诸如存储器或寄存器的容量来确定。
每个SPM310包含L1高速缓存(未示出)或使用用于实施加载和存储操作的SPM310外部的相应L1高速缓存中的空间。每个SPM310都还有权访问分区单元215内的、在所有GPC208之间共享并且可用于在线程之间转移数据的L2高速缓存。最后,SPM310还有权访问片外“全局”存储器,所述“全局”存储器可以包括例如并行处理存储器204和/或系统存储器104。应该理解,PPU202外部的任何存储器可用作全局存储器。此外,L1.5高速缓存335可以包括在GPC208内,其配置为接收并保持由SPM310所请求的经由存储器接口214从存储器获取的数据,包括指令、一致(uniform)数据和常数数据,并将所请求的数据提供给SPM310。在GPC208中具有多个SPM310的实施例有利地共享了高速缓存在L1.5高速缓存335中的公共指令和数据。
每个GPC208可以包括配置为将虚拟地址映射到物理地址中的存储器管理单元(MMU)328。在其他实施例中,MMU328可以驻留在存储器接口214内。MMU328包括用于将虚拟地址映射到像素块(tile)的物理地址的页表条目(PTE)集和可选地包括高速缓存行索引。MMU328可以包括地址转译后备缓冲区(TLB)或可以驻留在多处理器SPM310或L1高速缓存或GPC208内的高速缓存。物理地址经处理以分布表面数据访问位置来允许高效请求在分区单元之间交错。高速缓存行索引可用于确定用于高速缓存行的请求是命中还是未命中。
在图形和计算应用中,GPC208可配置为使得每个SPM310耦连到用于实施纹理映射操作例如确定纹理样本位置、读取纹理数据以及过滤该纹理数据的纹理单元315。从内部纹理L1高速缓存(未示出)或者在一些实施例中从SPM310内的L1高速缓存读取纹理数据并根据需要从L2高速缓存、并行处理存储器204或系统存储器104中获取纹理数据。为了将所处理的任务提供给另一个GPC208用于进一步处理或为了经由交叉开关单元210将所处理的任务存储在L2高速缓存、并行处理存储器204或系统存储器104中,每个SPM310将所处理的任务输出到工作分布交叉开关330。preROP(预光栅操作)325配置为从SPM310接收数据、将数据引导到分区单元215内的ROP单元以及针对颜色混合实施优化、组织像素颜色数据和实施地址转译。
应该理解本文所述的核心架构是示例性的并且变化和修改都是可能的。任何数目的处理单元例如SPM310或纹理单元315、preROP325可以包括在GPC208内。进一步地,虽然仅示出一个GPC208,但PPU202可以包括任何数目的GPC208,所述GPC208有利地在功能上彼此相似以使得执行行为不取决于哪个GPC208接收特定处理任务。进一步地,每个GPC208有利地使用分开且各异的处理单元、L1高速缓存等等来独立于其他GPC208操作。
图3B是根据本发明的一个实施例的、图2的PPU202之一内的分区单元215的框图。如所示,分区单元215包括L2高速缓存350、帧缓冲区(FB)DRAM接口355和光栅操作单元(ROP)360。L2高速缓存350是读取/写入高速缓存,其配置为实施从交叉开关单元210和ROP360所接收的加载和存储操作。读取未命中和紧急的回写请求由L2高速缓存350输出到FBDRAM接口355用于处理。脏更新(dirtyupdate)也被发送到FB355用于时机性处理。FB355直接与DRAM220相接,输出读取和写入请求并接收从DRAM220所读取的数据。
在图形应用中,ROP360是处理单元,其实施光栅操作,诸如模板(stencil)、z测试、混合等,并输出像素数据作为经处理的图形数据用于存储在图形存储器中。在本发明的一些实施例中,ROP360被包括在每个GPC208内而非分区单元215内,并且代替像素片段数据,像素读取和写入请求通过交叉开关单元210传送。
经处理的图形数据可在显示设备110上显示或被路由用于由CPU102或由并行处理子系统112内的处理实体之一进行进一步处理。每个分区单元215包括ROP360以分布光栅操作的处理。在一些实施例中,ROP360可配置为压缩被写入到存储器的z或颜色数据,以及解压缩从存储器所读取的z或颜色数据。
本领域技术人员应该理解图1、2、3A和3B所描述的架构决不限制本发明的范围并且在不脱离本发明范围的情况下本文所教导的技术可以在任何经适当配置的处理单元上实现,所述处理单元包括但不限于一个或多个CPU、一个或多个多核CPU、一个或多个PPU202、一个或多个GPC208、一个或多个图形或专用处理单元等等。
在本发明的实施例中,使用计算系统的PPU122或其他处理器来使用线程阵列执行通用计算是可取的。为线程阵列中的每个线程指派在线程的执行期间对于线程可访问的唯一的线程标识符(“线程ID”)。可被定义为一维或多维数值的线程ID控制线程处理行为的各方面。例如,线程ID可用于确定线程将要处理输入数据集的哪部分和/或确定线程将要产生或写输出数据集的哪部分。
每线程指令序列可包括定义线程阵列的代表性线程和一个或多个其他线程之间的协作行为的至少一个指令。例如,每线程指令序列可能包括在序列中的特定点处挂起用于代表性线程的操作执行直到诸如其他线程的一个或多个到达该特定点的时间为止的指令、用于代表性线程将数据存储在其他线程的一个或多个有权访问的共享存储器中的指令、用于代表性线程原子地读取和更新存储在其他线程的一个或多个基于它们的线程ID有权访问的共享存储器中的数据的指令等等。CTA程序还可以包括计算数据将从其读取的共享存储器中的地址的指令,该地址是线程ID的函数。通过定义合适的函数并提供同步技术,可以以可预测的方式由CTA的一个线程将数据写入共享存储器中的给定位置并由同一个CTA的不同线程从该位置读取数据。因此,数据在线程之间共享的任何期望模式可以得到支持,以及CTA中的任何线程可以与同一个CTA中的任何其他线程共享数据。如果存在数据在CTA的线程之间的共享,则其范围由CTA程序确定;因此,应该理解的是,在使用CTA的特定应用中,CTA的线程可能会或可能不会真正互相共享数据,这取决于CTA程序,术语“CTA”和“线程阵列”在本文作为同义词使用。
图3C为根据本发明的一个实施例的图3A的SPM310的框图。SPM310包括配置为经由L1.5高速缓存335从存储器接收指令和常数的指令L1高速缓存370。线程束调度器和指令单元312从指令L1高速缓存370接收指令和常数并根据该指令和常数控制本地寄存器堆304和SPM310功能单元。SPM310功能单元包括N个exec(执行或处理)单元302和P个加载-存储单元(LSU)303。
SPM310提供具有不同级别的可访问性的片上(内部)数据存储。特殊寄存器(未示出)对于LSU303可读但不可写并且用于存储定义每个CTA线程的“位置”的参数。在一个实施例中,特殊寄存器包括每CTA线程(或SPM310内的每exec单元302)一个的存储线程ID的寄存器;每个线程ID寄存器仅由各自的exec单元302可访问。特殊寄存器还可以包括附加寄存器,其可由所有CTA线程(或由所有LSU303)读取,其存储CTA标识符、CTA维数、CTA所属网格(grid)的维数、以及CTA所属网格的标识符。在初始化期间响应于经由前端212从设备驱动程序103所接收的命令来写特殊寄存器并且在CTA执行期间特殊寄存器不改变。
参数存储器(未示出)存储可由任何CTA线程(或任何LSU303)读取但不可由其写入的运行时间参数(常数)。在一个实施例中,设备驱动程序103在引导SPM310开始执行使用参数的CTA之前将这些参数提供给参数存储器。任何CTA内的任何CTA线程(或SPM310内的任何exec单元302)可以通过存储器接口214访问全局存储器。可以将全局存储器的各部分存储在L1高速缓存320中。
每个CTA线程将本地寄存器堆304用作暂存空间;每个寄存器被分配以专用于一个线程,并且在本地寄存器堆304的任何部分中的数据仅对于寄存器被分配到的CTA线程可访问。本地寄存器堆304可以实现为物理上或逻辑上分为P个通道的寄存器堆,每个通道具有一定数目的条目(其中每个条目可以存储例如32位字)。将一个通道指派到N个exec单元302和P个下载-存储单元LSU303的每一个,并且利用用于执行同一个程序的不同线程的数据来填充不同通道中的相应条目以帮助SIMD执行。可以将通道的不同部分分配到G个并发线程组中的不同线程组,以使得本地寄存器堆304中的给定条目仅对于特定线程可访问。在一个实施例中,保留本地寄存器堆304内的某些条目用于存储线程标识符,实现特殊寄存器之一。
共享存储器306对于(单个CTA内的)所有CTA线程可访问;共享存储器306中的任何位置对于同一个CTA内的任何CTA线程(或对于SPM310内的任何处理引擎)可访问。共享存储器306可以实现为具有允许任何处理引擎对共享存储器中的任何位置读取或写入的互连的共享寄存器堆或共享片上高速缓存存储器。在其他实施例中,共享状态空间可能映射到片外存储器的每CTA区上并被高速缓存在L1高速缓存320中。参数存储器可以实现为在实现共享存储器306的同一个共享寄存器堆或共享高速缓存存储器内的指定部分,或者实现为LSU303对其具有只读访问权限的分开的共享寄存器堆或片上高速缓存存储器。在一个实施例中,实现参数存储器的区域还用于存储CTAID和网格ID,以及CTA和网格维数,实现特殊寄存器的各部分。SPM310中的每个LSU303耦连到统一地址映射单元352,统一地址映射单元352将为在统一存储器空间中所指定的加载和存储指令所提供的地址转换为每个各异存储器空间中的地址。因此,指令可以用于通过指定统一存储器空间中的地址来访问本地、共享或全局存储器空间中的任何一个。
每个SPM310中的L1高速缓存320可以用于高速缓存私有的每线程本地数据还有每应用全局数据。在一些实施例中,可以将每CTA共享数据高速缓存在L1高速缓存320中。LSU303经由存储器和高速缓存互连380耦连到一致(uniform)L1高速缓存371、共享存储器306和L1高速缓存320。一致L1高速缓存371配置为经由L1.5高速缓存335从存储器接收只读数据和常数。
图4是根据本发明的一个实施例的、图2的PPU202中的一个或多个能够配置为实现的图形处理管线400的示意图。例如,SPM310中的一个可配置为实施顶点处理单元415、几何处理单元425和片段处理单元460中的一个或多个的功能。数据汇编器410、基元汇编器420、光栅化器455和光栅操作单元465的功能可由GPC208内的其他处理引擎和相应的分区单元215来实施。可替代地,可使用用于一个或多个功能的专用处理单元实现图形处理管线400。
数据汇编器410处理单元收集用于高阶表面、基元等的顶点数据,并将包括顶点属性的顶点数据输出到顶点处理单元415。顶点处理单元415是可编程执行单元,其配置为执行顶点着色器程序,按顶点着色器程序所指定的来亮化和变换顶点数据。例如,顶点处理单元415可被编程以将顶点数据从基于对象的坐标表示(对象空间)变换到可替代地基于诸如世界空间或规格化设备坐标(NDC)空间的坐标系。顶点处理单元415可读取由数据汇编器410所存储在L1高速缓存320、并行处理存储器204、或系统存储器104中的数据用于在处理顶点数据中使用。
基元汇编器420从顶点处理单元415接收顶点属性、按需要读取所存储的顶点属性、并构建图形基元用于由几何处理单元425处理。图形基元包括三角形、线段、点等等。几何处理单元425是可编程执行单元,其配置为执行几何着色器程序,按几何着色器程序所指定的来变换从基元汇编器420所接收的图形基元。例如,几何处理单元425可被编程以将图形基元细分成一个或多个新图形基元并计算用来将新图形基元光栅化的参数,诸如平面方程系数。
在一些实施例中,几何处理单元425还可在几何流中添加或删除元素。几何处理单元425输出指定新图形基元的参数和顶点到视口缩放、剔除(cull)和裁剪(clip)单元450。几何处理单元425可读取存储在并行处理存储器204或系统存储器104中的数据用于在处理几何数据中使用。视口缩放、剔除和裁剪单元450实施裁剪、剔除和视口缩放,并将所处理的图形基元输出到光栅化器455。
光栅化器455扫描转换新图形基元并将片段和覆盖数据输出到片段处理单元460。另外,光栅化器455可配置为实施z剔除(z-culling)和其他基于z的优化。
片段处理单元460是可编程的执行单元,其配置为执行片段着色器程序、按片段着色器程序所指定的来变换从光栅化器455所接收的片段。例如,片段处理单元460可被编程以实施诸如透视校正、纹理映射、着色、混合等操作,以产生输出到光栅操作单元465的经着色的片段。片段处理单元460可读取存储在并行处理存储器204或系统存储器104中的数据用于在处理片段数据中使用。可以像素、样本、或其他粒度对片段着色,这取决于所编程的采样率。
光栅操作单元465是处理单元,其实施诸如模板、z测试、混合等的光栅操作,并输出像素数据作为所处理的图形数据用于存储在图形存储器中。所处理的图形数据可存储在图形存储器例如并行处理存储器204和/或系统存储器104中,用于在显示设备110上显示或用于由CPU102或并行处理子系统112进一步处理。在本发明的一些实施例中,光栅操作单元465配置为压缩写入到存储器的z或颜色数据以及解压缩从存储器读取的z或颜色数据。
色场顺序显示器
图5A是根据本发明的一个实施例的、耦连到显示设备110的图1的并行处理子系统112的更详细的框图。并行处理子系统112,如先前所描述的,经由本地存储器总线耦连到图2的PP存储器204以及经由视频接口550耦连到显示设备110。帧缓冲区562驻留在PP存储器204中,并存储用于显示的视频数据的帧。扫描输出逻辑560耦连到存储器接口214,并配置为检索驻留在帧缓冲区562中的视频数据并经由视频接口550传送视频数据用于在显示设备110上显示。其他帧缓冲区诸如帧缓冲区564可驻留在PP存储器204中作为数据的中间帧。例如,帧缓冲区564可存储包括打包的红、绿和蓝色(RGB)强度值的图像,而帧缓冲区562可存储从帧缓冲区564所提取的一个或多个颜色子帧。在正常执行期间,可使用任何技术上可行的技术渲染帧缓冲区564以包括打包的RGB图像。可提取RGB打包图像的每个颜色通道,以生成具有单个颜色的、每个均存储在帧缓冲区562中的一个或多个图像。在可替代实施例中,帧缓冲区562和564驻留在并行处理子系统112的片上存储器内。
显示设备110包括刷新控制逻辑510、面板驱动器512、背光控制电路514、LCD面板520和背光530。刷新控制逻辑510配置为从视频接口550接收数据,并将数据转置成列和行驱动器信息。在一个实施例中,视频数据被结构化成行的序列,其中每行包括用于包括行的相应像素的一个颜色通道的强度值的序列。列和行驱动器信息被传送到面板驱动器512,其生成适当的电信号以驱动LCD面板520。本领域技术人员将理解的是,任何技术上可行的灰阶LCD面板,结合适当的刷新控制和驱动器电路,可用来实现显示设备110而不脱离本发明的范围和精神。
扫描输出逻辑560从帧缓冲区562检索视频数据并将视频数据传送到刷新控制逻辑510。视频数据被结构化以包括包括颜色像素信息的一个颜色通道的帧。每个颜色通道作为帧的重复序列的一部分被传送以随着时间构成相应颜色帧。例如,扫描输出逻辑560可传送红帧、绿帧和蓝帧的重复序列以构成RGB像素的颜色帧。每帧针对一时段显示为当前显示帧。背光控制接口552传送背光激活信息以引导背光控制电路514采用适当的背光颜色照明当前显示帧。例如,如果当前显示帧包括红色通道信息,那么背光控制接口552引导背光控制电路514采用红光照明当前显示帧。背光驱动信号554包括单独的驱动信号用于背光530内的每个可用颜色。当背光控制接口552引导背光控制电路514激活特定颜色时,背光控制电路驱动背光驱动信号554内的单独的驱动信号中的一个。在一个实施例中,扫描输出逻辑560生成控制信号用于背光控制接口552。
背光控制接口552应提供强度信息用于驱动所选择的背光颜色。在一个实施例中,强度信息经由针对每个可用背光颜色将数字强度值编码的协议传送到背光控制电路514。例如,给定的数字强度值可包括二进制数,其针对指定的背光颜色指定目标强度。背光控制电路514基于数字强度值生成背光驱动信号514。每个包括背光驱动信号554的单独的驱动信号附于相应颜色的一个或多个发光二极管(LED)。确立给定的单独驱动信号以照明一个或多个所附的LED以达到目标强度作为平均强度值。第一技术实现固定频率脉宽调制(PWM),借助于此高频信号的占空比(dutycycle)与目标强度成比例地调整。在该环境下,高频意味着频率大于占主导的帧刷新频率。第二技术实现比例的脉宽调制,借助于此每帧光的单个脉冲的宽度与目标强度成比例地调整。在上文的两个技术中,相关联的LED被驱动为完全打开或完全关闭。第三技术实现比例的脉冲电流调制,借助于此相关联的LED在相应帧的持续期持续地打开并随后关闭。根据目标强度调整流经LED的电流。上文已讨论三个不同的示例性技术,然而可实现任何技术上可行的技术以将所附的LED驱动到目标平均强度而不脱离本发明的范围和精神。
在可替代实施例中,背光控制接口552包括直接与背光驱动信号554的单独驱动信号相对应的信号的集合。本领域技术人员将理解的是,可使用背光控制电路514作为用于驱动LED的电流和电压转换(translation)放大器来实现上文所描述的用于将LED驱动到目标强度的第一和第二技术。
图5B是根据本发明的一个实施例的、从背光530到单个像素输出524的光路的示意图。背光530包括红色LED532-R、绿色LED532-G和蓝色LED532-B。每个LED530可包括任意数目的单独LED元件。驱动信号554包括图5A的单独驱动信号。当驱动信号554被确立时,相应的LED532生成相应颜色的照明。漫射器(diffuser)534分布照明以在漫射器表面536产生大致相等的光通量散发。来自漫射器表面536的漫射光538照明LCD面板内的像素522。用于像素522的光传输经调制以生成具有受控强度的像素输出光524。通过基于感知的、以下各项的时间整合产生用于像素522的颜色:由像素522调制的强度的、来自红色LED532-R的红光,由像素522调制的强度的、来自绿色LED532-G的绿光以及由像素522调制的强度的、来自蓝色LED532-B的蓝光。
图6A是根据本发明的一个实施例的、子帧提取到用于显示的不同帧652的示意图。驻留在诸如图5A的帧缓冲区562的帧缓冲区中的RGB打包图像642包括具有红、绿和蓝色通道的像素。例如,像素640-A包括红色通道分量R620、绿色通道分量G621以及蓝色通道分量B622。类似地,像素640-B包括颜色通道分量R624、G625以及B626,以此类推。在某些实施例中,每个像素还包括alpha颜色通道,用来指示不透明度(1-透明度)。本领域技术人员将理解的是,任何其他属性也可与每个像素相关联而不脱离本发明的范围。
子帧提取引擎650配置为从RGB打包图像642提取颜色通道分量并将颜色通道分量写入到相应颜色帧652。在一个实施例中,红色帧652-R被分配以存储红色通道分量、绿色帧652-G被分配以存储绿色通道分量以及蓝色帧652-B被分配以存储蓝色通道分量。子帧提取引擎650将包括R620、R624、R630和R634的红色通道分量拷贝到红色帧652-R。类似地,子帧提取引擎650将包括G621、G625、G631和G635的绿色通道分量拷贝到绿色帧652-G,以及将包括B622、B626、B632和B636的蓝色通道分量拷贝到蓝色帧652-B。颜色帧652中的每一个由扫描输出逻辑560所读取并经由视频接口550依次传送到显示设备110。在可替代实施例中,子帧提取引擎650配置为在不同颜色空间之间实施颜色空间转换。例如,子帧提取引擎650可从打包图像提取CMY(青、品红、黄)颜色以生成红色帧652-R、绿色帧652-G和蓝色帧652-B。在另一示例中,子帧提取引擎650提取RGB打包图像642以生成红、绿、蓝和黄色帧652用于显示。
在一个实施例中,通过读取像素640的像素数据、将像素数据移位到与目标颜色帧652中的目标位置相对应的位置以及对目标颜色帧652实施逐位屏蔽的写入操作来将用于目标颜色通道的颜色通道分量数据拷贝到相应目标颜色帧652。在另一实施例中,包括目标颜色通道信息的四字节的字在写入到各自的颜色帧652之前被累积。例如,如果每个颜色通道分量包括数据的一个字节,那么目标颜色通道数据的四个字节在写入到各自的颜色帧652之前被针对每个颜色通道提取和累积。换句话说,红色通道的数据的四个字节在作为整个四字节字写入到红色帧652-R之前被沿行从RGB打包图像642提取。类似地,绿色通道的数据的四个字节在作为整个四字节字写入到绿色帧652-G之前被从RGB打包图像642提取,以此类推。
在一个实施例中,子帧提取引擎650实现为着色器程序,其配置为作为线程或线程组在并行处理子系统112内的至少一个GPC208上执行。在另一实施例中,使用扫描输出逻辑560内的硬件电路来实现子帧提取引擎650。本领域技术人员将理解的是,可使用任何技术上可行的技术实现子帧提取引擎650而不脱离本发明的范围和精神。
图6B示出根据本发明的一个实施例的、用于显示的不同颜色帧664的扫描输出时序。红色帧652-R在红色帧时间664-R期间显示,绿色帧652-G在绿色帧时间664-G期间显示,并且蓝色帧652-B在蓝色帧时间664-B期间显示。完整的帧时间670定义用于RGB数据的一个完整帧的持续期。驱动每个背光颜色以在时间上与相关联的帧时间664相对应。图5B的背光驱动554-R使能红色LED532-R在红色帧时间664-R期间照明。背光驱动554-G使能绿色LED532-G在绿色帧时间664-G期间照明。背光驱动554-B使能蓝色LED532-B以在蓝色帧时间664-B期间照明。通过该方式,由适当颜色的背光照明照明每个颜色帧时间664。在一个实施例中,驱动三个LED532以照明常见目标平均强度。在可替代实施例中,驱动三个LED532中的每一个以照明单独的强度值。
在一个实施例中,与红色帧652-R相对应的红色帧数据666-R在小于红色帧时间664-R的时段期间经由图5A的视频接口550传送。LCD面板520上的图像被更新,同时红色帧数据666-R传送到LCD面板520。在该时间期间,可采用红色帧数据666-R覆写用于先前蓝色帧的数据。红色显示时间668-R表示其中红色帧数据666-R显示在LCD面板520上而没有对LCD面板520的任何更新活动的时间跨度。在一个实施例中,如所示,在红色显示时间668-R期间,背光驱动554-R是活动的(“打开”),否则是关闭的。可调制背光驱动554-R以达到目标平均强度,如先前所讨论的。在可替代实施例中,背光驱动554-R在其中红色帧数据666-R传送到LCD面板520的时段中的至少一部分期间是活动的。在这类可替代实施例中,可调制背光驱动554-R以达到目标平均强度,如先前所讨论的。此外,绿色帧数据666-G在小于绿色帧时间664-G的时段期间经由视频接口550传送,并且蓝色帧数据666-B在小于蓝色帧时间664-B的时段期间传送。此外,根据用于背光驱动554-R的上文描述驱动背光驱动554-G和554-B。
配置为存储红色帧数据666-R、绿色帧数据666-G和蓝色帧数据666-B的每个帧缓冲区作为数据的单独帧来分配和管理用于显示。在某些实施例中,要求并行处理子系统112管理三个独立帧缓冲区以针对经由自一个打包的RGB帧缓冲区的子帧提取所提取的每个颜色通道来存储数据。如图7A和7B所下面描述的,可通过替代地生成包括红、绿和蓝色场的数据的一帧来消除与管理和协调用于显示的三个独立帧缓冲区相关联的复杂性。
图7A是根据本发明的一个实施例的、子帧提取到用于显示的单个帧的不同场的示意图。驻留在诸如图5A的帧缓冲区562的帧缓冲区中的RGB打包图像742包括具有红、绿和蓝色通道的像素。例如,像素740-A包括红色通道分量R720、绿色通道分量G721以及蓝色通道分量B722。类似地,像素740-B包括颜色通道分量R724、G725以及B726,以此类推。在某些实施例中,每个像素还包括alpha颜色通道,用来指示不透明度(1-透明度)。本领域技术人员将理解的是,任何其他属性也可与每个像素相关联而不脱离本发明的范围。
子帧提取引擎750配置为从RGB打包图像742提取颜色通道分量并将颜色通道分量写入到帧760内的相应色场752。帧760包括红色场752-R、绿色场752-G和蓝色场752-B。帧760还可包括垂直消隐(VB)场754-R和VB场754-G。在可替代实施例中,子帧提取引擎750配置为在不同颜色空间之间实施颜色空间转换。例如,子帧提取引擎750可从打包图像提取CMY颜色以生成红色场752-R、绿色场752-G和蓝色场752-B。在另一示例中,子帧提取引擎750提取RGB打包图像742以生成红、绿、蓝和黄色场652用于显示。
子帧提取引擎750将包括R720、R724、R730和R734的红色通道分量拷贝到帧760内的红色场752-R。类似地,子帧提取引擎750将包括G721、G725、G731和G735的绿色通道分量拷贝到绿色场752-G,以及将包括B722、B726、B732和B736的蓝色通道分量拷贝到蓝色场752-B。由扫描输出逻辑560读取红色场752-R、VB场754-R、绿色场752-G、VB场754-G和蓝色场752-B并将其作为帧760依次经由视频接口550传送到显示设备110。在VB场754-R、VB场754-G和蓝色场752-B以后的垂直消隐时间期间确立垂直消隐状态。
在一个实施例中,通过读取像素740的像素数据、将像素数据移位到与帧760内的目标色场752中的目标位置相对应的位置以及对目标色场752实施逐位屏蔽的写入操作来将用于目标颜色通道的颜色通道分量数据拷贝到相应目标色场752。在另一实施例中,包括目标颜色通道信息的四字节的字在写入到各自的色场752之前被累积。例如,如果每个颜色通道分量包括数据的一个字节,那么目标颜色通道数据的四个字节在写入到各自的色场752之前被针对每个颜色通道提取和累积。换句话说,红色通道的数据的四个字节在作为整个四字节字写入到红色场752-R之前被沿行从RGB打包图像742提取。类似地,绿色通道的数据的四个字节在作为整个四字节字写入到绿色场752-G之前被从RGB打包图像742提取,以此类推。
在一个实施例中,子帧提取引擎750实现为着色器程序,其配置为作为线程或线程组在并行处理子系统112内的至少一个GPC208上执行。在另一实施例中,使用扫描输出逻辑560内的硬件电路来实现子帧提取引擎750。本领域技术人员将理解的是,可使用任何技术上可行的技术实现子帧提取引擎750而不脱离本发明的范围和精神。
图7B示出根据本发明的一个实施例的、用于显示的单个帧760内的不同色场的扫描输出时序。与来自帧760的红色场752-R相关联的数据在红色场时间764-R期间显示,与绿色场752-G相关联的数据在绿色场时间764-G期间显示,并且与蓝色场752-B相关联的数据在蓝色场时间764-B期间显示。帧时间770定义用于RGB数据的一个完整帧的持续期。驱动每个背光颜色以在时间上与相关联的帧时间764相对应。图5B的背光驱动554-R使能红色LED532-R在红色场时间764-R期间照明。背光驱动554-G使能绿色LED532-G在绿色场时间764-G期间照明。背光驱动554-B使能蓝色LED532-B在蓝色场时间764-B期间照明。通过该方式,由适当颜色的背光照明照明每个色场时间764。在一个实施例中,驱动三个LED532以根据常见目标平均强度照明。在可替代实施例中,驱动三个LED532中的每一个以根据单独的强度值照明。
在一个实施例中,与红色场752-R相对应的红色场数据766-R在小于红色场时间764-R的时段期间经由图5A的视频接口550传送。LCD面板520上的图像被更新,同时红色场数据766-R传送到LCD面板520。在该时间期间,可采用红色场数据766-R覆写用于先前蓝色场的数据。垂直消隐时间768-R表示其中红色场数据766-R显示在LCD面板520上而没有对LCD面板520的任何更新活动的时间跨度。在一个实施例中,如所示,在垂直消隐时间768-R期间,背光驱动554-R是活动的(“打开”),否则是关闭的。可调制背光驱动554-R以达到目标平均强度,如先前所讨论的。在可替代实施例中,背光驱动554-R在其中红色场数据766-R传送到LCD面板520的时段中的至少一部分期间是活动的。在这类可替代实施例中,可调制背光驱动554-R以达到目标平均强度,如先前所讨论的。此外,绿色场数据766-G在小于绿色场时间764-G的时段期间经由视频接口550传送,并且蓝色场数据766-B在小于蓝色场时间764-B的时段期间传送。此外,根据用于背光驱动554-R的上文描述驱动背光驱动554-G和554-B。在某些实施例中,针对每个相应色场时间764,使能背光驱动554在时间上与显示时间对齐以最大化色场时间764内的照明时间,同时可选地解释用于色场数据766的数据传输时间。
在一个实施例中,经由视频接口550传送的数据的每个单元与像素时钟上的特定像素时钟跃迁相关联。色场数据766以非常高的速度传送,相应地涉及迅速的时钟跃迁,使得色场数据766花费色场时间764的约一半或更少。目标是普遍最大化垂直消隐时间768,以针对每个场时间764促进最大的背光“打开”时间。为降低与帧760内的VB场754相关联的存储,逐时钟跃迁的时间显著增加(像素时钟显著减慢),使得VB场754仅需占用少数行的数据。例如,如果每个VB场754包括五行数据,那么像素时钟可能需要被足够地减速以要求场时间764的大部分用于传输。一旦VB场754传输,像素时钟加速用于色场数据766的传输。
需要一个帧缓冲区以存储包括红色场752-R、绿色场752-G和蓝色场752-B的帧760。因此,通过替代地生成和管理来自每个唯一RGB打包帧的用于显示的数据的仅一帧,消除了与管理和协调用于显示的三个独立帧缓冲区相关联的复杂性。
图8示出根据本发明的一个实施例的像素补偿。诸如LCD面板520的LCD设备包括像素的二维阵列,其将当前图像存储为与驻留在每个像素中的电容结构相关联的电压值。每个电压值与相关联的像素的强度值相对应。为更新当前图像,顺序地使能像素的行在帧刷新过程中逐像素采用新电压值进行写入。每个新电压值被应用到相应的电容结构,其逐渐地充电到新电压值。随着帧刷新过程加速,例如为了最大化图7B的垂直消隐时间768,用于每个像素的电容结构必须更快地充电到目标电压。然而,与LCD设备的物理结构相关联的固有时间常数,诸如阻容(RC)常数,限制每个电容结构可以多么快地充电到目标电压。在针对新图像的帧刷新过程期间在电容结构内所得到的实际电压是电容结构的当前电压、新目标电压和用于LCD设备的任何固有时间常数的函数。
针对常规打包RGBLCD设备,新目标电压趋向于在值上类似于当前电压,因为两个电压与相同颜色通道相关联。这样,顺利地充电到新目标电压,除非此处在少见的情况下邻近帧是完全不同的。然而,在色场顺序LCD显示器中,当前和新目标电压典型地是相当不同的,因为其与相关联像素的不同颜色通道相对应。这样,每个图像的每个颜色通道在新目标电压中引入不相关的帧间干扰噪声。该噪声通过对每帧添加彩色鬼影来降低图像质量。
在LCD面板520上针对一个像素所显示的顺序的颜色分量示出为红色分量812-R、绿色分量812-G、蓝色分量812-B和红色分量814-R。像素810包括颜色分量812-R、812-G和812-B。沿时间轴指示帧边界820。帧边界820-1指示由像素所显示的绿色通道数据的帧的开始。像素内的电容结构在行刷新时间822期间被充电到新电压。电压842指示与绿色分量812-G相对应的新目标电压电平。
未经补偿的列驱动电压830被设置到新目标电压842,由像素的绿色分量812-G所给定。然而,如所示,行刷新时间822不足以适当地将像素中的电容结构充电。代替了充电到新目标电压842,电容结构充电到832的下冲(undershoot)电压。计算补偿偏移844以解释初始电压846、行刷新时间822和新目标电压842。补偿偏移844用来生成经补偿的列驱动电压840。采用经补偿的列驱动电压840代替未经补偿的驱动电压830来驱动电容结构允许电容结构在行刷新时间822内得到新目标电压842。新目标电压850相对接近新目标电压842,所以下冲显著较小。因此用于新目标电压850的补偿偏移相对小。基于至少新目标电压850和新目标电压872计算补偿偏移864。经补偿的列驱动电压870用来将电容结构充电到新目标电压872,与用于红色分量814-R的强度相对应。
在一个实施例中,查找表用来基于当前电压和新目标电压计算补偿偏移。基于补偿偏移和新目标电压生成经补偿的列驱动电压。当前电压与存储在数据的先前显示的帧中的强度值相对应,而新目标电压与被扫描输出用于显示的新帧中的强度值相对应。图5A的扫描输出逻辑560访问数据的先前显示的帧和数据的新帧以计算经补偿的强度值用于经由视频接口550传送。经补偿的强度值与可用来驱动LCD面板510的经补偿的列驱动电压相对应。实现在查找表中的或直接计算的任何技术上可行的功能可用来计算经补偿的强度值而不脱离本发明的范围。
图9是根据本发明的一个实施例的、基于色场顺序显示器920的透镜自动立体显示器900的示意图。透镜自动立体显示器900包括色场顺序显示器920和透镜阵列910。色场顺序显示器920包括图5A-5B的背光530、LCD面板520和图5A中描绘的相关驱动电路。透镜阵列910配置为选择性地沿不同视角引导来自LCD内的邻近像素的光。本领域技术人员将理解的是,具有左眼950和右眼952的观察者能够在每只眼中接收不同图像,从而仿真在色场顺序显示器920上显示的对象的立体视觉。显示在色场顺序显示器920上的(使用着色的像素所描绘的)左图像被引导到观察者的左眼950,并且(使用未着色的像素所描绘的)右图像被引导到观察者的右眼952。例如,左图像像素912被引导到观察者的左眼950,同时右图像像素914被引导到观察者的右眼952。
透镜自动立体显示器900相对于基于打包RGB显示技术的现有技术解决方案的一个优点是,在色场顺序显示器920中不存在来自对于邻近RGB子像素颜色通道元素之间的精细空间差异的图像敏感度的彩色边缘。结果,与遭受彩色边缘效果的现有技术解决方案相比,透镜自动立体显示器900提供卓越的图像。
在一个实施例中,采用颜色通道帧652供应透镜自动立体显示器900,如图6A-6B中所先前描述的。颜色通道帧652可包括经补偿的强度值,如图8中所先前描述的。在另一实施例中,采用包括颜色通道场752的帧供应透镜自动立体显示器900,如图7A-7B中所先前描述的。颜色通道场752可包括经补偿的强度值,如图8中所先前描述的。
图10是根据本发明的一个实施例的、基于色场顺序显示器的视差屏障自动立体显示器1000的示意图。视差屏障自动立体显示器1000包括色场顺序显示器1020和视差屏障1010。色场顺序显示器1020包括图5A-5B的背光530、LCD面板520和图5A中所描绘的相关驱动电路。视差屏障1010配置为针对不同视角选择性地阻挡来自LCD内的邻近像素的光。本领域技术人员应理解的是,具有左眼1050和右眼1052的观察者能够在每只眼中观看不同图像,从而仿真在色场顺序显示器1020上显示的对象的立体视觉。显示在色场顺序显示器1020上的(使用着色的像素所描绘的)左图像对观察者的左眼1050可见但对观察者的右眼1052不可见。类似地,(使用未着色的像素所描绘的)右图像对观察者的右眼1052可见但对观察者的左眼1050不可见。例如,左图像像素1012对观察者的左眼1050可见,同时右图像像素1014对观察者的右眼1052可见。在一个实施例中,视差屏障1010包括液晶屏幕,其可活动性地打开(不透明)以操作在自动立体模式或关闭(透明)以操作在常规非立体模式。
视差屏障自动立体显示器1000相对于基于打包RGB显示技术的现有技术解决方案的一个优点是,在色场顺序显示器1020中不存在来自对于邻近RGB子像素元素之间的精细空间差异的图像敏感度的彩色边缘。结果,与遭受彩色边缘效果的现有技术解决方案相比,视差屏障自动立体显示器1000提供卓越的图像。
在一个实施例中,采用颜色通道帧652供应视差屏障自动立体显示器1000,如图6A-6B中所先前描述的。颜色通道帧652可包括经补偿的强度值,如图8中所先前描述的。在另一实施例中,采用包括颜色通道场752的帧供应视差屏障自动立体显示器1000,如图7A-7B中所先前描述的。颜色通道场752可包括经补偿的强度值,如图8中所先前描述的。
图11是根据本发明的一个实施例的、用于实施子帧提取的方法步骤1100的流程图。虽然结合图1-7B和9-10的系统描述方法步骤,但本领域技术人员应理解的是,配置为以任何次序实施方法步骤的任何系统在本发明的范围内。
方法开始于步骤1110,其中子帧提取引擎配置用于输入和输出帧缓冲区的指针。在一个实施例中,子场提取引擎750配置一个输入帧缓冲区指针指向数据的RGB打包帧,以及一个输出帧缓冲区指针指向包括红色色场、绿色色场和蓝色色场的数据的帧。在另一实施例中,子场提取引擎650配置一个输入帧缓冲区指针指向数据的RGB打包帧,一个红色输出帧缓冲区指针指向红色数据的帧、一个绿色输出帧缓冲区指针指向绿色数据的帧以及一个蓝色输出帧缓冲区指针指向蓝色数据的帧。
在步骤1112中,子帧提取引擎从驻留在输入帧缓冲区中的数据的RGB打包帧读取像素数据。像素数据包括至少一个红色、一个绿色和一个蓝色分量。在步骤1114中,子帧提取引擎提取并分别缓冲像素数据的每个颜色分量。在步骤1116中,子帧提取引擎生成目标帧缓冲区写入数据。在一个实施例中,目标帧缓冲区写入数据包括颜色通道数据的数据的偏移单元,诸如字节,以及用于每个颜色通道的相应的写入掩码。在另一实施例中,目标帧缓冲区写入数据包括用于每个颜色通道的颜色通道数据的单元的集合。例如,目标帧缓冲区写入数据可包括颜色通道数据的四个字节,其中每个字节表示用于一个输入像素的颜色通道数据。
在步骤1118中,子帧提取引擎存储目标帧缓冲区写入数据。在一个实施例中,目标帧缓冲区写入数据存储在数据的一帧的颜色通道场内。颜色通道场可位于目标帧缓冲区内作为与输出帧缓冲区指针的偏移。在另一实施例中,目标帧缓冲区写入数据存储到数据的单独帧中。例如,用于红色通道的目标帧缓冲区写入数据存储在由红色输出帧缓冲区指针所确定的位置,用于绿色通道的目标帧缓冲区写入数据存储在由绿色输出帧缓冲区指针所确定的位置,以此类推。
在步骤1120中,如果子帧提取引擎未针对数据的RGB打包帧的每个像素提取子场像素数据,那么方法回到步骤1112。然而,如果子帧提取引擎已针对数据的RGB打包帧的每个像素提取子场像素数据,那么方法前进到步骤1122。
在步骤1122中,图5A的扫描输出逻辑560将目标帧缓冲区数据传送到图1的显示设备110。在一个实施例中,扫描输出逻辑560传送数据的一帧。扫描输出逻辑560可配置相关联的像素时钟以延伸与数据的一帧内的场之间的边界相关联的垂直消隐期。在可替代实施例中,扫描输出逻辑560顺序地传送红色数据的帧、绿色数据的帧和蓝色数据的帧。扫描输出逻辑560配置为从背光530激活与当前所显示的颜色通道相对应的照明颜色。例如,当红色数据的帧正在LCD面板520上显示时,背光530配置为生成红色照明。当绿色数据的帧正在LCD面板520上显示时,背光530配置为生成绿色照明,以此类推。方法终止于步骤1190。
可针对数据的每个新RGB打包帧重复方法步骤1100。本领域技术人员将理解的是,可针对缓冲区管理实现不同技术而不脱离本发明的范围和精神。
图12是根据本发明的一个实施例的、用于计算经补偿的像素强度的方法步骤1200的流程图。虽然结合图1-7B和9-10的系统描述方法步骤,但本领域技术人员应理解的是,配置为以任何次序实现方法步骤的任何系统在本发明的范围内。
方法开始于步骤1202,在该处扫描输出逻辑560读取新像素强度值用于在LCD面板520上显示。新像素强度值表示用于实际显示的目标,并且不包括用于先前像素强度值的补偿。在一个实施例中,从诸如显示帧或显示帧内的场的数据结构读取新像素强度值。在步骤1204中,扫描输出逻辑560从数据的先前显示的帧中读取先前的像素强度值。在步骤1206中,扫描输出逻辑560基于新像素强度值和先前的像素强度值计算像素补偿值。可使用任何技术上可行的技术以计算像素补偿值,其应解释充电时间常数和电压差。在一个实施例中,使用查找表以计算像素补偿值。
在步骤1208中,扫描输出逻辑560基于新像素强度值和像素补偿值生成经补偿的像素强度值。在一个实施例中,新像素强度值被加到像素补偿值。方法终止于步骤1210,在该处扫描输出逻辑560将经补偿的像素强度值传送到图1的显示设备110。
本领域技术人员将理解的是,并行处理子系统112内的任何子系统可配置为实施方法步骤1200而不脱离本发明的范围和精神。例如,着色器程序可配置为对存储在PP存储器204内的帧缓冲区信息进行操作,以计算经补偿的像素强度值。可替代地,子帧提取引擎650和750可配置为通过从当前RGB打包图像和先前RGB打包图像提取子帧信息来计算经补偿的像素强度值。
图13是根据本发明的一个实施例的、用于在色场顺序显示器上显示自动立体图像的方法步骤1300的流程图。虽然结合图1-7B和9-10的系统描述方法步骤,但本领域技术人员应理解的是,配置为以任何次序实现方法步骤的任何系统在本发明的范围内。
方法开始于步骤1302,在该处初始化面板状态。在一个实施例中,关闭图5A的背光530以准备显示数据的新帧,并且重置刷新控制逻辑510并将其配置为开始接收新帧。在涉及图10的视差屏障自动立体显示器1000的一个或多个实施例中,视差屏障1010配置为打开(不透明)。
在步骤1304中,刷新控制逻辑510接收包括场景信息的两个或更多个不同立体图(perspective)的一行像素强度数据。两个或更多个不同立体图组织成水平邻近的像素位置。在一个或多个实施例中,视差屏障1010配置为将两个或更多个不同立体图分到左和右图像的两个或更多个相应的对。
在一个实施例中,视差屏障1010是动态可变的光学结构,其可使用被放置以遮蔽LCD面板520的显示区域的光学LCD堆叠来实现。光学LCD堆叠包括偏光滤光镜和形成不透明屏障行的图案的LCD元件。当启动时,光学LCD堆叠可呈现特定定向的不透明光屏障行,其中相邻行是可同时寻址的以形成可变宽度的组合屏障。屏障行提供视差屏障,其可通过打开光学LCD堆叠内的特定相邻行或可寻址行的阵列来进行动态调整。这类动态调整使能将所述屏障行相对于与LCD面板520相关联的底层图像像素进行移动和对齐。将屏障行进行移动和对齐有利地使能相对于视差屏障自动立体显示器1000的观察姿态和视角的调整。此外,可动态地调整屏障宽度以达到优化的左/右眼图像分离,同时针对观察者与视差屏障自动立体显示器1000的距离进行补偿。
在步骤1306中,刷新控制逻辑510经由面板驱动器512将该行像素强度数据驱动到LCD面板520。在一个或多个实施例中,LCD面板520配置为形成图9的色场顺序显示器920。透镜阵列910安置在色场顺序显示器920和具有左眼950和右眼952的观察者之间。左图像像素诸如左图像像素912被光学地引导到左眼950。类似地,右图像像素诸如右图像像素914被光学地引导到右眼952。左和右图像像素与给定的立体图相关联,并且可采用左和右图像像素的相应单元集合表示一个或多个不同立体图。
在一个或多个可替代实施例中,LCD面板520配置为形成图10的色场顺序显示器1020。视差屏障1010安置在色场顺序显示器1020和具有左眼1050和右眼1052的观察者之间。左图像像素诸如左图像像素1012对左眼1050可见。然而,除左图像像素以外的像素基本被视差屏障1010阻止由左眼1050观察。类似地,右图像像素诸如右图像像素1014对右眼1052可见。除右图像像素以外的像素基本被阻止由右眼1052观察。左和右图像像素与给定立体图相关联,并且可采用左和右图像像素的相应单元集合表示一个或多个不同立体图。在包括透镜自动立体显示器900的实施例以及包括视差屏障自动立体显示器1000的实施例中,选择性地发出强度数据作为与特定立体图相关联的左和右图像。
在步骤1310中,如果刷新控制逻辑510检测到垂直消隐,那么方法前进到步骤1312。在步骤1312中,由背光控制514更新背光状态。背光状态包括打开安置在背光530内的哪些光源,诸如LED532,以及采用什么平均强度打开。当数据的当前帧表示红色通道时,那么打开红色光源,诸如LED532-R。当数据的当前帧表示绿色通道时,那么打开绿色光源,诸如LED532-G,以此类推。在步骤1314中,刷新控制逻辑510在垂直消隐时间之后准备接收图像数据的新帧。在一个实施例中,背光在步骤1314中关闭。方法随后回到步骤1304。
在步骤1310中,如果刷新控制逻辑510未检测到垂直消隐,那么方法回到步骤1304。方法步骤1300在与颜色图像的不同颜色通道相关联的图像数据的顺序帧上重复。方法步骤1300在包括任意持续期的视频数据的顺序颜色图像上进一步重复。
总而言之,公开了用于针对色场顺序显示设备生成和传送帧数据的技术。在一个实施例中,从RGB打包图像提取并存储单独的颜色帧。单独的颜色帧被传送到色场顺序显示设备用于呈现。背光配置为生成适当颜色的照明用于当前所显示的帧。在另一实施例中,从RGB打包图像提取并存储色场。单独的色场驻留在存储器中的单个帧内并使用延伸垂直消隐时间的经调制的像素时钟来传送。背光配置为生成适当颜色的照明用于当前所显示的场。可修改用于显示的新像素值以针对新像素值和先前的像素值之间的差进行补偿。差可能导致降低图像质量的帧间噪声干扰。补偿新像素值减少帧间噪声。此外,基于色场顺序显示设备的自动立体显示器与现有技术相比是有利的,因为在色场顺序显示设备中消除了与常规RGB显示技术相关联的彩色边缘。
本发明的一个实施例可被实现为与计算机系统一起使用的程序产品。该程序产品的程序定义实施例的各功能(包括本文中描述的方法)并且可以被包含在各种计算机可读存储介质上。示例性计算机可读存储介质包括但不限于:(i)不可写的存储介质(例如,计算机内的只读存储器设备,诸如可由CD-ROM驱动器读取的CD-ROM盘、闪存存储器、ROM芯片或任何类型的固态非易失性半导体存储器),在其上存储永久性信息;和(ii)可写的存储介质(例如,磁盘驱动器或硬盘驱动器内的软盘或者任何类型的固态随机存取半导体存储器),在其上存储可更改的信息。
以上已参照具体实施例对本发明进行了描述。然而,本领域技术人员将理解的是,可对此做出各种修改和改变而不脱离如随附权利要求书中所阐述的本发明的较宽精神和范围。因此,前面的描述以及附图应被视为是例示性而非限制性的意义。
Claims (9)
1.一种用于显示自动立体图像信息的设备,所述设备包括:
色场顺序显示器;以及
控制逻辑,其配置为:
获得包括具有左图像和右图像的第一立体图的像素强度数据的行,其中所述左图像和所述右图像中的每一个包括用于与自动立体图像相关联的多个颜色的第一颜色的颜色通道信息;
将所述像素强度数据驱动到色场顺序显示器;
检测垂直消隐事件;以及
更新与耦连到所述色场顺序显示器的背光相关联的背光颜色相对应的背光状态,其中所述背光颜色与所述第一颜色相对应;
其中为了获得所述像素强度数据的行,所述控制逻辑配置为基于以第一频率操作的像素时钟将所述像素数据的行采样,并存储经采样数据的单元,并且其中所述像素时钟在所述垂直消隐事件期间以小于所述第一频率的第二频率操作。
2.根据权利要求1所述的设备,其中所述像素强度数据的行进一步包括具有左图像和右图像的第二立体图。
3.根据权利要求1所述的设备,其中所述多个颜色包括红色、绿色和蓝色。
4.根据权利要求1所述的设备,其中所述色场顺序显示器与液晶显示器面板相关联,所述液晶显示器面板包括安置在观察者和所述色场顺序显示器的显示器表面之间的透镜阵列。
5.根据权利要求4所述的设备,其中所述透镜阵列配置为将包括在所述左图像中的所述颜色通道信息引导到所述观察者的左眼并将包括在所述右图像中的所述颜色通道信息引导到所述观察者的右眼。
6.根据权利要求2所述的设备,其中所述色场顺序显示器与液晶显示器面板相关联,所述液晶显示器面板包括安置在观察者和所述色场顺序显示器的显示器表面之间的视差屏障。
7.根据权利要求6所述的设备,其中所述视差屏障配置为将包括在所述左图像中的所述颜色通道信息传送到所述观察者的左眼并将包括在所述右图像中的所述颜色通道信息传送到所述观察者的右眼。
8.根据权利要求7所述的设备,其中所述视差屏障包括配置为以不透明模式或透明模式操作的液晶阵列。
9.根据权利要求8所述的设备,其中所述视差屏障动态地配置为生成至少一个不透明的屏障行,所述不透明的屏障行针对与所述液晶显示器面板相关联的图像像素具有可变的宽度和位置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/104,876 | 2011-05-10 | ||
US13/104,876 US9299312B2 (en) | 2011-05-10 | 2011-05-10 | Method and apparatus for generating images using a color field sequential display |
US13/104,867 | 2011-05-10 | ||
US13/104,867 US8711167B2 (en) | 2011-05-10 | 2011-05-10 | Method and apparatus for generating images using a color field sequential display |
PCT/US2012/037385 WO2012154993A1 (en) | 2011-05-10 | 2012-05-10 | Method and apparatus for generating images using a color field sequential display |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103620667A CN103620667A (zh) | 2014-03-05 |
CN103620667B true CN103620667B (zh) | 2016-01-20 |
Family
ID=47139672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280031428.1A Active CN103620667B (zh) | 2011-05-10 | 2012-05-10 | 用于使用色场顺序显示器生成图像的方法和设备 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN103620667B (zh) |
DE (1) | DE112012002033B4 (zh) |
WO (1) | WO2012154993A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3200340A1 (en) * | 2017-03-06 | 2018-09-13 | E Ink Corporation | Method and apparatus for rendering color images |
WO2019210062A1 (en) * | 2018-04-27 | 2019-10-31 | Becton, Dickinson And Company | Methods and apparatuses for image control and display of particle analyzer images |
GB2575097B (en) * | 2018-06-29 | 2023-01-18 | Advanced Risc Mach Ltd | Data processing systems |
CN112470464B (zh) * | 2018-07-23 | 2023-11-28 | 奇跃公司 | 场顺序显示器中的场内子码时序 |
KR102510458B1 (ko) * | 2018-09-12 | 2023-03-17 | 삼성디스플레이 주식회사 | 잔상 보상부 및 표시 장치의 구동 방법 |
CN115762428B (zh) * | 2022-11-23 | 2023-08-15 | 广州文石信息科技有限公司 | 一种基于电子墨水屏的显示装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1312482A (zh) * | 2000-03-08 | 2001-09-12 | 株式会社日立制作所 | 彩色场顺序驱动方式的液晶显示装置和方法 |
US7190518B1 (en) * | 1996-01-22 | 2007-03-13 | 3Ality, Inc. | Systems for and methods of three dimensional viewing |
CN101729917A (zh) * | 2008-10-17 | 2010-06-09 | 乐金显示有限公司 | 图像显示设备及其驱动方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100712471B1 (ko) | 2000-11-09 | 2007-04-27 | 엘지.필립스 엘시디 주식회사 | 시분할 방식 액정표시장치 및 그의 컬러영상표시방법 |
CN1608386A (zh) * | 2001-10-24 | 2005-04-20 | 纽鲁克公司 | 三维图像的投影 |
US7345664B2 (en) * | 2005-08-09 | 2008-03-18 | Sin-Min Chang | Method and apparatus for stereoscopic display employing a reflective active-matrix liquid crystal pixel array |
JP2009133956A (ja) * | 2007-11-29 | 2009-06-18 | Mitsubishi Electric Corp | 画像表示システム |
WO2009082739A1 (en) * | 2007-12-20 | 2009-07-02 | Real D | Intra-pixel illumination system and methods |
US8179401B2 (en) | 2009-05-21 | 2012-05-15 | Spatial Photonics, Inc. | Reducing image artifacts in a color sequential display system |
-
2012
- 2012-05-10 DE DE112012002033.2T patent/DE112012002033B4/de active Active
- 2012-05-10 WO PCT/US2012/037385 patent/WO2012154993A1/en active Application Filing
- 2012-05-10 CN CN201280031428.1A patent/CN103620667B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7190518B1 (en) * | 1996-01-22 | 2007-03-13 | 3Ality, Inc. | Systems for and methods of three dimensional viewing |
CN1312482A (zh) * | 2000-03-08 | 2001-09-12 | 株式会社日立制作所 | 彩色场顺序驱动方式的液晶显示装置和方法 |
CN101729917A (zh) * | 2008-10-17 | 2010-06-09 | 乐金显示有限公司 | 图像显示设备及其驱动方法 |
Also Published As
Publication number | Publication date |
---|---|
DE112012002033T5 (de) | 2014-02-13 |
CN103620667A (zh) | 2014-03-05 |
WO2012154993A1 (en) | 2012-11-15 |
DE112012002033B4 (de) | 2019-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8711167B2 (en) | Method and apparatus for generating images using a color field sequential display | |
US9299312B2 (en) | Method and apparatus for generating images using a color field sequential display | |
CN103620667B (zh) | 用于使用色场顺序显示器生成图像的方法和设备 | |
CN101371247B (zh) | 用于图形处理器的并行阵列结构 | |
US10120187B2 (en) | Sub-frame scanout for latency reduction in virtual reality applications | |
US8284207B2 (en) | Method of generating digital images of objects in 3D scenes while eliminating object overdrawing within the multiple graphics processing pipeline (GPPLS) of a parallel graphics processing system generating partial color-based complementary-type images along the viewing direction using black pixel rendering and subsequent recompositing operations | |
CN105574924B (zh) | 渲染方法、渲染设备和电子设备 | |
CN111133475B (zh) | 用于渲染图形对象的装置和方法 | |
CN105405103A (zh) | 通过在空间上和/或在时间上改变采样模式增强抗锯齿 | |
US9449421B2 (en) | Method and apparatus for rendering image data | |
US8624894B2 (en) | Apparatus and method of early pixel discarding in graphic processing unit | |
JP2018049603A (ja) | グラフィックス処理システム及びグラフィックスプロセッサ | |
US8537166B1 (en) | System and method for rendering and displaying high-resolution images | |
US8289320B2 (en) | 3D graphic rendering apparatus and method | |
JP2007512613A (ja) | Pcバス上の多重3−dグラフィックパイプラインのための方法およびシステム | |
CN105321143A (zh) | 来自片段着色程序的采样掩膜的控制 | |
CN101470892A (zh) | 绘图处理单元以及执行单元 | |
CN103886634A (zh) | 利用每像素着色器线程的高效超级采样 | |
CN108725200A (zh) | 用于汽车应用和其他应用的眩光和被遮挡视图补偿 | |
WO2006119078A2 (en) | Transparency-conserving method to generate and blend images | |
CN107038742A (zh) | 屏幕空间管线中的多通道渲染 | |
JPH09244601A (ja) | グラフィックス・ディスプレイ・サブシステム及び方法 | |
CN103810743A (zh) | 在上游着色器中设置下游渲染状态 | |
CN104519339A (zh) | 图像处理设备和方法 | |
JP2016529593A (ja) | 立体シーンのインターリーブ方式のタイル型レンダリング |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |