KR20020006297A - Mpeg 기반 3d그래픽 가속기 - Google Patents

Mpeg 기반 3d그래픽 가속기 Download PDF

Info

Publication number
KR20020006297A
KR20020006297A KR1020000039871A KR20000039871A KR20020006297A KR 20020006297 A KR20020006297 A KR 20020006297A KR 1020000039871 A KR1020000039871 A KR 1020000039871A KR 20000039871 A KR20000039871 A KR 20000039871A KR 20020006297 A KR20020006297 A KR 20020006297A
Authority
KR
South Korea
Prior art keywords
mpeg
graphics accelerator
video
graphic
frame memory
Prior art date
Application number
KR1020000039871A
Other languages
English (en)
Other versions
KR100382106B1 (ko
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
Application filed by 한탁돈, 박우찬 filed Critical 한탁돈
Priority to KR10-2000-0039871A priority Critical patent/KR100382106B1/ko
Publication of KR20020006297A publication Critical patent/KR20020006297A/ko
Application granted granted Critical
Publication of KR100382106B1 publication Critical patent/KR100382106B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding

Abstract

본 발명은 고화질 TV 또는 단말기 상에 3차원 그래픽 기능을 부가함으로써 고기능 디스플레이 장치로 구현 가능한 MPEG 기반 3D 그래픽 가속기를 제공한다. 이러한 MPEG 기반 3D 그래픽 가속기는 입력되는 3차원 프리미티브들을 기하학 처리 또는 렌더링하여 3D 그래픽 데이터를 출력하는 3D 그래픽 가속기와; 입력되는 비디오 비트 스트림을 디코딩하여 디코드된 비디오 데이터를 출력하는 비디오 디코더와, 상기 3D 그래픽 데이터와 디코드된 비디오 데이터를 다중 출력하는 멀티플렉서와, 상기 멀티플렉서를 통해 다중 출력된 데이터를 각각 현재 영상과 이전 영상으로 분할하여 저장하고 있는 프레임 메모리와, 상기 프레임 메모리에 저장된 영상을 디플레이장치에 적합하도록 신호 처리하는 디스플레이 처리부를 포함하여 구성함을 특징으로 한다.

Description

MPEG 기반 3D그래픽 가속기{3D graphic accelerator based on MPEG}
본 발명은 3D (3-Dimensional) 그래픽 가속기에 관한 것으로서, 특히 MPEG(Moving Picture Experts Group)을 기반으로 하는 HDTV(High Definition TV) 또는 DTV(Digital TV) 상에서 3D 그래픽 데이터에 대한 가속을 효율적으로 할 수 있는 MPEG 기반 3D 그래픽 가속기에 관한 것이다.
일반적으로 3D 그래픽 처리과정은 멀티미디어 환경을 구축하기 위한 가장 핵심적인 부분이다. 그런데, 보다 현실감 있는 3D 영상을 지원하기 위해서는 고성능의 전용 3D 그래픽 가속기를 필요로 한다. 최근 들어 PC(Personal Computer) 및 게임기에서는 3D 영상을 제공하기 위한 고성능의 3D 그래픽 가속기가 채택되고 있으며, 이 3D 그래픽 가속기에 대한 연구도 활발히 진행되고 있는 실정에 있다.
도 1은 3D 그래픽 처리과정을 나타낸 것으로서, 3D 그래픽 처리과정은 3D 응용 소프트웨어가 API(Application Program Interface)를 통하여 3D 그래픽 가속기에서 실시간 하드웨어 가속을 수행한 후 디스플레이로 보내지는 단계를 거치게 된다.
3D 그래픽 가속기는 크게 기하학 처리(geometry processing), 렌더링(rendering)으로 나뉜다. 기하학 처리는 주로 3D 좌표계의 물체를 시점에 따라 변환하고, 2차원 좌표계로 투영 처리하는 과정을 말한다. 렌더링은 2차원 좌표계의 이미지에 색깔 값을 결정하며 프레임 버퍼에 저장하는 과정을 말한다. 한 개의 프레임에 대하여 입력되는 모든 3D 데이터가 수행이 끝난 후에 프레임 버퍼에 저장된 색깔 값은 디스플레이로 보내어 지는데, 이를 디스플레이 리프레쉬(refresh)라고 한다. 일반적으로 기하학 처리부와 렌더링은 성능을 높이기 위하여 파이프라인화 되어 있다.
한편 3D 그래픽 가속기는 입력되는 프리미티브(primitive)의 처리 순서에 따라 크게 객체순서(object order) 방식과 영상순서(image order)방식으로 나뉜다.
여기서 프리미티브는 점, 선, 다면체(polygon)가 해당되며, 일반적인 대부분의 응용분야에서는 다면체가 프리미티브들 중에 대다수를 차지하고 있으며, 하드웨어 가속기는 다면체를 고속으로 처리하도록 구성되어 있다.
먼저 객체순서 방식은 입력되는 프리미티브의 순서대로 기하학 처리 과정과렌더링 처리과정을 거쳐서 디스플레이로 보내어지는 방식이다. 이는 한 개의 프리미티브당 기하학처리 과정과 렌더링 처리과정이 파이프라인화 할 수 있기 때문에 고성능화에 유리하다.
그러나 상기 프리미티브는 은면 제거(hidden surface removal)를 위하여 전체화면(full screen)에 해당하는 깊이 버퍼(z-buffer) 및 색깔 버퍼를 가지고 있어야 한다. 렌더링 과정과 디스플레이 리프레쉬의 중첩 수행을 위하여 일반적으로 깊이 버퍼 및 색깔 버퍼 두 개를 가지고 있다. 이를 이중 버퍼링(double buffering)이라고 한다. 현재 발표되고 있는 대부분의 고성능 3D 그래픽 가속기가 객체순서 방식으로 처리되고 있다.
그리고 영상순서 방식은 입력되는 프리미티브의 순서대로 처리하는 것이 아니라 영상의 위치 순서에 따라 해당위치에 속해있는 프리미티브를 처리하는 방식이다.
예를 들면, 스크린의 시작점이 (0,0)이고 끝점이 (n-1, m-1)이면 (0,0) 위치에서 관계되는 프리미티브들을 모두 다 조사하여 색깔값을 계산하고, 이를 (n-1, m-1)위치까지 주어진 순서대로 반복적으로 수행하는 방법이다. 이는 전체 프리미티브에 대하여 기하학처리 과정과 렌더링 처리과정이 파이프라인화 되고, 기하학 처리된 프리미티브들에 대한 모든 정보를 가지고 있는 버퍼가 필요하며, 은면 제거를 위해서는 전체화면을 필요로 하지 않고 일부의 화면만을 필요로 하기 때문에 고성능화보다는 저가에 유리하다. 이러한 방식을 위하면 3D 그래픽 가속기는 주로 종래에 많이 채택되었다.
그러면 본 발명의 이해를 돕기 위하여 도 2를 참조하여 객체순서 방식과 영상순서 방식을 비교 설명하면 다음과 같다.
도 2에 도시한 바와 같이, (A,B,C)로 이루어진 삼각형과 (D,E,F)로 이루어진 삼각형이 있다. 이러한 두 개의 삼각형 중 (A,B,C) 삼각형이 (D,E,F) 삼각형 보다 먼저 정의되어 3D 그래픽 가속기에 먼저 입력된다고 가정하자.
이때, 객체순서 방식은 먼저 (A,B,C) 삼각형에 대하여 3D 그래픽 파이프라인인 기하학 처리와 렌더링을 거쳐서 생성된 색깔 및 깊이 정보를 프레임버퍼에 저장한다. 이어서 (D,E,F) 삼각형에 대하여 기하학 처리와 렌더링을 거처서 생성된 색깔과 깊이 정보를 계산한 후 중첩 구간에 대해서는 이미 저장되어 있는 (A,B,C) 삼각형의 깊이 정보와 비교하여 시점(view point)에 가까이 있는 것을 선택하여 저장한다. 도 2에서는 두 개의 삼각형에 대하여 중첩구간이 존재하고, 중첩구간에 대하여 (D,E,F) 삼각형이 (A,B,C) 삼각형에 비하여 시점에 가까이 있는 경우이다.
그리고 영상순서 방식에서는 현재 처리하고 있는 영상의 위치에 따라서 처리되는 삼각형의 순서가 달라진다.
예를 들어, 도 2에서 영상순서 방식에서 현재 처리되고 있는 곳이 k번째 스캔라인일 경우 x축의 값이 적은 값에서부터 큰 값으로 처리되며, 따라서 삼각형의 입력 순서와 관계없이 현재 처리되고 있는 픽셀 (pixel)에 속해있는 모든 삼각형을 조사하여 시점에 대하여 가까운 것을 찾아 이에 대한 최종 색깔값을 계산한다. 즉, k번째 스캔라인일 경우 중첩구간을 제외한 삼각형 (A,B,C)에 해당하는 구간에서는 삼각형 (A,B,C)에 대하여 처리하고, 중첩구간인 경우는 두 개의 삼각형 중 시점에 가까운 부분 (도 2에서는 삼각형 (D,E,F))을 찾아 처리하며, 중첩구간을 제외한 삼각형 (D,E,F)에 해당하는 구간에서는 삼각형 (D,E,F)에 대하여 처리한다.
한편 영상순서 방식의 가장 대표적인 방법은 스캔라인(scan-line)방식으로 하는데, 이는 도 3에 도시된 바와 같다.
먼저 기하학처리 과정에서는 모든 프리미티브들이 시점에 따라서 기하학 처리가 되어서 스크린 위치로 옮겨지게 되며, 이에 대한 정보는 스캔 라인당 존재하는 버킷(bucket)에 저장된다. 즉, 버킷에서는 해당 스캔 라인에 속하는 다면체에 대한 정보를 모두 가지고 있어야 한다. 이를 버킷 정렬(bucket sorting)이라고 한다. 이러한 버킷 정렬은 기하학 처리부 혹은 별도의 장치를 두어서 처리해주어야 하는 부분이다. 기하학 처리가 끝나고 모든 프리미티브에 대한 정보가 각 스캔 라인당 존재하는 버킷에 저장된 후에 렌더링과정을 수행한다. 상기 렌더링 과정은 정해진 스캔라인 순서로 진행된다.
예를 들면, 도 3에 도시한 바와 같이, 0번째 스캔라인으로부터 시작하여 마지막 n-1번째 스캔라인으로 수행된다고 하고, 현재 처리되고 있는 스캔라인이 k번째이고 k번째 스캔라인의 스크린 상에서의 (x,y)의 위치가 (0,k)에서 시작하여 (m,k)라고 하면, 스캔 라인 방식에서는 먼저 (0,k) 위치에 해당하는 프리미티브들을 버킷에서 찾아 이들에 대한 비교를 통하여 이 중 시점에 가장 가까운 프리미티브를 선정하여 최종 색깔값을 계산한다. 이러한 과정을 (m,k)위치까지 수행하면 한 개의 스캔 라인에 대한 렌더링 수행이 끝나게 되며, 스캔 라인에서의 렌더링 된 정보는 디스플레이 리프레쉬에 사용되기 위하여 보내진다. 이어서, 다음 스캔 라인에 해당하는 k+1번째 스캔 라인에 대하여 같은 과정을 처리한다. 이러한 과정을 전체 스캔 라인에 대하여 수행한다.
이와 같이 수행되는 영상순서 방식은 아래와 같은 조건들을 만족해야 한다.
첫째, 프리미티브 수가 증가할수록 스캔 라인당 할당되어 있는 버킷에 정보를 유지하기 위하여 매우 큰 메모리 공간을 필요로 한다.
둘째, 객체순서 방식에서는 전체 화면에 대한 깊이 버퍼를 필요로 하지만 스캔 라인 방식은 스캔 라인에 해당하는 깊이버퍼만을 필요로 한다.
셋째, 스캔 라인당 할당되어 있는 버킷에서 각각의 픽셀에 해당하는 모든 프리미티브에 정보를 알 수 있으며, 특히 시점에 대한 프리미티브의 순서를 알 수 있으므로 순서 비의존 투명성을 제공할 수 있다.
3D 그래픽 가속기에 있어서, 순서 비의존 투명성은 매우 중요한 부분을 차지한다.
그 이유는 현실감 있는 3D 그래픽 영상을 생성하기 위해서는 투명성을 내포한 프리미티브를 표현해야 하기 때문이다. 그러나 투명성을 내포한 프리미티브에 대한 처리시 순서 의존(order dependent) 문제가 발생한다.
한편 도 4는 상술한 바와 같은 3D 그래픽 가속기를 HDTV 상의 칩세트에 적용하기 위한 비디오 디코더의 구성을 나타낸 블록도 이다.
도 4를 참조하면, 비디오 디코딩부(100)는 통상적으로 널리 알려진 바와 같이, 가변길이 디코더(Variable Length Decoder; VLD)(101), 역스캔 및 역 양자화(Inverse Scan/Inverse Quantizer; IS/IQ)부(102), 역 이산여현 변환((Inverse Discrete Cosine Transform; IDCT)부(103), 가산기(104), 움직임 보상부(105) 및 프레임 메모리(106)로 구성된다.
이때 상기 비디오 디코딩부(100)는 크게 두 블록의 데이터 패스를 가지는데, 움직임 벡터를 이용하여 이전 프레임의 픽셀 값으로부터 예측하여 현재의 픽셀값을 보상하는 패스와 움직임 보상에 의해 표현되지 못하는 픽셀 값에 대한 차를 DCT한 계수에 대해 다시 IDCT하는 패스로 나뉘어진다.
즉, 입력되는 비디오 비트스트림은 VLD(101)에서 가변길이 디코딩되어 움직임 벡터, 양자화 값, DCT 계수로 분리된다. 상기 VLD(101)의 출력중 DCT 계수에 해당하는 값이 IS/IQ부(102)를 통과하여 IDCT부(103)로 입력된다.
이때, 상기 VLD(101)에서는 DCT 계수가 런-레벨로 디코딩된다. 즉, 하나의DCT 블록은 8×8의 계수들로 이루어져 있는데 이들 중 0이 아닌 계수들만 코드속에 들어있으므로 VLD(101)의 출력은 0이 아닌 계수들의 크기, 즉 레벨과 이 계수들 사이에 0이 얼마나 삽입되어 있는지에 대한 런이 출력된다. 또한 8×8 계수의 디코딩 순서는 런 레벨 코드의 효율을 높이기 위해서 낮은 주파수 성분부터 전송될 수 있도록 지그-재그 방식으로 이루어져 있다.
따라서 상기 IS/IQ부(102)는 지그-재그 스캔 방식 또는 택일 스캔(Alternate scan) 방식을 라스터 스캔(Raster Scan) 방식으로 역스캔한 후 역스캔된 DCT 계수를 양자화 값에 따라 역 양자화하여 IDCT부(103)로 출력한다. 상기 IDCT부(103)는 역 양자화된 DCT 계수에 대해 IDCT를 수행하여 가산기(104)로 출력한다.
한편 상기 VLD(101)에서 출력되는 움직임 벡터는 움직임 보상부(105)로 출력되고, 상기 움직임 보상부(105)는 상기 움직임 벡터와 프레임 메모리(106)에 저장된 이전 프레임을 이용하여 현재의 픽셀값에 대한 움직임 보상을 수행한 후 가산기(104)로 출력한다.
상기 가산기(104)는 IDCT된 값과 움직임 보상된 값을 더하여 최종 픽셀값인 완전한 영상으로 복원하여 디스플레이를 위해 출력하고, 이 복원된 영상은 프레임 메모리(200)에 저장된다.
그러나 이와 같이 비디오 디코더에 상술한 고성능 3D 그래픽 가속기를 접목하기 위해서는 상술한 바와 같은 3D 그래픽 가속기에서 언급된 3가지 문제점을 모두 만족시켜야 하기 때문에 현재까지 이에 관한 연구결과가 전무한 실정이다.
따라서 종래의 비디오 디코더에서는 3차원 그래픽을 제공하기 위하여 전체 시스템을 구현할 때 가장 큰 문제점인 개발시간, 개발비용 및 대역폭 문제에 봉착하기 때문에 3차원 그래픽 가속기가 내장된 비디오 디코더를 개발하지 못하고 있는 실정이다.
따라서 본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 비디오 디코더내에 3차원 그래픽 가속기를 내장시켜 TV 칩 세트 또는 단말기 상에서 구현 가능한 MPEG 기반 3D 그래픽 가속기를 제공함에 있다.
본 발명의 다른 목적은 HDTV 또는 DTV 상에 3차원 그래픽 기능을 부가함으로써 고기능 TV로 구현 가능한 MPEG 기반 3D 그래픽 가속기를 제공함에 있다.
도 1은 3D 그래픽 처리과정을 나타낸 도면,
도 2는 3D 그래픽 가속기에 입력되는 다면체 처리 순서를 설명하기 위한 도면,
도 3은 스캔라인 방식으로 렌더링을 수행하기 위한 구조를 나타낸 도면,
도 4는 HDTV의 비디오 디코더의 구성을 나타낸 블록도이고,
도 5는 본 발명에 따른 MPEG 기반 3D 그래픽 가속기를 나타낸 블록도이다.
*도면의 주요부분에 대한 부호의 설명*
10 : MPEG기반 3D 그래픽 가속기 20 : 프레임 메모리
100 : 비디오 디코딩부 101 : VLD
102 : IQ/IS부 103 : IDCT부
104 : 가산기 105 : 움직임 보상부
106 : 프레임 메모리 107: 현재영상 프레임 메모리
108 : 이전영상 프레임 메모리 109: 멀티플렉서
110: 디스플레이 처리부 111: 디스플레이 장치
200: 3D 그래픽 가속기 201 : 기하학 처리부
202: 렌더링 처리부
상기와 같은 목적을 달성하기 위한 본 발명에 따른 MPEG 기반 3D 그래픽 가속기는 입력되는 3차원 프리미티브들을 기하학 처리 또는 렌더링하여 3D 그래픽 데이터를 출력하는 3D 그래픽 가속기와; 입력되는 비디오 비트 스트림을 디코딩하여 디코드된 비디오 데이터를 출력하는 비디오 디코더와; 상기 3D 그래픽 데이터와 디코드된 비디오 데이터를 다중출력하는 멀티플렉서와; 상기 멀티플렉서를 통해 다중 출력된 데이터를 각각 현재 영상과 이전 영상으로 분할하여 저장하고 있는 프레임 메모리와, 상기 프레임 메모리에 저장된 영상을 디플레이장치에 적합하도록 신호처리하는 디스플레이 처리부를 포함하여 구성함을 특징으로 한다.
또한 본 발명에 따른 MPEG 기반 3D 그래픽 가속기는 그래픽 입력단으로 입력되는 3차원 프리미티브들을 기하학적 처리하는 기하학 처리부 및 상기 기하학 처리된 프리미티브들을 렌더링하는 렌더링 처리부로 구성되어 3차원 그래픽 스트림을 가속하는 3D 그래픽 가속기와; 비디오 입력단으로 입력되는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT 계수로 분리하여 출력하는 가변길이 디코더, 상기 DCT 계수를 라스터 스캔(Raster Scan) 방식으로 역스캔한 후 역 스캔된 DCT 계수를 양자화 값에 따라 역 양자화하여 출력하는 역스캔 및 역양자화부, 역 양자화된 DCT 계수에 대해 역 이산여현 변환하여 차 픽셀값을 출력하는 역 이산여현 변환부, 상기 가변길이 디코더에서 출력되는 움직임 벡터에 대해 움직임 보상을 수행하여 움직임 보상된 픽셀값을 출력하는 움직임 보상부, 상기 픽셀값들을 가산하여 최종 픽셀값으로 출력하는 MB 가산기로 구성되어 비디오 비트스트림을 디코딩하는 비디오 디코더와; 상기 가속된 3차원 그래픽 스트림과 디코드된 비디오 비트스트림을 다중출력하는 멀티플렉서와; 그리고 상기 다중출력된 3차원 그래픽 스트림과 디코드된 비디오 비트스트림을 현재영상과 이전 영상으로 분리 저장하는 프레임 메모리부로 구성함을 특징으로 한다.
본 발명의 다른 목적, 특징 및 이점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하, 본 발명에 따른 MPEG 기반 3D 그래픽 가속기의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 5는 본 발명에 따른 MPEG 기반 3D 그래픽 가속기가 비디오 디코더 내에 내장된 구성과 주변장치와의 관계를 나타낸 블록도이다.
여기서 비디오 디코딩부(100)의 구성은 도 4의 구성과 동일하므로 동일요소에 대한 구체적인 설명은 생략하기로 한다.
도 5를 참조하면, 본 발명의 MPEG 기반 3D 그래픽 가속기(10)는 비디오 디코딩부(100)와 3D 그래픽 가속기(200)로 구성되며, 이러한 구성에 상기 비디오 디코딩부(100) 및 3D 그래픽 가속기(200)의 출력 신호를 다중 출력하는 멀티플렉서(109)와, 상기 멀티플렉서(109)를 통해 다중 출력된 데이터를 각각 현재 영상과 이전 영상으로 분할하여 저장하고 있는 프레임 메모리(20)와, 상기 프레임 메모리(20)에 저장된 영상을 디플레이장치(111)에 적합하도록 신호처리하는 디스플레이 처리부(110)로 이루어진 주변장치를 포함하도록 구성된다.
또한 3D 그래픽 스트림을 가속하여 가속된 3D 그래픽 영상 데이터를 얻기 위한 3D 그래픽 가속기(200)는 그래픽 입력단으로 입력되는 3차원 프리미티브들을 기하학적 처리하는 기하학 처리부(201) 및 상기 기하학 처리된 프리미티브들을 렌더링하는 렌더링 처리부(202)로 구성된다.
또한 비디오 비트스트림을 디코딩하기 위한 비디오 디코딩부(100)는 비디오 입력단으로 입력되는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT 계수로 분리하여 출력하는 가변길이 디코더(101), 상기 DCT 계수를 라스터 스캔(Raster Scan) 방식으로 역스캔한 후 역 스캔된 DCT 계수를 양자화 값에 따라 역 양자화하여 출력하는 역스캔 및 역양자화부(102), 역 양자화된 DCT 계수에 대해 역 이산여현 변환하여 차 픽셀값을 출력하는 역 이산여현 변환부(103), 상기 가변길이 디코더(101)에서 출력되는 움직임 벡터에 대해 움직임 보상을 수행하여 움직임 보상된 픽셀값을 출력하는 움직임 보상부(105), 상기 픽셀값들을 가산하여최종 픽셀값으로 출력하는 MB 가산기(104)로 구성된다.
또한 프레임 메모리(20)는 상기 멀티플렉서(109)를 통해 다중 출력된 3D 그래픽 영상 데이터와 디코드된 최종 픽셀값을 현재영상과 이전 영상으로 분리 저장하는 현재 영상 프레임 메모리(107)와 이전영상 프레임 메모리(108)로 구성되어 있다.
이와 같이 구성된 본 발명의 MPEG 기반 3D 그래픽 가속기에서 3D 그래픽 가속기(200)는 기하학 처리부(201)를 통해 입력되는 프리미티브들에 대하여 기하학 처리를 수행하고 외부 제어기(도시생략됨)를 통해 기하학 처리된 프리미티브들 중 투명한 프리미티브의 존재 여부 또는 불투명 프리미티브의 다소를 판단한 후 재차 렌더링 처리부(202)를 통해 객체순서 렌더링과 영상순서 렌더링을 경유하게 하면 가속된 3D 그래픽 영상 데이터를 얻어낼 수 있다.
이과정에서 도면에 도시되지 않았으나 상술한 외부 제어기는 기하학 처리된 프리미티브를 영상순서 처리부(도시생략됨) 및 객체순서 처리부(도시생략됨)중 어느 처리부에 보낼지를 결정할 뿐만 아니라, 객체순서 렌더링 처리부와 영상순서 렌더링 처리부의 파이프라인을 제어하고, 특히 각 프레임에 대한 수행 완료시 객체순서 렌더링부와 영상순서 렌더링부가 각각 사용하고 있는 프레임 버퍼와 버킷을 서로 교환하는 제어를 수행한다.
또한 상기 기하학 처리된 결과가 불투명한 경우에는 객체순서 렌더링 처리부로 보내고, 투명한 프리미티브는 영상순서 렌더링 처리부로 보낸다. 이때 불투명한 프리미티브가 대부분이어서 객체순서 렌더링 처리부에 부하가 많이 걸리경우에는여상순서 렌더링 처리부로 보내어 질 수 있도록 투명한 프리미티브들의 존재 여부를 검사할 뿐만 아니라 불투명한 프리미티브들의 다소(多少)도 검사한다.
한편 비디오 디코딩부(100)는 입력되는 비트스트림을 이산여현 변환된 차픽셀값과 움직임 보상된 픽셀값을 더하여 완전하게 복원된 최종 픽셀값을 출력한다.
이와 같이 서로 다른 루트를 통해 처리된 각각의 3D 그래픽 영상 데이터와 디코드된 최종 픽셀값은 외부 제어기의 제어하에 멀티플렉서(109)를 통해 다중 출력되어 프레임 메모리(20)에 각각 저장된다.
여기서 상기 비디오 디코딩부(100)를 통해 복원된 최종 영상 데이터는 현재영상 메모리의 소정 번지에 저장됨과 동시에 디스플레이 처리부(110)를 통해 디스플레이장치(111)에 디스플레이 된다. 또한 상기 영상 데이터는 디스플레이 후 이전 영상 프레임 메모리(108)에 저장됨과 동시에 움직임 보상된 픽셀값을 생성하도록 움직 보상부(105)에 제공된다.
또한 상기 3D 그래픽 가속기(200)를 통해 출력된 3D 그래픽 영상 데이터 역시 외부 제어기의 제어하에 멀티플렉서(109)를 통해 다중 출력되어 프레임 메모리(20)에 저장되고, 상기 프레임 메모리(20) 영역 내에서 현재 영상 또는 이전 영상 프레임 처리와 디스플레이 리프레쉬를 통해 실시간대로 처리되는 3D 그래픽 영상 데이터를 디스플레이 할 수 있다.
여기서 렌더링 처리부(202)에서 N번째 프레임을 처리하고 있으면, 디스플레이 리프레쉬부(도시생략됨)는 N-1번째를 처리하며, 상기 디스플레이 리프레쉬부에서 N번째 프레임을 처리하고 있으면, 렌더링 처리부(202)는 N+1번째 프레임을 처리한다. 따라서 각 프레임 처리를 위해서 프레임 메모리는 현재 영상과 이전 형상으로 분할하여 저장하고 있으며 디스플레이 종료마다 프레임을 맞 교환 한다.
한편 현재 영상 프레임 메모리(107)와 이전 영상 프레임 메모리(108)는 비디오 디코더(10)에서 생성되는 현재 영상에 대한 데이터와 3D 그래픽 가속기에서 처리된 데이터들이 공통으로 존재하지만 상호 데이터에 대한 화면의 부분은 서로 중첩되지 않도록 설계되어 있다.
또한 본 발명에 따른 MPEG 기반 3D 그래픽 가속기(10)는 3D 그래픽 데이터 처리를 위한 보다 많은 대역폭이 필요로 하기 때문에 3D 그래픽 가속기(200) 부분중 기하학 처리부(201) 또는 렌더링 처리부(202)를 분리하여 원 칩으로 구성할 수 있다. 하지만 데이터 처리를 위한 대역폭은 렌더링 처리부(202)가 더 많이 필요하므로 상기 렌더링 처리부(202)를 외부 장치로 활용하는 것이 개발시간을 단축하고 개발비용을 줄이는데 훨씬 더 효과적이다.
이와 같이 본 발명에 따른 MPEG 기반 3D 그래픽 가속기는 칩 세트가 적용될 수 있는 TV 또는 단말기 상에서 3D 그래픽 데이터를 디스플레이 할 수 있다.
이상에서와 같이 본 발명에 따른 MPEG 기반 3D 그래픽 가속기에 의하면, TV칩 세트 또는 단말기 칩 세트내에 3차원 그래픽 가속기를 내장시켜 원칩으로 구성함으로써 저가의 3D 그래픽 가속기로 구현 가능하다.
또한 본 발명은 3D 그래픽 가속기중 기하학적 처리부와 렌더링 처리부를 나누어서 비디오 디코더와 원 칩으로 구성하면 개발시간을 줄일 수 있고 개발비용도낮출 수 있는 이점이 있다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.
따라서 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다.

Claims (5)

  1. 입력되는 3차원 프리미티브들을 기하학 처리 또는 렌더링하여 3D 그래픽 데이터를 출력하는 3D 그래픽 가속기와; 입력되는 비디오 비트 스트림을 디코딩하여 디코드된 비디오 데이터를 출력하는 비디오 디코더와;
    상기 3D 그래픽 데이터와 디코드된 비디오 데이터를 다중출력하는 멀티플렉서와;
    상기 멀티플렉서를 통해 다중 출력된 데이터를 각각 현재 영상과 이전 영상으로 분할하여 저장하고 있는 프레임 메모리와; 그리고,
    상기 프레임 메모리에 저장된 영상을 디플레이장치에 적합하도록 신호 처리하는 디스플레이 처리부를 포함하여 구성함을 특징으로 하는 MPEG 기반 3D 그래픽 가속기.
  2. 제 1 항에 있어서, 상기 MPEG 기반 3D 그래픽 가속기는 디스플레이 장치에 적합한 영상으로 신호처리하는 디스플레이 처리부를 더 구비함을 특징으로 하는 MPEG 기반 3D 그래픽 가속기.
  3. 제 1 항에 있어서, 상기 MPEG 기반 3D 그래픽 가속기는 프레임 메모리를 리프레쉬하기 위한 디스플레이 리프레쉬부를 더 구비하도록 함을 특징으로 하는 MPEG 기반 3D 그래픽 가속기.
  4. 제 1 항에 있어서, 상기 MPEG 기반 3D 그래픽 가속기에서 기하학 처리부는 비디오 디코딩부와 원 칩으로 구성하고 렌더링 처리부는 분리하여 구성함을 특징 하는 MPEG 기반 3D 그래픽 가속기.
  5. 그래픽 입력단으로 입력되는 3차원 프리미티브들을 기하학적 처리하는 기하학 처리부 및 상기 기하학 처리된 프리미티브들을 렌더링하는 렌더링 처리부로 구성되어 3차원 그래픽 스트림을 가속하는 3D 그래픽 가속기와;
    비디오 입력단으로 입력되는 비디오 비트스트림을 가변길이 디코딩하여 움직임 벡터, 양자화 값, DCT 계수로 분리하여 출력하는 가변길이 디코더, 상기 DCT 계수를 라스터 스캔(Raster Scan) 방식으로 역스캔한 후 역 스캔된 DCT 계수를 양자화 값에 따라 역 양자화하여 출력하는 역스캔 및 역양자화부, 역 양자화된 DCT 계수에 대해 역 이산여현 변환하여 차 픽셀값을 출력하는 역 이산여현 변환부, 상기 가변길이 디코더에서 출력되는 움직임 벡터에 대해 움직임 보상을 수행하여 움직임 보상된 픽셀값을 출력하는 움직임 보상부, 상기 픽셀값들을 가산하여 최종 픽셀값으로 출력하는 MB 가산기로 구성되어 비디오 비트스트림을 디코딩하는 비디오 디코더와;
    상기 가속된 3차원 그래픽 스트림과 디코드된 비디오 비트스트림을 다중출력하는 멀티플렉서와; 그리고,
    상기 다중출력된 3차원 그래픽 스트림과 디코드된 비디오 비트스트림을 현재영상과 이전 영상으로 분리 저장하는 프레임 메모리부로 구성함을 특징으로 하는 MPEG 기반 3D 그래픽 가속기.
KR10-2000-0039871A 2000-07-12 2000-07-12 Mpeg 기반 3d그래픽 가속기 KR100382106B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2000-0039871A KR100382106B1 (ko) 2000-07-12 2000-07-12 Mpeg 기반 3d그래픽 가속기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0039871A KR100382106B1 (ko) 2000-07-12 2000-07-12 Mpeg 기반 3d그래픽 가속기

Publications (2)

Publication Number Publication Date
KR20020006297A true KR20020006297A (ko) 2002-01-19
KR100382106B1 KR100382106B1 (ko) 2003-05-01

Family

ID=19677589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0039871A KR100382106B1 (ko) 2000-07-12 2000-07-12 Mpeg 기반 3d그래픽 가속기

Country Status (1)

Country Link
KR (1) KR100382106B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100479175B1 (ko) * 2003-04-23 2005-03-25 에스케이 텔레콤주식회사 자바 가속칩을 이용하는 무선 인터넷 서비스 플랫폼이탑재된 이동 단말기 및 이를 이용한 그래픽 가속 방법
KR100490401B1 (ko) * 2002-03-26 2005-05-17 삼성전자주식회사 TC(Thin-Client)환경에서 영상 처리 장치 및 방법
WO2008044842A1 (en) * 2006-10-09 2008-04-17 Virtualdigm, Inc. Method and apparatus for processing 3d graphic data
KR100851282B1 (ko) * 2006-08-01 2008-08-08 경북대학교 산학협력단 3d 그래픽 가속기를 이용한 패턴 생성 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0155596B1 (ko) * 1994-12-16 1998-11-16 구자홍 영상 캡쳐 겸용 영상 재생장치
US5793371A (en) * 1995-08-04 1998-08-11 Sun Microsystems, Inc. Method and apparatus for geometric compression of three-dimensional graphics data
JPH09134437A (ja) * 1995-11-08 1997-05-20 Hitachi Ltd 座標データ圧縮方法
US5740409A (en) * 1996-07-01 1998-04-14 Sun Microsystems, Inc. Command processor for a three-dimensional graphics accelerator which includes geometry decompression capabilities
KR100236998B1 (ko) * 1996-11-20 2000-01-15 정선종 멀티미디어 데이타의 입출력 기능을 갖는 3차원그래픽 가속 장치 및 그 데이타 처리 방법
KR19990018369A (ko) * 1997-08-27 1999-03-15 윤종용 3차원 그래픽 가속기

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100490401B1 (ko) * 2002-03-26 2005-05-17 삼성전자주식회사 TC(Thin-Client)환경에서 영상 처리 장치 및 방법
KR100479175B1 (ko) * 2003-04-23 2005-03-25 에스케이 텔레콤주식회사 자바 가속칩을 이용하는 무선 인터넷 서비스 플랫폼이탑재된 이동 단말기 및 이를 이용한 그래픽 가속 방법
KR100851282B1 (ko) * 2006-08-01 2008-08-08 경북대학교 산학협력단 3d 그래픽 가속기를 이용한 패턴 생성 장치
WO2008044842A1 (en) * 2006-10-09 2008-04-17 Virtualdigm, Inc. Method and apparatus for processing 3d graphic data

Also Published As

Publication number Publication date
KR100382106B1 (ko) 2003-05-01

Similar Documents

Publication Publication Date Title
JP4554600B2 (ja) グラフィックス処理ユニットを使用してビデオ復号化を加速すること
KR100502586B1 (ko) 처리효율을높인영상음성처리장치
EP1641278B1 (en) Accelerated video encoding using a graphics processing unit
US8483290B2 (en) Method and system for data management in a video decoder
US8369419B2 (en) Systems and methods of video compression deblocking
CN101123723A (zh) 基于图形处理器的数字视频解码方法
US7885336B2 (en) Programmable shader-based motion compensation apparatus and method
US20060204119A1 (en) Efficient implementation of block-based transform on graphics processing unit
US7209141B2 (en) Macroblock padding
Wallach et al. Accelerated MPEG compression of dynamic polygonal scenes
US8633940B2 (en) Method and system for texture compression in a system having an AVC decoder and a 3D engine
US20120307004A1 (en) Video decoding with 3d graphics shaders
WO1999023831A2 (en) Methods and apparatus for processing dvd video
JP2006014341A (ja) Mcuバッファを用いて画像データを格納するための方法及び装置
US9621901B1 (en) Encoding of computer-generated video content
US6967659B1 (en) Circuitry and systems for performing two-dimensional motion compensation using a three-dimensional pipeline and methods of operating the same
US6901153B1 (en) Hybrid software/hardware video decoder for personal computer
EP1147671B1 (en) Method and apparatus for performing motion compensation in a texture mapping engine
US20120218292A1 (en) System and method for multistage optimized jpeg output
US6539058B1 (en) Methods and apparatus for reducing drift due to averaging in reduced resolution video decoders
KR100382106B1 (ko) Mpeg 기반 3d그래픽 가속기
US20180309999A1 (en) Systems and methods for deferred post-processes in video encoding
Pieters et al. Performance evaluation of H. 264/AVC decoding and visualization using the GPU
US6621490B1 (en) Method and apparatus for motion compensation using hardware-assisted abstraction layer
Nguyen-Phuc et al. An MPEG-4 renderer for high quality video composition and texture mapping

Legal Events

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

Payment date: 20070416

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee