KR100960164B1 - Multi-graphics processor system and method for processing content communicated over a network for display purposes - Google Patents

Multi-graphics processor system and method for processing content communicated over a network for display purposes Download PDF

Info

Publication number
KR100960164B1
KR100960164B1 KR1020070077532A KR20070077532A KR100960164B1 KR 100960164 B1 KR100960164 B1 KR 100960164B1 KR 1020070077532 A KR1020070077532 A KR 1020070077532A KR 20070077532 A KR20070077532 A KR 20070077532A KR 100960164 B1 KR100960164 B1 KR 100960164B1
Authority
KR
South Korea
Prior art keywords
processing
graphics processor
content
graphics
processor
Prior art date
Application number
KR1020070077532A
Other languages
Korean (ko)
Other versions
KR20080012234A (en
Inventor
윌리암 사무엘 헤르쯔
Original Assignee
엔비디아 코포레이션
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
Priority claimed from US11/461,676 external-priority patent/US7969443B2/en
Priority claimed from US11/461,670 external-priority patent/US7961192B2/en
Application filed by 엔비디아 코포레이션 filed Critical 엔비디아 코포레이션
Publication of KR20080012234A publication Critical patent/KR20080012234A/en
Application granted granted Critical
Publication of KR100960164B1 publication Critical patent/KR100960164B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 시스템 및 방법은 콘텐츠원과 통신하는 제1 그래픽 프로세서를 포함하여 제공된다. 동작시에, 제1 그래픽 프로세서는 콘텐츠원으로부터의 콘텐츠를 처리하도록 적응된다. 또한, 네트워크를 이용하여 제1 그래픽 프로세서와 통신하는 제2 그래픽 프로세서가 포함된다. 제2 그래픽 프로세서는 표시 목적으로 콘텐츠를 더 처리하도록 적응된다.The system and method are provided comprising a first graphics processor in communication with a content source. In operation, the first graphics processor is adapted to process content from a content source. Also included is a second graphics processor that communicates with the first graphics processor using a network. The second graphics processor is adapted to further process the content for display purposes.

그래픽 프로세서, 콘텐츠, 네트워크, 그래픽 처리, 비디오 처리 Graphics processor, content, network, graphics processing, video processing

Description

표시 목적으로 네트워크를 통해 통신되는 콘텐츠를 처리하기 위한 멀티그래픽 프로세서 시스템 및 방법{MULTI-GRAPHICS PROCESSOR SYSTEM AND METHOD FOR PROCESSING CONTENT COMMUNICATED OVER A NETWORK FOR DISPLAY PURPOSES}MULTI-GRAPHICS PROCESSOR SYSTEM AND METHOD FOR PROCESSING CONTENT COMMUNICATED OVER A NETWORK FOR DISPLAY PURPOSES}

본 발명은 디지털 처리에 관한 것이며, 보다 구체적으로는 그래픽/비디오 처리에 관한 것이다.The present invention relates to digital processing, and more particularly to graphics / video processing.

도 1a는 종래 기술에 따른 그래픽/비디오 처리를 위한 시스템(100)을 도시한다. 도시된 바와 같이, 그래픽 프로세서(102)는 이러한 종래 기술의 시스템(100)에서 디스플레이(104)에 직접 연결된다. 이러한 목적으로, 표시될 콘텐츠의 모든 필요한 그래픽 및/또는 비디오 처리는 그래픽 프로세서(102)에 의해 수행된 후 표시를 위해 준비된 포맷으로 디스플레이(104)에 직접 보내질 수 있다. 이러한 시스템(100)은 종래의 컴퓨터 시스템에 대하여 이상적이지만, 다른 프레임워크들에 대하여 반드시 편리한 것은 아니다.1A shows a system 100 for graphics / video processing according to the prior art. As shown, the graphics processor 102 is directly connected to the display 104 in this prior art system 100. For this purpose, all necessary graphics and / or video processing of the content to be displayed may be performed by the graphics processor 102 and then sent directly to the display 104 in the format prepared for display. Such a system 100 is ideal for conventional computer systems, but is not necessarily convenient for other frameworks.

예를 들어, 도 1b는 종래 기술에 따른 무선 네트워크(106)의 문맥에서 그래픽/비디오 처리를 위한 시스템(150)을 도시한다. 도시된 바와 같이, 이러한 구성에서, 그래픽 프로세서(102)는 네트워크(106)를 통하여 디스플레이(104)와 통신한 다. 이러한 네트워크(106)는 UWB(ultra wide band) 기술, WUSB(wireless universal serial bus) 기술, WiMedia 기술, 및/또는 임의의 다른 원하는 네트워크 관련 기술을 이용하는 무선 네트워크 링크를 포함할 수 있다.For example, FIG. 1B illustrates a system 150 for graphics / video processing in the context of a wireless network 106 according to the prior art. As shown, in this configuration, the graphics processor 102 communicates with the display 104 via the network 106. Such a network 106 may include a wireless network link using ultra wide band (UWB) technology, wireless universal serial bus (WUSB) technology, WiMedia technology, and / or any other desired network related technology.

이러한 구성은 특정 고속 네트워크들의 문맥에서 만족할 수 있는 성능을 제공하지만, 네트워크에 관련된 임의의 대역폭 한계의 결과로서 여전히 문제점들을 야기할 수 있다. 구체적으로, 콘텐츠에 관련된 종래의 포맷, 그래픽 프로세서 출력, 프로세싱 아키텍처 등은 효율적인 네트워크 전송에 도움이 되지 않을 수 있다. 예를 들어, 콘텐츠는 어떻게든 암호화, 압축 등이 될 수 있다.This configuration provides satisfactory performance in the context of certain high speed networks, but can still cause problems as a result of any bandwidth limitations associated with the network. In particular, conventional formats, graphics processor outputs, processing architectures, etc. related to the content may not be helpful for efficient network transmission. For example, the content can somehow be encrypted, compressed, or the like.

따라서, 대역폭이 크지만 불충분하면, 콘텐츠의 표시에 어려움이 있고 표시가 불가능할 수도 있다. 그러므로, 종래 기술에 관련된 이들 및/또는 다른 문제점들을 극복할 필요가 있다.Thus, if the bandwidth is large but insufficient, the display of the content may be difficult and may not be possible. Therefore, there is a need to overcome these and / or other problems associated with the prior art.

본 시스템 및 방법은 콘텐츠원과 통신하는 제1 그래픽 프로세서를 포함하여 제공된다. 동작에서, 제1 그래픽 프로세서는 콘텐츠원으로부터의 콘텐츠를 처리하도록 적응된다. 또한, 네트워크를 이용하여 제1 그래픽 프로세서와 통신하는 제2 그래픽 프로세서가 포함된다. 제2 그래픽 프로세서는 표시 목적으로 콘텐츠를 더 처리하도록 적응된다.The system and method are provided comprising a first graphics processor in communication with a content source. In operation, the first graphics processor is adapted to process content from the content source. Also included is a second graphics processor that communicates with the first graphics processor using a network. The second graphics processor is adapted to further process the content for display purposes.

본 발명에 따르면, 콘텐츠의 표시를 효과적으로 향상시킬 수 있다.According to the present invention, the display of content can be effectively improved.

도 2는 일 실시예에 따른, 표시 목적으로 네트워크를 통하여 통신되는 콘텐츠를 처리하기 위한 시스템(200)을 도시한다. 도시된 바와 같이, 콘텐츠원(202)이 포함되는데, 콘텐츠원(202)은 콘텐츠원(202)으로부터의 콘텐츠를 처리(예를 들면, 그래픽 처리 및/또는 비디오 처리 등)하기 위한 제1 그래픽 프로세서(204)에 콘텐츠를 공급하는 역할을 한다. 본 설명의 문맥에서, 그러한 콘텐츠원(202)은 임의의 콘텐츠원[예를 들면, 네트워크, DVD(digital versatile disc) 형태의 메모리, 하드 디스크 등]을 가리킬 수 있으며, 여기서, 콘텐츠는 표시 목적으로 처리될 수 있는 그래픽 데이터 및/또는 비디오를 포함할 수 있다. 물론, 다양한 실시예에서, 콘텐츠는 심지어 선택적으로 오디오 및/또는 메타데이터를 포함할 수 있다.2 illustrates a system 200 for processing content communicated over a network for display purposes, according to one embodiment. As shown, a content source 202 is included, which is a first graphics processor for processing (eg, graphics processing and / or video processing, etc.) content from the content source 202. 204 serves to supply content. In the context of the present description, such content source 202 may refer to any content source (eg, network, memory in the form of a digital versatile disc (DVD), hard disk, etc.), where the content is for display purposes. It may include graphical data and / or video that may be processed. Of course, in various embodiments, the content may even optionally include audio and / or metadata.

