用单一视频电缆连接多个显示器的显示控制器的制作方法

文档序号:6420141阅读:242来源:国知局
专利名称:用单一视频电缆连接多个显示器的显示控制器的制作方法
技术领域
本发明通常针对计算机,更具体地说,本发明针对具有一个以上显示器的计算机。
背景技术
计算机爱好者对多个显示器的使用持续增长。通过使用一个以上的显示器,用户能够展开他或她的桌面,以示出比在使用单一显示器的情况下更多的程序。此外,可以在多个显示器上展开单一程序,以便不用滚动就可以看见文档(例如,电子表格)中的更多部分。也可以在几页上打开表现内容,并可以跨越几个不同的显示器来对其进行拖曳。
由于生产大型显示器的成本的原因,购买两个显示器可以提供相同的桌面空间数量,而价格比大型监视器低。但是,除了监视器本身的成本以外,对每个监视器而言,常规多监视器系统通常需要一个额外的电缆和采取视频卡形式的显示适配器。或者,必须为计算机购买经常被称作“双头”或“多显示卡”的特殊视频卡。添加或改变视频卡要求打开计算机机箱,并要求具备有关计算机的内部结构的某些知识。而且,用户必须正确地配置这些电缆和视频卡,以创建单一虚拟显示表面。
使用多个监视器的缺点是从一个监视器看到另一个监视器可能会有困难。当用户从一个监视器看到另一个监视器时,即使当把这些监视器尽可能接近地放在一起时,对于大多数监视器而言,在显示器周围延伸的宽框架会打断视线。
发明概述本发明所提供的显示控制器允许由单一电缆和单一显示适配器来驱动一个以上的显示器。为了达到这个目的,显示控制器将显示适配器所提供的单一帧的信息分成对于多个显示器的显示信息。
本发明可以用于许多不同类型的显示器的组合,包括(但不局限于)监视器、LCD显示器及其任何组合。此外,可以为单一外壳内的多个显示器利用本发明。例如,这多个显示器可以是被安排在外壳内的一些分开的屏面,以构成邻接的大显示表面。
显示控制器为它所连接的计算机提供有关(例如,经由诸如自定义EDID的已知机制)的显示器的信息。自定义EDID信息可以包括由所有显示器所提供的单一虚拟显示表面的信息,例如组合显示器的尺寸、分辨率和刷新率。此外,EDID信息可以包括每个单独的监视器或显示器的信息(包括这些单独的显示器在单一虚拟显示表面中的位置、每个监视器可得到的分辨率和刷新率)。单一虚拟显示表面可以被计算机所利用,但这些计算机无法识别多显示器系统的EDID。
如果计算机能够识别多显示器系统的EDID,则在计算机上运行的计算机操作系统和/或应用程序可以理解和利用显示表面的多种特性,并可以为用户优化显示质量和表现内容。为了达到这个目的,可以提供向应用程序揭示自身的应用程序接口(API),以便这些应用程序可以知道多个显示器并改变它们的图像,从而在特定的显示器上或跨越多个显示器示出一个或多个特定的窗格。
知道多显示器系统的EDID的操作系统可以使用显示部件(例如,视频驱动器),以揭示与显示控制器连接的每个显示器的虚拟显示表面。然后,应用程序或操作系统可以为这些虚拟显示表面提供图像信息。
对这些虚拟显示表面进行组合,以便在显示适配器的帧缓冲器中建立单一帧。将该帧发送到显示控制器,它(例如)使用行缓冲器或帧缓冲器来划分图像,然后将合适的显示信息提供给分开的显示器。关于本发明的某些实施,可以旋转目标显示器显示的数据帧,以便它与目标显示器的扫描方向相匹配。
通过以下详细的描述并结合附图,其他的优点将会一目了然。在附图中附图简述

