用于灵活的和可扩展的媒体处理的接口架构的装置和方法

文档序号:6564760阅读:75来源:国知局
专利名称:用于灵活的和可扩展的媒体处理的接口架构的装置和方法
技术领域
一个或多个实施例通常涉及集成电路和计算机系统设计领域。更具体地,一个或多个实施例涉及用于灵活的和可扩展的媒体处理的接口架构的方法和装置。
背景技术
典型的媒体处理系统提供了由多个功能组成的固定管线(pipeline),该管线让数据此次地传输通过各个处理级。这种媒体处理系统的例子包括用于数字电视(DTV)的音频和视频的媒体处理系统、媒体个人电脑(PCs)和机顶盒。通常,这种媒体处理系统可以包括如下的任意系统,在这些系统中,需要按顺序处理数据,并且,对处理上述媒体的次序而言,可存在多种选择,或者,对处理上述管线的不同级而言,存在不同算法。
由于许多媒体处理算法拥有的产权属性,因而该领域的原始设备制造商(OEM)非常希望将他们自己的、内部开发的具有自主产权的算法用于媒体处理管线的一部分。这些OEM可能希望使用外部定制组件来对视频处理进行扩展。遗憾的是,由于这类媒体管线的固定特性,如果希望在管线中引入附加的级,则必须重新设计该系统,以将该新的级加入到媒体处理管线中。这严重地限制了这类媒体处理系统的灵活性和可扩展性。

发明内容
一种装置,包括片上互连逻辑;至少一个耦合到所述互连逻辑的片上功能单元,所述至少一个功能单元作为媒体处理管线的媒体处理级而运行;以及片上控制器,用于使至少一个选定的片外功能单元作为所述媒体处理管线的媒体处理级而运行。
一种系统,包括显示器;耦合到所述显示器且包括片上互连逻辑的芯片组;至少一个耦合到所述互连逻辑的片上功能单元,所述至少一个功能单元作为媒体处理管线的媒体处理级而运行;以及片上控制器,用于使至少一个选定的片外功能单元作为所述媒体处理管线的媒体处理级而运行。
一种片上系统,包括片上处理器;耦合到所述处理器的片上图形引擎;耦合到所述处理器的互连逻辑;至少两个耦合到所述互连逻辑的片上功能单元,所述至少两个片上功能单元作为片上媒体处理管线的媒体处理级而运行;以及耦合到所述处理器的片上控制器,用于使至少一个选定的片外功能单元作为所述片上媒体处理管线的媒体处理级而运行。
一种方法,包括选择至少一个外部功能单元作为内部媒体处理管线的处理级而运行;将所述外部单元连接到集成电路(IC)的端口;以及根据所述内部媒体处理管线内的选定位置配置所述IC的互连器件,以便使所述外部功能单元接收和输出媒体数据。