또한 도시된 바와 같이, 네트워크(206)를 통해 제1 그래픽 프로세서(204)와 통신하는 제2 그래픽 프로세서(208)도 포함된다. 제2 그래픽 프로세서(208)는 표시 목적으로 콘텐츠를 더 처리(예를 들면, 그래픽 처리 및/또는 비디오 처리 등)하도록 적응된다. 도시된 바와 같이, 디스플레이(210)는 그러한 목적으로 제2 그래픽 프로세서(208)와 통신하는 상태로 있을 수 있다. 그래픽 프로세서들은 남아있는 각각의 컴포넌트들에 직접 연결된 것으로 도시되지만, 그러한 연결들은 통신을 표시할 뿐이라는 것에 주목해야 한다. 따라서, 시스템(200)은 그래픽 프로세서들 사이에서 통신하는 부가적인 컴포넌트들을 포함하거나 포함하지 않을 수 있다. 반드시 임의의 그래픽 처리 없이도 비디오 처리를 할 수 있는 프로세서(들)가 전술된 그래픽 프로세서(들) 대신에 채용되는 다른 실시예들도 고려된다는 것에 주목해야 한다.As also shown, a second graphics processor 208 is also included in communication with the first graphics processor 204 via the network 206. The second graphics processor 208 is adapted to further process the content (eg, graphics processing and / or video processing, etc.) for display purposes. As shown, the display 210 may be in communication with the second graphics processor 208 for that purpose. It should be noted that while the graphics processors are shown as being directly connected to each of the remaining components, such connections only indicate communication. Thus, system 200 may or may not include additional components that communicate between graphics processors. It should be noted that other embodiments are also contemplated in which a processor (s) capable of video processing without necessarily any graphics processing are employed in place of the graphic processor (s) described above.

네트워크(206)는 LAN(local area network), 무선 네트워크, 인터넷, 피어-투-피어 네트워크(peer-to-peer network) 등과 같은 WAN(wide area network)을 포함하지만 거기에 한정되지 않는 임의의 형태를 취할 수 있다는 것도 주목해야 한다. 다양한 선택적 실시예에서, 네트워크(206)는, 본 설명의 문맥에서, 무선 네트워크와 관련된 임의의 접속을 포함하는 무선 네트워크 링크를 수반할 수 있다. 단지 예로서, 그러한 무선 네트워크 링크는 UWB(ultra wide band) 기술, WUSB(wireless universal serial bus) 기술, WiMedia 기술 등을 채용할 수 있다. 무선 네트워크를 수반하는 하나의 가능한 실시예에 관한 더 많은 정보가 이하에서 후속 도면들을 참조하는 동안 개시될 것이다.The network 206 includes any form including but not limited to a wide area network, such as a local area network, a wireless network, the Internet, a peer-to-peer network, and the like. It should also be noted that can be taken. In various optional embodiments, network 206 may involve, in the context of the present description, a wireless network link that includes any connection associated with the wireless network. By way of example only, such a wireless network link may employ ultra wide band (UWB) technology, wireless universal serial bus (WUSB) technology, WiMedia technology, and the like. More information about one possible embodiment involving a wireless network will be disclosed while referring to the following figures below.

사용시에, 제1 그래픽 프로세서(204) 및 제2 그래픽 프로세서(208)는 그러한 콘텐츠를 처리하도록 적응된다. 다양한 실시예에서, 제1 그래픽 프로세서(204) 및 제2 그래픽 프로세서(208)는 비대칭이거나 비대칭이 아닐 수 있다. 예를 들면, 하나의 예시적인 실시예에서, 제1 그래픽 프로세서(204)에 의해 수행되는 처리의 제1 양은 제2 그래픽 프로세서(208)에 의해 수행되는 처리의 제2 양의 역함수(reciprocal function)일 수 있다. 또한, 그러한 동적 적응성을 수반하는 하나의 가능한 실시예에 관한 더 많은 정보가 이하에서 후속 도면들을 참조하는 동안 개시될 것이다.In use, the first graphics processor 204 and the second graphics processor 208 are adapted to process such content. In various embodiments, the first graphics processor 204 and the second graphics processor 208 may or may not be asymmetric. For example, in one exemplary embodiment, the first amount of processing performed by the first graphics processor 204 is a reciprocal function of the second amount of processing performed by the second graphics processor 208. Can be. Also, more information about one possible embodiment involving such dynamic adaptation will be disclosed while referring to the following figures below.

다른 실시예들에서, 제1 그래픽 프로세서(204)(및/또는 심지어 그에 관련한 제2 그래픽 프로세서(208))에 의해 수행되는 처리는 동적으로 적응가능할 수 있다. 예를 들면, 제1 그래픽 프로세서(204)에 의해 수행되는 처리는 다양한 요인들 중 임의의 하나의 함수로서 변화할 수 있다. 단지 예로서, 그러한 처리는 대역폭, 원하는 서비스 품질(QoS), 콘텐츠 또는 디스플레이의 적어도 하나의 양상, 제2 그래픽 프로세서(208)에 의해 실행되는 처리의 유형 또는 양, 및/또는 임의의 다른 원하는 요인의 함수로서 변화할 수 있다.In other embodiments, the processing performed by the first graphics processor 204 (and / or even related to the second graphics processor 208) may be dynamically adaptable. For example, the processing performed by the first graphics processor 204 may vary as a function of any one of a variety of factors. By way of example only, such processing may include bandwidth, desired quality of service (QoS), at least one aspect of content or display, type or amount of processing executed by the second graphics processor 208, and / or any other desired factor. Can change as a function of

또한, 제1 그래픽 프로세서(204) 및/또는 제2 그래픽 프로세서(208)에 의해 수행되는 처리는 암호해독(decryption), 압축해제(decompression), 후처리(post- processing), 다중화(multiplexing), 역다중화(de-multiplexing), 오류 정정을 제공하는 처리, 패킷화(packetization), 역패킷화(de-packetization), 그래픽 렌더링(graphics rendering), 합성, 재압축 및/또는 재암호화를 포함할 수 있지만, 거기에 한정되지는 않는다. 물론, 본 설명의 문맥에서, 제1 그래픽 프로세서(204) 및/또는 제2 그래픽 프로세서(208)에 의해 수행되는 그러한 처리는, 적어도 부분적으로, 네트워크를 통하여 콘텐츠가 송신 및/또는 표시되게 하는 임의의 처리를 포함할 수 있다.In addition, the processing performed by the first graphics processor 204 and / or the second graphics processor 208 may include decryption, decompression, post-processing, multiplexing, May include de-multiplexing, processing to provide error correction, packetization, de-packetization, graphics rendering, compositing, recompression, and / or re-encryption. However, it is not limited thereto. Of course, in the context of this description, such processing performed by the first graphics processor 204 and / or the second graphics processor 208 may, at least in part, cause any content to be transmitted and / or displayed over a network. May include processing of.

다른 선택적인 실시예에서, 제1 및/또는 제2 그래픽 프로세서는 서로 함께 동작하는 복수의 그래픽 프로세서 중 하나를 포함할 수 있다. 그러한 기술의 하나의 예는 NVIDIA SLI™ 기술이다. 관련된 실시예의 하나의 예에 관한 더 많은 정보에 대해서는, 참조로서 본 명세서에 그대로 포함되어 있는 2004년 11월 17일자로 출원된 출원 번호 10/990,712호를 참조하여 이해할 수 있다.In another alternative embodiment, the first and / or second graphics processor may include one of a plurality of graphics processors operating in conjunction with each other. One example of such technology is NVIDIA SLI ™ technology. For more information regarding one example of a related embodiment, reference may be made to application number 10 / 990,712, filed November 17, 2004, which is incorporated herein by reference in its entirety.

전술한 프레임워크가 사용자의 원함에 따라 구현되거나 구현되지 않을 수 있는 다양한 선택적인 아키텍처 및 특징에 관하여 보다 예시적인 정보가 이제 개시될 것이다. 이하의 정보는 예시의 목적으로 개시되고 어떤 방식으로든 제한적으로 해석되어서는 안 된다는 것을 명심해야 한다. 이하의 임의의 특징들은 기술된 다른 특징들을 배제하고 또는 배제하지 않고 선택적으로 포함될 수 있다.More exemplary information will now be disclosed with respect to various optional architectures and features in which the aforementioned framework may or may not be implemented as desired by a user. It should be borne in mind that the following information is disclosed for illustrative purposes and should not be construed in any way as restrictive. Any of the features below may be optionally included with or without the other features described.

도 3은 예시적인 일 실시예에 따른, 무선 네트워크 링크를 통해 통신되기 전에 콘텐츠를 처리하기 위한 시스템(300)을 도시한다. 선택으로서, 본 시스템(300)은 도 2의 시스템(200)의 원리들 하에서 구현될 수 있다. 그러나 물론, 시스 템(300)은 임의의 원하는 환경에서 구현될 수 있다. 또한 위의 정의들이 이하의 설명 중에 적용될 수 있다.3 illustrates a system 300 for processing content prior to being communicated over a wireless network link, according to one exemplary embodiment. Optionally, the system 300 may be implemented under the principles of the system 200 of FIG. 2. However, of course, system 300 may be implemented in any desired environment. In addition, the above definitions may be applied during the following description.

도시된 바와 같이, 일 실시예에서 시스템(300)은 컴퓨터(301)와 함께 작용할 수 있는 그래픽 프로세서(306)를 포함한다. 그러한 컴퓨터는 그래픽 프로세서(306)와 통신하는 메모리(302) 및 CPU(central processing unit)(304)를 포함할 수 있다.As shown, in one embodiment system 300 includes a graphics processor 306 that can work with computer 301. Such a computer may include a memory 302 and a central processing unit (CPU) 304 in communication with the graphics processor 306.

일 실시예에서, 그래픽 프로세서(306)는 도시된 바와 같이 복수의 모듈을 포함할 수 있다. 그러한 모듈들 각각은 심지어 단일 반도체 플랫폼에 위치하여 GPU(graphics processing unit)[예를 들면 개별적 GPU, 통합형 GPU(iGPU) 등]를 형성할 수 있다.In one embodiment, graphics processor 306 may include a plurality of modules as shown. Each of such modules may even be located on a single semiconductor platform to form a graphics processing unit (GPU) (eg, an individual GPU, an integrated GPU (iGPU), etc.).

본 설명에서, 단일 반도체 플랫폼은 단독의 단일 반도체 기반 집적 회로 또는 칩을 가리킬 수 있다. 단일 반도체 플랫폼이라는 용어는 온칩 동작을 시뮬레이트하여 종래의 CPU 및 버스 구현을 이용하는 것에 대해 상당한 개선을 가져오는, 증가된 접속성(connectivity)을 갖는 멀티 칩 모듈(multi-chip module)들을 가리킬 수도 있다는 것을 주목해야 한다. 물론, 사용자의 원함에 따라 다양한 모듈이 개별적으로 위치하거나 다양한 조합의 반도체 플랫폼에 위치할 수도 있다.In the present description, a single semiconductor platform may refer to a single single semiconductor based integrated circuit or chip. The term single semiconductor platform may refer to multi-chip modules with increased connectivity, simulating on-chip operation, resulting in significant improvements over using conventional CPU and bus implementations. It should be noted. Of course, various modules may be individually located or various combinations of semiconductor platforms according to a user's desire.

도 3을 계속 참조하면, 그래픽 프로세서(306)는 암호해독/압축해제 모듈(308), 후처리 모듈(310), 그래픽 렌더링 모듈(312), 합성 모듈(314), 재압축 모듈(316), 재암호화 모듈(318), 다중화기/오류 정정/패킷화 모듈(320), 및 인터페이스(322)를 포함하는 복수의 모듈을 포함한다. 이들 다양한 모듈을 사용하는(및 사 용하지 않는) 다양한 조합이 아래에 개시되지만, 콘텐츠 및/또는 처리 관련 요건들에 따라, 적절한 경우, 임의의 하나 이상의 앞서 말한 모듈들이 송신기 및/또는 수신기의 문맥에서 포함 및/또는 사용되거나 그렇지 않을 수 있다는 것을 명심해야 한다.With continued reference to FIG. 3, the graphics processor 306 may include the decryption / decompression module 308, the post processing module 310, the graphics rendering module 312, the synthesis module 314, the recompression module 316, A plurality of modules including a re-encryption module 318, a multiplexer / error correction / packetization module 320, and an interface 322. While various combinations using (and not using) these various modules are disclosed below, depending on the content and / or processing related requirements, any one or more of the aforementioned modules may, where appropriate, be used in the context of the transmitter and / or receiver. It should be borne in mind that it may or may not be included and / or used in the present application.

사용시, 암호해독/압축해제 모듈(308)은 콘텐츠원으로부터의 콘텐츠를 수신한다(예를 들어, 도 2의 콘텐츠원(202) 등 참조). 그러한 콘텐츠가 암호화 및/또는 압축되는 실시예에서, 암호해독/압축해제 모듈(308)은 추가의 처리를 위해 그러한 콘텐츠를 암호해독 및/또는 압축해제하는 기능을 한다. 예를 들어, 콘텐츠가 MPEG-포매팅된 비디오를 포함하는 경우에, 그러한 포매팅(formatting)은 압축해제 등이 될 수도 있다. 또한, 모듈(308)은 곧 명백하게 될 이유들을 위해, 그래픽 데이터로부터 임의의 비디오를 분리하는 기능을 할 수도 있다.In use, the decryption / decompression module 308 receives content from the content source (see, for example, content source 202, etc. of FIG. 2). In embodiments in which such content is encrypted and / or compressed, decryption / decompression module 308 functions to decrypt and / or decompress such content for further processing. For example, if the content includes MPEG-formatted video, such formatting may be decompression or the like. In addition, module 308 may function to separate any video from the graphic data for reasons that will soon become apparent.

선택 사항으로서(특히, 콘텐츠가 비디오를 포함하는 경우), 후처리 모듈(310)은 바람직할 수 있는 임의의 원하는 후처리를 위해 기능할 수 있다. 그러한 후처리는 픽셀 처리, 비디오 처리(예를 들어, 감마 보정, 움직임 추정 또는 보상, 압축해제, 컬러 공간 제어, 휘도, 채도, 컬러 온도 보정, 선명화, 오버레이 처리, 스케일링, 인코딩, 디인터레이싱(de-interlacing), 업/다운 스케일링 등) 등을 포함할 수 있으나 이에 제한되지 않는다. 후처리 모듈(310)에 의해 임의 유형의 후처리가 수행될 수 있기 때문에, 이러한 예들은 단지 예시적인 목적으로 개시되며 임의의 방식으로 제한적으로 해석되어서는 안 된다.Optionally (particularly where the content comprises video), the post processing module 310 may function for any desired post processing that may be desirable. Such post-processing may include pixel processing, video processing (e.g., gamma correction, motion estimation or compensation, decompression, color space control, luminance, saturation, color temperature correction, sharpening, overlay processing, scaling, encoding, deinterlacing (de). -interlacing), up / down scaling, etc.), but is not limited thereto. Since any type of post-processing may be performed by the post-processing module 310, these examples are disclosed for illustrative purposes only and should not be construed as limiting in any way.

부가적인 선택 사항으로서, 콘텐츠가 그래픽 프로세서(306)의 그래픽 처리 능력들을 도입할 수 있는 그래픽 데이터를 포함하면, 콘텐츠는 픽셀 셰이딩(pixel shading), 텍스처 셰이딩 등을 포함하나 이에 제한되지 않는 임의 유형의 그래픽 처리를 위한 그래픽 렌더링 모듈(312)에 입력될 수 있다. 예를 들어, EPG(electronic programming guide) 정보는 비디오와 함께 통합될 수 있고, 여기서 이러한 EPG 정보는 상술된 그래픽 처리의 대상이 될 수 있다. As an additional option, if the content includes graphics data that can introduce the graphics processing capabilities of the graphics processor 306, the content can be of any type including, but not limited to, pixel shading, texture shading, and the like. It may be input to the graphics rendering module 312 for graphics processing. For example, electronic programming guide (EPG) information may be integrated with video, where such EPG information may be subject to the graphic processing described above.

콘텐츠가 별도의 그래픽 데이터(존재하는 경우) 및 비디오(예를 들어, 분리된 스트림들에서) 및 이용가능한 대역폭 허가들을 포함하는 것이 바람직하다면, 각종 예시된 모듈들 중 하나 이상은 다중화기/오류 정정 관련 처리/패킷화 모듈(320)(더 상세하게 후술될 것임)로 바이패스하기 위해 스킵될 수 있다. 경로 313을 참조한다. 또한, 어떠한 후처리, 그래픽 렌더링 등이 요구되거나 바람직하지 않고, 이에 따라 암호해독/압축해제 모듈(308)이 그러한 처리 없이 콘텐츠를 단순히 넘길 수 있는 경우의 동작 모드가 고려된다는 것에 주목해야 한다.If it is desired for the content to include separate graphical data (if present) and video (eg in separate streams) and available bandwidth grants, then one or more of the various illustrated modules may be multiplexer / error corrected. It may be skipped to bypass to the associated processing / packetizing module 320 (which will be described in more detail below). See route 313. It should also be noted that no post-processing, graphics rendering, etc. are required or desirable, and thus the mode of operation is considered where the decryption / decompression module 308 can simply pass content without such processing.

한편, 그래픽 데이터 및 비디오가 (예를 들어, 단일 스트림 등에서) 혼합되면, 그래픽 렌더링 모듈(312)의 출력은 합성 모듈(314)로 입력될 수 있다. 이와 같이, 합성 모듈(314)은 임의의 압축되지 않은 비디오 콘텐츠를 결과로서의 그래픽 데이터와 합성하는 기능을 할 수 있다. 그러한 합성된 콘텐츠는 임의의 형태를 취할 수 있으며, 일부 실시예들에서는, 합성 NTSC(National Television System Committee) 포맷, PAL(phase alternating line) 포맷, Y/C(S-비디오) 포맷, SECAM(sequential couleur avec memoire) 포맷, HDTV(high definition television) 포맷, ATSC(Advanced Television Systems Committee) 포맷, 압축될 수 있는 임의의 디지털 텔레비전 포맷, 및/또는 비디오, 그래픽 데이터, 및/또는 비디오와 그래픽 데이터의 조합을 포함할 수 있는 다른 포맷을 포함할 수 있다.On the other hand, if graphics data and video are mixed (eg, in a single stream, etc.), the output of graphics rendering module 312 may be input to synthesis module 314. As such, the compositing module 314 may function to synthesize any uncompressed video content with the resulting graphic data. Such synthesized content may take any form, and in some embodiments, the synthesized National Television System Committee (NTSC) format, phase alternating line (PAL) format, Y / C (S-video) format, SECAM (sequential) couleur avec memoire format, high definition television (HDTV) format, Advanced Television Systems Committee (ATSC) format, any digital television format that can be compressed, and / or video, graphic data, and / or a combination of video and graphic data It may include other formats that may include.

이 때문에, 혼합된 그래픽 데이터 및 비디오는 재압축 모듈(316)에 의해 재압축될 수 있고 또한 재암호화 모듈(318)에 의해 재암호화될 수 있다. 그러한 재압축/재암호화는 다양한 실시예들에서 유익하도록 기능할 수 있다. 예를 들어, 콘텐츠가 고해상 채널을 통해 통신되는 실시예에서(예를 들어, 처리율이 1920x1080x24x60=3.3 Gb/s인 경우), 그러한 재압축/재암호화는 그래픽 데이터 등이 그러한 매체를 통해 잘 통신될 수 있도록 보장하는 기능을 할 수 있다. Because of this, the mixed graphic data and video can be recompressed by the recompression module 316 and can also be re-encrypted by the re-encryption module 318. Such recompression / re-encryption may function to benefit various embodiments. For example, in embodiments where content is communicated over a high resolution channel (e.g., where throughput is 1920x1080x24x60 = 3.3 Gb / s), such recompression / re-encryption may cause graphics data or the like to be well communicated through such media. To ensure that it can

또한, 콘텐츠가 그러한 모듈들로부터 입력되든 또는 암호해독/압축해제 모듈(308)/후처리 모듈(310)로부터 직접 입력되든, 콘텐츠는 멀티플렉서/오류 정정 관련 처리/패킷화 모듈(320)에 의해 처리된다. 특히, 그러한 모듈(320)은 임의의 이용가능한 패리티 정보를 이용하여 오류 정정을 제공하고, 콘텐츠를 패킷화하여 인터페이스(322)를 통해 결과로서의 패킷들이 다중화될 수 있는 임의의 원하는 처리를 수행하는 기능을 한다.In addition, whether content is input from such modules or directly from decryption / decompression module 308 / post-processing module 310, the content is processed by multiplexer / error correction related processing / packetization module 320. do. In particular, such a module 320 provides the ability to provide error correction using any available parity information, packetize the content and perform any desired processing through the interface 322 where the resulting packets can be multiplexed. Do it.

또한 무선 네트워크(325)를 통해 콘텐츠를 전달하여 그러한 콘텐츠가 디스플레이(326)를 이용하여 표시될 수 있도록 그래픽 프로세서(306)와 통신하는 송신기(324)가 포함된다. 각종 실시예들에서는, 그러한 송신기(324)는 UWB 기술, WUSB 기술, WiMedia 기술 등을 이용하는 무선 네트워크 링크를 채용할 수도 있다. 또한, 그러한 디스플레이(326)에 관한 보다 많은 정보는 도 4를 참조하는 동안 더 상세히 개시될 것이다.Also included is a transmitter 324 that communicates with the graphics processor 306 to deliver content over the wireless network 325 so that such content can be displayed using the display 326. In various embodiments, such a transmitter 324 may employ a wireless network link using UWB technology, WUSB technology, WiMedia technology, or the like. Also, more information about such display 326 will be disclosed in more detail while referring to FIG. 4.

상술된 바와 같이, 그래픽 프로세서(306)에 의해 수행되는 처리는 동적으로 적응될 수 있다. 또한, 그러한 처리는 대역폭, 원하는 QoS(quality of service), (후술될) 제2 그래픽 프로세서에 의해 수행되는 처리 유형 또는 처리량, 및/또는 임의의 다른 원하는 요인의 함수로서 적응될 수 있다. 이러한 특징을 용이화하기 위해, 송신기(324)로부터의 피드백이 도시된 방식으로, 그래픽 프로세서(306)의 적절한 모듈(들)에 다시 통신될 수 있다.As described above, the processing performed by the graphics processor 306 may be dynamically adapted. Such processing may also be adapted as a function of bandwidth, desired quality of service (QoS), type or throughput of processing performed by the second graphics processor (to be described later), and / or any other desired factor. To facilitate this feature, feedback from the transmitter 324 may be communicated back to the appropriate module (s) of the graphics processor 306 in the manner shown.