图1是框图,表示了其中可加入本发明的计算机系统;图2是根据本发明的一个方面的,与多个显示器连接的计算机的框图;图3是根据本发明的一个方面的,具有多个显示屏面的监视器的侧面透视视图;
图4是表示EDID信息的框图,该EDID信息可以由本发明的显示控制器提供;图5是框图,展示了本发明可以与传统和不知道的操作系统结合的一种方式;图6是框图,展示了用于根据本发明的一个方面将目标图像信息提供给多个显示器的部件;图7是流程图,通常表示用于根据本发明的一个方面为图2所示的计算机配置显示部件的一些步骤;图8是流程图,通常表示用于根据本发明的一个方面为特定的显示器指定显示信息的一些步骤;图9是由本发明的显示部件所进行的虚拟帧数据存储的表示法;图10是由本发明的显示部件所进行的数据存储的二维表示法;以及,图11是流程图,通常表示用于根据本发明的一个方面将一个图像帧映射到多个显示器的一些步骤。
详细描述示范操作环境图1展示了其上可以执行本发明的合适的计算系统环境110的一个例子。计算系统环境110只是合适的计算环境的一个例子,并不意在对本发明的使用或功能性的范围加以任何限制。不应该将计算环境110解释为对于示范操作环境110中所展示的任何一个部件或部件组合的有任何依赖性或要求。
本发明可用于许多其他的通用或专用计算系统环境或配置。可适用于本发明的众所周知的计算系统、环境和/或配置的例子包括(但不局限于)个人计算机、服务器计算机、手持设备或便携式设备、多处理器系统、基于微控制器的系统、置顶盒、可编程的消费电子设备、网络PCs、小型计算机、大型计算机、数字电视、模拟器系统、包括以上任何系统或设备的分布式计算环境,以及类似的环境。
可以在正由计算机执行的计算机可执行指令(例如,程序模块)的一般上下文中描述本发明。通常,程序模块包括执行特殊任务或实施特殊的抽象数据类型的例行程序、程序、对象、部件、数据结构等。本发明也可以在分布式计算环境中加以实践,在这些环境中,由通过通信网络被连接的各个远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括记忆存储设备的本地计算机存储介质和远程计算机存储介质。
参照图1,用于执行本发明的示范系统包括采取计算机110的形式的通用计算设备。计算机110的部件可以包括(但不局限于)处理单元120、系统存储器130,以及将包括该系统存储器的各种系统部件耦合到处理单元120的系统总线121。系统总线121可以是几种类型的总线结构(包括存储总线或存储控制器、外围总线和使用各种总线构造中的任何总线构造的局域总线)中的任何总线结构。举例来讲(不作限制),这类构造包括“工业标准结构”(ISA)总线、“微通道结构”(MCA)总线、“增强ISA”(EISA)总线、“视频电子标准协会”(VESA)局域总线和也被称作“中层楼(Mezzanine)总线”的“外围部件互连”(PCI)总线。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是可由计算机110进行存取的任何可用介质,它可以包括易失和非易失介质、可移动和不可移动介质。举例来讲(不作限制),计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括采用信息(例如,计算机可读指令、数据结构、程序模块或其他数据)存储的任何方法或技术来加以执行的易失和非易失的,可移动和不可移动介质。计算机存储介质包括(但不局限于)RAM、ROM、EEPROM、快闪存储器或其他存储技术、CD-ROM、CD-RW、数字通用磁盘(DVD)或其他光盘存储器、盒式磁带、磁带、磁盘存储器或其他磁性存储设备、或可用来存储所需信息并可以由计算机110进行存取的任何其他的介质。通信介质通常具体表现为计算机可读指令、数据结构、程序模块或调制的数据信号(例如,载波或其他传输机制)中的其他数据,并包括任何信息传送介质。术语“调制的数据信号”意味着一种信号,该信号具有一个或多个特征,以为该信号中的信息编码的方式来加以设置或改变。举例来讲(不作限制),通信介质包括有线介质(例如,有线网络或直线连接)和无线介质(例如,声音、RF、红外线和其他无线介质)。以上任何内容的组合也应该被包括在计算机可读介质的范围内。
系统存储器130包括采取易失和/或非易失存储器(例如,只读存储器(ROM)131和随机存取存储器(RAM)132)的形式的计算机存储介质。基本输入/输出系统133(BIOS)通常被存储在ROM 131中,该基本输入/输出系统包含有助于在计算机110内的各个元件之间传送信息(例如,在启动期间)的基本例行程序。RAM 132通常包含处理单元120可立即获取并且/或者目前在处理单元120上进行操作的数据和/或程序模块。举例来讲(不作限制),图1展示了操作系统134、应用程序135、其他程序模块136和程序数据137。
计算机110也可以包括其他可移动/不可移动的易失/非易失计算机存储介质。仅仅举例而言,图1展示了从不可移动的非易失磁性介质读取或对其写入的硬盘驱动器140、从可移动的非易失磁盘152读取或对其写入的磁盘驱动器151,以及从可移动的非易失光盘156(例如,CD ROM或其他光学介质或可写/可重写的光学介质)读取或对其写入的光盘驱动器155。可以用于示范操作环境中的其他可移动/不可移动的易失/非易失计算机存储介质包括(但不局限于)盒式磁带、快闪存储卡、数字通用磁盘、数字录像磁带、固态RAM、固态ROM和类似的介质。硬盘驱动器141通常通过不可移动的存储接口(例如,接口140)被连接到系统总线121,磁盘驱动器151和光盘驱动器155通常通过可移动的存储接口(例如,接口150)被连接到系统总线121。
以上所讨论的和图1中所展示的各种驱动器及其有关的计算机存储介质为计算机110提供计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图1中,硬盘驱动器141被展示为存储操作系统144、应用程序145、其他程序模块146和程序数据147。注意,这些部分可以等同于或不同于操作系统134、应用程序135、其他程序模块136和程序数据137。这里为操作系统144、应用程序145、其他程序模块146和程序数据147提供不同的号码,以便表示至少它们是不同的副本。用户可以通过输入设备(例如,键盘162和定点设备161(一般指鼠标、跟踪球或触垫))将命令和信息输入计算机20。其他的输入设备(未示出)可以包括话筒、操纵杆、游戏垫、圆盘式卫星电视天线、扫描仪、手持PC的触摸幕或其他书写板、或类似的设备。这些和其他的输入设备经常通过与系统总线耦合的用户输入接口160被连接到处理单元120,但也可以由其他接口和总线结构(例如,并行端口、游戏端口或通用串行总线(USB))来加以连接。监视器191或其他类型的显示设备也经由接口(例如,显示适配器接口190)被连接到系统总线121。除监视器以外,计算机也可以包括可通过输出外围接口195而被连接的其他外围输出设备(例如,扬声器197和打印机196)。
计算机110可以在使用与一台或多台远程计算机(例如,远程计算机180)逻辑连接的联网环境中进行操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其他共同的网络节点,它通常包括有关计算机110,以上所描述的许多或全部单元,尽管图1中只展示了记忆存储设备181。图1中所描绘的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其他网络。这类联网环境在办公室、企业范围的计算机网络、内联网和因特网中很普遍。
当被用于LAN联网环境中时,计算机110通过网络接口或适配器170被连接到LAN 171。在联网环境中,可以将关于计算机110所描绘的程序模块或其各个部分存储在远程记忆存储设备中。举例来讲(不作限制),图1将远程应用程序185示作驻留在存储设备181上。将会理解,所示的网络连接起示例作用,可以使用在各台计算机之间建立通信链路的其他装置。
用单一图形卡将多个显示器连接到计算机图2表示了框图,其中,计算机200(例如,计算机1 10)被连接到多个显示器2021、2022...202N。每个显示器202包括其自己的屏面控制器2041、2042...204N。在所示的实施例中,屏面控制器204被连接到显示控制器206。如以下进一步的描述,显示控制器206将计算机200所提供的单一图像帧分成多个图像用于多个显示器202。
虽然在图2中,显示成分开的部件,但是,显示控制器206和屏面控制器204可以被组合在单一电路板中;或者,它们的功能可以分布在许多不同的部件上;或者,可以组合这些控制器中的两个或多个控制器,以建立单一部件;或者,这些部件中的两个或多个部件的功能可以分布在同一个电路板,多个电路板上的多个单元上;或者可以另外方式提供。同样,除非这里另行说明,为方便说明,用来描述本发明的部件和元件作为分开的部件来加以描述,这些部件的功能可以由几个不同的设备或模块来提供,并且/或者,这些部件中的一个或多个部件可以与另外部件组合,以建立单一设备或模块。
无论如何,监视器信号接 210与显示控制器206相连接。电缆214在监视器信号接口210与主机信号接口212之间延伸,主机信号接口212与位于计算机200中的显示适配器216连接或与其有关联。
发送数字信号(例如,TMDS(DVI)或LVDS)的数字发送器DAC可以是本发明中的主机信号接口的一部分。同样,作为选择,监视器信号接口也可以是数字接收器(例如,被配置成接收TMDS或LVDS)。
显示适配器216可以是视频图形卡,可以是被并入的适配器,或者可以是使计算机能够为显示器202提供显示信息的另一种合适的部件。显示适配器216被连接到计算机200的操作系统134,并可以用于一个或多个应用程序135。
每个显示器202都可以是分开的监视器,它们有自己的外壳,或者,两个或多个显示器共存于同一个外壳。这些显示器中的一个或多个显示器可以是阴极射线管(CRT’s)的、液晶显示器(LCD),等离子显示器或能够显示图形和/或文本的另一种设备。
根据本发明的一个方面,显示器202可以由具有分开的屏面的监视器来提供,这些屏面彼此邻近而排列,以形成单一的邻接显示表面。图3中示出这种监视器300的一个例子。监视器300包括两个屏面3011和3012,它们共同在单一监视器外壳302内形成单一的大显示表面。在这种实施例中,如这里所使用的每个显示器202将会是物理屏面301之一。尤其是,如果这些屏面具有LCD品种,则与提供相同尺寸的单一屏面监视器相比,多屏面监视器的这种实施的费用大大减少。特别是,多个较小的LCD屏面的费用可比单一的大屏面LCD低,因为与相同的合成尺寸的较大屏面相比,较小的LCD屏面的产量可以更好。
如果显示器202是分开的监视器或者需要或包括其自己的外部电缆,那么,例如,可以在机箱内提供显示控制器206,该机箱具有电缆214的单一输入连接和分开的监视器的电缆的多个输出连接。可以提供其他的布置,例如,在一个主要监视器上或在其中提供显示控制器206处,将该主要监视器直接连接到电缆214,并且将其他监视器连接到该主要监视器。
根据本发明的一个方面,显示控制器206将自定义“扩展显示标识数据”(“EDID 208”,图2和图4)信息提供给有关显示器202的计算机200。已知EDID是包含有关监视器及其性能的基本信息(包括卖主信息、最大的图像尺寸、颜色特征、工厂预置定时、频率范围限制,以及监视器名称和序号的字符串)的“视频电子标准协会”(“VESA”)标准数据格式。通常,将EDID信息存储在监视器中,并且,当监视器与计算机连接时,将EDID信息提供给计算机。计算机可以为视频配置目的使用EDID信息,所以,监视器和系统可以更好地进行合作。
在本发明中,显示控制器206提供EDID 208,它包括关于显示器202的自定义信息。根据本发明,如图4中用图解法所示,EDID 208包括单一显示信息402和多显示信息404。单一显示信息402包括有关由显示器202所提供的全部组合显示表面的信息。该信息可以包括组合显示表面的可能的分辨率,以及刷新率和有关使用组合显示表面的其他信息。举例而言,组合表面可以包括分辨率为768×1024的两个XGA显示器,组合显示表面分辨率是1536×1024。另一个例子是可以组合两个XGA横向显示器(每个前景显示器的分辨率是1024×768),以形成2048×768的组合显示表面分辨率。此外,可以组合横向显示器和肖像显示器(例如,分辨率为1280×1024的SXGA横向显示器和分辨率为768×1024的XGA肖像显示器)。这些组合显示器的分辨率将会是2048×1024。
组合显示表面应该是矩形的,以便最有效率地使用带宽和缓冲器。但是,从以上这些例子中可见,可以利用许多不同的组合来提供矩形的组合显示表面。
除了单一显示信息402以外,EDID 208还包括多显示信息404。多显示信息404包括显示器202的物理布局的特征,以及分辨率、刷新率和有关特定显示器的其他信息。
单一显示信息402和多显示信息404允许显示器202在传统或不知道的操作系统以及能够识别多显示信息404的操作系统上运作。对于“不知道的”,我们的意思是操作系统不熟悉多显示信息,并且不被配置成响应于接收多显示信息来修改其行为(例如,配置显示适配器的驱动器)。同样,“知道的”操作系统是熟悉多显示信息的操作系统,它被配置成可以响应于接收多显示信息来修改其行为。如图5所示,传统和不知道的操作系统500利用单一显示信息402来配置操作系统134的显示部件502(例如,视频驱动器),以便将组合显示处理成虚拟单一显示图像504。将单一显示图像504提供给显示适配器506。显示适配器506又在(例如)帧缓冲器(例如,帧缓冲器220)中创建帧508,通过电缆214将帧508发送到显示控制器206。显示控制器206将帧508分割成分开的图像5101、5102...510N,每个图像代表单一的组合显示表面上的特定显示器202的区域。
由于传统或不知道的操作系统500不清楚各个显示器202之间的实际边界,因此,应用程序135和操作系统134不可能利用多个显示器的布局或性能的优点,并且,可以在显示器202中的任何一个显示器上示出单独的屏面、应用程序或弹出窗口。但是,通过提供单一显示信息402,显示器202仍然可用于传统和不知道的操作系统。
现在参照图6,对于知道本发明的操作系统134而言,操作系统134的显示部件222(也在图2中示出)可以利用多显示信息404来将图像的窗格分割成代表显示器202的位置和尺寸的分开的虚拟图像。组合这些虚拟图像6021、6022...602N,以便在与显示适配器216有关联的帧缓冲器220内建立单一帧606。
图7是流程图,通常表示一些步骤,用于根据本发明的一个方面来配置显示部件222,以便操作系统134和/或应用程序135可以使显示器202上的显示质量和表示内容最优化。从步骤700开始,由操作系统134来接收定制的EDID 208。
在步骤702中,如果操作系统134不熟悉分开的显示信息404,则过程分支到步骤704,在那里,计算机200利用单一显示信息402。也就是说,计算机200对操作系统134配置视频驱动器或可用的显示部件502,以揭示在单一显示信息402中被定义的分辨率的单一监视器。
如果操作系统134包括显示部件222,那么,步骤702分支到步骤706,在那里,对多显示信息404进行检索。在步骤708中,将显示部件222配置成揭示具有由多显示信息404所定义的分辨率的显示器202的数量。利用这种方式,可以为分开的物理窗格而适当地对图像的布局进行最优化。应用程序(例如,应用程序135)可以利用这个特点。为了达到这个目的,例如,显示部件222可以揭示在图像602映射时应用程序135所需要的应用程序接口224(图2),以便这些应用程序可以通过指引将在特定显示器202中被演示的分开的物理窗格或窗口来优化显示质量和表现内容。
本发明的优点之一是显示控制器206和显示部件222允许单一电缆214和只有一个电缆插头的常规显示适配器216被用于多个显示器202。为了达到这个目的,图8是流程图,通常表示用于利用单一电缆2 14引导对特定显示器202的显示部件处的显示信息的一些步骤。从步骤802开始,应用程序135和/或操作系统134之一创建被引导到显示器202中的一个或多个显示器的单独的图像602。在步骤804中,在显示适配器216中组合图像602,以便在帧缓冲器220中建立帧606。常规显示适配器能够处理(译者注原文这里是“handing”,怀疑应该是“handling”)这类帧,这样,要使用本发明,不必修改常规显示适配器。以下参照图9来进一步描述组合图像的过程。
在步骤806中,在电缆214上传输帧606。这项操作对于VGA或DVI电缆而言又是正常的,这样,不需要为将要发生的传输而修改电缆214。
在步骤808中,显示控制器将帧606的区域映射到物理显示器202。由于曾按显示控制器206的指示(即,经由EDID208)用图像602来组成帧606,因此,这些区域正好与显示器202对齐。利用这种方式,操作系统134和/或应用程序135可以对显示器202上的显示质量和表现内容进行最优化。以下参照图11来进一步讨论映射过程。
通过参照图8,将会理解即使显示适配器216能够只传输单一图像或帧,并且电缆214能够在现有的VESA标准下只传输单一图像或帧,操作系统134和应用程序135也可以创建多个显示器的视频显示信息。显示控制器206知道如何安排帧606,因为它已经经由EDID 208指示操作系统,如何将图像数据提供给显示适配器216。这样,知道图像数据在帧606内的合适的位置,显示控制器206就可以适当地将组合图像映射到显示器202。
显示控制器206可以用许多不同的方法来分割帧606。举例而言,显示部件222可以在虚拟存储器中物理上分开帧606或508,并可以为应用程序或操作系统揭示存储器的物理上分开的各个部分,以便将图像写入各自的显示器202。然后,组合各个分开的部分,以便将信息提供给显示适配器216,从而它可以建立帧606。虽然这种实施可行,但是,这个特殊的例子是使处理器和存储器很忙的,另一个解决方案可以利用不同的显示器202的信息交错。参照图9来描述这样一个例子。
图9表示了单一虚拟图像900的记忆存储的二维表示法。在该例中,单一虚拟图像900被分成两个虚拟图像902和904。如以下进一步的描述,单一虚拟图像900表示显示表面的组合图像数据,并且可能(例如)类似于数据表示法,帧缓冲器220使用该数据表示法来创建一个帧的图像数据信息,用于传输到显示控制器206。分开的虚拟图像902和904包括进行组合以便形成单一虚拟图像900的两组数据。在这个特殊的例子中,两个虚拟图像902和904被存储在存储器中,作为单一虚拟图像900的交替段。如以下进一步的描述,虚拟图像902和904中的每一个都可以被定义为分开的位图,以便单独的应用程序可以对分开的虚拟图像902和904进行写入。这个特点允许将数据适当地存储为一个图像(即单一虚拟图像900),但允许应用程序对显示器202写入单独的帧。
虚拟图像902和904中的每一个包括指针906、908和一个对应的增量(未示出,但在帧缓冲器和位图的技术领域中已知)。已知存储“设备无关位图”(DIB)的一种常规方式是存储位图的存储器中的开始位置的指针,以及表示位图的下一个扫描行的开端的增量。该增量比位图的宽度大,在位图宽度的末端以外可能有额外的数据。
通过将第一增量定义为大得足以包围其额外数据中的第二帧904的数据,本发明可以利用这个优点。同样,第二增量足够大,以便第一帧902的信息被包括在第二帧904的额外数据中。对于虚拟图像902而言,指针906开始的位置等同于对于单一虚拟图像900而言数据开始的位置。虚拟图像902的增量比第一帧902和第二帧904的宽度大。同样,对于第二帧904而言,指针908位于第二帧的开端,且那个帧的增量比第一和第二帧902、904的宽度大。
举例而言,第一指针906可以指向位置“1”,第一虚拟图像902可以具有100个像素的宽度和增量220。第二指针908可以指向位置“101”,第二虚拟图像904可以具有ll0个像素的宽度和增量220。在这个例子中,单一虚拟图像900的数据的前100个像素将会位于第一个虚拟图像内,其余120个位的信息(包括第二个虚拟图像904的数据的前110个像素)将会被认为是第一个虚拟图像的额外数据。同样,第一个虚拟图像的数据将会被认为是第二个虚拟图像904的额外数据。对于单一虚拟图像中的数据的每个对应的行而言,这种模式继续下去。
最终,存储器中的数据的二维表示法看起来可能象图10中所示的表示法1000,其中,数据L1A的第一行是第一帧902的像素信息(在以上的例子中是信息的位1至100),数据L2A的第二行是第二帧904的第一行的像素信息(在以上的例子中是信息的位101至210),数据L1B的第三行是第一帧902的第二行的像素信息(位221至320),数据L2B的第四行是第二帧904的第二行的像素信息(位321至430),等等。可以在第二帧904的各行的末端呈现不属于帧902或904的一部分的额外数据(例如,位211至220和431至440)。
通过使用对应的指针906或908及其增量,刚刚描述的隔行方案允许应用程序135或操作系统134对虚拟图像902、904中的一个虚拟图像进行写入。然后,如图10所示,可以将数据提供给显示适配器216,从而允许该显示适配器有效率地写入虚拟图像220。这样,即使这些显示实际上是单一虚拟图像900的各个部分,这个特点也会揭示两个分开的“显示”。
利用这种方式,可以引导应用程序相信每个单独的显示器202都具备一个实际的帧。这样,操作系统134或显示部件222必须存储的所有内容是每个虚拟图像的指针(例如,906或908)、虚拟图像的宽度和每个显示器202的增量信息。如图10所示,由应用程序135或操作系统134写入的数据用图10所示的表示法写入,可以直接将该数据提供给显示适配器216,以便它可以将单一帧606建立在帧缓冲器220内。
图11是流程图,通常表示显示控制器206所经历的一些步骤,以便根据本发明的一个方面将帧606或508映射到显示器202。从步骤1102开始,显示控制器206接收帧606或508。然后,在步骤1104中,显示控制器206将行缓冲器或帧缓冲器插入帧606。行缓冲器或帧缓冲器将导向不同的显示器的各个帧之间的图像数据分开。已知缓冲器是临时的存储元件。在此情况下,缓冲器(行或帧)一个像素接一个像素地临时存储特定行或帧的视频信息。
举例而言,如果显示器202包括沿边缘连接的两个或多个肖像对齐的屏面,则显示控制器可以在第一个屏面结束、第二个屏面开始的位置插入行缓冲器。也就是说,在每个屏面的邻近的各水平行像素之间插入行缓冲器。使用先前参照图9所描述的例子,第一个行缓冲器可以是前100个位的图像数据,第二个行缓冲器可以是接下来的110个位的图像数据。可以将这些行发送到各自的第一和第二显示器,例如,可以通过将行221~320发送到第一显示器、将行321~430发送到下一个显示器等等,来继续执行该过程。
在步骤1108中,确定显示器的扫描方向是否等同于帧606。如果等同,则步骤1108分支到步骤1110,在那里,显示显示器202的图像(帧的“子帧”)。如果不等同,则步骤1108分支到步骤1112,在那里,旋转那个显示器的图像的子帧。也就是说,改变有关像素的线性信息,以便按扫描顺序进行读取。例如,如果帧606中的像素曾经用线性水平的方式来加以存储,则存储像素信息,以表示帧的各个水平行的方式存储,较低的行跟在较高的行后面。如果对应于帧的显示器202在垂直的方向上进行扫描,则将会需要重新安排像素信息,以便对其进行存储,以表示帧的各个垂直列。像素的重新排序将会导致帧的“旋转”。旋转帧是允许在邻近横向对齐的显示器的地方安装肖像对齐的显示器(例如,图3所示的两个屏面301)的一种方法。
在对帧进行旋转之后,步骤1112分支到步骤1110,在那里,在合适的显示器202中显示帧。然后,对那个帧的过程结束。
本发明提供了一种独特的解决方案,用于通过单一电缆214和只有一个电缆插头的单一显示适配器216来为多个显示器传送图像信息。使用EDID 208来向操作系统134传达显示器202的布局和分辨率。然后,操作系统134和/或应用程序135可以建立其图像数据,以便该图像数据可以被导引到合适的显示器或显示器202。由于图像数据结构已由显示控制器206传达(即,经由EDID),因此,显示控制器206可以适当地将帧606从显示适配器216映射到合适的显示器202。
使用单一显示适配器216可节省额外的显示适配器的费用。此外,可以在单一监视器中提供多个屏面,作为优化对齐和使各个显示器之间的接缝最小化的一种系统,从而实现让用户产生身临其境的视觉经验的默认全景效果。
可以在本发明的精神以内进行其他的变更。这样,本发明可经历各种修改和选择性构造,同时,附图中示出其某个特定的说明实施例,并且以上已对该实施例进行详细的描述。但是,不言而喻,并不意在将本发明局限于所揭示的某个或某些特殊的形式,而正相反,意在包括不脱离本发明的精神和范围的所有修改、选择性构造和同等物,本发明由所附权利要求书中所定义。
权利要求
1.一种计算机系统,其特征在于包括一台计算机;与该计算机有关联的一个显示适配器;多个显示器;以及,一个显示控制器,它与一些监视器和该显示适配器连接,并被配置成在多个显示器中分割从显示适配器接收的一个帧。
2.权利要求1的计算机系统,其特征在于其中,显示控制器通过单一电缆被连接到显示适配器。
3.权利要求2的计算机系统,其特征在于其中,电缆是视频图形阵列(VGA)或交互式数字视频交互(DVI)电缆。
4.权利要求1的计算机系统,其特征在于其中,显示适配器包括一个单一视频电缆插头;其中,显示控制器经由该单一视频插头被连接到显示适配器。
5.一种计算机可读介质,它具有用于执行一种方法的计算机可执行指令,该方法的特征包括从与构成组合显示表面的多个显示器相连接的显示控制器接收信息,该信息包括多个显示器中的每个显示器在组合显示表面中的位置;根据该信息来揭示表示这多个显示器中的每个显示器的存储器的各个部分;接收对每部分存储器的图像数据;以及,组合对每部分存储器的图像数据,以建立一个帧的图像数据。
6.权利要求5的计算机可读介质,其特征在于其中,图像数据在单一显示适配器中被组合。
7.权利要求5的计算机可读介质,其特征在于具有进一步的计算机可执行指令,这些指令包括将该帧的图像数据传输到显示控制器。
8.权利要求7的计算机可读介质,其特征在于其中,经由单一电缆来传输单一帧的图像数据。
9.权利要求8的计算机可读介质,其特征在于其中,单一电缆是视频图形阵列(VGA)或交互式数字视频交互(DVI)电缆。
10.权利要求7的计算机可读介质,其特征在于其中,显示适配器包括一个单一视频电缆插头;其中,经由该单一视频插头来传输单一帧的图像数据。
11.权利要求6的计算机可读介质,其特征在于具有进一步的计算机可执行指令,这些指令包括在显示控制器中并根据信息,将单一帧分成多个帧,并且将这多个帧提供给各自的显示器。
12.权利要求11的计算机可读介质,其特征在于具有进一步的计算机可执行指令,用于在提供帧之前旋转这些帧中的至少一个帧。
13.一种具有计算机可执行指令的计算机可读介质,其特征在于包括将信息发送到与构成组合显示表面的多个显示器相连接的计算机,该信息包括这多个显示器中的每个显示器在组合显示表面中的位置;从计算机接收一个帧的图像数据,该帧的图像数据根据信息来加以创建;在显示控制器中并根据信息,将单一帧分成多个帧;以及,将这多个帧提供给各自的显示器。
14.权利要求13的计算机可读介质,其特征在于具有进一步的计算机可执行指令,用于在提供帧之前旋转这些帧中的至少一个帧。
15.一种其上存储有数据结构的计算机可读介质,其特征在于包括第一个数据区,它包含有关构成组合显示表面的多个显示器的第一信息,第一信息包括有关这多个显示器中的每个显示器在组合显示表面中的位置以及这多个显示器中的每个显示器的分辨率的信息;以及,第二个数据区,它包含有关这多个显示器的第二信息,第二信息包括组合显示表面的分辨率。
16.权利要求15的计算机可读介质,其特征在于其中,数据结构包括这多个显示器的“扩展显示识别数据”(EDID)。
17.一种具有计算机可执行指令的计算机可读介质,其特征在于包括在与构成组合显示表面的多个显示器相连接的计算机中,接收有关这多个显示器的信息,包括有关这多个显示器的第一信息,第一信息包括有关这多个显示器中的每个显示器在组合显示表面中的位置以及这多个显示器中的每个显示器的分辨率的信息;以及,有关这多个显示器的第二信息,第二信息包括组合显示表面的分辨率;如果计算机知道第一信息,则根据第一信息将计算机的图像存储器配置成表示这多个显示器中的每个显示的存储器的各个部分;以及,如果计算机不知道第一信息,则根据第二信息将计算机的图像存储器配置成揭示表示组合显示表面的存储器。
18.权利要求17的计算机可读介质,其特征在于其中,根据第一信息来揭示表示这多个显示器中的每个显示的存储器的各个部分,包括使存储器的各个分开的部分交错,以便存储器的各个分开的部分表示一个虚拟帧的图像数据。
19.一种监视器,其特征在于包括第一屏面,其布置使第一屏面能够进行水平扫描;以及,邻接第一屏面的第二屏面,其布置使其能够进行垂直扫描,第一屏面和第二屏面构成组合显示表面。
20.权利要求19的监视器,其特征在于还包括一个显示控制器,它与该监视器连接,并被配置成将从显示适配器接收的帧分裂割成分别对第一屏面和第二屏面的第一子帧和第二子帧。
21.权利要求19的监视器,其特征在于其中,将显示控制器配置成旋转这些子帧中的一个子帧。
全文摘要
一种显示控制器,它允许由单一电缆和单一显示适配器来操作一个以上的显示器。该显示控制器为与其连接的计算机提供自定义EDID信息。自定义EDID信息可以包括有关由所有显示器所提供的单一虚拟显示表面的信息,并可以包括有关每个这些单独的监视器或显示器的信息(包括这些单独的显示器在单一合成显示表面中的位置)。无法识别多显示器系统的EDID的计算机可以利用单一合成显示表面。如果计算机能识别多显示器系统的EDID,则在计算机上运行的计算机操作系统和/或应用程序可以理解和利用显示表面的多种特性,并可以为用户优化显示质量和表现内容。
文档编号G06F3/153GK1499355SQ20031010467
公开日2004年5月26日 申请日期2003年10月29日 优先权日2002年10月29日
发明者C·L·马根丹兹, W·J·韦斯特林恩, D·伊, W·C·鲍威尔三世, C L 马根丹兹, 韦斯特林恩, 鲍威尔三世 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1