在图的各幅图中,以举例而非限制的方式说明了本发明的各种实施例,其中图1的框图示出了根据一个实施例的媒体处理系统,该系统包括用于灵活的和可扩展的媒体处理的接口架构。
图2的框图示出了根据一个实施例的内部的和修改后的媒体处理管线。
图3的框图示出了根据一个实施例的修改后的媒体处理管线。
图4的框图示出了根据一个实施例的具有用于灵活的和可扩展的媒体处理的接口架构的媒体处理系统。
图5的框图示出了根据一个实施例的内部/外部的处理选择逻辑。
图6的框图示出了根据一个实施例的包括用于灵活的和可扩展的媒体处理的接口架构的片上系统。
图7的流程图示出了根据一个实施例的用于配置修改后的内部/外部媒体处理管线的方法。
图8的流程图示出了根据一个实施例的方法,该方法用于停用至少一个内部媒体处理级,并通过外部功能单元提供上述被停用的内部媒体处理级的功能。
图9的流程图示出了根据一个实施例的用于配置修改后的内部/外部视频处理管线的方法。
图10的模块图示出了利用所公开技术来对设计进行模拟、仿真和制造的各种设计表现形式或格式。
具体实施例方式
描述了一种用于灵活的和可扩展的媒体处理的接口架构的方法和装置。在一个实施例中,该装置可包括片上互连逻辑,如交叉开关。该装置(在一个实施例中是芯片组)可包括至少一个片上功能单元,且该功能单元耦合到所述互连逻辑。该至少一个功能单元作为媒体处理管线的媒体处理级而运行。在一个实施例中,所述装置还包括片上控制器,该控制器用于启用至少一个选定的片外功能单元,以使其作为上述媒体处理管线的媒体处理级而运行。相应地,在一个实施例中,上述芯片组可提供内部媒体处理管线,可通过引入至少一个片外媒体处理级对该内部媒体处理管线进行扩展、缩减或修改。
为使读者更为透彻的理解本发明,在以下的描述中阐述了大量具体细节,如逻辑实施方式、信号与总线的大小和名称、系统组件的类型和相互关系以及逻辑划分/集成选择。然而,本领域技术人员将理解,不具备这些具体细节也可以实施本发明。在其他实例中,为避免干扰对本发明的说明,未详细示出控制结构和门级电路。利用本文包含的描述内容,无需进行过多试验,本领域普通技术人员便能实施合适的逻辑电路。
在以下的描述中,用特定的术语来描述特征。例如,术语“逻辑”表示配置成执行一个或多个功能的硬件和/或软件。例如,“硬件”的例子包括但不限于集成电路、有限状态机或甚至组合逻辑。上述集成电路可采取处理器形式,如微处理器、专用集成电路、数字信号处理器、微控制器,等等。
系统图1的框图示出了根据一个实施例的包括内部(片上)媒体处理管线200和外部媒体处理级280(280-1,...,280-N)的计算机系统100。典型地,计算机系统100包括用于在处理器(CPU)102和芯片组110之间传送信息的处理器系统总线(前端总线(FSB))104。如本文所述,术语“芯片组”用于统称耦合到CPU102上的、执行所希望的系统功能的各种器件。在一个实施例中,CPU102可以是多核的单芯片多处理器(CMP)。
典型地,芯片组110包括具有集成内存控制器(MC)116的集成图形(GFX)控制器130。在一个实施例中,GFX控制器130作为集成图形内存控制器集线器(GMCH)而运行,并通过互连结构145耦合到显示器144,以提供显示输出148。在一个可选的实施例中,图形控制器130耦合到芯片组110,并与MC116分离,这样芯片组110便包括与GFX控制器130分离的内存控制器集线器(MCH)。典型地,MC116也通过互连结构114耦合到主存储器112。在一个实施例中,主存储器114可包括但不限于,随机存取存储器(RAM)、动态RAM(DRAM)、静态RAM(SRAM)、同步DRAM(SDRAM)、双倍数据速率(DDR)SDRAM(DDR-SDRAM)、Rambus DRAM(RDRAM)或能对数据进行高速缓存的任意器件。
图中还示出芯片组110包括输入/输出(I/O)控制器集线器(ICH)120。典型地,ICH120可包括一个或多个连接或互连结构122(122-1...122-N),以将一个或多个外部媒体处理级280耦合到ICH120。在一个实施例中,互连结构122根据点到点链路协议而运行,该协议包括于2002年7月23日由PCI特殊兴趣组(PCI-SIG)批准作为标准的外围组件互连(PCI)快速(PCI-Express)协议1.0a,或其它类似的点到点互连协议。在一个实施例中,基本输入/输出系统(BIOS)106对计算机系统100进行初始化。尽管在图中示出芯片组110包括彼此独立的GMCH130和ICH120,但是,在一个实施例中,可以将GMCH130集成在CPU102中,以提供片上系统(SOC)。在一个可选实施例中,将GMCH116和ICH120的功能集成在芯片组110中。
在一个实施例中,可以在计算机系统中实施包括来自内部媒体处理管线200的媒体处理级和外部媒体处理级280的修改后的媒体处理管线,该计算机系统包括集成在CPU中的MCH、集成在芯片组中的MCH和ICH以及片上系统。因此,应当认识,图1用于说明一个实施例,不能将其视为对本发明的限制。在一个实施例中,GFX控制器130包括视频控制器140,该控制器用于在显示器144上显示数据148。在一个实施例中,显示器144可以是数字电视(TV)(DTV)显示器。
典型地,视频控制器140可包括图形引擎142和内部媒体处理管线200,用于对媒体数据进行处理来显示该数据。因此,在本文所述的实施例中,系统100提供了用于分布式媒体处理的架构,该架构允许内部功能单元和外部功能单元通过公共的存储器阵列共享数据,以便对媒体处理管线的多个局部进行处理。如本文所述,“媒体”可包括但不限制于,音频数据、视频数据或其它类似内容,用户可能希望回放这些内容。以下将进一步描述,在一个实施例中,内部媒体处理管线200由多个片上功能单元组成。如本文所述,片上(内部)功能单元是指提供一个或多个处理元件来作为媒体处理管线的内部(片上)媒体处理级的功能单元。
传统上,典型的媒体处理系统提供了由多个功能组成的固定管线,该管线让数据依次传输通过各个处理级。如果希望在该管线中引入附加的级,则必须重新设计该系统来将这些新的级加入到该管线之中。这严重限制了媒体处理系统的灵活性和可扩展性。在一个实施例中,如图1所示,可以将媒体处理系统100配置成用于DTV、媒体、PC和机顶盒的视频和音频处理领域。
图2的框图示出了根据一个实施例的、与外部媒体处理级280相结合的媒体处理管线200。典型地,图2示出了内部媒体处理管线200的媒体处理级(252,254,260,266和268),这些处理级可用于DTV系统之类的媒体处理系统。典型地,媒体处理管线200可包括(1)运动图像专家组(MPEG)解码级252;(2)画面改进级254;(3)显示转换级260;(4)色彩空间改进级266;和(5)显示控制器级268。
如图2所示,通常将内部媒体处理管线200配置在用于机顶盒、媒体PC、DTV系统的芯片组之类的集成电路上,以作为静态和固定的媒体处理管线。因此,那些希望对如图2所示的媒体处理管线200进行修改的原始设备制造商(OEM)或原始设计制造商(ODM)将需要对媒体处理管线200进行重新设计,以加入希望的附加级来代替或增加内部媒体处理级。
图2示出了修改后的媒体处理管线290的一个实施例,该实施例包括处于图像改进级254和显示转换级260之间的外部噪音减少级28 1,该级位于显示转换级260之前。在所示的实施例中,将显示转换级260停用,并用外部显示转换级283来代替显示转换级260,外部显示转换级283包括外部缩放器(scalar)级284和外部去隔行器(de-interlacer)级285。类似地,在所示实施例中,外部显示控制器286代替了显示控制器级268。在图4中,示出了根据一个实施例的用于实施修改后的媒体处理管线290的媒体处理系统的一个实施例。
图3示出了DTV处理管线292的一个实施例,该管线包括视频解码器级272、视频处理器级274和阿尔法混合级276,以驱动DTV显示器244。然而,与传统的固定媒体处理管线相比,在一个实施例中,可以将外部视频处理器级288加入视频解码器级272的输出,以形成修改后的内部/外部媒体处理管线292。在所示的实施例中,外部视频处理器288可以生成另外的、提供给阿尔法混合级276的视频输出236。因此,在所示的实施例中,修改后的媒体处理管线292包括内部视频处理器274和外部视频处理器276,以提供另外形式的视频图像数据,并提供最终的显示输出248。
在所述的实施例中,提供了如图2和图3所示的修改后的媒体处理管线290和292的配置,以作为可能的实施例的例子,但不应将其视为对本发明的限制。因此,在所述实施例中,可以将媒体处理系统(如系统100)、尤其是将外部媒体处理级引入片上(内部的)媒体处理管线之中的能力应用于任何系统(在这类系统中,需要按顺序处理数据,并且,对处理上述媒体的次序而言,可存在多种选择,或者,对处理上述管线的不同级而言,存在不同算法)。
图4的框图示出了根据一个实施例的媒体处理系统300,该系统包括内部媒体处理管线200和外部媒体处理级280。在一个实施例中,计算机系统300包括芯片组310,可通过FSB304将该芯片组耦合到处理器302。图中还示出芯片组310可包括内存控制器316,该控制器通过连接314耦合到系统存储器312。在所述的实施例中,系统存储器314和内存控制器316可以配置成如图1所示。
典型地,在一个实施例中,芯片组310是包括集成内存控制器316的图形内存控制器集线器(GMCH)。在一个实施例中,芯片组310可以是专用标准产品(ASSP)。图中还示出芯片组310可包括用于将外部媒体处理级280耦合到芯片组310的端口322(322-1,322-2,322-3,322-4)。通过端口322实现了外部媒体处理级280与交叉开关320的耦合。在一个实施例中,交叉开关320可以是PCI-Express型交叉开关。
在一个实施例中,交叉开关320使得媒体处理管线200的级(252,259,260和266)通过连接324(324-1,324-2,324-3,324-4)与外部媒体处理级280(282,284,286和288)连接起来,从而使这些媒体处理级能共享由系统存储器312提供的存储器阵列。图中还示出,设置了显示控制器368来将所得的媒体输出到显示驱动器346,以驱动DTV显示器。
如本文描述的,“接收和输出媒体数据”是指由交叉开关320或其它类似互连器件提供的、用于使外部媒体处理级作为源在内部媒体处理管线中的预定位置处接收数据,并作为汇将处理后的媒体数据输出到下一级的能力,所述下一级位于媒体处理管线内,处于上述外部媒体处理级在上述内部媒体处理管线中的预定位置之后。在一个实施例中,由交叉开关320为内部/外部媒体处理级提供的接收和输出媒体数据的能力促成了修改后的内部/外部媒体处理管线的形成。
典型地,在图中将MPEG解码级254、画面改进级256、显示转换级260和色彩空间改进级266示为模块x1、x2、x3和x4。典型地,由内部媒体处理管线280的各个级来处理媒体数据,且各个级的数据源和汇是共享的存储器312。在一个实施例中,交叉开关320使附加的外部处理级280被加入到系统300之中,以代替或增加内部功能,如图2中的修改后的媒体处理管线290所示。
在一个实施例中,可以将噪音减少功能级281实施成外部媒体处理级(x5)281。在一个实施例中,如图2所示,另外的去隔行器级(x6)284可代替如图2所示的显示转换级260的去隔行器264,而另外的缩放器(x7)285可用于代替显示转换级260的缩放器262。在一个实施例中,另外的显示控制器(x8)288可代替显示控制器268。
因此,如图4所示,所有媒体数据的源和汇是由系统存储器312提供的共享存储器。图4中还示出,任何外部媒体处理级280可包括可选的专用存储器282,用于保存中间数据或作为附加的缓冲器。在一个实施例中,外部媒体处理级(x5)281包括专用存储器282。
在图4所示的实施例中,示出交叉开关320在内部媒体处理级200和外部媒体处理级280之间提供了连接。由于应用广泛、带宽大和引脚数少的缘故,因而可使用PCI-Express型交叉开关来实施交叉开关320。然而,应当认识到,本文描述的实施例不限于交叉开关(如给出的PCI-Express型交叉开关),从而,可以将多种替代物用于内部连接324和外部连接322。在一个实施例中,内部连接324不同于外部连接322。此外,在一个实施例中,尽管未示出连接器,但可以通过连接器来实现用于外部处理级x5-x8(281,284,285和286)的连接322,从而,可以通过追加(add-in)板来提供外部媒体处理级280。
图5的框图示出了根据一个实施例的内部/外部媒体处理级250。典型地,级250包括启用/停用逻辑251,用于启用/停用处理级逻辑255。因此,在一个实施例中,启用/停用逻辑251提供了一种机制来启用或停用媒体处理级。在一个实施例中,如果级处理逻辑255提供单一功能,则所述启用/停用逻辑251可以完全停用该级处理逻辑255。在一个实施例中,可以提供启用/停用逻辑来停用多功能处理级的各个部分。
例如,如图2所示,显示转换级260提供多个功能,包括去隔行器级264以及缩放级262。相应地,在一个实施例中,启用/停用逻辑251可以停用由多功能媒体处理级提供的多个功能中的一个或多个功能,如显示转换级260的缩放级262。在一个实施例中,根据包含在配置寄存器253中的值,启用/停用逻辑251可用于启用/停用由处理级逻辑255提供的一个或多个功能。例如,显示转换级260之类的内部模块可以提供缩放功能,然而,OEM可能希望不同的缩放功能。为启用另外的缩放功能,如图2所示,在一个实施例中OEM将在外部设置该另外的缩放功能(如外部缩放器284),并随后停用上述内部缩放功能(如缩放器262)。
再次参考图4,交叉开关功能模块320设置了数据流的方向和位置,并且,在一个实施例中,该模块被配置为用于确定媒体处理级(被启用和停用)。在一个实施例中,依据若干因素,如输入类型、分辨率或仅基于用户的个人偏好(例如,对媒体而言,特定的终端用户对其一个版本的喜爱更甚于他对其另一个版本的喜爱),OEM可以同时使用内部功能和外部功能。再次参考图2,外部噪音减少功能级281提供了希望其中同时设有内部和外部噪音减少级的处理级的例子。
再次参考图5,在一个实施例中,启用/停用逻辑251可包括微控制器(未示出)而非硬编码的状态机来提供启用/停用逻辑功能。在一个实施例中,该微控制器可以在运行时通过芯片组310(图4)内部或外部的主控制器(未示出)来装载代码。在一个实施例中,一旦运行本地控制器的代码,则建立与主控制器的通信连接,从而任何请求的用户设置均可通过该建立的通信连接而传送到本地控制器。
在一个可选的实施例中,配置寄存器253是软件可见的,并可直接由控制器访问,该控制器可以是内部或外部的主CPU/控制器。在一个实施例中,可通过配置软件直接对配置寄存器253的寄存器进行装载。在一个实施例中,级250包括直接存储器访问(DMA)逻辑257。在一个实施例中,DMA逻辑257确定下一个“帧”位于要求处理级处理的存储器中的哪个位置。在一个实施例中,本地控制器可用作DMA访问逻辑257。然而,在所述的实施例中,不需要DMA控制器,并且,可以用任何配置机构取代DMA访问逻辑,以确定下一个用于处理的帧。图5还示出,内部/外部级250可包括可选的专用存储器259。
图6的框图示出了根据一个实施例的片上系统400,该系统包括外部视频处理器286,以增强内部视频处理管线。在一个实施例中,片上系统(SOC)400提供了将由SOC400或ASSP进行处理的视频的优化方法,并保持了在不处理应用的图形叠置(graphic overlay)的情况下使外部视频处理器286处理视频流上的视频的能力,如图3所示。
再次参考图3,由于许多视频处理算法的产权属性,因而该领域的许多OEM非常希望将他们自己内部开发的具有自主产权的的算法用于部分视频处理。典型地,图3示出了一个实施例,其中,通过使用外部定制组件286将SOC400的多级视频处理管线扩展为用于提供附加的处理。
再次参考图6,SOC400可包括应用处理器(CPU)402、图形引擎422和多级视频处理链。典型地,该多级视频处理链包括视频解码级272、视频处理器级274和阿尔法混合级276。典型地,SOC400接收视频输入432。在一个实施例中,所述视频输入432可以是多种视频标准的视频之一,如来自ATSC调谐电路的先进电视系统委员会(ATSC)格式的传输流。类似地,来自阿尔法混合级276的所述输出可用于直接驱动DTV显示器444。
典型地,在任何可能污染视频流的视频处理或图形叠置之前,为从视频解码级272接收的解压缩视频数据提供了另外的输出438。该辅助视频输出438由外部视频处理器286进行处理,以提供另外的视频输入436。典型地,由选择器件474提供了用于处理后的视频路径437的输入和另外的视频输入436。典型地,选择器件434将显示处理旁路,但允许为画中画(PIP)和图形叠置(包括但不限于隐藏字幕、电子节目向导、菜单等等)而混合二次视频流436。典型地,在将最后的显示输出448发送到DTV显示器444之前添加二次视频流436。现在描述用于实施一个或多个实施例的程序方法。
运行现在转到图7,以下结合流程图和用计算机软件和硬件描述了与各个实施例有关的具体方法。由计算器件(如芯片组)执行的方法可以构成状态机或由计算机可执行指令组成的计算机程序。所述计算机可执行指令可以用计算机程序和编程语言写成,或包含于固件逻辑之中。如果上述指令由遵循公认标准的编程语言写成,则这样的指令可以在多种硬件平台上执行,并可用于与多种操作系统进行接口。
此外,未结合任何具体的编程语言来描述实施例。应当理解,可以用多种编程语言来实现本文所述的实施例。此外,业内通常将一种或另一种形式的软件(如程序、步骤、过程、应用,等等)称为采取某一行动或引起某一结果。这种表达仅仅是关于“由计算器件执行所述软件而引起该器件执行某一动作或产生某一结果”的表述的简化方式。
图7的流程图示出了根据一个实施例的用于配置修改后的内部/外部媒体处理管线的方法500。在所述的实施例中,将结合图1-6来得出所述的实施例的例子。然而,所述实施例不应局限于所提供的实施例(以致限制了由所附权利要求给出的范围)。
再次参考图7,在处理框510处,选择外部功能单元作为内部媒体处理管线的处理级而运行。例如,如图4所示,可以选择外部噪音减少功能(如x5级281)来提供内部媒体管线200的x1级252和x2级254之间的噪音减少功能。再次参考图7,在处理框520处,可以将所选的外部单元连接到集成电路的端口。例如,如图3所示,可以将x5级282耦合到外部端口322,以便与交叉开关320进行通信。尽管未示出图3中的连接322的连接器,但是,可以将外部级280连接到追加板或使其通过引脚连接到耦合到芯片组310的一部分的引线(trace)。
再次参考图7,在处理框530处,将互连器件配置成使内部媒体处理管线内的选定位置处的外部功能单元接收和输出媒体数据。例如,如图4所示,使外部噪音减少级281接收和输出数据,以接收MPEG解码级252和画面改进级254之间的媒体数据。相应地,在图4所示例的实施例中,可通过对微控制器(未示出)进行编程来配置交叉开关320,该微控制器可以在启动时由主控制器装载代码,而该主控制器可以处于图4所示芯片组310的外部或者内部。
图8的流程图示出了根据一个实施例的用于代替内部媒体处理管线的内部处理级的方法540。在处理框550处,选择媒体处理管线的内部功能单元。例如,如图2所示,可以选择用于由其他级代替的显示转换级260的缩放级262。一旦进行了选择,则在处理框560处,停用内部功能单元的所选功能。在一个实施例中,通过生成初始化代码来执行对所述功能单元的停用,该单元可以是如图5所示的内部/外部媒体级的程序配置寄存器。在处理框570处,将互连器件配置成使外部功能单元执行上述内部媒体处理管线中的被停用内部功能。
图9的流程图示出了根据一个实施例的用于增加内部媒体处理管线的内部处理级的方法580。在处理框582处,外部视频处理器连接到集成电路的端口。例如,如图6所示,外部视频处理器288在视频解码级272和内部输入选择单元434之间接收和输出数据。一旦连接好上述设备,则在处理框583处,根据媒体处理管线的内部视频处理器来配置互连器件,以便使外部视频处理器接收和输出媒体数据,以便向下一级提供另外的处理后的视频数据。例如,如图3所示,阿尔法混合级276可以从内部视频处理器274接收处理后的视频数据437,和接收由外部视频处理器288处理的另外的视频数据436。一旦配置完成,则在处理框584处初始化片上系统(SOC)之类的集成电路(IC)。
相应地,在用于计算机系统的实施例(如机顶盒、媒体PC或DTV)中,提供了一种用于分布式媒体处理的架构,该架构允许通过公共存储器阵列共享数据的内部功能单元和外部功能单元处理媒体处理管线(如图1、3和6所示)的一部分。相应地,在一个实施例中,为媒体处理管线提供了允许扩展和将另外的处理元件添加到该媒体处理管线内的任一点的能力,如图2和3所示。因此,便为OEM或ODM赋予了生成具有差异化特征的灵活系统的能力。这种差异化确认,对提供的作为内部处理管线的一部分的任何一组功能而言(如媒体处理ASSP(如芯片组310)),存在用于执行一个或多个媒体处理级的、来自业内的其他OEM的更好算法。根据一个实施例,这样的OEM和ODM可以对媒体处理管线的这些内部媒体处理级进行补充、代替或增强处理。
图10的框图示出了使用公开的技术对设计进行模拟、仿真和制造的多种表现形式或格式。表示设计的数据可以以多种方式表示所述设计。首先,在仿真中有用的是,可以用硬件描述语言或另一功能描述语言来表示硬件,而上述语言实际上提供了与该设计的硬件预期的工作情况有关的计算机模型。可以将硬件模型610存储在计算机存储器之类的存储介质600中,因此,可以使用仿真软件620对该模型进行仿真,该软件620将具体的测试组630应用于上述硬件模型,以确定后者是否象所希望的那样工作。在某些实施例中,未将仿真软件记录、捕获或包含在介质中。
此外,可以在设计过程中的某些阶段处制造具有逻辑与/或晶体管门级的电路级模型。类似地,使用可编程逻辑,通过形成模型的专用硬件仿真器,有时可以对所述模型进行仿真。更进一步,这种类型的仿真便成为了模拟技术。在任何情况下,可重新配置的硬件是另一种实施例,该实施例可能包含存有采用本公开技术的模型的机器可读介质。
而且,在某些阶段,多数设计达到了表示所述硬件模型中的各种器件的物理配置情形的那种数据水平。在使用传统的半导体制造技术的情况下,上述表示硬件模型的数据可以是指明各种特征在用于生产集成电路的不同掩模层或掩模上的存在性的数据。再一次地,表示上述集成电路的该数据包含了本公开技术,因为可使用上述数据仿真和制造电路逻辑来执行这些技术。
在上述设计的任何表现形式中,可以将所述数据存储在任何形式的机器可读介质中。对光或电波660进行调制,或以其他方式生成上述波,以传输上述信息,且存储器650或磁存储器或光存储器640(如盘)可以是上述机器可读介质。任何这些介质均可携带所述设计信息。从而,术语“携带”(如,携带信息的机器可读介质)涵盖了存储在存储器件上的信息或经编码或调制到载波上的信息。描述所述设计或该设计的具体方面的位的集合是一种(当包含在机器可读介质,如载波或存储介质中时)可被其自身封入(seal in)和解封(seal out)的事项(article),或是由其他厂商用于另外的设计或制造。
另外的实施例也可以提供作为存储机器可执行指令的机器可读介质的实施例的元件。所述机器可读介质可以包括但不限于,闪存、光盘、只读光盘存储器(CD-ROM)、数字万能/视频盘(DVD)ROM、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁或光卡、传播媒质或适合用来存储电子指令的其它类型的机器可读媒介。例如,可以下载作为计算机程序的所述实施例,通过通信链路(如调制解调器或网络连接)和借助于包含在载波或其它传播介质中的数据信号,可以将该程序从远程计算机(如服务器)传送到发出请求的计算机(如客户端)。
应当懂得,整个本说明中提及的“一个实施例”或“某一实施例”意味着结合这些实施例所述的具体特征、结构或特性已被包括在本发明的至少一个实施例中。应此,应当理解,本说明书中各个部分对“一个实施例”或“某一实施例”或“某一可选实施例”的两次或更多次的引用不一定均指同一实施例。而且,如果合适,可以在一个或多个实施例中组合这些具体特征、结构或特性。
在以上的对各种实施例的详细说明中,引用了附图,这些图形成了说明书的一部分,且它们通过说明而非限制的方式示出了实施具体实施例的实施方式。在这些图中,类似的附图标记表示类似的部件。足够详细地说明了所示的实施例,以便使本领域技术人员能实施本文公开的教导内容。可以利用其他实施例和从所述内容中得出这些实施例,从而,可以对所述实施例进行结构和逻辑方面的替换或更改,而不至于背离本公开的范围。因此,不应将以上详细说明视为限制性的,且各个实施例的范围仅由附录的权利要求以及这些权利要求的等同物来决定。
在公开实施例和最佳模式后,可以对所述公开的实施例进行修改和变更,同时,修改和变更后的实施例仍落在由以下的权利要求定义的实施例范围内。
权利要求
1.一种装置,包括片上互连逻辑;至少一个耦合到所述互连逻辑的片上功能单元,所述至少一个功能单元作为媒体处理管线的媒体处理级而运行;以及片上控制器,用于使至少一个选定的片外功能单元作为所述媒体处理管线的媒体处理级而运行。
2.如权利要求1所述的装置,其中,所述互连逻辑包括交叉开关。
3.如权利要求1所述的装置,还包括耦合到所述互连逻辑的存储器控制器;以及耦合到所述存储器控制器的片外系统存储器,用于使所述至少两个片上功能单元和所述至少一个片外功能单元能共享由所述系统存储器提供的存储器阵列。
4.如权利要求1所述的装置,还包括耦合到所述互连逻辑的显示控制器,用于接收已根据所述媒体处理管线进行处理的媒体数据;以及显示驱动器,用于接收来自所述显示控制器的所述媒体数据,以利用所述接收的媒体数据来驱动显示器。
5.如权利要求1所述的装置,其中,所述显示控制器包括图形引擎;以及耦合到所述图形引擎的阿尔法混合逻辑,该阿尔法混合逻辑用于处理从所述媒体处理管线接收的媒体数据,以驱动显示器。
6.如权利要求1所述的装置,还包括耦合到所述互连逻辑的片上视频处理器;通过端口耦合到所述互联逻辑的片外视频处理器;以及阿尔法混合逻辑,用于接收来自所述片上视频处理器的视频数据和接收来自所述外部视频处理器的另外的视频数据。
7.如权利要求1所述的装置,其中,所述片上控制器包括图形内存控制器集线器。
8.如权利要求1所述的装置,其中,所述片上控制器是用于形成片上系统的片上处理器。
9.如权利要求1所述的装置,其中,所述片上控制器是包括图形引擎的图形控制器。
10.如权利要求1所述的装置,其中,所述片外功能单元包括存储器。
11.一种系统,包括显示器;耦合到所述显示器且包括片上互连逻辑的芯片组;至少一个耦合到所述互连逻辑的片上功能单元,所述至少一个功能单元作为媒体处理管线的媒体处理级而运行;以及片上控制器,用于使至少一个选定的片外功能单元作为所述媒体处理管线的媒体处理级而运行。
12.如权利要求11所述的系统,其中,所述芯片组还包括耦合到所述互连逻辑的存储器控制器,所述存储器控制器将片外系统存储器耦合到所述芯片组,所述存储器控制器使得所述至少一个片上功能单元和所述至少一个片外功能单元能共享由所述系统存储器提供的存储器阵列。
13.如权利要求11所述的系统,其中,所述芯片组还包括耦合到所述互连逻辑的显示控制器,用于接收已根据所述媒体处理管线进行处理的媒体数据;以及显示驱动器,用于接收来自所述显示控制器的所述媒体数据,以利用所述接收的媒体数据来驱动显示器。
14.如权利要求11所述的系统,还包括耦合到所述互连逻辑的片上视频处理器;通过所述图形内存控制器集线器的端口耦合到所述互联逻辑的片外视频处理器;以及阿尔法混合逻辑,用于接收来自所述片上视频处理器的视频数据和接收来自所述外部视频处理器的另外的视频数据。
15.如权利要求11所述的系统,其中,所述芯片组包括图形内存控制器集线器。
16.一种片上系统,包括片上处理器;耦合到所述处理器的片上图形引擎;耦合到所述处理器的互连逻辑;至少两个耦合到所述互连逻辑的片上功能单元,所述至少两个片上功能单元作为片上媒体处理管线的媒体处理级而运行;以及耦合到所述处理器的片上控制器,用于使至少一个选定的片外功能单元作为所述片上媒体处理管线的媒体处理级而运行。
17.如权利要求16所述的片上系统,还包括耦合到所述互连逻辑的存储器控制器;以及耦合到所述存储器控制器的片外系统存储器,用于使所述至少两个片上功能单元和所述至少一个片外功能单元能共享由所述系统存储器提供的存储器阵列。
18.如权利要求16所述的片上系统,还包括耦合到所述互连逻辑的显示控制器,用于接收已根据所述媒体处理管线进行处理的媒体数据;以及显示驱动器,用于接收来自所述显示控制器的所述媒体数据,以利用所接收的媒体数据来驱动显示器。
19.如权利要求16所述的片上系统,还包括耦合到所述互连逻辑的片上视频解码器;耦合到所述互连逻辑的片上视频处理器,用于接收来自所述片上视频解码器的已解码的媒体数据;通过端口耦合到所述互连逻辑的片外视频处理器,用于接收来自所述视频解码器的已解码的媒体数据;以及阿尔法混合器,用于接收来自所述片上视频处理器的视频数据和接收来自所述外部视频处理器的另外的视频数据。
20.如权利要求16所述的片上系统,其中,所述片外功能单元还包括存储器控制器;以及耦合到所述存储器控制器的外部存储器。
21.一种方法,包括选择至少一个外部功能单元作为内部媒体处理管线的处理级而运行;将所述外部单元连接到集成电路(IC)的端口;以及根据所述内部媒体处理管线内的选定位置配置所述IC的互连器件,以便使所述外部功能单元接收和输出媒体数据。
22.如权利要求21所述的方法,还包括选择所述内部媒体处理管线的内部功能单元;停用所述选定的内部功能单元的至少一个功能;以及配置所述互连器件,以便使外部功能单元能执行所述媒体处理管线中所述被选功能单元的所述停用功能。
23.如权利要求21所述的方法,还包括将外部视频处理器连接到所述IC的端口;根据所述媒体管线的内部视频处理器配置所述互连器件,以便使所述外部视频处理器接收和输出媒体数据,以便为下一管线级提供另外的处理后的视频;以及初始化所述IC,以提供修改后的媒体处理管线。
全文摘要
一种用于灵活的和可扩展的媒体处理的接口架构的方法和装置。在一个实施例中,该装置可包括片上互连逻辑,如交叉开关。在一个实施例中,该装置是芯片组,它可以包括至少一个耦合到上述互连逻辑的片上功能单元。该至少一个功能单元作为媒体处理管线的媒体处理级而运行。在一个实施例中,该装置还可包括片上控制器,用于使至少一个选定的片外功能单元能作为上述媒体处理管线的媒体处理级而运行。相应地,在一个实施例中,该芯片组可提供内部媒体处理管线,可通过引入至少一个片外媒体处理级而对该管线进行扩展、缩减或修改。也描述了其它实施例和主张了它们的权利。
文档编号G06T1/20GK1983327SQ20061017184
公开日2007年6月20日 申请日期2006年11月10日 优先权日2005年11月10日
发明者P·F·斯托尔特 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1