예를 들어, 송신기(324)가 이용가능한 대역폭의 변경을 검출하면, 송신기(324)는 재압축 모듈(316) 및/또는 재암호화 모듈(318)에게 보다 진보된 압축/암호화 알고리즘을 이용하여 그러한 변경을 조정하라고 지시할 수 있다. 물론, 그러한 변경은 보다 많은 처리 사이클 등의 희생을 가져올 수도 있다. 원하는 QoS 변경 등에 응답하여 마찬가지의 적응성이 나타날 수 있다. 그러한 동적인 적응성에 관한 보다 많은 정보는 도 5를 참조하는 동안 보다 상세히 개시될 것이다.For example, if transmitter 324 detects a change in the available bandwidth, transmitter 324 may use a more advanced compression / encryption algorithm to recompress module 316 and / or re-encryption module 318. You can instruct them to adjust the change. Of course, such a change may result in more processing cycles or the like. Similar adaptation may appear in response to a desired QoS change or the like. More information regarding such dynamic adaptation will be disclosed in more detail while referring to FIG. 5.

도시되지는 않지만, 시스템(300)은 또한 보조 저장장치를 포함할 수 있다. 보조 저장장치는 예를 들어 하드 디스크 및/또는 착탈가능 저장장치(플로피 디스크, 자기 디스크, 컴팩트 디스크, DVD, 고체 상태 저장장치(예를 들어, 플래시 메모리) 등을 나타냄)를 포함할 수 있다. 사용시, 착탈가능 저장장치 드라이브는 공지되어 있는 방식으로 착탈가능 저장장치로부터 판독을 하거나 및/또는 그에 대해 기입을 한다.Although not shown, system 300 may also include secondary storage. Secondary storage may include, for example, hard disks and / or removable storage (representing floppy disks, magnetic disks, compact disks, DVDs, solid state storage (eg, flash memory), and the like). In use, the removable storage drive reads from and / or writes to the removable storage in known manner.

컴퓨터 프로그램들, 또는 컴퓨터 제어 로직 알고리즘은 시스템 메모리(302) 및/또는 보조 저장장치 내에 저장될 수 있다. 그러한 컴퓨터 프로그램들은, 실행 될 때, 시스템(300)이 각종 기능들을 수행하는 것을 가능하게 한다. 시스템 메모리(302), 저장장치 및/또는 임의의 다른 저장장치는 컴퓨터-판독가능 매체의 가능한 예들이다.Computer programs, or computer controlled logic algorithms, may be stored in system memory 302 and / or secondary storage. Such computer programs, when executed, enable the system 300 to perform various functions. System memory 302, storage and / or any other storage device are possible examples of computer-readable media.

일 실시예에서, 본원에 개시된 각종 기능은 CPU(304), 칩셋(예를 들어, 관련 기능들을 수행하기 위한 유닛으로서 작용하도록 설계되고 판매되는 집적 회로들의 그룹 등), 및/또는 그에 관련한 임의의 다른 집적 회로의 문맥에서 부분적으로 구현될 수 있다. 또한, 본원에 개시된 아키텍처 및/또는 기능은, 일반적인 컴퓨터 시스템, 회로 보드 시스템, 오락 전용 게임 콘솔 시스템, 애플리케이션 특정 시스템, 및/또는 그에 관련한 임의의 다른 원하는 시스템의 문맥에서 구현될 수 있다.In one embodiment, the various functions disclosed herein may include a CPU 304, a chipset (eg, a group of integrated circuits designed and sold to act as a unit for performing related functions, and / or any associated therewith). It may be implemented in part in the context of other integrated circuits. In addition, the architectures and / or functions disclosed herein may be implemented in the context of general computer systems, circuit board systems, entertainment-only game console systems, application specific systems, and / or any other desired system related thereto.

도 4는 다른 예시적인 실시예에 따른, 무선 네트워크 링크를 통해 통신된 후에 콘텐츠를 처리하기 위한 시스템(400)을 도시한다. 선택 사항으로서, 본 시스템(400)은 도 2의 시스템(200)의 원리 하에서 구현될 수도 있다. 그러나, 물론, 시스템(400)은 임의의 원하는 환경에서 구현될 수도 있다. 여전히, 상기 정의들은 다음의 설명 중에 적용된다.4 illustrates a system 400 for processing content after being communicated over a wireless network link, according to another example embodiment. Optionally, the system 400 may be implemented under the principles of the system 200 of FIG. 2. However, of course, system 400 may be implemented in any desired environment. Still, the above definitions apply during the following description.

도시된 바와 같이, 무선 네트워크(425)를 통해 시스템(400)에 콘텐츠를 통신하기 위해 작동하는 컴퓨터 시스템(404)이 포함된다. 일 실시예에서, 그러한 컴퓨터 시스템(404)은 도 3의 시스템(300)을 포함할 수 있다. 시스템(400)은 수신기(406)를 통해 네트워크(425)와 통신하는 그래픽 프로세서(408)를 포함하도록 예시된다. 선택 사항으로서, 시스템(400)은 디스플레이(402)의 형태를 취할 수 있고, 그래픽 프로세서(408)는 거기에 통합될 수 있다.As shown, computer system 404 is included that operates to communicate content to system 400 via wireless network 425. In one embodiment, such computer system 404 may include system 300 of FIG. 3. System 400 is illustrated to include a graphics processor 408 in communication with network 425 via receiver 406. Optionally, the system 400 may take the form of a display 402, and the graphics processor 408 may be integrated therein.

계속해서 도 4를 참조하면, 그래픽 프로세서(408)는 역다중화기/오류 정정-관련 처리/역패킷화 모듈(410), 그래픽 암호해독/압축해제 모듈(412), 비디오 압축해제 모듈(414), 후처리 모듈(416), 합성 모듈(418), 및 디지털 출력부(420)를 포함한다.With continued reference to FIG. 4, the graphics processor 408 includes a demultiplexer / error correction-related processing / depacketizing module 410, a graphics decryption / decompression module 412, a video decompression module 414, Post-processing module 416, synthesizing module 418, and digital output 420.

사용 시에, 콘텐츠는 수신기(406)로부터, 도 3의 다중화기/오류 정정-관련 처리/패킷화 모듈(320)의 기능에 상보적인 기능을 수행하는 역다중화기/오류 정정-관련 처리/역패킷화 모듈(410)에 제공된다. 구체적으로, 콘텐츠는 오류 정정 능력을 제공하도록 처리될 수 있고, 역패킷화될 수 있고, 또한 역다중화될 수 있다. 또한, 임의의 비디오가 그래픽 암호해독/압축해제 모듈(412)을 통한 암호해독 및/또는 압축해제 후에 임의의 그래픽 데이터로부터 분리될 수 있거나 혹은 분리되지 않을 수 있다.In use, the content is transmitted from the receiver 406 to a demultiplexer / error correction-related process / depacket that performs a function complementary to that of the multiplexer / error correction-related process / packetization module 320 of FIG. It is provided to the module 410. Specifically, content can be processed, depacketized, and demultiplexed to provide error correction capabilities. In addition, any video may or may not be separated from any graphics data after decryption and / or decompression via graphics decryption / decompression module 412.

선택 사항으로서, 그래픽 데이터 및 비디오는 결합된 채로(즉, 단일 스트림 등으로) 남아 있을 수 있고, 이 시점에서 표시 목적으로 디지털 출력부(420)로 직접 전송될 수 있다. 경로 413을 참조한다. 한편, 임의의 비디오의 처리는 비디오 압축해제 모듈(414)을 이용하여 비디오를 압축해제함으로써 진행될 수 있다. 콘텐츠가 성질상 고급인 다양한 실시예들에서, 그러한 비디오 압축해제는 AACS(Advanced Access Content System)/WM-DRM(Windows media-digital rights management), COPPP-컴플라이언트 DRM 등을 지원하기 위해 기능할 수 있다.Optionally, the graphics data and video may remain combined (ie, in a single stream, etc.) and may be sent directly to the digital output 420 for display purposes at this point. See route 413. Meanwhile, the processing of any video may proceed by decompressing the video using the video decompression module 414. In various embodiments where the content is advanced in nature, such video decompression may function to support Advanced Access Content System (AACS) / Windows media-digital rights management (WM-DRM), COPPP-compliant DRM, and the like. have.

