KR20120090354A - 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법 - Google Patents

2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법 Download PDF

Info

Publication number
KR20120090354A
KR20120090354A KR1020110010727A KR20110010727A KR20120090354A KR 20120090354 A KR20120090354 A KR 20120090354A KR 1020110010727 A KR1020110010727 A KR 1020110010727A KR 20110010727 A KR20110010727 A KR 20110010727A KR 20120090354 A KR20120090354 A KR 20120090354A
Authority
KR
South Korea
Prior art keywords
edge
bucket
memory area
memory
edge data
Prior art date
Application number
KR1020110010727A
Other languages
English (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
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110010727A priority Critical patent/KR20120090354A/ko
Priority to US13/348,359 priority patent/US9053560B2/en
Publication of KR20120090354A publication Critical patent/KR20120090354A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

본 발명의 에지 관리 유닛은, 입력된 에지 데이터에 대응하는 버킷 정보를 제1 메모리 영역에 저장하고, 그리고 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 에지 기입 컨트롤러, 및 스캔 라인 신호에 응답해서 상기 제1 메모리 영역으로부터 상기 버킷 정보를 독출하고, 상기 제2 메모리 영역 중 독출된 버킷 정보가 지정하는 위치로부터 상기 에지 데이터를 독출하는 에지 독출 컨트롤러를 포함한다.

Description

2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법{EDGE MANAGEMENT UNIT FOR 2-DIMENSION VECTOR GRAPHICS, GRAPHIC PROCESSING APPARATUS AND METHOD THEREOF}
본 발명은 2차원 벡터 그래픽스를 위한 그래픽 처리 장치에 관한 것이다.
벡터 그래픽스(vector graphics)는 점, 직선, 곡선, 다각형 등을 일련의 명령들이나 수학적 표현을 통해 디지털 이미지를 만드는 것으로서 그래픽 파일이 일련의 벡터 서술문의 형태로 창작되고 저장된다. 예를 들어, 하나의 직선을 그리기 위해 복수의 점들에 각각 대응하는 데이터 대신 직선의 양끝 즉, 두 개의 에지(edges)가 벡터 그래픽 파일에 저장된다. 수학 방정식으로 표현되는 벡터 그래픽스는 이미지 퀄리티의 손실없이 이미지의 확대 및 축소가 가능하며, 일반적으로 래스터 그래픽스(raster graphics)로 표현되는 이미지보다 더 작은 파일 크기를 가진다. 벡터 그래픽스로 생성된 영상 정보를 디스플레이 화면에 표시하기 위해서는 에지 데이터가 필요하다.
본 발명은 2차원 벡터 그래픽스의 에지 데이터를 효율적으로 관리할 수 있는 에지 관리 장치와 그것을 포함하는 그래픽 처리 장치 및 그 방법을 제공한다.
본 발명의 일 특징에 의하면, 제1 메모리 영역 및 제2 메모리 영역을 포함하는 메모리를 액세스하는 에지 관리 유닛은: 입력된 에지 데이터에 대응하는 버킷 정보를 상기 제1 메모리 영역에 저장하고, 그리고 상기 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 에지 기입 컨트롤러, 그리고 스캔 라인 신호에 응답해서 상기 제1 메모리 영역으로부터 상기 버킷 정보를 독출하고, 상기 제2 메모리 영역 중 독출된 버킷 정보가 지정하는 위치로부터 상기 에지 데이터를 독출하는 에지 독출 컨트롤러를 포함한다.
본 발명의 다른 특징에 따른 그래픽 처리 장치는, 제1 메모리 영역 및 제2 메모리 영역을 포함하는 메모리와, 입력된 에지 데이터에 대응하는 버킷 정보를 상기 제1 메모리 영역에 저장하고, 그리고 상기 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 에지 기입 컨트롤러와, 스캔 라인 신호에 응답해서 상기 제1 메모리 영역으로부터 상기 버킷 정보를 독출하고, 상기 제2 메모리 영역 중 독출된 버킷 정보가 지정하는 위치로부터 상기 에지 데이터를 독출하는 에지 독출 컨트롤러, 그리고 상기 스캔 라인 신호를 출력하며, 에지 독출 컨트롤러에 의해서 독출된 에지 데이터를 래스터 이미지로 변환하는 래스터라이저를 포함한다.
이 실시예에 있어서, 상기 래스터라이저는 상기 에지 데이터를 저장하기 위한 버퍼를 포함하며, 무효화된 에지 데이터를 상기 버퍼에서 삭제한다.
본 발명의 또다른 특징에 따른 에지 관리 방법은, 에지 데이터를 입력하는 단계와, 상기 에지 데이터의 최저점을 검색하는 단계, 그리고 상기 최저점에 대응하는 버킷 정보를 제1 메모리에 저장하고, 제2 메모리 내 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 단계를 포함한다.
이 실시예에서, 상기 제2 메모리는 복수의 버킷 영역들을 포함하고, 상기 버킷 정보는 상기 제2 메모리 내 상기 복수의 버킷 영역들 중 적어도 하나를 지정하는 버킷 아이디 및 상기 지정된 버킷 영역에 저장된 상기 에지 데이터의 수를 나타내는 에지 카운트를 포함한다.
이 실시예에 있어서, 상기 에지 관리 방법은, 스캔 라인 신호를 입력하는 단계와, 상기 제1 메모리로부터 상기 스캔 라인 신호에 대응하는 상기 버킷 아이디 및 에지 카운트를 독출하는 단계, 그리고 상기 에지 카운트가 0이 아닐 때 상기 제2 메모리 내 상기 버킷 아이디가 지정하는 위치로부터 상기 에지 데이터를 독출하는 단계를 더 포함한다.
이와 같은 본 발명에 의하면, 2차원 벡터 그래픽스의 에지 정보를 메모리에 기입하거나 메모리로부터 독출하는 과정에서 메모리 대역폭(bandwidth)이 감소될 수 있다. 그러므로 영상 처리 장치의 성능이 향상된다.
도 1은 본 발명의 일 실시예에 따른 그래픽 처리 장치를 보여주는 도면이다.
도 2는 도 1에 도시된 에지 관리 유닛의 구체적인 구성의 일 예를 보여주는 블록도이다.
도 3은 도 2에 도시된 메모리의 제1 메모리 영역 및 제2 메모리 영역의 구성을 예시적으로 보여주는 도면이다.
도 4a는 도 1에 도시된 디스플레이 패널의 스캔 라인들을 보여주는 도면이고, 도 4b는 도 4a에 도시된 디스플레이 패널의 스캔 라인들과 도 2에 도시된 메모리의 제1 메모리 영역 및 제2 메모리 영역의 대응 관계를 예시적으로 보여주는 도면이다.
도 5a는 디스플레이 패널에 표시되는 영상의 일 예를 보여주는 도면이고, 도 5b는 도 5a에 도시된 영상에 따른 버킷 정보 및 에지 정보가 메모리에 저장된 일 예를 보여주는 도면이다.
도 6a은 디스플레이 패널의 스캔 라인들을 스캔 라인 블록으로 그룹화하는 일 예를 보여주고 있고, 도 6b는 도 6a에 도시된 스캔 라인 블록들과 메모리에 저장되는 버킷 정보 및 에지 정보의 관계를 예시적으로 보여주는 도면이다.
도 7은 본 발명의 다른 실시예에 따른 에지 관리 유닛을 보여주는 블록도이다.
도 8은 도 7에 도시된 에지 기입 컨트롤러의 동작 수순을 보여주는 플로우차트이다.
도 9는 도 7에 도시된 에지 독출 컨트롤러의 동작 수순을 보여주는 플로우차트이다.
이하 본 발명의 실시예를 첨부된 도면들을 참조하여 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 그래픽 처리 장치를 보여주는 도면이다.
도 1을 참조하면, 그래픽 처리 장치(100)는 메모리(200) 및 디스플레이 패널(300)과 전기적으로 연결된다. 그래픽 처리 장치(100)는 에지 정보 처리에 필요한 버킷 정보 및 에지 데이터를 메모리(200)에 저장하거나 또는 메모리(200)로부터 버킷 정보(bucket information) 및 에지 데이터(edge data)를 독출한다. 그래픽 처리 장치(100)는 메모리(200)로부터 독출된 버킷 정보 및 에지 데이터에 따라서 영상 신호를 디스플레이 패널(300)로 출력한다.
그래픽 처리 장치(100)는 테셀레이션 및 트랜스폼 유닛(tesselation and transform unit, 110), 에지 관리 유닛(edge management unit, 120), 래스터라이저(rasteriser, 130), 프래그먼트 유닛(fragment unit, 140) 그리고 프레임 버퍼(150)를 포함한다. 테셀레이션 및 트랜스폼 유닛(110)은 외부의 그래픽 소스로부터 영상 신호를 수신하고, 수신된 영상 신호로부터 물체의 표면을 다각형으로 쪼개고, 쪼개진 다각형의 에지 데이터를 추출한다. 추출된 에지 데이터(EG(S, E))는 두 점을 연결하는 직선의 에지 좌표(S, E)를 포함한다. 에지 좌표(S, E)에서 S는 직선의 시작점의 좌표(px1, py1)이고, E는 직선의 끝점의 좌표(px2, py2)이다. 즉, 에지 좌표는 ((px1, py1),(px2, py2))로 표현될 수 있다. 에지 데이터(EG(S, E)))는 에지 관리 유닛(120)으로 제공된다.
에지 관리 유닛(120)은 기입 모드동안 입력된 에지 데이터(EG(S, E))에 대응하는 버킷 정보를 생성하고, 버킷 정보 및 및 에지 데이터(EG(S, E))를 메모리(200)에 저장한다. 에지 관리 유닛(120)은 독출 모드동안 메모리(200)로부터 버킷 정보를 독출하고, 독출된 버킷 정보에 따라서 에지 데이터(EG(S, E))를 메모리(200)로부터 독출한다.
래스터라이저(130)는 에지 관리 유닛(120)에서 독출한 에지 데이터(EG(S, E))를 이용하여 래스터 이미지(raster image)로 변환한다. 프래그먼트 유닛(140)은 래스터 이미지에 테스쳐 매핑(texture mapping), 포깅(fogging), 알파 테스트(alpha test), 스텐실 테스트(sencil test), 블렌딩(blending), 디더링(dithering) 등의 동작을 수행하여 영상 데이터를 프레임 버퍼(150)에 저장한다. 프레임 버퍼(150)에 저장된 영상 데이터는 디스플레이 패널(300)에 디스플레이될 수 있다.
도 2는 도 1에 도시된 에지 관리 유닛의 구체적인 구성의 일 예를 보여주는 블록도이다.
도 2를 참조하면, 에지 관리 유닛(120)은 에지 기입 컨트롤러(121) 및 에지 독출 컨트롤러(122)를 포함한다. 에지 기입 컨트롤러(121)는 도 1에 도시된 테슬레이션 및 트랜스폼 유닛(110)으로부터의 에지 데이터(EG(S, E))를 입력받고, 에지 데이터(EG(S, E))에 대응하는 버킷 정보(Ymin(BID, ECNT))를 생성한다. 에지 기입 컨트롤러(121)는 버킷 정보(Ymin(BID, ECNT))를 메모리(200)의 제1 메모리 영역(210)에 저장하고, 메모리(200)의 제2 메모리 영역(220) 내 버킷 정보(Ymin(BID, ENCT))가 지정하는 위치에 에지 데이터(EG(S, E))를 저장한다.
에지 독출 컨트롤러(122)는 래스터라이저(130)로부터의 스캔 라인 신호(i)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로보부터 버킷 정보(Yi(BID, ECNT))를 독출하고, 독출된 버킷 정보(Yi(BID, ECNT))가 지정하는 메모리(200)의 제2 메모리 영역(220) 내 위치로부터 에지 데이터(EG(S, E))를 독출한다.
메모리(200)는 제1 메모리 영역(210) 및 제2 메모리 영역(220)을 포함한다. 메모리(200)는 제1 메모리 영역(210) 및 제2 메모리 영역(220) 외에 다른 메모리 영역들을 더 포함할 수 있다.
래스터라이저(130)는 스캔 라인 신호(i)를 출력한다. 래스터라이저(130)는 도 1에 도시된 디스플레이 패널(300)의 복수의 스캔 라인들에 각각 대응하는 스캔 라인 신호(i)를 순차적으로 출력한다.
도 3은 도 2에 도시된 메모리의 제1 메모리 영역 및 제2 메모리 영역의 구성을 예시적으로 보여주는 도면이다.
도 3을 참조하면, 메모리(200)는 제1 메모리 영역(210)과 제2 메모리 영역(220)을 포함한다. 메모리(200)의 제1 메모리 영역(210)은 복수의 필드들을 포함한다.
메모리(200)의 제2 메모리 영역(220)은 복수의 버킷 영역들을 포함한다. 버킷 영역들 각각은 버킷 아이디(BID)에 의해서 액세스될 수 있다. 버킷 영역들 각각에는 복수 개의 에지 데이터들과 인덱스(IDX)가 저장된다.
도 4a는 도 1에 도시된 디스플레이 패널의 스캔 라인들을 보여주는 도면이고, 도 4b는 도 4a에 도시된 디스플레이 패널의 스캔 라인들과 도 2에 도시된 메모리의 제1 메모리 영역 및 제2 메모리 영역의 대응 관계를 예시적으로 보여주는 도면이다.
도 4a를 참조하면, 디스플레이 패널(300)은 복수의 행들과 복수의 열들로 배열된 복수의 픽셀들(미 도시됨)을 포함한다. X축과 Y축이 교차하는 위치에 놓인 픽셀의 좌표는 P(X, Y)이다.
도 4b를 참조하면, 제1 메모리 영역(210)의 복수의 필드들은 디스플레이 패널(300)의 Y축 즉, 스캔 라인들(Y0-Yn)에 각각 대응한다. 이하 설명에서 디스플레이 패널(300)의 Y축 좌표는 스캔 라인이라 칭한다. 복수의 필드들 각각은 대응하는 스캔 라인에 위치한 에지 데이터에 대한 버킷 정보(BID, ECNT)를 저장한다. 예컨대, 스캔 라인(Y0)의 버킷 정보는 'Y0(BID, ECNT)'로 표현된다. 즉, 제2 메모리 영역(220)의 버킷 영역을 지정하는 버킷 아이디(BID) 및 제2 메모리 영역(220)의 버킷 영역에 저장된 좌표 개수인 에지 카운트(ECNT)를 포함한다.
메모리(200)의 제2 메모리 영역(220) 내 복수의 버킷 영역들 각각은 에지 데이터(EG(S,E))를 저장한다. 하나의 버킷 영역에 저장되는 복수의 에지 데이터들(EG(S, E))은 최저점이 동일한 에지들의 좌표이다. 즉, 동일한 스캔 라인 상에 놓여진 복수의 에지 데이터들(EG(S, E))은 버킷(bucket)으로 묶여 지고, 메모리(200)의 제2 메모리 영역(220) 내 동일한 버킷 영역에 저장된다.
이 실시예에서, 메모리(200)의 제2 메모리 영역(220) 내 각 버킷 영역은 버킷 아이디(BID)에 의해서 액세스될 수 있으며, 하나의 버킷 영역은 최대 L(L은 양의 정수)개의 에지 데이터들(EG(S, E))을 저장할 수 있다. 또한 버킷 영역들 각각은 인덱스(IDX)를 더 저장한다. 인덱스(IDX)는 동일한 스캔 라인 상에 놓여진 복수의 에지 데이터들(EG(S, E))이 저장된 또다른 버킷 영역을 지정한다. 동일한 스캔 라인 상에 놓여진 에지 데이터(EG(S, E))의 수가 버킷 영역에 최대 저장 가능한 수(Q)보다 클 때 다수의 버킷 영역들을 연결하기 위하여 인덱스(IDX)가 사용된다.
도 5a는 디스플레이 패널에 표시되는 영상의 일 예를 보여주는 도면이고, 도 5b는 도 5a에 도시된 영상에 따른 버킷 정보 및 에지 정보가 메모리에 저장된 일 예를 보여주는 도면이다. 도 2 및 도 5b를 참조하여 도 2에 도시된 에지 관리 유닛(120)의 동작이 이하 설명된다.
도 2, 도 5a 및 도 5b를 참조하면, 디스플레이 패널(300)에는 다수의 직선들이 표시된다. 도 1에 도시된 테셀레이션 및 트랜스폼 유닛(110)은 직선(A)에 대한 에지 데이터(EG((5, 8), (27, 30)))를 출력하고, 직선(B)의 에지 데이터(EG(35, 40), (45, 8))), 직선(C)에 대한 에지 데이터(EG((1, 75), (1, 88))) 그리고 직선들(D)에 대한 에지 데이터를 순차적으로 출력한다. 직선들(D)에 대한 에지 데이터는 직선(C)의 에지 데이터와 Y축 좌표는 동일하고, X축 좌표만 상이하다. 직선들(D)의 수는 예컨대 81개인 것으로 가정한다.
에지 기입 컨트롤러(121)는 테셀레이션 및 트랜스폼 유닛(110)으로부터 에지 데이터(EG(S, E))를 입력받는다. 일반적으로 에지 데이터(EG(S, E))가 입력되는 순서는 랜덤하다.
초기에 제1 메모리 영역(210)의 각 필드 내 에지 카운트(ECNT)는 0으로 설정된다. 이후 에지 기입 컨트롤러(121)는 입력된 에지 데이터(EG(S, E))에 대응하는 버킷 정보 즉, 버킷 아이디(BID) 및 에지 카운트(ECNT)를 생성하고, 생성된 버킷 아이디(BID) 및 에지 카운트(ECNT)를 메모리(200)에 저장한다.
도 5b에 도시된 영상에 대응하는 일련의 에지 데이터(EG(S, E))가 수신되었을 때 에지 기입 컨트롤러(121)에 의해서 메모리(200)에는 다음과 같은 버킷 정보 및 에지 데이터가 저장된다. 우선, 스캔 라인들(Y0-Y7) 상에는 어떠한 에지들도 존재하지 않으므로 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인들(Y0-Y7)에 각각 대응하는 필드들의 에지 카운트(ECNT)는 0으로 유지된다. 이때 어떠한 에지도 포함하지 않는 스캔 라인에 대응하는 버킷 아이디는 0 또는 소정의 값으로 설정될 수 있다.
예컨대, 직선(A)에 대한 에지 데이터가 먼저 수신되고, 직선(B)에 대한 에지 데이터가 수신된 것으로 가정하자. 직선(A)에 대한 에지 데이터가 수신되면 에지 기입 컨트롤러(121)는 에지 데이터(EG(5, 8), (27, 30)) 중 스캔 라인의 최소점(Ymin)을 검색한다. 에지 데이터(EG((px1, py1),(px2, py2)))에서, py1<py2이면, 최소점(Ymin)은 py1이고, py1>py2이면, 최소점(Ymin)은 py2이다. 도 5a에 도시된 예에서, 에지 데이터(EG(5, 8), (27, 30))의 최소점(Ymin)은 8이다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210)의 8번째 스캔 라인(Y8)에 대응하는 필드로부터 버킷 정보(Y8(BID, ENCT))를 독출한다. 에지 기입 컨트롤러(121)는 독출된 에지 카운트(ECNT)가 제2 메모리 영역(220)의 각 버킷 영역에 최대 저장 가능한 에지 데이터의 수보다 작은지 판별한다. 제2 메모리 영역(220)의 각 버킷 영역에 최대 저장 가능한 에지 데이터의 수가 31인 것으로 가정한다. 독출된 에지 카운트(ECNT)는 0이므로 버킷 아이디(BID)가 지정하는 위치에 에지 데이터를 저장할 수 있다.
에지 기입 컨트롤러(121)는 에지 카운트(ECNT)가 0이므로, 제2 메모리 영역(220) 중 비어있는 버킷 영역을 지정하는 새로운 버킷 아이디(BID)를 설정하고, 제1 메모리 영역(210) 내 필드들 중 8번째 스캔 라인(Y8)에 대응하는 필드의 에지 카운트(ECNT)를 1만큼 증가시킨다. 에지 기입 컨트롤러(121)는 제1 메모리 영역(210) 내 필드들 중 8번째 스캔 라인(Y8)에 대응하는 필드에 버킷 정보(Y0(BID, ECNT))를 저장하고, 제2 메모리 영역(220) 중 버킷 아이디(BID)가 지정하는 위치에 에지 데이터(EG(35, 40), (45, 8))를 저장한다.
계속해서 직선(B)에 대한 에지 데이터가 수신되면 에지 기입 컨트롤러(121)는 에지 데이터(EG(35, 40), (45, 8)) 중 스캔 라인의 최소점(Ymin)을 검색한다. 직선(B)에 대한 에지 데이터(EG(35, 40), (45, 8))의 최소점(Ymin)도 8이다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210)의 8번째 스캔 라인(Y8)에 대응하는 필드로부터 버킷 정보(Y8(BID, ENCT))를 독출한다. 에지 기입 컨트롤러(121)는 독출된 에지 카운트(ECNT)가 제2 메모리 영역(220)의 각 버킷 영역에 최대 저장 가능한 에지 데이터의 수보다 작은지 판별한다. 제2 메모리 영역(220)의 각 버킷 영역에 최대 저장 가능한 에지 데이터의 수가 31이고, 독출된 에지 카운트(ECNT)는 1이므로 버킷 아이디(BID)가 지정하는 위치에 에지 데이터를 더 저장할 수 있다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210) 내 필드들 중 8번째 스캔 라인(Y8)에 대응하는 필드의 에지 카운트(ECNT)는 1만큼 증가시킨다. 또한 에지 기입 컨트롤러(121)는 제2 메모리 영역(220) 중 독출된 버킷 아이디(BID)가 지정하는 위치에 에지 데이터(EG(35, 40), (45, 8))를 저장한다.
계속해서 직선(C)에 대한 에지 데이터가 수신되면 에지 기입 컨트롤러(121)는 에지 데이터(EG((1, 75), (1, 88)) 중 스캔 라인의 최소점을 검색한다. 직선(C)에 대한 에지 데이터(EG((1, 75), (1, 88)))의 최소점(Ymin)은 75이다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210)의 75번째 스캔 라인(Y75)에 대응하는 필드로부터 버킷 정보(Y75(BID, ENCT))를 독출한다. 에지 기입 컨트롤러(121)는 독출된 에지 카운트(ECNT)가 0이므로, 제2 메모리 영역(220) 중 비어있는 버킷 영역을 지정하는 새로운 버킷 아이디(BID=1)를 설정하고, 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드의 에지 카운트(ECNT)를 1만큼 증가시킨다. 에지 기입 컨트롤러(121)는 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드에 버킷 정보(Y75(BID, ECNT))를 저장하고, 제2 메모리 영역(220) 중 버킷 아이디(BID=1)가 지정하는 위치에 에지 데이터(EG((1, 75), (1, 88)))를 저장한다.
다음 직선들(D)에 대한 에지 데이터가 순차적으로 수신된다. 직선들(D)은 직선(C)의 에지 데이터와 Y축 좌표는 동일하고, X축 좌표만 상이하다. 직선들(D)의 최저점들 각각은 스캔 라인(Y75)에 위치하므로 직선들(D)의 에지 데이터는 제2 메모리 영역(220) 내 동일한 버킷 영역에 저장되어야 한다. 그러나 앞서 언급한 바와 같이, 제2 메모리 영역(220) 내 버킷 영역 각각이 31개의 에지 데이터만을 저장할 수 있으므로 직선(C) 및 직선들(D)은 제2 메모리 영역(220) 내 동일한 버킷 영역에 저장될 수 없다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210)의 Y75로부터 독출된 카운트값이 31이면 제2 메모리 영역(220) 중 비어있는 버킷 영역을 지정하는 새로운 버킷 아이디(BID=4)를 설정하고, 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드의 에지 카운트(ECNT)를 1만큼 증가시킨다. 에지 기입 컨트롤러(121)는 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드에 버킷 정보(Y75(BID=4, ECNT=32))를 저장하고, 제2 메모리 영역(220) 중 버킷 아이디(BID=4)가 지정하는 위치에 31번째 직선(D)에 대한 에지 데이터를 저장한다. 이 때 에지 기입 컨트롤러(121)는 제2 메모리 영역(220) 중 버킷 아이디(BID=4)가 지정하는 위치에 인덱스(IDX)를 이전 버킷 아이디인 1로 설정한다.
이와 같은 방법으로 31번째부터 62번째까지의 직선들(D)에 대한 에지 데이터가 제2 메모리 영역(220)의 버킷 아이디(BID=4)가 지정하는 위치에 저장된다.
에지 기입 컨트롤러(121)는 제1 메모리 영역(210)의 Y75로부터 독출된 카운트값이 63이면 제2 메모리 영역(220) 중 비어있는 버킷 영역을 지정하는 새로운 버킷 아이디(BID=6)를 설정하고, 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드의 에지 카운트(ECNT)를 1만큼 증가시킨다. 에지 기입 컨트롤러(121)는 제1 메모리 영역(210) 내 필드들 중 75번째 스캔 라인(Y75)에 대응하는 필드에 버킷 정보(Y75(BID=6, ECNT=63))를 저장하고, 제2 메모리 영역(220) 중 버킷 아이디(BID=6)가 지정하는 위치에 62번째 직선(D)에 대한 에지 데이터를 저장한다. 이 때 에지 기입 컨트롤러(121)는 제2 메모리 영역(220) 중 버킷 아이디(BID=6)가 지정하는 위치에 인덱스(IDX)를 이전 버킷 아이디인 4로 설정한다.
이와 같은 방법으로 63번째부터 81번째까지의 직선들(D)에 대한 에지 데이터가 제2 메모리 영역(220)의 버킷 아이디(BID=6)가 지정하는 위치에 저장된다.
계속해서 도 2에 도시된 에지 독출 컨트롤러(120)의 동작이 설명된다. 도 2에 도시된 래스터라이저(130)는 스캔 라인들을 순차적으로 스캔하기 위한 스캔 신호(i)를 출력한다. 예컨대, 스캔 신호(i)는 스캔 라인(Y0)부터 스캔 라인(Yn)까지 순차적으로 스캔하기 위하여 0부터 n까지 순차적으로 변화한다.
에지 독출 컨트롤러(122)는 스캔 신호(i)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Yi(BID, ECNT))를 독출하고, 제2 메모리 영역(220)으로부터 에지 데이터(EG(S, E))를 독출한다.
에지 독출 컨트롤러(122)는 스캔 신호(i=0)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Y0(BID, ECNT))를 독출한다. 도 5a 및 도 5b에 도시된 예에서, 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인(Y0)에 대응하는 필드의 에지 카운트는 0이다. 그러므로, 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)을 액세스하지 않는다. 마찬가지로 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인들(Y1-Y7)에 대응하는 필드들 각각의 에지 카운트는 0이므로, 스캔 신호(i)가 1부터 7까지 변화하는 동안 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)을 액세스하지 않는다.
에지 독출 컨트롤러(122)는 스캔 신호(i=8)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Y8(BID, ECNT))를 독출한다. 도 5b에 도시된 예에서, 버킷 정보(Y8(BID, ECNT)) 중 버킷 아이디(BID)는 5이고, 에지 카운트(ECNT)는 2이다. 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)의 버킷 영역들 중 버킷 아이디(BID=5)가 지정하는 버킷 영역으로부터 에지 데이터 (EG(5, 8), (27, 30)) 및 ((EG(35, 40), (45, 8)))를 독출한다. 에지 독출 컨트롤러(122)는 독출된 에지 데이터(EG(5, 8), (27, 30)) 및 ((EG(35, 40), (45, 8)))를 래스터라이저(130)로 제공한다. 래스터라이저(130)는 에지 독출 컨트롤러(122)로부터 수신된 에지 데이터를 버퍼(131)에 저장한다.
계속해서 에지 독출 컨트롤러(122)는 스캔 신호(i=9)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Y9(BID, ECNT))를 독출한다. 도 5a 및 도 5b에 도시된 예에서, 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인(Y9)에 대응하는 필드의 에지 카운트는 0이다. 그러므로, 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)을 액세스하지 않는다. 마찬가지로 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인들(Y10-Y74)에 대응하는 필드들 각각의 에지 카운트는 0이므로, 스캔 신호(i)가 10부터 74까지 변화하는 동안 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)을 액세스하지 않는다.
다음 에지 독출 컨트롤러(122)는 스캔 신호(i=75)에 응답해서 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Y75(BID, ECNT))를 독출한다. 도 5a 및 도 5b에 도시된 예에서, 메모리(200)의 제1 메모리 영역(210) 내 스캔 라인(Y75)에 대응하는 필드의 에지 카운트는 82이다. 도 5b에 도시된 예에서, 버킷 정보(Y75(BID, ECNT)) 중 버킷 아이디(BID)는 6이고, 에지 카운트(ECNT)는 82이다. 에지 독출 컨트롤러(122)는 제2 메모리 영역(220)의 버킷 영역들 중 버킷 아이디(BID=6)가 지정하는 버킷 영역으로부터 에지 데이터를 독출한다. 에지 독출 컨트롤러(122)는 독출된 에지 데이터를 래스터라이저(130)로 제공한다. 래스터라이저(130)는 에지 독출 컨트롤러(122)로부터 수신된 에지 데이터를 버퍼(131)에 저장한다. 에지 독출 컨트롤러(122)는 제2 메모리 영역(220) 내 버킷 아이디(BID=6)이 지정하는 위치로부터 20개의 에지 데이터를 독출한 후 인덱스(IDX=4)가 지정하는 위치 즉, 버킷 아이디(BID=4)가 지정하는 위치로부터 31개의 에지 데이터를 독출한다. 또한 인덱스(IDX=1)가 지정하는 위치 즉, 버킷 아이디(BID=1)가 지정하는 위치로부터 31개의 에지 데이터를 독출한다. 에지 독출 컨트롤러(122)는 독출된 에지 데이터를 래스터라이저(130)로 제공한다. 래스터라이저(130)는 에지 독출 컨트롤러(122)로부터 수신된 에지 데이터를 버퍼(131)에 저장한다.
이와 같은 역방향 링크 리스트(reverse way link to list)로 에지 데이터를 제2 메모리 영역(220)에/로부터 기입/독출하면 에지 데이터 기입 및 독출 속도가 더 향상될 수 있다.
본 발명의 일 실시예에 따른 에지 기입 컨트롤러(121)는 입력된 에지 데이터(EG(S, E))에 대응하는 버킷 정보(Y(BID, ECNT))를 제1 메모리 영역(210)에 저장하고, 에지 데이터(EG(S, E))는 제2 메모리 영역(220)에 저장한다. 에지 독출 컨트롤러(122)는 제1 메모리 영역(210)으로부터 독출된 버킷 정보(Y(BID, ECNT))에 따라서 선택적으로 제2 메모리 영역(220)을 액세스한다. 그러므로 에지 데이터가 포함되지 않은 스캔 라인에 대해서는 메모리 액세스가 불필요하므로 메모리 대역폭이 감소한다.
도 2에 도시된 래스터라이저(130)는 버퍼(131)에 저장된 에지 정보들 중 유효한(valid) 에지 데이터만을 저장하고, 무효화된 에지 데이터는 삭제한다. 즉, 래스터라이저(130)는 (Ymax>= 현재 스캔 라인+1)이면 버퍼(131)에 저장된 에지 데이터는 무효한 것으로 간주하고 삭제한다. 에지 데이터(Y(px1, py1), (px2, py2)) 중 py1>py2일 때 Ymax는 py1이고, py1<py2일 때 Ymax는 py2이다. 또한 현재 스캔 라인은 스캔 라인 신호(i)에 대응하는 스캔 라인이다. 그러므로 래스터라이저(130) 내 버퍼(131)의 크기를 최소화할 수 있다.
도 6a은 디스플레이 패널의 스캔 라인들을 스캔 라인 블록으로 그룹화하는 일 예를 보여주고 있고, 도 6b는 도 6a에 도시된 스캔 라인 블록들과 메모리에 저장되는 버킷 정보 및 에지 정보의 관계를 예시적으로 보여주는 도면이다.
도 6a를 참조하면, 디스플레이 패널(300)은 n+1개의 스캔 라인들(Y0-Yn)을 포함한다. 예컨대 4의 스캔 라인들은 하나의 스캔 라인 블록으로 그룹화될 수 있다. 즉, 스캔 라인들(Y0-Y3)은 스캔 라인 블록(YB0)으로 그룹화되고, 스캔 라인들(Y4-Y7)은 스캔 라인 블록(YB1)으로 그룹화된다.
도 6b를 참조하면, 메모리(200)는 제1 메모리 영역(210)과 제2 메모리 영역(220)을 포함한다. 메모리(200)의 제1 메모리 영역(210)은 복수의 필드들을 포함한다. 메모리(200)의 제1 메모리 영역(210) 내 복수의 필드들 각각은 도 6a에 도시된 스캔 라인 블록들(YB0-YBnn)에 각각 대응한다. 즉, 스캔 라인 블록(YB0) 내 스캔 라인들(Y0-Y3) 중 어느 하나에 위치한 에지 데이터들은 제2 메모리 영역(220) 내 동일한 버킷 영역에 저장될 수 있다. 이와 같은 스캔 라인 블록화 스킴은 영상 데이터가 비교적 간단한 경우, 즉, 에지 데이터의 수가 많지 않은 경우 메모리의 공간 낭비를 최소화할 수 있다.
도 7은 본 발명의 다른 실시예에 따른 에지 관리 유닛을 보여주는 블록도이다.
도 7을 참조하면, 에지 관리 유닛(400)은 도 2에 도시된 에지 관리 유닛(120)과 달리 캐쉬 메모리(430)를 더 포함한다. 에지 기입 컨트롤러(410)는 도 1에 도시된 테슬레이션 및 트랜스폼 유닛(110)으로부터의 에지 데이터(EG(S, E))를 입력받고, 에지 데이터(EG(S, E))에 대응하는 버킷 정보(Ymin(BID, ECNT))를 생성한다. 에지 기입 컨트롤러(121)는 버킷 정보(Ymin(BID, ECNT))를 캐쉬 메모리(430)에 저장하고, 메모리(200)의 제2 메모리 영역(220) 내, 버킷 정보(Ymin(BID, ENCT))가 지정하는 위치에 에지 데이터(EG(S, E))를 저장한다.
캐쉬 메모리(430)는 에지 기입 컨트롤러(410)가 메모리(200)에 저장된 버킷 정보(Ymin(BID, ECNT))를 독출 및 기입하는 업데이트 과정에서 소요되는 시간 및 메모리(200) 대역폭의 감소를 위해 사용된다. 캐쉬 메모리(430)에 저장된 모든 버킷 정보는 메모리(200)의 제1 메모리 영역(210)으로 카피-백(copy-back)된다.
도 8은 도 7에 도시된 에지 기입 컨트롤러의 동작 수순을 보여주는 플로우차트이다.
에지 기입 컨트롤러(410)는 도 1에 도시된 테슬레이션 및 트랜스폼 유닛(110)으로부터의 에지 데이터(EG(S, E))를 입력받는다(단계 S510). 에지 데이터는 직선의 두 점을 나타내는 에지의 좌표((px1, py1),(px2, py2))를 포함한다.
에지 기입 컨트롤러(410)는 에지 데이터(EG(S, E)) 중 최소점(Ymin)을 찾는다(단계 S512). 즉, py1<py2이면(S512), 최소점(Ymin)은 py1이고(S513), py1>py2이면, 최소점(Ymin)은 py2이다(S514).
에지 기입 컨트롤러(410)는 캐쉬 메모리(430)로부터 버킷 정보(Ymin(BID, ENCT))를 독출한다(단계 S516). 만일 캐쉬 히트(cache hit)이면 캐쉬 메모리(430)는 버킷 정보(Ymin(BID, ENCT))를 에지 기입 컨트롤러(410)로 제공할 수 있다. 만일 캐쉬 미스(cache miss)이면 캐쉬 메모리(430)는 메모리(200)의 제1 메모리 영역(210)으로부터 버킷 정보(Ymin(BID, ENCT))를 가져와서 에지 기입 컨트롤러(410)로 제공할 수 있다.
에지 기입 컨트롤러(410)는 캐쉬 메모리(430)로부터 독출된 버킷 정보(Ymin(BID, ENCT)) 중 에지 카운트(ECNT)가 0인 지를 판별한다(단계 S518). 만일 에지 카운트(ECNT)가 0이면, 에지 기입 컨트롤러(410)는 제2 메모리 영역(220) 중 에지 데이터(EG(S, E))가 저장될 위치를 나타내는 새로운 버킷 아이디(BID)를 할당한다(단계 S520).
에지 기입 컨트롤러(410)는 캐쉬 메모리(430)로부터 독출된 버킷 정보(Ymin(BID, ENCT)) 중 에지 카운트(ECNT)가 소정의 값인 지를 판별한다(단계 S522). 제2 메모리 영역(220) 내 버킷 아이디가 지정하는 위치에 최대 저장 가능한 에지 데이터의 수가 L개이면 소정의 값은 L의 배수이다. 예컨대, 제2 메모리 영역(220) 내 버킷 아이디가 지정하는 위치에 최대 저장 가능한 에지 데이터의 수가 31이면 소정의 값은 31, 62, 93, …으로 순차적으로 설정된다.
만일 에지 카운트(ECNT)가 소정의 값이면, 에지 기입 컨트롤러(410)는 제2 메모리 영역(220) 중 에지 데이터(EG(S, E))가 저장될 위치를 나타내는 새로운 버킷 아이디(BID)를 할당하고, 인덱스(IDX)를 이전 버킷 아이디(BID)로 설정한다(단계 S524).
에지 기입 컨트롤러(410)는 에지 카운트(ECNT)를 1만큼 증가시킨다(단계 S526). 에지 기입 컨트롤러(410)는 에지 정보(Ymin(BID, ECNT))를 캐쉬 메모리(430)에 저장하고, 에지 데이터(EG(S, E))를 메모리(200)의 제2 메모리 영역(220) 내, 버킷 아이디(BID)가 지정하는 위치에 저장한다.
도 9는 도 7에 도시된 에지 독출 컨트롤러의 동작 수순을 보여주는 플로우차트이다.
도 9를 참조하면, 에지 독출 컨트롤러(420)는 래스터라이저(130)로부터 스캔 라인 신호(i)를 입력받는다(i). 에지 독출 컨트롤러(420)는 스캔 라인 신호(i)에 대응하는 버킷 정보(Yi(BID, ECNT)를 메모리(200)의 제1 메모리 영역(210)으로부터 독출한다. 에지 독출 컨트롤러(420)는 독출된 에지 카운트(ECNT)가 0인지를 판별한다. 만일 에지 카운트가 0이면 i번째 스캔 라인에 에지 데이터가 없음을 의미한다. 그러므로 에지 독출 컨트롤러(420)가 메모리(200)의 제2 메모리 영역(220)을 액세스하지 않는다. 제어는 단계 S610으로 진행하여 새로운 스캔 라인 신호(i)를 입력받는다.
만일 에지 카운트가 0이 아니면(단계 614), 에지 독출 컨트롤러(420)는 메모리(200)의 제2 메모리 영역(220) 내 버킷 영역들 중 독출된 버킷 아이디(BID)가 지정하는 버킷 영역으로부터 에지 데이터(EG(S, E)) 및 인덱스(IDX)를 독출한다(단계 S616). 독출된 에지 데이터(EG(S, E))는 래스터라이저(130)로 제공된다.
에지 독출 컨트롤러(420)는 인덱스(IDX)가 유효한 값인 지를 판별한다(단계 S618). 만일 인덱스(IDX)가 널(null) 데이터이거나 미리 설정된 소정의 무효한 값이면 제어는 단계 S610으로 진행하여 새로운 스캔 라인 신호(i)를 입력받는다. 만일 인덱스(IDX)가 유효한 값이면 에지 독출 컨트롤러(420)는 제2 메모리 영역(220) 내 인덱스(IDX)가 지정하는 위치로부터 에지 데이터(EG(S, E))를 독출한다(단계 S620). 에지 독출 컨트롤러(420)에 의해서 독출된 에지 데이터(EG(S, E))는 래스터라이저(130)로 제공된다. 계속해서 제어는 단계 S618로 리턴한다. 그러므로 역방향 링크 리스트 방식으로 저장된 에지 데이터들이 모두 독출될 때까지 단계 S618 및 단계 S620은 반복적으로 수행된다.
100: 그래픽 처리 장치 110: 테셀레이션 및 트랜스폼 유닛
120: 에지 관리 유닛 121, 410: 에지 기입 컨트롤러
122, 420: 에지 독출 컨트롤러 130: 래스터라이저
140: 프래그먼트 유닛 150: 프레임 버퍼
200: 메모리 210: 제1 메모리 영역
220: 제2 메모리 영역 300: 디스플레이 패널
430: 캐쉬 메모리

Claims (10)

  1. 제1 메모리 영역 및 제2 메모리 영역을 포함하는 메모리를 액세스하는 에지 관리 유닛에 있어서:
    입력된 에지 데이터에 대응하는 버킷 정보를 상기 제1 메모리 영역에 저장하고, 그리고 상기 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 에지 기입 컨트롤러; 그리고
    스캔 라인 신호에 응답해서 상기 제1 메모리 영역으로부터 상기 버킷 정보를 독출하고, 상기 제2 메모리 영역 중 독출된 버킷 정보가 지정하는 위치로부터 상기 에지 데이터를 독출하는 에지 독출 컨트롤러를 포함하는 것을 특징으로 하는 에지 관리 유닛.
  2. 제 1 항에 있어서,
    상기 제1 메모리 영역은 복수의 스캔 라인들에 각각 대응하는 복수의 필드들을 포함하며, 상기 복수의 필드들 각각에는 상기 버킷 정보가 저장되는 것을 특징으로 하는 에지 관리 유닛.
  3. 제 2 항에 있어서,
    상기 제2 메모리 영역은 복수의 버킷 영역들을 포함하고, 상기 복수의 버킷 영역들 각각은 최저점이 동일한 최대 L(L은 양의 정수)개의 에지 데이터 및 인덱스를 저장하는 것을 특징으로 하는 에지 관리 유닛.
  4. 제 3 항에 있어서,
    상기 버킷 정보는 상기 제2 메모리 영역 내 상기 버킷 영역들 중 적어도 하나를 지정하는 버킷 아이디 및 상기 지정된 버킷 영역에 저장된 상기 에지 데이터의 수를 나타내는 에지 카운트를 포함하는 것을 특징으로 하는 에지 관리 유닛.
  5. 제 4 항에 있어서,
    상기 에지 데이터는 에지의 좌표((px1, py1), (px2, py2))를 포함하되, py1 및 py2 각각은 스캔 라인을 의미하는 것을 특징으로 하는 에지 관리 유닛.
  6. 제 5 항에 있어서,
    상기 에지 기입 컨트롤러는,
    상기 에지의 좌표((px1, py1), (px2, py2)) 중 py1<py2일 때 py1을 최저점(Ymin)으로 설정하고, py1>py2일 때 py2를 상기 최저점(Ymin)으로 설정하고, 상기 제1 메모리 영역 내 복수의 필드들 중 상기 최저점에 대응하는 필드에 상기 버킷 아이디 및 상기 에지 카운트를 저장하고, 상기 버킷 아이디가 지정하는 상기 제2 메모리 영역 내 상기 버킷 영역에 상기 에지 좌표를 저장하는 것을 특징으로 하는 에지 관리 유닛.
  7. 제 6 항에 있어서,
    상기 에지 기입 컨트롤러는,
    상기 에지 카운트가 0일 때 상기 제2 메모리 영역 내 비어있는 버킷 영역을 지정하는 새로운 버킷 아이디를 상기 제1 메모리 영역 내 복수의 필드들 중 상기 최저점에 대응하는 필드에 저장하고, 상기 새로운 버킷 아이디가 지정하는 상기 제2 메모리 영역 내 상기 버킷 영역에 상기 에지 좌표를 저장하는 것을 특징으로 하는 에지 관리 유닛.
  8. 제 1 항에 있어서,
    상기 버킷 정보를 저장하기 위한 캐쉬 메모리를 더 포함하며;
    상기 에지 기입 컨트롤러는 입력된 에지 데이터에 대응하는 버킷 정보를 상기 캐쉬 메모리에 저장하고, 그리고 상기 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하되,
    상기 캐쉬 메모리에 저장된 상기 버킷 정보는 상기 제1 메모리 영역으로 카피백(copy-back)되는 것을 특징으로 하는 에지 관리 유닛.
  9. 제1 메모리 영역 및 제2 메모리 영역을 포함하는 메모리와;
    입력된 에지 데이터에 대응하는 버킷 정보를 상기 제1 메모리 영역에 저장하고, 그리고 상기 제2 메모리 영역 중 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 에지 기입 컨트롤러와;
    스캔 라인 신호에 응답해서 상기 제1 메모리 영역으로부터 상기 버킷 정보를 독출하고, 상기 제2 메모리 영역 중 독출된 버킷 정보가 지정하는 위치로부터 상기 에지 데이터를 독출하는 에지 독출 컨트롤러; 그리고
    상기 스캔 라인 신호를 출력하며, 에지 독출 컨트롤러에 의해서 독출된 에지 데이터를 래스터 이미지로 변환하는 래스터라이저를 포함하는 것을 특징으로 하는 그래픽 처리 장치.
  10. 에지 데이터를 입력하는 단계와;
    상기 에지 데이터의 최저점을 검색하는 단계; 그리고
    상기 최저점에 대응하는 버킷 정보를 제1 메모리에 저장하고, 제2 메모리 내 상기 버킷 정보가 지정하는 위치에 상기 에지 데이터를 저장하는 단계를 포함하는 것을 특징으로 하는 에지 관리 방법.
KR1020110010727A 2011-02-07 2011-02-07 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법 KR20120090354A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110010727A KR20120090354A (ko) 2011-02-07 2011-02-07 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법
US13/348,359 US9053560B2 (en) 2011-02-07 2012-01-11 Edge management unit for 2-dimension vector graphics, graphic processing apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110010727A KR20120090354A (ko) 2011-02-07 2011-02-07 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20120090354A true KR20120090354A (ko) 2012-08-17

Family

ID=46600361

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110010727A KR20120090354A (ko) 2011-02-07 2011-02-07 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법

Country Status (2)

Country Link
US (1) US9053560B2 (ko)
KR (1) KR20120090354A (ko)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5016189A (en) * 1988-07-06 1991-05-14 Ricoh Company, Ltd. Area filling device
JP2712912B2 (ja) * 1991-08-23 1998-02-16 日本電気株式会社 エッジリスト作成装置
US5808617A (en) * 1995-08-04 1998-09-15 Microsoft Corporation Method and system for depth complexity reduction in a graphics rendering system
TW360823B (en) * 1996-09-30 1999-06-11 Hitachi Ltd Data processor and graphic processor
JP4164272B2 (ja) * 2001-04-24 2008-10-15 キヤノン株式会社 画像処理装置及び画像処理方法
JP4085204B2 (ja) 2003-09-05 2008-05-14 株式会社オーク製作所 描画用ベクタデータの処理方法及び描画装置
US20050065263A1 (en) 2003-09-22 2005-03-24 Chung James Y.J. Polycarbonate composition
KR100954638B1 (ko) 2008-04-03 2010-04-27 재단법인서울대학교산학협력재단 벡터 그래픽스 래스터라이제이션 방법
KR101039132B1 (ko) 2008-11-11 2011-06-03 엠진 (주) 2차원 벡터 그래픽 처리를 위한 라스터라이저 및 그 방법
KR20100066165A (ko) 2008-12-09 2010-06-17 서울대학교산학협력단 백터 그래픽스 기술에 있어서 스캔라인 기반의 랜더링 방법및 그에 따른 장치

Also Published As

Publication number Publication date
US20120200584A1 (en) 2012-08-09
US9053560B2 (en) 2015-06-09

Similar Documents

Publication Publication Date Title
CN105405103B (zh) 通过在空间上和/或在时间上改变采样模式增强抗锯齿
US7280121B2 (en) Image processing apparatus and method of same
CN101615191B (zh) 海量点云数据的存储与实时可视化方法
CN106204712B (zh) 分段线性不规则光栅化
US7439983B2 (en) Method and apparatus for de-indexing geometry
JP4977712B2 (ja) ディスプレースクリーン上に立体画像をレンダリングするコンピュータグラフィックスプロセッサならびにその方法
US9013479B2 (en) Apparatus and method for tile-based rendering
CN102033809A (zh) 控制从存储器中读取数据阵列的方法和装置
KR20120096119A (ko) 그래픽 프로세서 및 조기 가시성 테스트 방법
JPH09245179A (ja) コンピュータグラフィックス装置
CN109978750B (zh) 执行基于采样的渲染的图形处理器和操作其的方法
CN113012269A (zh) 基于gpu的三维图像数据渲染方法及设备
DE102010048486A1 (de) Bildverarbeitungstechniken
JP2009099098A (ja) コンピュータグラフィックス描画装置及び描画方法
EP1598784A2 (en) Texture mapping apparatus and texel transfer method
CN111127299A (zh) 一种加速光栅化遍历的方法、装置及计算机存储介质
CN114037795A (zh) 一种不可见像素的剔除方法、装置及存储介质
KR101039132B1 (ko) 2차원 벡터 그래픽 처리를 위한 라스터라이저 및 그 방법
JP2003323339A (ja) メモリアクセス装置、半導体デバイス、メモリアクセス制御方法、コンピュータプログラム及び記録媒体
US11748933B2 (en) Method for performing shader occupancy for small primitives
KR20120090354A (ko) 2차원 벡터 그래픽스를 위한 에지 관리 유닛과 그것을 포함하는 그래픽 처리장치 및 그 방법
US20100141649A1 (en) Drawing device
CN116188552B (zh) 基于区域的深度测试方法、装置、设备及存储介质
KR20080064528A (ko) 3차원 그래픽 가속기 그리고 텍스쳐 데이터 패치 방법
CN116957900A (zh) 图形处理器、系统、电子装置、设备及图形处理方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid