专利名称:编解码器控制的制作方法
编解码器控制 在这里公开的具体内容涉及编解码器控制。背景迄今为止, 一直没有用于显示器编解码器的标准命令接口;每个编解码器一直使用用 于控制目的的专有寄存器组(set)。来自不同公司的编解码器很可能具有不兼容的命令。 甚至来自同一公司的不同编解码器很可能具有不兼容的命令。常规地,将对新的显示编解 码器的支持添加到图形控制器软件一直涉及两个选项中的一个1) 通过新的编解码器进行"硬件编码"将它添加到图形控制器软件内;2) 将新的软件模块添加到图形控制器软件,所述新的软件模块遵从用于新的编解码 器的预先指定的硬件抽象层(HAL)。遗憾的是,两个选项都涉及开发图形控制器软件的新版本。附图简要说明将参照附图描述非限制性和非穷举性的实施方案,其中相同的数字表示相似的部分, 并且其中图l是图示系统实施方案的图。图2是图示诸如
图1的系统中的数据和命令传输的图。 图3是图示系统实施方案的详图。图4是图示软件-硬件交互的图,所述软件-硬件交互可以至少部分地发生在图2的传 输中。图5是根据实施方案的原理,在编解码器和图形控制器之间通信的过程流图。 详细描述在以下描述中,阐述了本发明的示例性实施方案的具体细节。但是,可以理解本发明 的实施方案可以无需这些具体细节而被实施。此外,电路、结构和技术未被详细地示出, 以免模糊对本描述的理解。除了其他原因以外,由于已经关于数字信号和诸如电视机的数字显示器而设置的对数 字通信的新近FCC (联邦通信委员会)规定/标准,与数字显示设备的通信已经变得更加 令人感兴趣。具体地,电视机和计算机系统当前正在被创建,以利用在数字显示通信技术 中新近的FCC改变。例如桌面型计算机、膝上型计算机、掌上型计算机等的个人计算机(PC)的持续增长 的性能已经允许它们充当诸如视频的一系列应用的主机。为了理解不同的应用如何工作, 相信对PC的组件的综述是合适的。PC通常包括用于扬声器的音频控制器驱动器,并且还可以接收来自麦克风的输入。 许多现今的音频控制器相当完善,并且可以能够传送高质量的环绕声到外部放大器。PC还可以包括输入/输出(I/O)控制器,所述I/0控制器从鼠标和键盘取得输人。I/O 控制器实质上充当用户和计算机之间的前门(frontdoor) 。 I/O控制器还到盘驱动器读和 写数据。甚至在PC被关闭时,储存在盘驱动器上的数据保持无损。PC通常包括"图形控制器",所述图形控制器可以驱动诸如监视器的显示设备。图 形控制器控制到PC的虚拟接口。图形控制器可以在PC上显示视频。 一些图形控制器还 可以捕捉视频。除非另外针对特定设备配置被编程,图形控制器可以以默认软件配置来操 作。虽然未图示,但是因为不同PC可以具有不同图形控制器,所以当为PC选择显示设 备时,可能需要考虑多个图形控制器。可以认为每个图形控制器是以它的特定默认图形控 制器软件来操作的。身为存储器控制器和I/0控制器的物理硅的集合通常被称为"芯片组"。芯片组可以 被直接结合(solder)到被称为主板的绝缘和传导路径(path)的薄的多层结构。音频和图形控制器可以是直接联接到主板的分离的硅芯片,或者它们可以被放置在子 卡(daughter card)上,并且被插到主板上的扩展插槽内。子卡可轻易地移除,并且因此 可轻易地升级。在"显示设备"(在这里有时只称为"显示器")上显示"图像"需要编解码器。如 本领域中的普通技术人员通过察看本公开将理解的,使用在这里,术语显示包含诸如平板 屏幕、计算机监视器、LCD (液晶显示器)、HDTV (高清晰度电视)、等离子体电视屏 幕等的显示器。另外,显示器可以表示以相似技术操作的数字或者模拟显示器。"编解码器"是显示器和数字信号之间的接口,所述数字信号要被传输到所述显示器 以提供要在该显示器或者计算机监视器上显示的图象。如关于图l-3更详细地所描述的, 数字信号可以从计算机处理器102被传输到计算机监视器/显示器120,或者数字信号可以 源于诸如标准有线电视出口 (outlet) 170、卫星传输180的电视信号源或者诸如非卫星无 线传输设备190的其他数字信号源,到诸如可以在家庭娱乐中心或者其他中发现的电视屏 幕或者显示器150。并且,数字信发号在数字显示器处被接收之前,数字信号可以传输自 一些其他数字图像源。当然,数字图像将传递通过例如编解码器119、无线图形控制器/ 编解码器160等的编解码器。编解码器有时被称为"显示编解码器"。因为对消费者可用的不同数字显示器类型, 显示编解码器的幵发者一直不能生产一般性地支持数字显示器的可接受的显示编解码器。 显示编解码器可以被"配置"为符合它被期望与其通信以显示图像的数字显示器的特定规 范。可以用可以被称为"默认配置"的特定默认设置开发显示编解码器,所述默认配置可 以随后被修改以适合用于显示图像的特定数字显示器的需求,并且,除了其他以外,依赖 于用于在数字显示器上显示的数字信号的源。此外,至少为了相同的原因,图形控制器的 开发者一直不能生产用于在不同类型的显示器(即,计算机监视器、电视屏幕、平板/屏 幕显示设备等)上显示数字图像的图形控制器。短语显示编解码器(在这里还被称为"数字显示编解码器")意图包括软件,并且可 能包括模拟和数字硬件设备中的一个,或者两者的组合。如在这里所提及的,显示编解码 器可以将至少部分代表连续图片/图像(视频)的输入信号转换为用于产生可以随后由显 示编解码器传输的输出信号的不同视频格式。输入和输出信号两者都可以是模拟的、数字的或者模拟的和数字的两者的组合。除了显式编码和/或代表图片本身的信号外,编解码 器可以接受输入控制信号,所述输入控制信号通过修改可以与显示编解码器相关联的寄存 器值来影响显示编解码器的行为。除其他以外,显示编解码器还可以接受关于图片格式的 信息(例如分辨率和纵横比)作为输入,和/或传输该信息作为输出。使用在这里,术语"软件驱动器"表示可以控制顺应性(compliant)显示编解码器的 模块(软件、硬件或者其他)。被称为"通用软件驱动器"的软件驱动器可以控制可能具 有不同编解码能力的多个显示编解码器。通用软件驱动器可以无需修改而控制多于一种类 型的显示编解码器,例如当显示编解码器被改变时,通用软件驱动器可以保持处于"默认 配置"。这种控制有时被称为"识别"数字显示器或者与数字显示器"通信",因为用于 特定数字显示器的显示编解码器可以"接收"和/或"传输"来自源的数字信号,并且被 配置为在与关联数字显示器通信或者传输到关联数字显示器之前,识别那些数字信号,所 述关联数字显示器用于显示与数字信号有关的图像。使用在这里,术语"程序"包括l)可以被储存在储存介质中并且由处理器执行的软 件程序,或者2)可用于配置可编程硬件部件的硬件配置程序。术语"软件程序"意图包括可以被储存在储存介质中并且由处理器或者处理系统执 行的任何类型的程序指令、代码、脚本(script)和/或数据,或者它们的组合。示例性软 件程序包括用诸如C、 C++、 Pascal、 Fortran、 Cobol、 Java、汇编语言等的基于文本的编 程语言写的程序;图形程序(用图形编程语言写的程序);汇编语言程序;已经被编译为 机器语言的程序;脚本;以及其他类型的可执行软件。术语"可编程硬件部件"意图包括各种类型的可编程硬件、可重配置硬件、可编程逻 辑或者诸如一个或更多个FPGA (现场可编程门阵列)的现场可编程器件(FPD),或者诸如一个或更多个简单PLD (SPLD)或者一个或更多个复杂PLD (CPLD)的一个或更 多个PLD (可编程逻辑器件),或者其他类型的可编程硬件。可编程硬件部件还可以被称 为"可重配置逻辑"。可以使用硬件配置程序配置可编程硬件部件。术语"硬件配置程序"意图包括可以被用来对可编程硬件部件进行编程的程序或者 数据结构。如在这里所提及的术语"机器可读"指令涉及可以被一个或更多个机器理解以进行 一个或更多个逻辑操作的表达。例如,机器可读指令可以包括处理器可以被编译器翻译以 执行对一个或更多个数据对象的一个或更多个操作的指令。但是,这仅仅是机器可读指令 的实施例,并且在这个方面本发明的实施方案不被限制。如在这里所提及的短语"储存介质"涉及能够维护可被一个或更多个机器感知的表 达的介质。例如,存储介质可以包括一个或更多个用于储存机器可读指令或数据的储存设 备。这种储存设备可以包括例如光、快闪(flash)、磁或半导体储存介质的储存介质。但 是,这些仅仅是储存介质的实施例,并且在这些方面本发明的实施方案不被限制。储存介 质有时还被称为存储介质、机器可读介质、计算机可读介质、处理器可读介质等,但是为 了本公开的目的,将只被称为储存介质。在这里所提及的术语"逻辑"涉及用来进行一个或更多个逻辑操作的结构。例如,逻 辑可以包括基于一个或更多个输入信号提供一个或更多个输出信号的电路。这种电路包括 接收数字输入并且提供数字输出的有限状态机,或者响应于一个或更多个模拟输入信号提 供一个或更多个模拟输出信号的电路。这种电路可以在专用集成电路(ASIC)或FPGA 中被提供。逻辑还可以包括储存在储存介质中的机器可读指令,所述储存介质与处理电路 组合来执行这种机器可读指令。但是这些仅仅是可以提供逻辑的结构的实施例,并且在这 个方面本发明的实施方案不被限制。在这里所提及的"处理系统"涉及用于可以在储存介质中发现的处理表达的硬件和/ 或软件资源。"主机处理系统"涉及可以适于与"外设设备"通信的处理系统。例如,"外 设"设备可以提供到主机处理系统的输入或者接收来自主机处理系统的输出。但是,这些 仅仅是处理和主机处理系统和外设设备的实施例,并且在这些方面本发明的实施方案不被 限制。在整个说明书中提及"一个实施方案"或"实施方案"意味着关于该实施方案描述 的特定特征、结构或者特性被包括在本发明至少一个实施方案中。因此,短语"在一个实 施方案中"或"在实施方案中"在整个说明书中不同地方的出现不一定全是指同一实施 方案。而且,所述特定特征、结构或者特性可以在一个或更多个实施方案中以任何适当的 方式组合。图1是图示系统实施方案130的图。如摘要中所示,系统130包括被耦合到显示器 150的图形控制器/编解码器设备160。系统130可以包括具有天线142的卫星140,在传 递数字信号180到显示器150之前,所述天线142传输数字信号180到图形控制器/编解 码器设备160处的天线144。数字信号180进入图形控制器/编解码器设备160,在所述图 形控制器/编解码器设备160中数字信号180被处理以传输到显示器150。设备160的图形 控制器部分包括软件驱动器,所述软件驱动器被配置为在使用所述软件驱动器的默认配置 时,在不同时间段与不同编解码器一起工作。图形控制器/编解码器设备160的软件驱动 器以符合标准的方式被写,所述标准允许编解码器硬件被交换而将图形控制器软件保留在 图形控制器/编解码器设备160中。在图1中图示的还有有线电视出口 170,在传递数字信号到显示器150之前,所述有 线电视出口 170可以供应那些信号到图形控制器/编解码器设备160。另外,系统130可以 包括非卫星无线传输设备170,在传递信号到显示器150之前,所述非卫星无线传输设备 170可以通过天线192传输信号到图形控制器/编解码器设备160,其中所述天线192传输 信号到图形控制器/编解码器设备160的天线144。图形控制器/编解码器设备160应该被 理解为包括合适硬件/软件,所述硬件/软件识别信号是否源于卫星140、非卫星190、有线 TV出口170等,并且以所述信号通信。当然,如本领域中的那些普通技术人员通过査看本实施方案将理解的,系统130或者 系统130的单个组件可以通过软件仿真来实现。图2是图示系统130中显示数据传输200的示例性实施方案的图,具体示出系统130 的第一部分(例如第一部分104 (见图3))中的软件-硬件交互。图形控制器软件202可 以具有控制模块204,所述控制模块204传送软件命令206到显示编解码器硬件208的命 令接口 207。图形控制器软件202还与图形控制器硬件210通信,其中像素数据212被传 输到显示编解码器硬件208。在像素数据212被传输到数字显示器214之前,像素数据212 在显示编解码器硬件208中根据在显示编解码器硬件208的命令接口 207处接收的命令 206被格式化。数字显示器214可以以允许像素数据212被诸如系统130的系统的用户观 看的方式显示像素数据212。本领域普通技术人员将认识到数字显示器214可以用显示器 150、数字显示器314 (见图4)和/或另一相似显示器来替换。换而言之,多个显示器已 经在附图中被图示。并且,本领域中普通技术人员将认识到软件驱动器可以包括图形控制 器软件202的部分,所述部分在这里有时被称为通用软件驱动器。通用软件驱动器可以位 于储存介质106 (见图3)中或者另一适当储存介质中。图3是图示系统实施方案100的图。使用根据本发明的示例性实施方案的驱动器,系 统100可以支持多个数字显示编解码器。系统100可以包括中央处理单元(CPU或处理器) 102,以太网卡103还可以被耦合到CPU 102,并且CPU 102可以被耦合到计算机系统100 的第一部分104。存储器(储存介质)106可以被耦合到第一部分104,并且第一部分104 还可以被耦合到第二部分108,所述第二部分108又可以被耦合到诸如盘驱动器110、鼠标112和键盘114的其他计算机设备。在所图示的实施方案中,第一部分104包括存储器控制中心116,所述存储器控制中 心116可以被耦合到存储器106、 CPU 102、第二部分108和图形控制器118。图形控制器 118可以被耦合到显示编解码器119,所述显示编解码器119可以被耦合到监视器(有时 被称为"显示器")120来传输数字信号以在监视器120上显示,除其他以外,图形或数 字图像。第二部分108包括输入/输出控制器中心(hub) 122,所述输入/输出控制器中心 122可以被耦合到第一部分104的存储器控制器中心116。输入/输出控制器中心122还可 以被耦合到音频控制器124,所述音频控制器124又可以被耦合到扬声器126和/或麦克风 128。如结合图2更详细地所描述的,计算机系统100的第一部分104是用可以包括命令 接口的显示编解码器来操作的。图4是图示示例性的软件-硬件交互的图,当数字信号被传输到计算机监视器(或者 数字显示器)314时,所述软件-硬件交互可以发生在数字显示数据传输200中。可以认识 到所图示的软件-硬件交互可以发生在第一部分140中。图形控制器118包括支持诸如串 行数字视频输出(SDVO)端口的一个或更多个端口 304的集成图形存储器控制器芯片组(GMCH) 302。端口 304与设备(或编解码器)306通信以与计算机监视器314进行DVI(数字视频接口)通信。DVI是由数字显示工作组(DDWG)创建以用单个连接器容纳(accommodate)模拟 和数字监视器的规范。编解码器306通过上述的总线/端口 304 (所述总线/端口 304运载 像素数据)和高速串行命令接口 (即,I2C (IC间)总线,艮口,提供集成电路(IC)间的 通信链路的双向两线串行总线)在电气上被耦合到GMCH 302。编解码器306允许GMCH 302支持多种显示器类型。图形控制器软件202包括视频BIOS (基本输入/输出系统)和软件驱动器310。如本 领域中普通技术人员所理解的,BIOS是个人计算机的微处理器用来在接收到电源后使计 算机系统启动的程序。它还管理计算机的操作系统和诸如硬盘、视频适配器、键盘、鼠标 和打印机的附接设备之间的数据流。视频BIOS和软件驱动器(VBIOS) 310与GMCH302和软件模块312两者通信,所 述软件模块312可以被称为某种类型的显示编解码器。用于软件模块312的统一命令接口 消除对硬件编码或者图形控制器118中的硬件抽象层(HAL)的需要。应该认识到在图形 控制器118中不需要硬件抽象层,因为统一硬件接口被用软件模块312和编解码器306定 义/指定。结果,多个显示编解码器可以被单个"通用"软件模块支持,所述通用软件模 块是图形控制器软件202的部分。该方法提供几个优势。例如,软件模块312无需软件升级而被支持,因为许多编解码 器能够被单个软件驱动器支持,而这又是因为编解码器以标准化的方式响应每个命令。另外,用户可以将新开发的软件模块312添加到他们的计算机系统110,并且可以无需升级 他们的VBIOS 310或图形驱动器而使该模块312被支持。另一个优势是图形软件控制器代码大小的縮减。例如,存在单个模块204,而不是具 有执行非常相似功能的几个编解码器软件模块(每个编解码器有一个模块)。进一步的优势包括允许软件模块/显示编解码器312以较少的努力在其他环境中被使 用。常规技术发现横跨一系列广泛的操作环境支持显示编解码器312是困难的。例如,为 了使显示编解码器组在一些操作系统中工作而做的工作将不会帮助编解码器在其他操作 系统或者嵌入应用中被支持。必须为每个环境开发新的抽象层。通过使用所公开的实施方 案,简单地将控制模块204移植到新环境意味着许多显示编解码器312将在该环境中工作。 所公开的实施方案的另一优点是编解码器供应商能够制造不要求升级软件以使新的编解 码器工作的编解码器模型。图形控制器软件202开发约束(例如,添加其他特征、修补错误(bug)、职员总数 (headcoimt)约束) 一直以来经常阻止编解码器供应商实现他们期望的产品。所公开的实 施方案建立大量的显示编解码器312,所述编解码器312可以在图形控制器软件202中无 需任何额外开发努力而被支持。除其他以外,所公开的实施方案描述SDVO编解码器必须支持的标准SDVO命令集。 图形控制器软件202使用这些命令来查询设备306的能力。软件202还使用该命令来配置 和控制软件模块(编解码器)312。 SDVO命令集为SDVO编解码器和驱动器(软件模块 312)提供标准,所述标准允许多个SDVO编解码器被单个"通用"软件模块控制。图5是根据公开的实施方案的原理,在编解码器和图形控制器之间通信的过程流图 500。在第一步骤502中,储存介质被创建以用于储存图形控制器的至少部分。在第二步 骤504中,储存介质被用来储存软件驱动器,所述软件驱动器被配置为在使用所述软件驱 动器的默认配置时,在不同时间段与不同显示编解码器一起工作。下一步骤506就是编解 码器被引入到系统以与图形控制器通信的时候。在最终步骤508中,通信发生在图形控制 器和编解码器之间。如在这里所描述的,编解码器可以被替换而无需替换软件驱动器,因 此,产生术语通用软件驱动器。当然,以上描述的步骤没有必需被限制到它们被描述的顺 序。虽然本公开已经被用来描述几个实施方案,但是本领域普通技术人员将发现本发明没 有被限制到所描述的实施方案,而是可以以在所附权利要求书的精神和范围内的修改和替 换而被实施。因此,本描述被视为图示说明性而非限制性的。
权利要求
1. 一种制品,包括储存介质,所述储存介质包括储存在其上的机器可读指令以执行用于显示编解码器的软件驱动器,所述软件驱动器被配置为在使用所述软件驱动器的默认配置时,在不同时间段与不同显示编解码器一起工作;以及使用所述软件驱动器将数字信号从所述显示编解码器传输到显示器。
2. 如权利要求l所述的制品,其中所述软件驱动器包括识别多个显示器中的每一个 的机器可读指令。
3. 如权利要求2所述的制品,其中所述多个显示器包括数字显示器,所述数字显示 器选自由平板、LCD (液晶显示器)、HDTV (高清晰度电视)、等离子体和计算机监视 器组成的组。
4. 如权利要求l所述的制品,其中所述储存介质从有线电视出口接收所述数字信号。
5. 如权利要求l所述的制品,其中所述储存介质从卫星接收所述数字信号。
6. 如权利要求l所述的制品,其中所述储存介质从无线传输设备接收所述数字信号。
7. —种方法,包括执行用于显示编解码器的软件驱动器,以使用所述软件驱动器将数字信号从所述显示 编解码器传输到显示器,所述软件驱动器被配置为在使用所述软件驱动器的默认配置时, 在不同时间段与不同显示编解码器一起工作。
8. 如权利要求7所述的方法,其中所述软件驱动器是图形控制器的部分,用来与所 述显示编解码器通信。
9. 如权利要求8所述的方法,其中所述显示编解码器包括硬件部分,所述硬件部分 与所述软件驱动器通信,以便所述图形控制器在不同时间段识别多个不同显示编解码器中 的每一个。
10. 如权利要求8所述的方法,其中所述软件驱动器包括被称为通用软件驱动器的用 于所述图形控制器的储存介质。
11. 一种系统,包括-处理器;存储器,所述存储器被耦合到所述处理器,以支持所述处理器操作;以太网卡,所述以太网卡与所述处理器和所述存储器互操作以进行网络通信; 显示器,所述显示器通过显示编解码器以可通信的方式与所述处理器耦合,以显示源自在所述系统处以数字格式接收的图像信号的图像;以及图形控制器,所述图形控制器具有软件驱动器,所述软件驱动器被配置为在使用所述软件驱动器的默认配置时,在不同时间段与不同显示编解码器一起工作,所述图形控制器以可通信的方式被耦合到所述处理器。
12. 如权利要求ll所述的系统,其中所述软件驱动器包括通用软件驱动器。
13. 如权利要求ll所述的系统,其中所述显示器是数字显示器。
14. 如权利要求13所述的系统,其中所述显示器选自由平板、LCD (液晶显示器)、 HDTV (高清晰度电视)、等离子体和计算机监视器组成的组。
15. —种图形控制器,包括软件驱动器,所述软件驱动器被配置为在使用所述软件驱 动器的默认配置时,在不同时间段与不同显示编解码器一起工作。
16. 如权利要求15所述的图形控制器,其中所述软件驱动器包括通用软件驱动器。
17. 如权利要求15所述的图形控制器,还包括用于与显示编解码器通信的所述软件 驱动器的储存介质,所述软件驱动器识别多个显示编解码器中的每一个。
18. —种方法,包括仿真具有通用软件驱动器的图形控制器,以允许所述图形控制器以可通信的方式与多 个显示编解码器中的第一个耦合,所述图形控制器用默认设置操作。
19. 如权利要求18所述的方法,还包括仿真用所述多个显示编解码器中的第二个替 换所述多个显示编解码器中的所述第一个。
20. 如权利要求19所述的方法,其中仿真替换所述多个显示编解码器中的所述第一 个的所述操作包括用SDVO编解码器替换所述多个显示编解码器中的所述第一个。
全文摘要
一种用于与显示编解码器一起工作的图形控制器的软件驱动器的方法和系统。所述软件驱动器可以被配置为在使用默认配置时,在不同时间段与不同显示编解码器一起工作。还描述了其他实施方案。
文档编号G09G5/36GK101218558SQ200580009244
公开日2008年7月9日 申请日期2005年1月14日 优先权日2004年2月3日
发明者斯科特·罗, 斯科特·贾纳斯, 罗伯特·佛沙, 阿伦·莱瑟曼, 韦德·汤普森, 麦克·蔡 申请人:英特尔公司