그러나, 후처리는 후처리 모듈(416)을 이용하여 선택적으로 수행될 수 있다. 물론, 그러한 후처리는 도 3의 유사한 모듈(310)의 설명 중에 상기에서 언급된 임 의의 처리를 포함할 수 있다.However, post-processing can optionally be performed using post-processing module 416. Of course, such post processing may include any of the processing mentioned above in the description of similar module 310 of FIG. 3.

또한, 앞서 언급한 바와 같이, 도 3의 그래픽 프로세서(306)에 의해 수행되는 처리의 제1 양은 그래픽 프로세서(408)에 의해 수행되는 처리의 제2 양의 역함수일 수 있다. 예를 들어, 필요한 후처리는 각 후처리 모듈들(310, 416) 사이에서 공유될 수 있고, 또한 처리되는 비디오에 대한 임의의 차이들에 대해 적응될 수도 있다. 또한, 합성 모듈(418)은 도 3의 유사 모듈(314)과 유사한 기능을 수행할 수 있다.Also, as mentioned above, the first amount of processing performed by the graphics processor 306 of FIG. 3 may be an inverse of the second amount of processing performed by the graphics processor 408. For example, the necessary post-processing may be shared between each post-processing modules 310, 416, and may also be adapted for any differences to the video being processed. In addition, the synthesis module 418 may perform a function similar to the similar module 314 of FIG. 3.

앞서 언급한 바와 같이, 콘텐츠/처리-관련 요건들에 따라, 도 3 및 도 4의 그래픽 프로세서들 각각의 선행 모듈들 중 임의의 하나 이상이 사용될 수도 있고 혹은 사용되지 않을 수도 있다. 구체적으로, 사용 동안, 그래픽 프로세서들의 적어도 하나 이상의 모듈들은 후속으로 표시될 네트워크를 통한 콘텐츠의 통신을 지원하기 위해 선택될 수 있다. 그러한 동적 적응성에 관한 더 많은 정보가 이제 설명될 것이다.As mentioned above, depending on content / processing-related requirements, any one or more of the preceding modules of each of the graphics processors of FIGS. 3 and 4 may or may not be used. Specifically, during use, at least one or more modules of graphics processors may be selected to support communication of content over a network to be subsequently displayed. More information about such dynamic adaptation will now be described.

도 5는 예시적인 일 실시예에 따른, 표시 목적으로 무선 네트워크 링크를 통해 통신되는 콘텐츠를 동적으로 처리하기 위한 방법(500)을 도시한다. 선택 사항으로서, 본 방법(500)은 도 2의 시스템(200)의 원리들 하에서 구현될 수 있다. 그러나, 물론, 방법(500)은 임의의 원하는 환경에서 구현될 수 있다. 예를 들어, 방법(500)은 하나의 그래픽 프로세서(예를 들면, 도 2의 제1 그래픽 프로세서(204) 및/또는 제2 그래픽 프로세서(208) 등을 참조)의 문맥에서만 구현될 수 있다는 것이 고려된다. 5 illustrates a method 500 for dynamically processing content communicated over a wireless network link for display purposes, according to one exemplary embodiment. Optionally, the method 500 may be implemented under the principles of the system 200 of FIG. 2. However, of course, the method 500 may be implemented in any desired environment. For example, the method 500 may be implemented only in the context of one graphics processor (see, for example, the first graphics processor 204 and / or the second graphics processor 208, etc. of FIG. 2). Is considered.

도시된 바와 같이, 콘텐츠는 복수의 모듈들을 포함하는 그래픽 프로세서에서 수신된다. 동작 502를 참조한다. 예를 들어, 그래픽 프로세서가 도 2의 제1 그래픽 프로세서(204) 등을 포함하는 일 실시예에 있어서, 다양한 모듈들은, (앞서 설명한 바와 같은) 암호화 모듈, 압축 모듈, 암호해독 모듈, 압축해제 모듈, 후처리 모듈, 그래픽 처리 모듈, 및/또는 합성 모듈 중의 하나 이상을 포함할 수 있다. 그러한 실시예에서, 그래픽 프로세서는 관련 컴퓨터와 통합될 수 있거나 관련 컴퓨터로부터 분리되어 있을 수 있다.As shown, the content is received at a graphics processor that includes a plurality of modules. See operation 502. For example, in one embodiment where the graphics processor includes the first graphics processor 204 of FIG. 2, or the like, the various modules may be a cryptographic module, a compression module, a decryption module, a decompression module (as described above). , Post-processing module, graphics processing module, and / or compositing module. In such embodiments, the graphics processor may be integrated with or separate from the associated computer.

그래픽 프로세서가 도 2의 제2 그래픽 프로세서(208) 등을 포함하는 다른 실시예에 있어서, 다양한 모듈들은, (앞서 설명한 바와 같은) 암호해독 모듈, 압축해제 모듈, 역패킷화 모듈, 후처리 모듈, 역다중화 모듈, 합성 모듈, 및 오류 정정 관련 처리 모듈 중 하나 이상을 포함할 수 있다. 본 실시예에서, 그래픽 프로세서는 연관된 디스플레이와 통합될 수 있거나, 혹은 연관된 디스플레이로부터 분리되어 있을 수 있다.In other embodiments where the graphics processor includes the second graphics processor 208 of FIG. 2, etc., the various modules may be decoded (as described above), decompressed modules, depacketized modules, post-processing modules, One or more of a demultiplexing module, a synthesis module, and an error correction related processing module. In this embodiment, the graphics processor may be integrated with the associated display or may be separate from the associated display.

계속해서 도 5를 참조하면, 콘텐츠의 설명될 처리에 영향을 미치는 요인이 식별된다. 동작 504를 참조한다. 앞서 언급한 바와 같이, 그러한 요인은 대역폭, 원하는 서비스 품질(QoS), 콘텐츠 또는 디스플레이의 적어도 하나의 양상(예를 들면, 포맷, 사이즈 등), 다른 그래픽 프로세서(존재한다면)에 의해 수행되는 처리의 유형 또는 양, 및/또는 임의의 다른 원하는 요인을 포함할 수 있다. 또한, 선택 사항으로서, 다양한 피드백이 상기 요인을 제공하기 위해 이용될 수 있다.With continued reference to FIG. 5, factors influencing the process to be described for content are identified. See operation 504. As mentioned above, such factors may be related to bandwidth, desired quality of service (QoS), at least one aspect of content or display (e.g., format, size, etc.), or processing performed by other graphics processors (if present). Type or amount, and / or any other desired factor. Also, as an option, various feedbacks may be used to provide the factors.

이를 위해, 그래픽 프로세서의 하나 이상의 모듈들이 네트워크를 통한 통신 및/또는 디스플레이를 이용하는 콘텐츠의 후속의 표시를 지원하기 위해 콘텐츠를 처리하기 위하여 동적으로 선택될 수 있다. 동작 506을 주목한다. 그러한 처리는 네트워크의 어느 말단에 그래픽 프로세서가 존재하느냐에 따라 변화할 수 있다는 점에 유의한다.To this end, one or more modules of the graphics processor may be dynamically selected to process the content to support subsequent display of the content using communication and / or display over the network. Note the operation 506. Note that such processing may vary depending on which end of the network the graphics processor is present at.

예를 들어, 그래픽 프로세서가 도 2의 제1 그래픽 프로세서(204) 등을 포함하는 앞서 언급된 실시예에 있어서, 처리는 네트워크를 통한 전송을 위한 콘텐츠를 준비하는 것을 수반할 수 있다. 또한, 선택된 모듈들에 의해 수행되는 그러한 처리는 암호해독, 압축해제, 후처리, 다중화, 오류 정정을 제공하는 처리, 패킷화, 그래픽 렌더링, 합성, 재압축, 및/또는 재암호화를 포함할 수 있다.For example, in the above-mentioned embodiment, where the graphics processor includes the first graphics processor 204 of FIG. 2 or the like, processing may involve preparing content for transmission over a network. In addition, such processing performed by selected modules may include decryption, decompression, post-processing, multiplexing, processing to provide error correction, packetization, graphic rendering, compositing, recompression, and / or re-encryption. have.

또한, 그래픽 프로세서가 도 2의 제2 그래픽 프로세서(208) 등을 포함하는 앞서 언급된 실시예에 있어서, 처리는 디스플레이를 이용하여 표시하기 위한 콘텐츠를 수신하고 준비하는 것을 수반할 수 있다. 또한, 선택된 모듈들에 의해 수행되는 그러한 처리는 암호해독, 압축해제, 역패킷화, 후처리, 역다중화, 합성, 및/또는 오류 정정을 제공하는 처리를 포함할 수 있다.In addition, in the above-mentioned embodiment, where the graphics processor includes the second graphics processor 208 of FIG. 2 or the like, processing may involve receiving and preparing content for display using a display. In addition, such processing performed by selected modules may include processing to provide decryption, decompression, depacketization, post-processing, demultiplexing, synthesis, and / or error correction.

물론, 디스플레이를 이용하는 후속 표시를 위한 네트워크를 통한 콘텐츠의 통신을 지원할 수 있는 완전히 임의의 타입의 모듈 및 연관된 처리가 상술한 방식으로 제공될 수 있고 동적으로 선택될 수 있다.Of course, any type of module and associated processing that can support the communication of content over a network for subsequent display using a display can be provided and dynamically selected in the manner described above.

따라서, 현재의 요건에 따라, 다양한 시나리오들이 도모될 수 있다. 예를 들어, 인입되는 압축된 콘텐츠는 암호해독/압축해제될 수 있거나 또는 그렇지 않을 수 있으며, 그러한 경우, 다양한 추가 처리(예를 들어, 그래픽 처리, 합성 등)가 수행될 수 있거나 또는 수행되지 않을 수 있다. 또한, 이러한 선택들 모두는 QoS 요건들, 네트워크 한계들(예를 들어, 대역폭 등), 수신된 콘텐츠 포맷, 네트워크 전송을 위한 콘텐츠의 원하는 포맷, 사용자 구성들/요건들 등을 포함하지만 이것으로 한정되지 않는 임의의 원하는 요인의 함수로서 실행될 수 있다.Thus, according to current requirements, various scenarios can be envisioned. For example, incoming compressed content may or may not be decrypted / decompressed, in which case various additional processing (eg, graphics processing, compositing, etc.) may or may not be performed. Can be. In addition, all of these choices include, but are not limited to, QoS requirements, network limits (eg, bandwidth, etc.), received content format, desired format of content for network transmission, user configurations / requirements, and the like. May be implemented as a function of any desired factor that is not.

하나의 특정 예의 문맥에서, 콘텐츠는 어떠한 원하는 추가 처리도 필요하지 않은(예를 들어, 모든 대역폭, QoS 등의 요건들이 충족되는 등) 압축/암호화된 포맷으로 수신될 수 있다. 이러한 경우, 콘텐츠는 반드시 암호해독/압축해제될 필요가 없을 수 있고, 단순히 전송될 수 있다. 다른 실시예에서, 암호해독/압축해제된 콘텐츠는 추가 처리를 필요로 할 수 있으며, 따라서 후처리, 그래픽 처리 등이 수행될 수 있도록 암호해독/압축해제될 수 있다. 그 시점에서, 재압축/압축해제는 관련된 필요들에 기초하여 수행될 수 있거나 또는 수행되지 않을 수도 있다.In the context of one particular example, content may be received in a compressed / encrypted format that does not require any desired additional processing (eg, all bandwidth, QoS, etc. requirements are met). In such a case, the content may not necessarily need to be decrypted / decompressed, but simply transmitted. In other embodiments, decrypted / decompressed content may require further processing, and thus may be decrypted / decompressed so that post-processing, graphics processing, and the like can be performed. At that point, recompression / decompression may or may not be performed based on the related needs.

이상, 다양한 실시예들이 설명되었지만, 이들 실시예들은 한정하기 위한 것이 아니라 예시의 목적으로 제공된 것임을 이해해야 한다. 그러므로, 바람직한 실시예의 범위는 전술한 예시적인 실시예들 중 임의의 것에 의해 한정되어서는 안 되며, 다음의 청구항들 및 그 등가물들에 따라서만 정의되어야 한다.While various embodiments have been described above, it should be understood that these embodiments are provided for purposes of illustration and not of limitation. Therefore, the scope of the preferred embodiment should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

도 1a는 종래 기술에 따른, 그래픽/비디오 처리를 위한 시스템을 도시하는 도면.1A illustrates a system for graphics / video processing, according to the prior art;

도 1b는 종래 기술에 따른, 무선 네트워크의 문맥에서 그래픽/비디오 처리를 위한 시스템을 도시하는 도면.1B illustrates a system for graphics / video processing in the context of a wireless network, in accordance with the prior art;

도 2는 일 실시예에 따른, 표시 목적으로 네트워크를 통해 통신되는 콘텐츠를 처리하는 시스템을 도시하는 도면.2 illustrates a system for processing content communicated over a network for display purposes, according to one embodiment.

도 3은 일 예시적인 실시예에 따른, 무선 네트워크 링크를 통해 통신되기 전에 콘텐츠를 처리하는 시스템을 도시하는 도면.3 illustrates a system for processing content prior to being communicated over a wireless network link, according to one exemplary embodiment.

도 4는 다른 예시적인 실시예에 따른, 무선 네트워크 링크를 통해 통신된 후에 콘텐츠를 처리하는 시스템을 도시하는 도면.4 illustrates a system for processing content after being communicated over a wireless network link, in accordance with another exemplary embodiment.

도 5는 일 예시적인 실시예에 따른, 표시 목적으로 무선 네트워크 링크를 통해 통신되는 콘텐츠를 동적으로 처리하는 방법을 도시하는 도면.5 illustrates a method of dynamically processing content communicated over a wireless network link for display purposes, in accordance with an exemplary embodiment.

<도면 부호의 간단한 설명>&Lt; Brief Description of Drawings &

100, 200, 300, 400: 시스템100, 200, 300, 400: system

102: 그래픽 프로세서102: graphics processor

104, 210, 402: 디스플레이104, 210, 402: display

106, 206, 425: 네트워크106, 206, 425: network

202: 콘텐츠원202: content source

204: 제1 그래픽 프로세서204: a first graphics processor

208: 제2 그래픽 프로세서208: second graphics processor

302: 시스템 메모리302: system memory

404: 컴퓨터 시스템404: computer system

406: 수신기406: receiver

408: 그래픽 프로세서408: graphics processor

Claims (24)

시스템으로서,As a system, 콘텐츠원과 통신하며, 상기 콘텐츠원으로부터의 콘텐츠를 처리하기 위한 제1 그래픽 프로세서; 및A first graphics processor in communication with a content source and for processing content from the content source; And 네트워크를 통해 상기 제1 그래픽 프로세서와 통신하며, 표시 목적으로 상기 콘텐츠를 처리하기 위한 제2 그래픽 프로세서를 포함하고,A second graphics processor in communication with the first graphics processor via a network, the second graphics processor for processing the content for display purposes, 상기 제1 그래픽 프로세서에 의해 수행되는 제1 처리량은, 상기 제2 그래픽 프로세서에 의해 수행되는 제2 처리량의 역함수인,Wherein the first throughput performed by the first graphics processor is an inverse of the second throughput performed by the second graphics processor 시스템.system. 제1항에 있어서,The method of claim 1, 상기 제1 그래픽 프로세서 및 상기 제2 그래픽 프로세서 중 적어도 하나는 그래픽 처리 유닛을 포함하는 시스템.At least one of the first graphics processor and the second graphics processor includes a graphics processing unit. 제1항에 있어서,The method of claim 1, 상기 제1 그래픽 프로세서 및 상기 제2 그래픽 프로세서는 상기 제1 그래픽 프로세서 및 상기 제2 그래픽 프로세서 각각에 의해 수행되는 처리량(amounts of processing)에 있어 비대칭인 시스템.Wherein the first graphics processor and the second graphics processor are asymmetrical in the amounts of processing performed by each of the first graphics processor and the second graphics processor. 제1항에 있어서,The method of claim 1, 상기 네트워크는 무선 네트워크를 포함하는 시스템.The network includes a wireless network. 제4항에 있어서,The method of claim 4, wherein 상기 제2 그래픽 프로세서와 통신하는 수신기에 의해 수신되도록 상기 콘텐츠를 상기 무선 네트워크를 통해 전송하기 위해 상기 제1 그래픽 프로세서와 통신하는 송신기를 더 포함하는 시스템.And a transmitter in communication with the first graphics processor for transmitting the content over the wireless network to be received by a receiver in communication with the second graphics processor. 제1항에 있어서,The method of claim 1, 상기 제1 그래픽 프로세서에 의해 수행되는 상기 처리는, 암호해독, 압축해제, 후처리, 다중화, 오류 정정을 제공하는 처리, 패킷화(packetization), 그래픽 렌더링(graphics rendering), 합성, 재압축, 및 재암호화로 이루어지는 그룹으로부터 선택되는 시스템.The processing performed by the first graphics processor may include decryption, decompression, post-processing, multiplexing, processing to provide error correction, packetization, graphics rendering, synthesis, recompression, and System selected from the group consisting of re-encryption. 제1항에 있어서,The method of claim 1, 상기 제1 그래픽 프로세서에 의해 수행되는 상기 처리는, 암호해독, 압축해제, 후처리, 다중화, 오류 정정을 제공하는 처리, 패킷화, 그래픽 렌더링, 합성, 재압축, 및 재암호화를 포함하는 시스템.The processing performed by the first graphics processor includes decryption, decompression, post-processing, multiplexing, processing to provide error correction, packetization, graphics rendering, synthesis, recompression, and re-encryption. 제1항에 있어서,The method of claim 1, 상기 제1 그래픽 프로세서에 의해 수행되는 상기 처리는, 대역폭, 서비스 품질(QoS), 콘텐츠 또는 디스플레이의 적어도 하나의 양상, 상기 제2 그래픽 프로세서에 의해 수행되는 처리 유형 또는 처리량을 포함하는 그룹으로부터 선택되는 하나 이상의 요인에 따라 동적으로 적응가능한 시스템.The processing performed by the first graphics processor is selected from the group comprising bandwidth, quality of service (QoS), at least one aspect of content or display, type of processing or throughput performed by the second graphics processor. A system that is dynamically adaptable to one or more factors. 제1항에 있어서,The method of claim 1, 상기 제2 그래픽 프로세서에 의해 수행되는 상기 처리는, 암호해독, 압축해제, 역패킷화(de-packetization), 후처리, 역다중화(de-multiplexing), 합성, 및 오류 정정을 제공하는 처리로 이루어지는 그룹으로부터 선택되는 시스템.The processing performed by the second graphics processor consists of processing to provide decryption, decompression, de-packetization, post-processing, de-multiplexing, synthesis, and error correction. System selected from the group. 제1항에 있어서,The method of claim 1, 상기 제2 그래픽 프로세서에 의해 수행되는 상기 처리는, 암호해독, 압축해제, 역패킷화, 후처리, 역다중화, 합성, 및 오류 정정을 제공하는 처리를 포함하는 시스템.The processing performed by the second graphics processor includes processing to provide decryption, decompression, depacketization, post-processing, demultiplexing, synthesis, and error correction. 서브시스템으로서,As a subsystem, 네트워크를 통해 제2 프로세서와 통신하는 제1 프로세서를 포함하고,A first processor in communication with the second processor via a network; 상기 제1 프로세서에 의해 수행되는 제1 처리량은, 상기 제2 프로세서에 의해 수행되는 제2 처리량의 역함수이며,The first throughput performed by the first processor is an inverse function of the second throughput performed by the second processor, 상기 제1 프로세서 및 상기 제2 프로세서는 비디오 처리 또는 그래픽 처리를 할 수 있는 서브시스템.The first processor and the second processor are capable of video processing or graphics processing. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020070077532A 2006-08-01 2007-08-01 Multi-graphics processor system and method for processing content communicated over a network for display purposes KR100960164B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US11/461,670 2006-08-01
US11/461,676 US7969443B2 (en) 2006-08-01 2006-08-01 System and method for dynamically processing content being communicated over a network for display purposes
US11/461,676 2006-08-01
US11/461,670 US7961192B2 (en) 2006-08-01 2006-08-01 Multi-graphics processor system and method for processing content communicated over a network for display purposes

Publications (2)

Publication Number Publication Date
KR20080012234A KR20080012234A (en) 2008-02-11
KR100960164B1 true KR100960164B1 (en) 2010-05-26

Family

ID=39340501

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070077532A KR100960164B1 (en) 2006-08-01 2007-08-01 Multi-graphics processor system and method for processing content communicated over a network for display purposes

Country Status (3)

Country Link
JP (1) JP2008140368A (en)
KR (1) KR100960164B1 (en)
TW (1) TWI369126B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180100626A (en) * 2016-01-29 2018-09-11 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 GPU resource reconstruction method, user device, system, and storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8373708B2 (en) * 2008-07-30 2013-02-12 Nvidia Corporation Video processing system, method, and computer program product for encrypting communications between a plurality of graphics processors
EP3029940B1 (en) * 2014-12-04 2017-03-15 Axis AB Method and device for post processing of a video stream

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7053863B2 (en) * 2001-08-06 2006-05-30 Ati International Srl Wireless device method and apparatus with drawing command throttling control
US20060267989A1 (en) 2005-05-27 2006-11-30 Campbell Jonathan L Dynamic load balancing in multiple video processing unit (VPU) systems

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06149694A (en) * 1992-11-16 1994-05-31 Nippon Telegr & Teleph Corp <Ntt> Distributed data reception selecting system
US20060164550A1 (en) * 2003-04-24 2006-07-27 Kyosuke Yoshimoto Video device, video module unit, and video device operation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7053863B2 (en) * 2001-08-06 2006-05-30 Ati International Srl Wireless device method and apparatus with drawing command throttling control
US20060267989A1 (en) 2005-05-27 2006-11-30 Campbell Jonathan L Dynamic load balancing in multiple video processing unit (VPU) systems

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180100626A (en) * 2016-01-29 2018-09-11 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 GPU resource reconstruction method, user device, system, and storage medium
KR102091961B1 (en) 2016-01-29 2020-03-20 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 GPU resource reconstruction method, user device, system and storage medium

Also Published As

Publication number Publication date
TW200820752A (en) 2008-05-01
KR20080012234A (en) 2008-02-11
JP2008140368A (en) 2008-06-19
TWI369126B (en) 2012-07-21

Similar Documents

Publication Publication Date Title
US7961192B2 (en) Multi-graphics processor system and method for processing content communicated over a network for display purposes
KR101947400B1 (en) Network media adapter
US11838279B2 (en) Wireless display streaming of protected content
US9078021B2 (en) Information processing apparatus, content transmission method and storage medium
CA2597180C (en) System and method for error correction in high definition tv signal
JP5033598B2 (en) Display device and video equipment
JP2007306170A (en) Information processing system and method, information processor and method, and program
US7969443B2 (en) System and method for dynamically processing content being communicated over a network for display purposes
TW202327355A (en) Enhancement decoding implementation and method
KR100960164B1 (en) Multi-graphics processor system and method for processing content communicated over a network for display purposes
JP5227797B2 (en) System and method for increasing coding gain
JP4175381B2 (en) Information processing system and method, information processing apparatus and method, and program
JP2010239433A (en) Video coding apparatus, method and program
EP3079344B1 (en) Image pickup apparatus, image pickup method and image pickup system
JP2006019997A (en) Moving picture data transfer system
CN107950032B (en) Apparatus and method for modifying an encrypted multimedia data stream
KR20180083041A (en) Wireless display subsystem and system-on-chip
JP2003274326A (en) Processor and method for information processing
JP2008066811A (en) Digital broadcast receiving system
JP6009946B2 (en) Information processing apparatus, content transfer method, and program
JP2011035578A (en) Transmitter, receiver, and transmission system
JP2009194854A (en) Video-delivery communication module and set-top box using the same
JP2008154152A (en) Audio/visual equipment, and audio/visual frame transmitting method thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130419

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140422

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee