CN106415479A - 多个显示管线驱动被划分的显示器 - Google Patents

多个显示管线驱动被划分的显示器 Download PDF

Info

Publication number
CN106415479A
CN106415479A CN201580028743.2A CN201580028743A CN106415479A CN 106415479 A CN106415479 A CN 106415479A CN 201580028743 A CN201580028743 A CN 201580028743A CN 106415479 A CN106415479 A CN 106415479A
Authority
CN
China
Prior art keywords
display pipeline
display
frame
pipeline
next frame
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.)
Granted
Application number
CN201580028743.2A
Other languages
English (en)
Other versions
CN106415479B (zh
Inventor
P·F·霍兰德
B·崔帕西
D·M·赫德戈
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN106415479A publication Critical patent/CN106415479A/zh
Application granted granted Critical
Publication of CN106415479B publication Critical patent/CN106415479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • 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/36Control 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/39Control of the bit-mapped memory
    • G09G5/399Control of the bit-mapped memory using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0202Addressing of scan or signal lines
    • G09G2310/0221Addressing of scan or signal lines with use of split matrices
    • 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

Landscapes

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

Abstract

本发明公开了用于驱动显示器的帧在逻辑上被划分成多个部分,第一显示管线驱动显示器的第一部分,并且第二显示管线驱动显示器的第二部分。为了保证两个显示管线之间的同步,如果显示管线中的任一者还没有接收到具有用于下一帧的配置数据的帧分组则生成重复的垂直消隐间隙(VBI)信号。当重复的VBI信号被生成时,显示管线两者均将重复当前帧的处理(1340)。

Description

多个显示管线驱动被划分的显示器
技术领域
本文所述的实施方案涉及图形信息处理领域,并且更具体地涉及利用多个显示管线来驱动图像帧的单独的部分到被划分的显示器。
背景技术
许多计算机***(包括便携式数字设备诸如移动电话、笔记本计算机等)的操作的部分是采用显示设备诸如液晶显示器(LCD)来显示图像、视频信息/流和数据。因此,这些***通常结合了生成图像和数据的功能,包括视频信息,这些图像和数据随后被输出到显示设备。此类设备通常包括视频图形电路(即,显示管线)以处理图像和视频信息用于随后的显示。
在数字图像中,图像中的信息的最小项目被称为“图像元素”,更一般地被称为“像素”。为了方便,像素通常布置成规则的二维网格。通过使用此类布置,许多通用的操作可通过一致独立地应用相同的操作到每个像素来实现。因为每个像素是数字图像的基本部分,所以更大数量的像素可提供数字图像的更准确的表示。为了在电子显示器上表示特定的颜色,每个像素可具有三个值,每个值表示在期望的颜色中存在的红色、绿色和蓝色的量。用于电子显示器的一些格式还可包括第四个值,称为α,其表示像素的透明度。该格式通常被称为ARGB或者RGBA。表示像素颜色的另一个格式是YCbCr,其中Y对应于像素的亮度(luma或者brightness)以及Cb和Cr对应于色差色度分量,表示蓝色差(Cb)和红色差(Cr)。
在显示设备诸如LCD屏幕上显示的大多数图像和视频信息被解释为一系列有序图像帧,或者简称为帧。尽管帧通常是构成完整移动的图像或者视频流的许多静止图像中的一者,帧还可被更广义简单地解释为在数字(离散或者渐进的扫描)显示器上显示的静止图像。根据图像/视频帧的分辨率,帧通常由指定数量的像素构成。大多数图形***使用存储器(通常称为“帧缓冲器”)存储用于图像和视频帧信息的像素。在帧缓冲器中的信息通常由将在屏幕上显示的每个像素的颜色值构成。
图像之间的恒定的间隔允许视频流或者动画图像看起来平滑地移动。在不具有恒定间隙的情况下,视频流中的物体和人的移动将看起来不稳定且不自然。在LCD显示器和数字视频标准的使用变得普遍之前,模拟阴极射线管电视和监视器使用称为垂直消隐间隙的信号,将电子枪从屏幕的右下角重定位回到每个视频帧开始的左上角。即使VBI信号的原始目的被废弃,其继续存在于现代视频***中,并且其提供恒定的间隙用于更新图像帧。
显示管线可被配置为支持显示器分辨率达到某个分辨率。高分辨率显示器诸如具有大约4000像素(或者4k分辨率)的水平分辨率的显示器,已经变得越来越流行。为低分辨率显示器设计的显示管线可能不能够支持在这些高分辨率显示器的屏幕上显示像素所需的像素带宽。另外,在一些情况下,帧刷新率可为120赫兹(Hz)或者更高,增加了显示管线每秒需要执行的处理的数量。
鉴于上述情况,需要用于处理并驱动像素到高分辨率显示器的方法和机制。
发明内容
本发明设想了用于驱动像素到高分辨率显示器的***、装置和方法。
在一个实施方案中,装置可包括两个显示管线和主定时发生器。源帧序列中的每个源帧可在逻辑上被划分成多个部分。源帧的部分可然后被显示管线恢复及处理并且呈现在相应的显示屏上,其可为高清晰显示。例如,在一个实施方案中,帧可在逻辑上被垂直地划分成两半,并且单独的显示管线可被用于驱动每个半部。因此,第一显示管线可驱动屏幕的第一半部而第二显示管线可驱动屏幕的第二半部,其中合成的单个图像或者视频帧被显示在显示器上。这样,每个显示管线可被配置为执行整个像素处理的仅一半。
每个显示管线可包括一个或多个内部的像素处理管线用于获取及处理源帧。每个显示管线还可包括先进先出(FIFO)缓冲器,该先进先出(FIFO)缓冲器可包括多个条目并且控制单元被耦接到该FIFO。控制单元可被配置为接收多个帧分组,其中每个帧分组与源帧中的一个源帧对应,并且每个帧分组可包括头部和一个或多个命令。控制单元还可被配置为将每个帧分组存储在FIFO缓冲器的条目中。新的帧分组可在分组与之对应的相应帧之前被从设备处理器发送到每个显示管线。两个显示管线均可被配置为切换到相同帧上的新参数FIFO分组。
在一个实施方案中,在处理给定的帧时,每个显示管线可确定与下一个帧对应的帧分组是否已经被接收,并且如果与下一个帧对应的帧分组已经被接收时每个显示管线可发送指示到主定时生成器。如果两个显示管线均已接收到下一帧的帧分组,则常规的垂直消隐间隙(VBI)信号可被主定时生成器生成以指示显示管线应当处理下一个帧用于显示。如果显示管线中的任一个没有接收到下一个帧的帧分组,则重复的VBI信号可被主定时生成器生成以指示显示管线应当重复先前的帧。
鉴于本文提出的方法的以下详细描述,这些和其它特征和优点对于本领域普通技术人员将变得显而易见。
附图说明
通过参考以下结合附图的描述可以更好地理解方法和机制的上述和进一步的优点,其中:
图1是示出耦接到存储器和一个或多个显示设备的片上***(SOC)的一个实施方案的框图。
图2是用于在SOC中使用的双显示管线的一个实施方案的框图。
图3是示出显示管线前端的一个实施方案的框图。
图4是示出视频文件和对应的参数FIFO的表示的一个实施方案的框图。
图5是示出参数FIFO条目的一个实施方案的框图。
图6是示出视频/UI流水线的一个实施方案的框图。
图7是示出非分割显示屏和双向分割显示屏的框图。
图8是用于使能双向显示分割的电路的一个实施方案的框图。
图9是用于使能双向显示分割的电路的时序图。
图10是示出单个虚拟控制器的一个实施方案的框图。
图11是示出用于使两个显示管线同步的控制逻辑的一个实施方案的框图。
图12是示出一种用于生成不同类型的垂直消隐间隙(VBI)信号的方法的一个实施方案的广义流程图。
图13是示出一种用于在显示管线中处理源帧的方法的一个实施方案的广义流程图。
图14是***的一个实施方案的框图。
具体实施方式
以下描述中示出了许多具体细节,以便于充分理解本文提出的方法和机制。然而,本领域的普通技术人员将认识到,可在没有这些具体细节的情况下实践各种实施方案。在一些情况下,未详细示出熟知的结构、组件、信号、计算机程序指令和技术以免模糊本文所述的方法。应当理解,为了图示的简单性和清晰性,图中所示的元件未必按比例示出。例如,一些元件的尺寸可以相对于其他元件被夸大。
本说明书包括参考“一个实施方案”。在不同的上下文中出现短语“在一个实施方案中”不一定是指同一个实施方案。特定特征、结构或特性可以与本公开一致的任何适当的方式结合。此外,如在整个专利申请中所使用的那样,以允许的意义(即,意味着具有可能性)而不是强制的意义(即,意味着必须)来使用“可以”一词。类似地,词语“包括”是指包括但不限于。
术语以下段落提供本公开(包括所附权利要求书)中所出现的术语的定义和/或上下文:
“包括”。该术语是开放式的。当在所附权利要求书中使用时,该术语不排除附加的结构或步骤。考虑以下引用的权利要求:“一种包括显示管线的装置”此类权利要求不排除该装置包括附加部件(例如,处理器、存储器控制器)。
“被配置为”。各种单元、电路或其他部件可被描述为或叙述为“被配置为”执行一项或多项任务。在此类上下文中,“被配置为”用于通过指示单元/电路/部件包括在操作期间执行这些任务的结构(例如,电路)来暗指该结构。如此,单元/电路/部件可被配置为即使在指定的单元/电路/部件当前不可操作(例如,未接通)时也执行该任务。结合表述“被配置为”使用的单元/电路/部件包括硬件——例如电路、存储可执行以实施操作的程序指令的存储器等。表述为单元/电路/部件“被配置为”执行一项或多项任务明确地意在对于该单元/电路/部件不援引35U.S.C.§112112(f)。此外,“被配置为”可包括通用结构(例如,通用电路),该通用结构受软件和/或固件操纵(例如,FPGA或执行软件的通用处理器),从而以能够执行待解决的一项或多项任务的方式操作。“被配置为”还可包括使制造工艺(例如,半导体制造设备)适配制造设备(例如,集成电路),该制造设备被适配为实现或执行一个或多个任务。
“基于”。如本文所用,该术语用于描述影响确定的一个或多个因素。该术语不排除可能影响确定的其他因素。即,确定可仅仅基于这些因素或至少部分地基于这些因素。考虑短语“基于B来确定A”。当B可为影响A的确定的因素时,该短语不排除A的确定也可基于C。在其他实例中,可仅基于B来确定A。
现在参见图1,片上***(SOC)110的一个实施方案的框图被示出耦接到存储器112和显示设备120。本文中显示设备可更加简单地称为显示器。如名字所暗示的,SOC 110的部件可集成到作为集成电路“芯片”的单个半导体衬底上。在一些实施方案中,这些部件可在***中的两个或更多个分立芯片上实施。然而,在本文中将使用SOC 110作为一个实施例。在所示实施方案中,SOC 110的部件包括中央处理单元(CPU)复合件114、显示管116和117、***部件118A-118B(更简单地,“***设备”)、存储器控制器122和通信结构127。部件114、116、118A-118B和122可全部耦接到通信结构127。存储器控制器122在使用期间可耦接到存储器112。类似地,在使用期间显示管116和117可被耦接到显示器120。在所示实施方案中,CPU复合件114包括二级(L2)高速缓存130和一个或多个处理器128。
显示管116和117可包括硬件用于处理用于在显示器120上显示的一个或多个静止图像和/或一个或多个视频序列。一般来讲,针对每个源静止图像和视频序列,显示管116和117可被配置为生成读取存储器操作以通过存储器控制器122从存储器112读取表示帧/视频序列的相应的部分的数据。
显示管116和117可被配置为执行对图像数据(静止图像、视频序列等)的任何类型的处理。在一个实施方案中,显示管116和117可被配置为缩放静止图像并且被配置为递色、缩放视频序列的帧的相应部分或者对其执行颜色空间转换。显示管116和117可被配置为混合静止图像帧和视频序列帧以产生输出帧用于显示。显示管116和117中的每一者还可更一般地称为显示管线、显示控制单元或者显示控制器。显示控制单元通常可为被配置为从一个或多个源诸如静止图像和/或视频序列准备用于显示的帧的任何硬件。
更具体地,显示管116和117中的每一者可被配置为从存储在存储器112中的一个或多个源缓冲器126A-126B检索源帧的相应的部分,从源缓冲器合成帧以及在显示器120的对应的部分上显示得到的帧。源缓冲器126A和126B表示可被存储在存储器112中的任何数量的源帧缓冲器。因此,显示管116和117可被配置为读取源缓冲器126A-126B并且合成图像数据以生成输出帧。
显示器120可为任何类型的可视显示设备。显示器120可为液晶显示器(LCD)、发光二极管(LED)、等离子体、阴极射线管(CRT)等。显示器120可被集成到包括SOC 110的***(例如,智能手机或者平板)中和/或可为独立封装的设备诸如计算机监视器、电视或其他设备。
在一些实施方案中,显示器120可被直接连接到SOC 110并且可被显示管116和117控制。即,显示管116和117可包括可提供各种控制/数据信号到显示器的硬件(“后端”),各种控制/数据信号包括定时信号诸如一个或多个时钟和/或垂直消隐周期和水平消隐间隙控制。时钟可包括指示像素正被传输的像素时钟。数据信号可包括颜色信号诸如红色、绿色和蓝色,例如。显示管116和117可实时地或者接近实时地控制显示器120,在显示器正在显示由帧所指示的图像时提供指示待被显示的像素的数据。到此类显示器120的接口可为例如VGA、HDMI、数字视频接口(DVI)、液晶显示器(LCD)接口、等离子体接口、阴极射线管(CRT)接口、任何专有的显示接口等。
在一个实施方案中,每个显示管116和117可被配置为彼此独立地工作。在该实施方案中,每个显示管116和117可被配置为驱动独立的显示器(尽管在图1中仅示出一个显示器)。例如,在该实施方案中,显示管116可被配置为驱动第一显示器并且显示管117可被配置为驱动第二显示器。在另一个实施方案中,显示器120可在逻辑上被竖直地划分成两半。在该实施方案中,显示管116可驱动屏幕的第一半部,而显示管117可驱动屏幕的第二半部。这样,每个显示管116和117可被配置为执行整体像素处理的仅一半。在处理器128上的软件执行可被配置为编程显示管116和117以根据所选的实施方案操作。需注意的是,在其他实施方案中,其他数量的显示管线可在SOC 110中使用以驱动单个的显示器120。例如,在另一个实施方案中,四个显示管线可被用于驱动单个的显示器120,单个的显示器120在逻辑上被划分成四个部分。
CPU复合件114可包括用作SOC 110的CPU的一个或多个CPU处理器128。***的CPU包括执行***主要控制软件诸如操作***的一个或多个处理器。通常,由CPU在使用期间执行的软件可控制***的其他部件来实现所期望的***功能。CPU处理器128还可执行其他软件诸如应用程序。应用程序可提供用户功能,并且可依赖于操作***以进行低级设备控制。因此,CPU处理器128也可被称为应用处理器。CPU复合件还可包括其他硬件,诸如L2高速缓存130和/或至***的其他部件的接口(例如至通信结构127的接口)。
***设备118A-118B可以是被包括在SOC 110中的附加硬件功能的任何集合。例如,***设备118A-118B可包括视频***设备,诸如视频编码器/解码器,用于图像传感器数据的图像信号处理器诸如相机、缩放器、旋转器、合成器、图形处理单元等。***设备118A-118B可包括音频***设备诸如麦克风、扬声器、到麦克风和扬声器的接口、音频处理器、数字信号处理器、混合器等。***设备118A-118B可包括用于SOC 110外部的各种接口的接口控制器,包括接口诸如通用串行总线(USB)、***部件互连(PCI)(包括PCI高速(PCIe))、串行和并行端口等等。***设备118A-118B可包括联网***设备诸如媒体访问控制器(MAC)。可包括任何硬件的集合。
存储器控制器122通常可包括用于接收来自SOC 110的其他部件的存储器操作并用于访问存储器112以完成存储器操作的电路。存储器控制器122可被配置为访问任何类型的存储器112。例如,存储器112可以是静态随机存取存储器(SRAM)、动态RAM(DRAM)诸如包括双倍数据速率(DDR、DDR2、DDR3、等)DRAM的同步DRAM(SDRAM)。可支持DDRDRAM的低功率/移动版本(例如LPDDR、mDDR等等)。存储器控制器122可包括各种队列用于缓冲存储器操作、用于这些操作的数据等以及对这些操作进行排序并根据为存储器112定义的接口访问存储器112的电路。
通信结构127可以是用于在SOC 110的部件间进行通信的任何通信互连器和协议。通信结构127可以基于总线,包括共享总线配置、交叉开关配置、和具有桥的分层总线。通信结构127也可基于分组,并且可以是具有桥的分层、交叉开关、点到点、或其他互连器。
需注意,不同的实施方案之间的SOC 110的部件的数量(以及图1中所示的那些部件的子部件的数量,诸如CPU复合件114内的部件的子部件的数量)可变化。可存在比图1中所示的数量更多或更少的每个部件/子部件。还需注意,SOC 110可包括在图1中未示出的许多其他部件。在各种实施方案中,SOC 110还可被称为集成电路(IC)、专用集成电路(ASIC)或者装置。
现在转向图2,示出了用于在SOC中使用的双显示管线的一个实施方案的广义框图。双显示管线210和240可被耦接到互联接口250。尽管示出了两个显示管线,在其他实施方案中,主SOC(例如,SOC 110)可包括另一数量的显示管线。显示管线中的每一者可被配置为处理并在显示器的对应半部上显示目的图像的合成的一半(未示出)。
在一个实施方案中,显示管线210和240可通过单个虚拟的控制器(例如,图10的单个虚拟控制器1000)将渲染的图形信息发送到显示器。互联接口250可包括复用器和用于在显示管线210和240以及顶级结构之间路由信号和分组的控制逻辑。互联接口250可与图1的通信结构127对应。
显示管线210和240可分别包括中断接口控制器212和216。中断接口控制器212和216可分别包括用于扩展多个源或外部设备以生成提供给内部像素处理管线214和218的中断的逻辑部件。控制器212和216可提供编码机制、用于存储中断向量地址的寄存器和用于检查、启用及确认中断的控制逻辑部件。中断的数量和所选择的协议可为可配置的。
显示管线210和240可分别包括一个或多个内部像素处理管线214和218。内部像素处理管线214和218可包括一个或多个ARGB(α、红色、绿色、蓝色)管线用于处理器并显示用户接口(UI)层。内部像素处理管线214和218还可包括用于处理器并显示视频内容诸如YUV内容的一个或多个***设备。在一些实施方案中,内部像素处理管线214和218还分别包括用于在将信息作为输出发送到后处理逻辑部件220和222之前合成图形信息的混合电路。
显示管线210和240可分别包括后处理逻辑部件220和222。后处理逻辑部件220可被用于颜色管理、环境自适应像素(AAP)修改、动态背光控制(DPB)、面板γ校正和递色。显示接口230和232可处理用于与内部面板显示器进行通信的协议。例如,移动行业处理器接口(MIPI)显示串行接口(DSI)规范可被使用。另选地,4通道嵌入式显示端口(eDP)规范可被使用。后处理逻辑部件和显示接口还可被称为显示后端。
在一个实施方案中,当处于分割显示模式时,如果显示管线210和240被允许在当前帧的终端进行到下一帧则它们可接收到第一指示。控制逻辑部件(未示出)可被配置为确定显示管线210和240中的两者是否均具有足够快用于处理下一帧的下一帧的帧分组,并且如果是这样的话,则控制逻辑部件可被配置为发送第一指示到显示管线210和240以进行到下一帧。在一个实施方案中,第一指示可为常规的VBI信号。
如果显示管线210和240中的任一者没有准备好驱动下一帧,则控制逻辑部件可被配置为发送第二指示到显示管线210和240以指令它们重复当前帧而不是继续到下一帧。可以各种方式定义管线是否准备好。例如,如果两个或更多个管线具有帧的配置信息使得每个管线可以期望的外观(在部分之间没有可注意到的人工痕迹、不期望的亮度或者颜色的不一致)呈现帧的方式驱动该帧的一部分,则管线可被认为是准备好的。否则,至少一个管线不具有提供愉悦的、整体的帧外观所需的信息,则管线可被认为没有准备好。作为一个实施例,显示管线210可及时地具有用于下一帧的配置数据但是显示管线240可没有。因此,在这种情况下,显示管线210可再次重复相同的帧而不是继续到下一帧,即使显示管线210准备好处理下一帧。在一个实施方案中,第二指示可为重复的VBI信号。VBI信号(常规的或者重复的)可为建立新的垂直消隐间隙(VBI)的起点的脉冲或者其他信号。VBI可被定义为从帧的最后一个像素被驱动到显示器时至随后的帧的第一个像素被驱动到显示器的时间段。
现在参见图3,示出了显示管线前端300的一个实施方案的框图。显示管线前端300可表示图1的显示管116和117的前端部分。显示管线前端300可被耦接到***总线320及显示器后端330。在一些实施方案中,显示器后端330可直接以接口方式连接到显示器以显示由显示器管线前端300生成的显示器像素。显示管线前端300可包括功能子块,诸如一个或多个视频/用户接口管线301A-B、混合单元302、色域调整块303、颜色空间转换304、寄存器305、参数先进先出缓冲器(FIFO)306和控制单元307。显示管线前端300还可包括其他部件,其在图3中未示出以避免使图凌乱。
在一些实施方案中,***总线320可与来自图1的通信结构127对应。***总线320耦接各种功能块使得功能块可在彼此之间传递数据。显示管线前端300可被耦接到***总线320以便接收视频帧用于处理。在一些实施方案中,显示管线前端300还可将经处理的视频帧发送到也可耦接到***总线320的其他功能块和/或存储器。应当理解,当使用术语“视频帧”时,这旨在表示可被渲染以显示的任何类型的帧,诸如图像。
显示管线前端300可包括一个或多个视频/UI管线301A-B,取决于实施方案其中的每一者可为视频和/或用户接口(UI)管线。需注意的是,术语“视频/UI管线”和“像素处理管线”本文中可交换地使用。在其他实施方案中,显示管线前端300可具有一个或多个专用视频管线和/或一个或多个专用UI管线。每个视频/UI管线301可从耦接到***总线320的缓冲器获取源图像(或者源图像的部分)。缓冲的源图像可驻留在***存储器中,诸如例如来自图1的***存储器112。每个视频/UI管线301可获取不同的源图像(或者不同的源图像的部分)并且可以各种方式处理该源图像,包括但不限于格式转换(例如,YCbCr到ARGB)、图像缩放和递色。在一些实施方案中,每个视频/UI管线一次可处理一个像素,以来自源图像的特定顺序,输出像素数据的流并保持与像素数据经过的相同顺序。
在一个实施方案中,当用作用户接口管线时,给定的视频/UI管线301可支持源图像中的可编程活动区域。活动驱动可定义仅源图像的部分被显示。在实施方案中,给定的视频/UI管线301可被配置为仅获取活动区域内的数据。在活动区域外部,α值为零的假数据可作为像素数据被传递。
在各种实施方案中,控制单元307可被配置为判断读取请求以从视频/UI管线301A-B从存储器获取数据。在一些实施方案中,读取请求可指向虚拟地址。存储器管理单元(未示出)可在请求被提供给存储器之前将虚拟地址转换为存储器中的物理地址。在一些实施方案中,控制单元307可包括专用状态机或者顺序逻辑电路。在其他实施方案中,执行存储在存储器中的程序指令的通用处理器可被采用以执行控制单元307的动能。
混合单元302可从视频/UI管线301A-B中的一者或多者接收像素流。如果仅一个像素流被接收,则混合单元302可只是将该流传递到下一个子块。然而,如果多于一个的像素流被接收,则混合单元302可将像素颜色合成到一起以创建用于显示的图像。在各种实施方案中,混合单元302能够被用来从一个图像过渡到另一个图像或者用来在活动应用窗口的顶部显示通知窗口。例如,通知诸如日历提醒的顶层视频帧可需要出现在例如互联网浏览器窗口的顶部,即作为显示器中的主元素尽管不同的应用程序。日历提醒可包括其中浏览器窗口可至少部分可见的一些透明或者半透明的元素,这可要求混合单元302基于日历提醒的颜色和透明度调整浏览器窗口的外观。混合单元302的输出可为由一个或多个输入像素流构成的单个像素流。
混合单元302的输出可被发送到色域调整单元303。色域调整303可调整混合单元302的输出的颜色映射以更好地匹配预期的目标显示的可用颜色。色域调整单元303的输出可被发送到颜色空间转换器304。颜色空间转换器304可获得来自色域调整单元303的像素流输出并将其转换到新的颜色空间。颜色空间转换器304可然后将像素流发送到显示器后端330或者发送回到***总线320上。在其他实施方案中,像素流可被发送到其他目标地址。例如,像素流可被发送到网络接口例如。在一些实施方案中,在混合和色域修正已经被施加之后,可基于颜色的混合选择新的颜色空间。在另一个实施方案中,颜色空间可基于预期的目标显示器被改变。
显示器后端330可控制显示器以显示由显示器管线前端300生成的像素。显示器后端330可根据像素时钟以常规的速率从显示管线前端300的输出FIFO(未示出)读取像素。该速率可取决于显示器的分辨率以及显示器的刷新速率。例如,具有NxM的分辨率和每秒R帧的刷新速率的显示器可具有基于NxMxR的像素时钟频率。另一方面,随着像素被显示管线前端300生成输出FIFO可被写入。
在每个像素被显示管线前端300处理时显示器后端330可接收经处理的图像数据。显示器后端330在每个视频帧被显示之前可为图像数据提供最终的处理。在一些实施方案中,显示器后端可包括环境自适应像素(AAP)修改、动态背光控制(DPB)、显示面板γ校正以及特定于耦接到显示器后端330的电子显示器的递色。
显示管线前端300可使用来控制各个子块如何操纵视频帧的参数可被存储在控制寄存器305中。这些寄存器可包括但不限于设置输入和输出帧大小、设置输入和输出像素格式、源帧的位置和输出的目的地(显示器后端330或者***总线320)。控制寄存器305可被参数FIFO 306加载。
参数FIFO 306可被主机处理器、直接存储器存取单元、图形处理单元或者计算***内的任何其他合适的处理器加载。在其他实施方案中,参数FIFO 306可直接从***存储器取值,诸如例如图1中的***存储器112。参数FIFO 306可被配置为在每个源视频帧被取出之前更新显示处理器300的控制寄存器305。在一些实施方案中,参数FIFO可为每个帧更新全部控制寄存器305。在其他实施方案中,参数FIFO可被配置为为每个帧更新控制寄存器305的子集包括全部或者空。如本文所用和所述的FIFO,可指其中存储在缓冲器中的数据以其被写入的相同顺序被读取的存储器存储缓冲器。FIFO可由RAM或者寄存器组成并且可使用指向FIFO中的第一条目和第二条目的指针。
在处理给定的源视频帧时,控制单元307可确定用于处理下一源视频帧所需的配置数据是否已经被接收。配置数据用于本讨论的目的可被称为“帧分组”。当与下一源视频帧对应的下一帧分组已经被参数FIFO 306接收时控制单元307可被配置为发送指示到显示器后端330。如果所有显示管线前端已经接收到与下一源视频帧对应的下一帧分组则显示器后端330可被配置为生成并传递常规VBI信号到显示管线前端330(并且到其他显示管线前端)。另选地,如果显示管线前端中的任一者没有接收到下一帧分组,则显示器后端330可生成并传递重复的VBI信号到显示管线前端330并且到其他显示管线前端。
需注意的是,图3中所示的显示管线前端300仅是示例。在其他实施方案中,取决于显示管线用于的具体应用不同的功能块和功能块的不同配置可是可能的。例如,在其他实施方案中,多于两个的视频/UI管线可被包括在显示管线前端内。
现在转向图4,示出了视频文件和对应的参数FIFO的表示。在各种实施方案中,视频401可表示包含格式的视频剪辑的文件,诸如例如运动图片专家组-4第14部分(MP4)、高级视频编码(H.264/AVC)或者音频视频交错(AVI)。另选地,视频401可为一系列静止图像,每个图像看作帧,可以定时的间隔显示,通常称为幻灯片。图像可以诸如联合图象专家组(JPEG)、原始图像格式(RAW)、图形交换格式(GIF)或者便携式网络图形(PNG)的格式。为了演示的目的,视频401被示出具有五个帧,编号从1至5。然而,任何数量的帧可被包括在视频401中。
视频帧402可表示来自视频401的单个的帧。在该实施例中,视频帧402被示出为视频401的帧号2。视频帧402可为单个图像,以先前讨论的格式中的任一者或者任何其他合适的格式。视频帧402可包含ARGB、YCbCr或者其他合适的像素格式中的像素信息的列表。
参数FIFO 403可与图3中所示的参数FIFO 306对应并且可具有前述的功能。为了演示的目的,参数FIFO 403在图4中被示出为保存八个帧分组,编号1至10,其中4和7被排除。然而,参数FIFO 403可保存与FIFO的大小和帧分组的大小所允许的一样多的帧分组。帧分组的数量可与分组被打算用于的视频401的视频帧的数量对应。帧分组4和7(未示出)被排除以示出一些视频帧不需要帧分组。在其他实施方案中,帧分组可被需要用于每个视频帧。帧分组中的每一者的大小被示出在10个实施例之间变化以示出在帧分组之间大小可不同。在其他实施方案中,每个帧分组可为标准一致的大小。
帧分组404可表示参数FIFO 403中存储的单个帧分组。帧分组404可包含用于与给定的视频帧相关联的各个寄存器的设置。在该实施例中,帧分组404被示出为编号2,其与视频帧402对应,也被示出为编号2。帧分组404被示出为划分成三个部分,标记为2a、2b和2c,每个表示一个参数命令。给定的帧分组可包括从零至可存储在参数FIFO 403中任意数量的参数命令。每个参数命令2a-2c可包含用于与视频帧402相关联的一个或多个寄存器的设置。参数命令2a-2c可为各种长度,基于包括在每个命令中的设置的数量。在其他实施方案中,参数命令2a-2c可被标准化成一个或多个特定的长度。
在诸如图1中的SOC 110的***中,显示管116和117可处理视频帧402和帧分组404的相应的部分使得参数命令2a-2c在视频401的视频帧1已经被显示之后且在视频帧402被显示之前被执行,使得视频帧402用于参数命令2a-2c对应的参数被显示。这些参数可保持在它们的设定值直至改变其当前设定值的另一个参数命令被执行。在一些实施方案中,一些或全部参数的值可被不与参数FIFO 403相关联的命令修改,诸如例如由图1的处理器114传输的操作。
现在参见图5,示出了参数FIFO条目500的一个实施方案。图5示出了参数FIFO诸如图4中的参数FIFO 403中的条目。参数FIFO条目500可包括几个帧分组,如帧分组502、503和504所示。
在一些实施方案中,帧分组502可包括帧标头520并且跟着多个参数命令,诸如图5中所示的参数命令522a到参数命令522n。给定的帧分组可包含零个参数命令直至可装配到给定大小的FIFO中的最大数量的命令。具有零个参数命令的帧分组可被称为空参数设置。当所有帧分组在帧分组502被读取之前写入到参数FIFO 403时帧分组502可被从参数FIFO403读取。当帧分组502被读取时,读取的第一字可为帧标头520。
帧标头520可包含有关帧分组502的结构的信息。例如,帧标头520可包括与帧分组502对应的值。在一些实施方案中,大小可表示帧分组502中的字节或者字的数量,并且在其他实施方案中大小可表示参数命令的数量。帧标头520还可包括与其预期用于的视频帧对应的值。在各种实施方案中,帧标头520可包括指示其为帧标头的值和/或指示帧分组应该与待处理的下一视频帧而不是特定视频帧一起使用的值。该上一特征在其中在视频正在播放或者图像正在显示时用户调整设置的情形中可是有用的。例如,用户可改变亮度设置或者缩放因素同时期望改变被尽可能快地实现而不是在特定的视频帧处。
帧分组502可包括零或者更多个参数命令522a-n。在一些实施方案中,给定的参数命令诸如例如参数命令522a,可包括一个参数控制字523a。参数控制字可定义参数命令522a的结构。例如,参数控制字523a可包括参数计数值以指示许多参数设置如何被包括在命令中。参数控制字523a还可包括参数开始值以指示参数设置待被写入的开始寄存器地址。一些实施方案还可包括指示参数命令522a是内部的(即,预期用于显示管线内的寄存器,诸如显示管116)还是外部的(即,预期用于显示管116外部的寄存器)的类型值。在一些实施方案中,参数开始值可仅被用于内部参数命令,其中寄存器可用小于完整数据字的地址值来寻址。在此类实施方案中,外部命令可使用参数数据的第一一个或多个字形成用保持的参数数据写入的寄存器的开始地址。
参数命令522a中的每个参数设置可包括参数数据的一个或多个字,在图5中示出为参数数据[0]至参数数据[m]。包括在参数命令522a中的参数数据字的数量可取决于参数命令的类型,内部的或外部的,以及由参数命令522a写入的寄存器的数量。在各种实施方案中,参数命令522可包括各种数量的参数数据或者可被标准化成特定数量的参数数据。
需注意的是,图4和图5中的帧分组、视频帧和参数FIFO的描述仅是示例。在其他实施方案中,帧分组的结构可包括用于头部的多个字而不是图5中所示的单个字,并且头部可不是给定帧分组内的第一字。在各种实施方案中,帧分组和参数命令可为固定的长度而不是图4和图5中所示的各种长度。
参见图6,其示出了视频/UI管线600的一个实施方案的框图。视频/UI管线600可与图3中所示的显示管线300的视频/UI管线301A和301B对应。在所示实施方案中,视频/UI管线600包括取出单元605、递色单元610、行缓冲器615、缩放单元620、颜色空间转换器625和色域调整单元630。一般来讲,视频/UI管线600可负责取出存储在存储器中的源帧的像素数据,并且然后在将经处理的数据发送到混合单元(诸如图3中所示的显示管线前端300的混合单元302)之前处理所取出的数据。
取出单元605可被配置为视频/UI管线600的(多个)请求者所需的针对源像素数据的读取请求。从源缓冲器取出源行(source line)通常被称为源缓冲器的“传递”(“pass”)。在每个源缓冲器的传递期间,所需的部分或者数据块可从上到下,然后从左到右被取出,其中“上”“下”“左”和“右”参考显示器。在其他实施方案中,源缓冲器的传递可不同地进行。
每个读取请求可包括指示数据的部分在存储器中被存储在哪里的一个或多个地址。在一些实施方案中,包括在读取请求中的地址信息可被引导朝向虚拟(本文也被称为“逻辑的”)地址空间,其中地址不直接指向存储器设备内的物理位置。在这种情况下,在读取请求被发送到源缓冲器之前虚拟地址可被映射到物理地址。在一些实施方案中,存储器管理单元能够被用来将虚拟地址映射到物理地址。在一些实施方案中,存储器管理单元可被包括在显示管线前端内,而在其他实施方案中,存储器管理单元可被定位在计算***内的其他地方。
在某些环境下,给定***在给定颜色空间内-图形处理发生于其中-能够生成或者管理的颜色的总数量可被限制。在这种情况下,称为递色的技术能够被用来具有受限的颜色调色板的图像中创建颜色深度的错觉。在经递色的图像中,不可用的颜色通过来自可用颜色内的着色像素的扩散近似。图像和视频处理中的递色还被用来通过有意地施加一种形式的噪声以随机化量化误差来防止大规模模式,包括逐步渲染图像/视频帧中的亮度或色调的平滑梯度。在各种实施方案中,递色单元610可在YCbCr格式化数据的亮度通道上提供结构化噪声递色。其他通道诸如YCbCr以及其他格式诸如ARGB的色度通道可不被递色。
行缓冲器615可被配置为存储与相应的显示屏的行线对应的传入的帧数据。帧数据可表示包括在行线内的各个像素的亮度和色度。行缓冲器615可根据各种设计方式中的一种设计。例如,行缓冲器615可为SRAM、DRAM或者任何其他合适的存储器类型。在一些实施方案中,行缓冲器615可包括单个的输入/输出端口,而在其他实施方案中,行缓冲器615可具有多个数据输入/输出端口。
在一些实施方案中,可以以两个步骤执行源像素的缩放。第一步骤可执行垂直缩放,而第二步骤可执行水平缩放。在例示的实施方案中,(多个)缩放器单元620可执行垂直缩放和水平缩放。(多个)缩放器单元620可根据各种设计方式中的一种被设计。在一些是实施方案中,(多个)缩放器单元620的垂直缩放器和水平缩放器可实现为9抽头32相滤波器。在各种实施方案中,这些多相滤波器可通过权重因素乘以从取出单元605检索的每个像素。所得的像素值可然后被相加,并且然后被四舍五入以形成缩放的像素。能够被用在缩放过程中的像素的选择可为缩放位置值的一部分的函数。在一些实施方案中,权重因素可被存储在可编程表格中,并且对在缩放中使用的权重因素的选择可为缩放位置值的不同部分的函数。
在一些实施方案中,缩放位置值(本文也可被称为“显示位置值”)可包括多个位置。例如,缩放位置值可包括整数部分和小数部分。在一些实施方案中,确定哪个像素进行缩放可取决于缩放位置值的整数部分,而对权重因素的选择可取决于缩放位置值的小数部分。在一些实施方案中,数字微分分析仪(DDA)能够被用来确定缩放位置值。
视频/UI管线600内的颜色管理可通过颜色空间转换器625和色域调整单元630执行。在一些实施方案中,颜色空间转换器625可被配置为将YCbCr源数据转换成RGB格式。另选地,颜色空间转换器可被配置为从RGB格式的源数据去除偏置。在各种实施方案中,颜色空间转换器625可包括多种功能框,诸如输入偏置单元、矩阵乘法器和输出偏置单元(未全部示出)。此类框的使用可允许YCbCr格式到RGB格式的转换,反之亦然。
在各种实施方案中,色域调整单元630可被配置为将像素从非线性颜色空间转换到线性颜色空间,反之亦然。在一些实施方案中,色域调整单元630可包括查找表(LUT)和内插单元。在一些实施方案中,LUT是可编程的并且可根据各种设计方式中的一种方式设计。例如,LUT可包括SRAM或者DRAM,或者任何其他合适的存储器单元。在一些实施方案中,多个LUT可被采用。例如,独立的LUT可被用于γ和去γ处理计算。
需注意的是,图6所示实施方案仅仅为示例。在其他实施方案中,功能块的不同功能块和不同配置是可能的以及可设想的。
现在参见图7,示出了非分割显示屏和双向分割显示屏的框图。屏幕702示出在图7的顶部,并且屏幕702表示其中屏幕没有被逻辑上划分的情景。相比之下,屏幕704与屏幕702是相同的尺寸,但是屏幕704在逻辑上被划分成两个部分。可以通过将屏幕分成左半部分和右半部分来执行划分,其中划分从屏幕的顶部到底部在中间向下发生。在其他实施方案中,屏幕可被不同地划分和/或划分成多于两个部分。例如,在另一个实施方案中,屏幕可被水平划分成上半部分和下半部分。
在一个实施方案中,整个视频帧可使用两个显示管线被显示在屏幕704上并且可看起来如同整个视频帧使用单个的显示管线被显示在屏幕702上。视频帧在屏幕702和704中被示出为一簇云,以示出来自电视节目、电影或者其他图像序列的画面的帧的实施例。屏幕704的差别(相比于屏幕702)是第一显示管线将驱动视频帧的左侧到显示器而第二显示管线将驱动视频帧的右侧到显示器。针对与在屏幕704上正被显示的视频对应的视频帧的序列中的每个视频帧第一显示管线将继续驱动视频帧的左侧而第二显示管线将继续驱动视频帧的右侧到屏幕704。相比之下,对于屏幕702针对视频帧序列中的每个视频帧单个的显示管线将驱动整个视频帧到显示器。
现在转向图8,其示出了用于启用双向显示分割的电路的一个实施方案的框图。在一个实施方案中,在显示器后端的输出处可使用行缓冲器(未示出)。例如,在一个实施方案中,来自图2的显示管线210和240的输出可被传递到图8中的电路的输入端(或者data_in)。可将像素顺序地写入到先进先出缓冲器(FIFO)805和FIFO 810。每个FIFO 805和810可被配置为存储视频帧的行的一半,其与视频帧的任一半的全行对应。在一个实施方案中,图8中的电路的像素输出(或者data_in)可被递送到单个虚拟控制器(例如,图10的单个虚拟控制器1000)。
像素写序列可受写使能0(WE0)和写使能1(WE1)控制。读使能0(RE0)和读使能1(RE1)可分别通过AND门815和820控制控制FIFO的像素读取输出,并通过OR门825到data_out总线。因为分割显示情形中的峰值带宽与非分割显示情形是相同的恒定带宽,data_out总线可具有相同的带宽并且以与data_in总线相同的时钟速率运行。
现在参见图9,示出了用于启用双向显示分割的电路的一个实施方案的时序图。该时序图是基于图8中所示的电路图。为了该讨论的目的,每行的像素的数量(整个显示器的)被假定为2*N,其中N是正整数。
在一个实施方案中,在行的第一半部期间,像素0至(N-1)可被写入到FIFO 805。在行的第二半部期间,像素N至(2N–1)可被写入到FIFO 810。在半行的延迟之后,存储在FIFO805中的像素0至(N-1)和存储在FIFO 810中的像素N至(2N–1)可被并行读取并按交织方式输出。
现在转向图10,其示出了单个虚拟控制器1000的一个实施方案的框图。单个虚拟控制器1000可被配置为针对具有两个显示管线的计算***在至少三个不同的场景中控制一个或多个显示器。第一场景涉及使得第一显示管线驱动整个显示器。第二场景涉及使得第二显示管线驱动整个显示器。第三场景涉及使得两个显示管线驱动分割显示的独立的部分。
在一个实施方案中,针对分割显示场景,单个虚拟控制器1000可被配置为双控制器。在该实施方案中,像素去交织器1006可被配置为对接收的像素数据去交织。像素去交织器1006的输出可被递送到复用器(复用器)1010和1012。复用器1010和1012可通过双管道模式信号控制。双管道模式信号可选择用于单个虚拟控制器1000的操作的模式(单个显示或者分割显示)。去交织像素数据可然后被发送到控制器1014和1016。
像素时钟可被耦接到复用器1008的输入以及可被配置为将像素时钟除以二的时钟分频器1004。时钟分频器1004的输出可被耦接到复用器1008的输入,并且双管道模式信号可为选择用于复用器1008的信号。来自复用器1008的输出的选择的时钟可然后被耦接到控制器1014和1016。当处于分割显示模式中时,控制器1014和1016可在两个通道上(对于四通道操作)或者在一个通道上(对于两通道操作)输出像素。
复用器1018可被配置为在其中单个控制器驱动整个显示器的场景中选择哪个控制器驱动显示器。复用器1018的输出被耦接到复用器1020,并且复用器1020可被配置为选择双管道模式(对于分割显示)或者当单个控制器正在驱动整个显示器时选择单管道模式。复用器1020的输出可被耦接到接口1022的四个通道。接口1022可被耦接到显示器(未示出)。
在一个实施方案中,尽管在分割显示模式中,每个控制器1014和1016可以半个视频时钟速率运行,并且每行视频帧的一半的像素可传递通过每个控制器1014和1016。在双控制器模式中,水平视频格式定时参数可被编程为其值的一半用于单个控制器模式。垂直视频格式定时参数可不受显示分割的影响并且可运行在正常时钟速率。
现在转向图11,其示出了用于同步两个显示管线的控制逻辑部件的一个实施方案。利用两个显示管线驱动单个显示器可存在与保持两个显示管线同步到相同帧有关的各种挑战。例如,在一个实施方案中,每个显示管线可工作域给定帧,并且用于下一帧的配置数据(即,帧分组)可被发送到靠近当前帧和下一帧的帧界限的两个显示管线。因此,在一些情况下,显示管线中的一者可及时地接收用于下一帧的配置数据以处理下一帧而另一显示管线可不及时地接收该配置数据。当该情形发生时,并且如果本文所公开的技术没有被使用,一个显示管线可驱动帧的错误的一半到显示器,并且被驱动到显示器的视频帧的两个半部可看起来显著不同,特别当在从当前帧到下一帧的视频序列中发生场景的改变时。
为了防止上述场景发生,可基于选择的显示管线是否已经及时接收到下一帧分组以处理下一帧来生成不同类型的垂直消隐间隙(VBI)信号。第一类型的VBI信号可被称为“常规VBI”信号,并且当每个显示管线已经接收到用于下一帧的所有配置数据时该常规VBI信号可被发送。第二类型的VBI信号可被称为“重复的VBI”信号,并且当显示管线中的任一者没有接收到用于下一帧的所有配置数据时该重复的VBI信号可被发送。
如图11中所示,存在两个显示管线1100和1105。显示管线1100包括控制单元1110、参数FIFO 1115和定时发生器1130。显示管线1100还可包括为了避免使图混乱未在图11中示出的其他逻辑部件。控制单元1110可被配置为确定参数FIFO 1115是否已经接收到下一帧的帧分组。当控制单元1110已经检测到参数FIFO 1115已经接收到下一帧的帧分组时,则控制单元1110可发送对应的指示到定时发生器1130和1135。类似地,显示管线1105包括控制单元1120、参数FIFO 1125和定时发生器1135。当控制单元1120已经检测到参数FIFO1125已经接收到下一帧的帧分组时,则控制单元1120可发送指示到定时发生器1130和1135。
在一个实施方案中,定时发生器1130和1135中的任一者可被选择作为用于给定分割显示场景的主定时发生器。在另一个实施方案中,定时发生器1130和1135中的仅一者可能够为主定时发生器。针对其中定时发生器1130或者定时发生器1135任一者可为主定时发生器的实施方案,在主设备上的处理器上执行的软件可被配置为选择哪个定时发生器是主定时发生器。该信号可被递送到复用器1140和1145以确定针对每个帧哪个定时发生器将驱动常规VBI信号或者重复的VBI到显示管线1100和1105两者。在各种实施方案中,递送到复用器1140和1145的选择的信号可相同或者不相同。在不使用分割显示的实施方案中,显示管线1100和1105中的每一者可驱动独立的显示器,并且定时发生器1130和1135可独立于彼此操作。需注意的是,在一些实施方案中,可仅一个定时发生器用于两个显示管线。在这种情况下,该定时发生器通常为用于两个管线的主定时发生器。
在一个实施方案中,每个定时发生器1130和1135可基于来自特定时间点的显示管线1100和1105两者的指示的状态生成常规VBI信号或者重复的VBI信号。在考虑接下来处理哪个帧时显示管线1100和1105两者可被配置为考虑并利用常规的/重复的VBI信号对中的一者,其中显示管线1100和1105两者均考虑相同的常规的/重复的VBI信号对。
现在参见图12,示出了用于生成不同类型的垂直消隐间隙(VBI)信号的方法1200的一个实施方案。为了讨论的目的,按顺序的次序示出了该实施方案中的步骤。应当指出的是,在下面所述方法的各种实施方案中,所述元素中的一者或多者可被同时地、与所示的顺序不同的顺序执行,或者可被完全省略。还可根据需要来执行其他附加元素。本文所述的各种现实管线中的任一者可被配置为实现方法1200。
第一显示管线的主定时发生器可确定其已经从所有显示管线接收到指示指定它们已经接收到下一帧的帧分组(框1205)。主定时发生器可确定其是否已经从所有显示管线接收到准备好生成下一帧的VBI信号的指示。当前图像帧可在主设备的显示器显示。在一个实施方案中,主设备可具有两个显示管线。在其他实施方案中,设备可具有多于两个显示管线。
如果主定时发生器已经从所有显示管线接收到它们已经接收到下一个帧分组的指示(条件框1210,“是”分支),则主定时发生器可生成常规VBI信号并将其传送到显示管线中的每一者(框1215)。否则,如果主定时发生器还没有从至少一个显示管线接收到指示(条件框1210,“否”分支),则主定时发生器可生成重复的VBI信号并将其传送到显示管线中的每一者(框1220)。在框1215和1220之后,显示管线可开始处理下一个帧(框1225),然后方法1200可以返回到框1205。
现参见图13,其示出了用于处理显示管线中的源帧的方法1300的一个实施方案。为了讨论的目的,该实施方案中的步骤以顺序的次序被示出。应当指出的是,在下面描述的方法的各种实施方案中,所描述的元素中的一个或多个元素可同时地、以与所示的顺序不同的顺序执行,或者可以完全省略。还可根据需要来执行其他附加元素。本文所述的各种显示管线中的任一者可被配置为实现方法1300。
当显示管线正在处理当前源帧时(框1305),如果显示管线接收到具有用于下一源帧的配置数据的帧分组(条件框1310,“是”分支),则显示管线可向主定时生成器发送其已经接收到下一帧分组的指示(框1315)。在一些实施方案中,显示管线可发送该指示到多于一个的定时生成器。另选地,当设备或者装置具有多个定时生成器时,定时生成器中的一者可通过软件选择成为主定时生成器。需注意的是,在开始当前帧的处理之前,显示管线可已经接收到下一帧的帧分组。在这种情况下,在当前帧期间显示管线可仍然发送该指示。然而,在其他实施方案中,在接收到帧分组时显示管线可立即发送该指示,而不管帧分组是多早(即,当前帧之前有多少帧)被接收。
如果显示管线没有接收到具有用于下一源帧的配置数据的帧分组(条件框1310,“是”分支),则显示管线可阻止该指示被发送到主定时生成器(框1320)。接着,显示管线可从主定时生成器接收VBI信号(框1325)。如果接收到的VBI信号是常规的VBI信号(条件框1330,“常规的”分支),则显示管线可以处理视频序列的下一个源帧(框1335)。如果接收的VBI信号是重复的VBI信号(条件框1330,“重复的”分支),则显示管线可再次驱动当前帧(框1340)。需注意的是,在各种实施方案中,如果给定的显示管线接收到重复的VBI信号,则给定的显示管线将再次处理当前帧,即使该给定的显示管线已经具有用于下一帧的帧分组。在框1335和1340之后,方法1300可返回到条件框1310以确定具有用于下一个源帧的配置数据的帧分组是否已被显示管线接收。
接着参见图14,其示出了***1400的一个实施方案的框图。如图所示,***1400可表示台式计算机1410、膝上型计算机1420、平板计算机1430、蜂窝电话1440、电视1450(或被配置为耦接到电视机的机顶盒)、手表或其他可穿戴物品1460或其他的芯片、电路、组件等。其他设备是可能的并且可设想的。在例示的实施方案中,***1400包括耦接到外部存储器1402的SoC 110(图1中的)的至少一个示例。
SoC 110耦接到一个或多个***设备1404和外部存储器1402。还提供了电源1406,其向SoC 110供应供电电压以及向存储器1402和/或***设备1404供应一个或多个供电电压。在各种实施方案中,电源1406可表示电池(例如,智能电话,膝上型计算机或平板计算机中的可充电电池)。在一些实施方案中,可以包括SoC 110的不止一个实例(也可包括不止一个外部存储器1402)。
存储器1402可为任何类型的存储器,诸如动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、双数据速率(DDR、DDR2、DDR3等)SDRAM(包括SDRAM的移动版本,例如mDDR3等,和/或SDRAM的低功率版本,例如LPDDR2等)、RAMBUS DRAM(RDRAM)、静态RAM(SRAM)等。一个或多个内存设备可以耦合到电路板上以形成诸如单列直插内存模块(SIMM)、双列直插内存模块(DIMM)等的内存模块。可供选择地,设备可以与SoC 110在芯片堆叠结构、封装堆叠结构或者多芯片模块结构中安装。
根据***1400的类型,***设备1404可包括任何期望的电路。例如,在一个实施方案中,***设备1404可包括用于各种类型的无线通信的设备,诸如wifi、蓝牙、蜂窝、全球定位***等。***设备1404还可包括附加存储装置,该附加存储装置包括RAM存储装置、固态存储装置或磁盘存储装置。***设备1404可包括诸如显示屏的用户接口设备,包括触摸显示屏或多点触摸显示屏、键盘或其他输入设备、麦克风、扬声器等。
在各种实施方案中,软件应用的程序指令能够被用来实现前述的方法和/或机制。程序指令可用诸如C的高级编程语言描述硬件的行为。另选地,可使用硬件设计语言(HDL),诸如Verilog。程序指令可存储在非暂态计算机可读存储介质上。多个类型的存储介质可用。存储介质可以在使用期间由计算机访问,以将程序指令和附带数据提供给计算机用于程序执行。在一些实施方案中,合成工具读取程序指令以便从合成库产生包括门列表的网表。
应当强调,上述实施方案仅是具体实施方式的非限制性实施例。一旦充分理解了以上公开,很多变型形式和修改形式对于本领域的技术人员而言将变得显而易见。本发明旨在将以下权利要求书被解释为涵盖所有此类变型形式和修改形式。

Claims (20)

1.一种装置,包括:
第一显示管线,所述第一显示管线被配置为驱动当前帧的第一部分到显示器的第一部分;和
第二显示管线,所述第二显示管线被配置为驱动所述当前帧的第二部分到所述显示器的第二部分;
其中所述第一显示管线被配置为:
接收与下一帧对应的数据;以及
响应于确定所述第二显示管线没有准备好驱动所述下一帧,再次驱动所述当前帧。
2.根据权利要求1所述的装置,其中与所述下一帧对应的所述数据包括配置数据。
3.根据权利要求2所述的装置,其中如果所述第二显示管线没有接收到用于所述下一帧的配置数据,则所述第二显示管线没有准备好驱动所述下一帧。
4.根据权利要求1所述的装置,其中所述第一显示管线被配置为:
如果所述第一显示管线和所述第二显示管线两者已经接收到用于所述下一帧的配置数据,则接收常规的垂直消隐间隙(VBI)信号;
以及
如果所述第一显示管线或者所述第二显示管线没有接收到用于所述下一帧的配置数据,则接收重复的VBI信号。
5.根据权利要求4所述的装置,其中响应于接收到所述常规的VBI信号,所述第一显示管线和所述第二显示管线两者被配置为处理所述下一帧,并且其中响应于接收到所述重复的VBI信号,所述第一显示管线和所述第二显示管线两者被配置为再次处理所述当前帧。
6.根据权利要求5所述的装置,其中所述第一显示管线和所述第二显示管线中的每一者包括定时生成器,其中所述装置被配置为将至少一个定时生成器编程为用于所述第一显示管线和所述第二显示管线两者的主定时生成器,并且其中每个显示管线被配置为当接收到所述下一帧的帧分组时向所述第一显示管线的第一定时生成器以及向所述第二显示管线的第二定时生成器发送指示。
7.根据权利要求6所述的装置,其中所述第一定时生成器和所述第二定时生成器中的每一者被配置为基于在特定时间点处的所述第一显示管线的状态和所述第二显示管线的状态两者来发出常规的VBI信号或者重复的VBI信号,其中所述第一显示管线和所述第二显示管线中的每一者被配置为使用仅一个VBI信号对,并且其中所述第一显示管线和所述第二显示管线两者被配置为使用相同的VBI信号对。
8.一种计算***,包括:
显示器,所述显示器在逻辑上被划分为多个部分;和
多个显示管线,其中所述多个显示管线中的每个显示管线被配置为处理并驱动相同帧的一部分到所述显示器的一部分;并且
其中响应于确定所述多个显示管线中的第二显示管线没有准备好处理下一帧,所述多个显示管线中的第一显示管线被配置为再次处理所述相同帧而不是所述下一帧。
9.根据权利要求8所述的计算***,其中所述第一显示管线准备好处理所述下一帧。
10.根据权利要求9所述的计算***,其中确定所述第二显示管线没有准备好处理所述下一帧包括所述第一显示管线接收到所述第二显示管线没有足够快接收到用于所述下一帧的配置数据以处理所述下一帧的指示。
11.根据权利要求8所述的计算***,其中每个显示管线包括定时生成器,并且其中第一显示管线的第一定时生成器被配置为:
响应于确定每个显示管线已经接收到用于所述下一帧的帧分组而将常规的垂直消隐间隙VBI信号传送到每个显示管线;以及
响应于确定至少一个显示管线还没有接收到用于所述下一帧的配置数据而将重复的VBI信号传送到每个显示管线。
12.根据权利要求8所述的计算***,其中所述多个显示管线中的第一显示管线被配置为响应于检测到重复的垂直消隐间隙而再次处理所述相同帧。
13.根据权利要求12所述的计算***,其中所述第一显示管线和所述第二显示管线中的每一者包括定时生成器,其中所述计算***被配置为将一个定时生成器编程为用于所述第一显示管线和所述第二显示管线两者的主定时生成器,并且其中每个显示管线被配置为当接收到用于所述下一帧的帧分组时向所述第一显示管线的第一定时生成器以及向所述第二显示管线的第二定时生成器发送指示。
14.根据权利要求13所述的计算***,其中所述第一定时生成器和所述第二定时生成器中的每一者被配置为基于在特定时间点处的所述第一显示管线的状态和所述第二显示管线的状态来发出常规的VBI信号或者重复的VBI信号,其中所述第一显示管线和所述第二显示管线中的每一者被配置为使用仅一个VBI信号对,并且其中所述第一显示管线和所述第二显示管线两者被配置为使用相同的VBI信号对。
15.一种方法,包括:
通过第一显示管线来驱动当前帧的第一部分到显示器的第一部分;
通过第二显示管线来驱动所述当前帧的第二部分到所述显示器的第二部分;以及
通过所述第一显示管线来接收与下一帧对应的数据;以及
当所述第二显示管线没有准备好驱动所述下一帧时,所述第一显示管线再次驱动所述当前帧。
16.根据权利要求15所述的方法,其中所述第一显示管线准备好处理所述下一帧。
17.根据权利要求16所述的方法,其中确定所述第二显示管线何时没有准备好驱动所述下一帧包括在所述第一显示管线处接收到所述第二显示管线没有足够快接收到用于所述下一帧的配置数据以处理所述下一帧的指示。
18.根据权利要求15所述的方法,其中所述第一显示管线包括第一定时生成器,并且所述方法进一步包括:
响应于确定所述第一显示管线和所述第二显示管线准备好驱动所述下一帧而传送常规的垂直消隐间隙(VBI)信号到所述第一显示管线和所述第二显示管线;以及
响应于确定至少一个显示管线没有准备好驱动所述下一帧而传送重复的VBI信号到所述第一显示管线和所述第二显示管线。
19.根据权利要求18所述的方法,还包括响应于接收到所述重复的VBI信号而在所述第一显示管线处再次处理所述当前帧的所述第一部分。
20.根据权利要求19所述的方法,还包括将所述第一定时生成器编程为主定时生成器。
CN201580028743.2A 2014-06-19 2015-05-08 多个显示管线驱动被划分的显示器 Active CN106415479B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/309,645 US9471955B2 (en) 2014-06-19 2014-06-19 Multiple display pipelines driving a divided display
US14/309,645 2014-06-19
PCT/US2015/029866 WO2015195219A1 (en) 2014-06-19 2015-05-08 Multiple display pipelines driving a divided display

Publications (2)

Publication Number Publication Date
CN106415479A true CN106415479A (zh) 2017-02-15
CN106415479B CN106415479B (zh) 2018-08-21

Family

ID=53267621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580028743.2A Active CN106415479B (zh) 2014-06-19 2015-05-08 多个显示管线驱动被划分的显示器

Country Status (7)

Country Link
US (1) US9471955B2 (zh)
EP (1) EP3134804B1 (zh)
JP (1) JP6652937B2 (zh)
KR (1) KR101977453B1 (zh)
CN (1) CN106415479B (zh)
TW (1) TWI567634B (zh)
WO (1) WO2015195219A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160008305A (ko) * 2014-07-14 2016-01-22 삼성전자주식회사 디스플레이 드라이버 ic의 작동 방법과 이를 포함하는 이미지 처리 시스템의 작동 방법
KR102164798B1 (ko) * 2014-09-11 2020-10-13 삼성전자 주식회사 디스플레이 구동 회로 및 이를 포함하는 디스플레이 장치
US10026450B2 (en) * 2015-03-31 2018-07-17 Jaguar Land Rover Limited Content processing and distribution system and method
CN105141876B (zh) * 2015-09-24 2019-02-22 京东方科技集团股份有限公司 视频信号转换方法、视频信号转换装置以及显示***
KR102590889B1 (ko) * 2016-07-02 2023-10-19 인텔 코포레이션 고해상도 디스플레이 상에 다수의 스크린 영역들을 제공하기 위한 메커니즘
TWI607365B (zh) * 2016-10-07 2017-12-01 Handwriting interactive display device and handwriting interactive reading device
KR102612815B1 (ko) * 2016-10-24 2023-12-13 삼성전자주식회사 디스플레이장치 및 그 제어방법
TWI676129B (zh) * 2018-06-29 2019-11-01 致茂電子股份有限公司 多核心同步處理裝置及其同步控制方法
US10504278B1 (en) * 2018-09-28 2019-12-10 Qualcomm Incorporated Blending neighboring bins
US10951549B2 (en) * 2019-03-07 2021-03-16 Mellanox Technologies Tlv Ltd. Reusing switch ports for external buffer network
KR102312357B1 (ko) * 2020-06-22 2021-10-13 주식회사 글로벌테크놀로지 디스플레이를 위한 백라이트 장치 및 그의 전류 제어 집적 회로
KR102271828B1 (ko) * 2020-06-22 2021-07-01 주식회사 글로벌테크놀로지 디스플레이를 위한 백라이트 장치
US11360732B1 (en) 2020-12-31 2022-06-14 Samsung Electronics Co., Ltd. Method and apparatus for displaying multiple devices on shared screen
US11558316B2 (en) 2021-02-15 2023-01-17 Mellanox Technologies, Ltd. Zero-copy buffering of traffic of long-haul links
US11688365B2 (en) 2021-04-26 2023-06-27 Apple Inc. Synchronous display pipeline systems and methods
US11662798B2 (en) * 2021-07-30 2023-05-30 Advanced Micro Devices, Inc. Technique for extended idle duration for display to improve power consumption
US11973696B2 (en) 2022-01-31 2024-04-30 Mellanox Technologies, Ltd. Allocation of shared reserve memory to queues in a network device
US11908382B1 (en) * 2022-11-30 2024-02-20 Mediatek Inc. Seamless switching control for foldable or flip devices

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477492A (zh) * 2001-11-30 2004-02-25 株式会社半导体能源研究所 显示设备及使用该设备的显示***
CN1890660A (zh) * 2003-11-19 2007-01-03 路西德信息技术有限公司 Pc总线上的多重三维图形管线的方法及***
US7522167B1 (en) * 2004-12-16 2009-04-21 Nvidia Corporation Coherence of displayed images for split-frame rendering in multi-processor graphics system

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3473665D1 (en) 1984-06-25 1988-09-29 Ibm Graphical display apparatus with pipelined processors
US6256710B1 (en) 1995-04-28 2001-07-03 Apple Computer, Inc. Cache management during cache inhibited transactions for increasing cache efficiency
US6005546A (en) 1996-03-21 1999-12-21 S3 Incorporated Hardware assist for YUV data format conversion to software MPEG decoder
US5829025A (en) 1996-12-17 1998-10-27 Intel Corporation Computer system and method of allocating cache memories in a multilevel cache hierarchy utilizing a locality hint within an instruction
US6157395A (en) 1997-05-19 2000-12-05 Hewlett-Packard Company Synchronization of frame buffer swapping in multi-pipeline computer graphics display systems
US6643745B1 (en) 1998-03-31 2003-11-04 Intel Corporation Method and apparatus for prefetching data into cache
US6460115B1 (en) 1999-11-08 2002-10-01 International Business Machines Corporation System and method for prefetching data to multiple levels of cache including selectively using a software hint to override a hardware prefetch mechanism
JP3526019B2 (ja) * 1999-11-30 2004-05-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 画像表示システム、画像表示装置、および画像表示方法
JP3950926B2 (ja) * 1999-11-30 2007-08-01 エーユー オプトロニクス コーポレイション 画像表示方法、ホスト装置、画像表示装置、およびディスプレイ用インターフェイス
US7127573B1 (en) 2000-05-04 2006-10-24 Advanced Micro Devices, Inc. Memory controller providing multiple power modes for accessing memory devices by reordering memory transactions
US6721847B2 (en) 2001-02-20 2004-04-13 Networks Associates Technology, Inc. Cache hints for computer file access
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US20060044328A1 (en) 2004-08-26 2006-03-02 Rai Barinder S Overlay control circuit and method
US8127088B2 (en) 2005-01-27 2012-02-28 Hewlett-Packard Development Company, L.P. Intelligent cache management
US7437510B2 (en) 2005-09-30 2008-10-14 Intel Corporation Instruction-assisted cache management for efficient use of cache and memory
US7525548B2 (en) 2005-11-04 2009-04-28 Nvidia Corporation Video processing with multiple graphical processing units
US7899990B2 (en) 2005-11-15 2011-03-01 Oracle America, Inc. Power conservation via DRAM access
JP2007279185A (ja) * 2006-04-04 2007-10-25 Matsushita Electric Ind Co Ltd 画像データ表示制御装置
JP4142069B2 (ja) 2006-06-16 2008-08-27 株式会社ソニー・コンピュータエンタテインメント 情報処理装置およびアクセス制御方法
JP5459928B2 (ja) * 2006-10-12 2014-04-02 キヤノン株式会社 表示制御装置及び表示装置
US20080150920A1 (en) * 2006-12-26 2008-06-26 Hsueh-Bing Yen Multi-display system and method for displaying video frames thereon
US7843460B2 (en) 2007-04-13 2010-11-30 Seiko Epson Corporation Method and apparatus for bandwidth corruption recovery
US20080297525A1 (en) 2007-05-31 2008-12-04 Barinder Singh Rai Method And Apparatus For Reducing Accesses To A Frame Buffer
US7975107B2 (en) 2007-06-22 2011-07-05 Microsoft Corporation Processor cache management with software input via an intermediary
US20090106496A1 (en) 2007-10-19 2009-04-23 Patrick Knebel Updating cache bits using hint transaction signals
US8140771B2 (en) 2008-02-01 2012-03-20 International Business Machines Corporation Partial cache line storage-modifying operation based upon a hint
US8180975B2 (en) 2008-02-26 2012-05-15 Microsoft Corporation Controlling interference in shared memory systems using parallelism-aware batch scheduling
JP2010027032A (ja) 2008-06-17 2010-02-04 Nec Electronics Corp Fifo装置及びfifoバッファへのデータ格納方法
US8310494B2 (en) * 2008-09-30 2012-11-13 Apple Inc. Method for reducing graphics rendering failures
US8234478B1 (en) 2008-10-22 2012-07-31 Nvidia Corporation Using a data cache array as a DRAM load/store buffer
US8180963B2 (en) 2009-05-21 2012-05-15 Empire Technology Development Llc Hierarchical read-combining local memories
US8244981B2 (en) 2009-07-10 2012-08-14 Apple Inc. Combined transparent/non-transparent cache
US8823721B2 (en) 2009-12-30 2014-09-02 Intel Corporation Techniques for aligning frame data
JP2011199735A (ja) * 2010-03-23 2011-10-06 Toshiba Corp 画像処理装置および画像処理システム
US8451994B2 (en) * 2010-04-07 2013-05-28 Apple Inc. Switching cameras during a video conference of a multi-camera mobile device
US8510521B2 (en) 2010-09-16 2013-08-13 Apple Inc. Reordering in the memory controller
US8704732B2 (en) 2010-09-29 2014-04-22 Qualcomm Incorporated Image synchronization for multiple displays
US20120147020A1 (en) * 2010-12-13 2012-06-14 Ati Technologies Ulc Method and apparatus for providing indication of a static frame
WO2012124660A1 (ja) 2011-03-17 2012-09-20 シャープ株式会社 表示装置、駆動装置、及び、駆動方法
WO2012174681A1 (en) 2011-06-24 2012-12-27 Intel Corporation Techniques for controlling power consumption of a system
US8922571B2 (en) 2012-09-11 2014-12-30 Apple Inc. Display pipe request aggregation
US9035961B2 (en) 2012-09-11 2015-05-19 Apple Inc. Display pipe alternate cache hint

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477492A (zh) * 2001-11-30 2004-02-25 株式会社半导体能源研究所 显示设备及使用该设备的显示***
CN1890660A (zh) * 2003-11-19 2007-01-03 路西德信息技术有限公司 Pc总线上的多重三维图形管线的方法及***
US7522167B1 (en) * 2004-12-16 2009-04-21 Nvidia Corporation Coherence of displayed images for split-frame rendering in multi-processor graphics system

Also Published As

Publication number Publication date
US20150371607A1 (en) 2015-12-24
TW201617843A (zh) 2016-05-16
JP2017519244A (ja) 2017-07-13
US9471955B2 (en) 2016-10-18
KR20160145809A (ko) 2016-12-20
EP3134804B1 (en) 2020-06-24
WO2015195219A1 (en) 2015-12-23
TWI567634B (zh) 2017-01-21
JP6652937B2 (ja) 2020-02-26
CN106415479B (zh) 2018-08-21
KR101977453B1 (ko) 2019-05-10
EP3134804A1 (en) 2017-03-01

Similar Documents

Publication Publication Date Title
CN106415479B (zh) 多个显示管线驱动被划分的显示器
US9495926B2 (en) Variable frame refresh rate
US11211036B2 (en) Timestamp based display update mechanism
CN104145242B (zh) 具有淡入淡出和热插拔特征的缆线
US20120307141A1 (en) Frame retiming for mirror mode
US5831638A (en) Graphics display system and method for providing internally timed time-varying properties of display attributes
US9620081B2 (en) Hardware auxiliary channel for synchronous backlight update
US10055809B2 (en) Systems and methods for time shifting tasks
US8842129B2 (en) Device and method for generating variable priority multiwindow images
US20120306926A1 (en) Inline scaling unit for mirror mode
CN105187747A (zh) 一种多功能lcd显示控制器及其控制方法
US9607574B2 (en) Video data compression format
US20160307540A1 (en) Linear scaling in a display pipeline
US9652816B1 (en) Reduced frame refresh rate
US10546558B2 (en) Request aggregation with opportunism
US9953591B1 (en) Managing two dimensional structured noise when driving a display with multiple display pipes
US9691349B2 (en) Source pixel component passthrough
US20170329574A1 (en) Display controller
US9472169B2 (en) Coordinate based QoS escalation
US9747658B2 (en) Arbitration method for multi-request display pipeline

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant