KR20110019764A - 스케일링가능하고 통합된 컴퓨팅 시스템 - Google Patents

스케일링가능하고 통합된 컴퓨팅 시스템 Download PDF

Info

Publication number
KR20110019764A
KR20110019764A KR1020107029824A KR20107029824A KR20110019764A KR 20110019764 A KR20110019764 A KR 20110019764A KR 1020107029824 A KR1020107029824 A KR 1020107029824A KR 20107029824 A KR20107029824 A KR 20107029824A KR 20110019764 A KR20110019764 A KR 20110019764A
Authority
KR
South Korea
Prior art keywords
texture
texel data
data
shader
level
Prior art date
Application number
KR1020107029824A
Other languages
English (en)
Other versions
KR101427408B1 (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 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20110019764A publication Critical patent/KR20110019764A/ko
Application granted granted Critical
Publication of KR101427408B1 publication Critical patent/KR101427408B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/121Frame memory handling using a cache memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/125Frame memory handling using unified memory architecture [UMA]
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

Abstract

스케일링가능하고 통합된 컴퓨팅 시스템이 스케일링가능하고 리페어가능한 범용의 그래픽 쉐이딩 동작, 메모리 로드/저장 동작, 및 텍스처 필터링을 수행한다. 스케일링가능하고 통합된 컴퓨팅 유닛 모듈이 쉐더 파이프 어레이, 텍스처 맵핑 유닛, 및 레벨 1 텍스처 캐시 시스템을 포함한다. 스케일링가능하고 통합된 컴퓨팅 유닛 모듈이, 쉐이더 프로그램으로부터의 픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 범용 컴퓨팅 워크 아이템들의 특정된 세트에 대한 텍스처 혹은 메모리 요청들, 및 ALU 명령들, 입력/출력 명령들을 수용하고, 그리고 프로그래밍된 출력 데이터를 컴퓨팅하기 위해 관련 동작을 수행한다. 텍스처 맵핑 유닛이 소스 데이터 어드레스들 및 명령어 상수들을 수용하여, 지시받은 필터링 인터폴레이션들이 페치, 포맷, 및 수행되고, 포맷된 결과들이 레벨 1 텍스처 캐시 시스템에 저장된 특정의 대응하는 데이터에 근거하여 발생된다. 텍스처 맵핑 유닛은 어드레스 발생 시스템, 프리-포맷터 모듈, 인터폴레이터 모듈, 축적기 모듈 및 포맷 모듈로 구성된다. 스케일링가능하고 통합된 컴퓨팅 시스템을 위한 방법이 또한 제시된다.

Description

스케일링가능하고 통합된 컴퓨팅 시스템{SCALABLE AND UNIFIED COMPUTE SYSTEM}
본 발명은 일반적으로 컴퓨팅 시스템들에 의해 수행되는 컴퓨팅 동작들에 관한 것으로, 특히 컴퓨팅 시스템들에 의해 수행되는 그래픽 프로세싱 태스크들에 관한 것이다.
그래픽 프로세싱 유닛(Graphics Processing Unit, GPU)은, 그래픽 프로세싱 태스크들을 수행하도록 특별히 구성된 복합 집적 회로이다. 예를 들어, GPU는, 비디오 게임 애플리케이션과 같은, 최종 사용자 애플리케이션에 의해 요구되는 그래픽 프로세싱 태스크들을 실행한다. 이러한 애플리케이션의 경우, 예를 들어, 최종 사용자 애플리케이션과 GPU 간에는 수 개의 소프트웨어 층들이 있다.
최종 사용자 애플리케이션은 애플리케이션 프로그래밍 인터페이스(Application Programming Interface, API)와 통신한다. API는 최종 사용자 애플리케이션으로 하여금 GPU에 의존하는 포맷이 아닌 표준화된 포맷으로 그래픽 데이터 및 커맨드들을 출력할 수 있게 한다. 마이크로소프트사(Microsoft Corp.)에 의해 개발된 다이렉트X(DirectX®) 및 실리콘 그래픽사(Silicon Graphics, Inc.)에 의해 개발된 오픈GL(OpenGL®)을 포함하는 수가지 타입의 API들이 상업적으로 이용가능하다. API는 드라이버와 통신한다. 드라이버는 API로부터 수신된 표준 코드를 GPU가 이해하는 명령들의 네이티브 포맷(native format)으로 변환한다. 드라이버는 전형적으로 GPU의 제조자에 의해 기입된다. 그 다음, GPU는 드라이버로부터의 명령들을 실행한다.
GPU는 "렌더링(rendering)"으로서 알려진 프로세스를 수행함으로써, 개별 픽셀들을 생산, 즉 생성시키는바, 이 개별 픽셀들은 이미지 컴포넌트들의 고레벨 기술(description)에 근거하여 함께 이미지를 형성한다. GPU는 전형적으로, 픽셀(pixel), 텍스처(texture), 및 기하학적 데이터(geometric data)를 프로세싱하기 위해 파이프라인(pipeline)들을 사용하여 연속적 렌더링을 수행한다. 이러한 파이프라인들은 종종, 쉐이더 파이프들 혹은 쉐이더 파이프라인들에서 달성될 수 있는, 래스터라이저(rasterizer)들, 셋업 엔진(setup engine)들, 컬러 블렌더(color blender)들, 하이어래틱컬 깊이(hieratical depth), 텍스처 맵핑(texture mapping) 및 프로그래밍가능 스테이지(programmable stage)들과 같은, 고정된 기능의 특수 목적 파이프라인들의 집합체로서 언급되며, 여기서 "쉐이더(shader)"는 주로 렌더링 효과를 수행하기 위해 그래픽 리소스에 의해 사용되는 소프트웨어 명령들의 세트를 말하는 컴퓨터 그래픽 용어이다. 추가적으로, GPU는 또한, 더 큰 쓰루풋(throughput)을 얻기 위해 병렬 프로세싱 방식으로 복수의 프로그래밍가능 파이프라인들을 사용할 수도 있다. 복수의 쉐이더 파이프라인들은 또한 쉐이더 파이프 어레이(shader pipe array)로서 언급될 수 있다.
쉐이더 파이프 어레이가 자신의 계속되는 렌더링 프로세스를 수행함에 따라, 파이프라인에서의 제조 결함들이 인식될 수 있고, 그리고 후속적 고장이 파이프라인 내에서 일어날 수 있다. 임의의 로직 리페어(logic repair) 없이, 시스템에서의 작은 결함 혹은 고장은 치명적일 수 있고, 그리고 결함이 있는 디바이스를 만들 수 있다.
추가적으로, GPU들은 또한 텍스처 맵핑을 지원한다. 텍스처 맵핑은, 이웃 텍스처의 픽셀들, 혹은 텍셀(texel)들의 컬러의 사용을 통해 텍스처 맵핑된 픽셀에 대한 텍스처 컬러를 결정하기 위해 사용되는 프로세스이다. 이 프로세스는 또한 텍스처 스무딩(texture smoothing) 혹은 텍스처 인터폴레이션(texture interpolation)으로 언급된다. 그러나, 높은 이미지 품질의 텍스처 맵핑은 큰 연산 복잡도를 요구한다.
새로운 소프트웨어 애플리케이션들의 복잡도가 계속 증가하고, API 쉐이더 언어가 진보하고 있기 때문에, 높은 품질의 렌더링, 텍스처 맵핑을 제공함과 아울러 향상된 렌더링 및 범용화된 컴퓨팅, 컴퓨팅 복잡도에 대해 메모리 액세스를 범용화시키는 GPU에 대한 요구들이 더 증가하고 있다.
추가적으로, 통합된 쉐이더(Unified Shader)를 구비한 GPU들은 또한, 픽셀, 버텍스(vertex), 프리미티브(primitive), 서피스(surface)로부터 여러 타입의 쉐이더 프로세싱을 동시에 지원하고, 그리고 범용화된 컴퓨팅은 더 높은 성능의 범용화된 메모리 액세스 능력에 대한 요구를 증가시키고 있다.
따라서, 필요한 것은 앞서 언급된 결점들을 완화시키는 시스템 및/또는 방법이다. 특히, 필요한 것은, 전체 시스템 성능에 최소한의 영향을 미치면서, 결함이 있는 내부 서브회로의 영향을 극복하는 능력과 함께, 범용화된 로드/저장 동작이 가능한 다용도 텍스처 맵핑 시스템을 갖는, 쉐이더 파이프를 위한 스케일링가능한 통합 쉐이더 설계 방법이다.
이 섹션의 목적은 본 발명의 일부 실시형태를 개괄하는 것과 그리고 일부 바람직한 실시예들을 간략하게 소개하는 것이다. 이 섹션의 목적이 모호하게 되지 않도록 하기 위해 설명은 간략하게 제공되거나 생략되어 제공된다. 이러한 간략한 설명 혹은 생략된 설명이 본 발명의 범위를 제한하려는 것은 아니다.
본 명세서에서 구체화되고 넓게 설명되는 본 발명의 원리와 일관되는 것으로서, 본 발명은 로우 기반의 스케일링가능하고 통합된 컴퓨팅 유닛 모듈(row based Scalable and Unified Compute Unit Module)에 관한 방법 및 장치를 포함한다. 이 스케일링가능하고 통합된 컴퓨팅 유닛 모듈(scalable and unified compute unit module)은 쉐이더 파이프 어레이(shader pipe array) 및 텍스처 맵핑 유닛(texture mapping unit)을 레벨 1 캐시 시스템(level one cache system)과 함께 포함하여, 결함이 있는 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 프로세싱하는 능력과 함께 텍스처 맵핑 및 범용 로드/저장 액세스들이 수행되게 한다. 이 스케일링가능하고 통합된 컴퓨팅 시스템은 시퀀서(sequencer)를 포함한다. 스케일링가능하고 통합된 컴퓨팅 유닛 모듈이 레벨 2 텍스처 캐시 시스템에 액세스할 수 있고, 따라서 외부 메모리 시스템에 액세스할 수 있다. 스케일링가능하고 통합된 컴퓨팅 시스템은, 쉐이더 파이프들로부터의 어드레스 데이터, 그리고 프로그램어 상수들을 갖는 입력, 출력, ALU 및 텍스처 혹은 범용 메모리 로드/저장 요청을 포함하는, 실행되는 쉐이더 프로그램 명령을 수용하도록 구성되어, 특정 픽셀 혹은 쓰레드에 대한 파이프라인 어드레스 및 필터링 동작을 제어하는 상태 데이터에 근거하여 리턴 텍셀 혹은 메모리 데이터가 발생되게 한다. 텍스처 필터 시스템이 쉐이더 프로그램 명령 및 상수에 근거하여 구성되어, 포맷된 인터폴레이션이 쉐이더 파이프라인에 저장된 어드레스들에 대한 캐시 시스템에 저장된 텍셀 데이터에 근거하여 발생되게 한다.
본 발명의 실시예에서, 로우 기반의 쉐이더 파이프 스케일링가능하고 통합된 컴퓨팅 시스템은 또한 리던던트 쉐이더 파이프 시스템(redundant shader pipe system)을 포함한다. 이 리던던트 쉐이더 파이프 시스템은 쉐이더 파이프 어레이에서의 결함이 있는 쉐이더 파이프들로 갈 쉐이더 파이프 데이터를 프로세싱 하도록 구성된다.
또 다른 실시예에서, 로우 기반의 스케일링가능하고 통합된 컴퓨팅 시스템은 또한 레벨 2 텍스처 캐시 시스템(level two texture cache system)을 포함한다. 이 레벨 2 텍스처 캐시 시스템은 임의의 레벨 1 로우 기반의 텍스처 캐시 시스템에 대해 판독 및 기입될 수 있다.
또 다른 실시예에서, 스케일링가능하고 통합된 컴퓨팅 유닛 모듈에서의 텍스처 맵핑 유닛 내의 텍스처 필터는 또한, 프리-포맷터 모듈(pre-formatter module), 인터폴레이터 모듈(interpolator module), 축적기 모듈(accumulator module), 및 포맷 모듈(format module)을 포함한다. 프리-포맷터 모듈은 텍셀 데이터를 수신하여 이것을 정규화된 고정 포인트 포맷(normalized fixed point format)으로 변환하도록 구성된다. 인터폴레이터 모듈은 프리-포맷터 모듈로부터의 이 정규화된 고정 포인트 텍셀 데이터에 인터폴레이션을 수행함과 아울러 다시 정규화된 플로팅 포인트 텍셀 데이터를 발생시키도록 구성된다. 축적기 모듈은, 원하는 레벨의 바이리니어(bilinear), 트리리니어(trilinear), 및 이방성(anisotropic) 필터링을 달성하기 위해, 인터폴레이터 모듈로부터의 플로팅 포인트 텍셀 데이터(floating point texel data)를 축적하도록 구성된다. 포맷 모듈은 축적기 모듈로부터의 텍셀 데이터를 표준 플로팅 포인트 표현으로 변환하도록 구성된다.
본 발명의 추가적 특징 및 장점 그리고 본 발명의 다양항 실시예들의 구조 및 동작은, 첨부되는 도면을 참조하여 아래에서 상세히 설명된다. 본 발명이 본 명세서에서 설명되는 특정 실시예에만 한정되는 것이 아님에 주목해야 한다. 이러한 실시예들은 단지 예시적 목적으로 본 명세서에 제공된다. 추가적인 실시예들이 본 명세서에 포함된 가르침에 근거하여 관련 기술분야에서 숙련된 자들에게는 명백하게 될 것이다.
본 명세서의 일부를 구성함과 아울러 본 명세서에 통합되는 첨부되는 도면은, 본 발명의 실시예들을 나타내고, 위에서 제공된 일반적인 설명 및 아래에서 제공되는 상세한 설명과 함께, 본 발명의 원리를 설명하는 역할을 한다.
도 1은 스케일링가능하고 통합된 컴퓨팅 시스템의 실시예를 나타낸 시스템도이다.
도 2는 쉐이더 파이프 어레이의 세부사항을 설명하는 스케일링가능하고 통합된 컴퓨팅 시스템의 실시예를 나타낸 시스템도이다.
도 3은 텍스처 맵핑 유닛의 세부사항을 설명하는 스케일링가능하고 통합된 컴퓨팅 시스템의 실시예를 나타낸 시스템도이다.
도 4는 스케일링가능하고 통합된 컴퓨팅 시스템을 위한 방법의 실시예를 나타낸 흐름도이다.
본 발명의 특징 및 장점은 도면과 연계될 때 아래에서 설명되는 상세한 설명으로부터 명백하게 될 것이고, 도면에서 동일한 참조 부호는 도면 전체에 걸쳐 대응하는 요소를 나타낸다. 도면에서, 동일한 참조 번호는 일반적으로, 동일한, 기능적으로 유사한, 그리고/또는 구조적으로 유사한 요소들을 표시한다. 해당하는 구성요소가 처음 나오는 도면은, 그 대응하는 참조 번호에서 가장 왼편에 있는 숫자로 표시된다.
본 발명은, 본 발명의 다양한 "실시예들"의 다음의 설명으로부터 더 잘 이해될 수 있다. 따라서, 특정 "실시예들"은 본 발명의 개관들이고, 하지만 그 각각이 본 발명 전체는 아니다. 이러한 점에서 본 발명은, 스케일링가능하고 통합된 컴퓨팅 시스템에 관한 것으로, 이 시스템에 의해, 쉐이더 파이프 어레이는, 발생된 텍셀 데이터 혹은 메모리 로드/저장 동작을 사용하여 각각의 아이템에 대한 출력 데이터를 생성하기 위해, 입력 픽셀, 버텍스, 및 프리미티브, 서피스, 혹은 컴퓨팅 워크 아이템들에 관해 쉐이더 프로그램 명령들을 프로세싱한다. 본 발명의 실시예들에서, 바이리니어 텍스처 맵핑, 트리리니어 텍스처 맵핑, 및 이방성 텍스처 맵핑이 복수 레벨 캐시 시스템에 저장된 텍셀 데이터에 적용된다. 또 다른 실시예에서, 리던던트 쉐이더 시스템이 부가될 수 있고, 이 리던던트 쉐이더 시스템은, 하나 이상의 쉐이더 파이프들에서의 결함이 있는 서브회로를 갖는 디바이스들을 복원하기 위해 쉐이더 파이프 어레이 내의 결함이 있는 쉐이더 파이프들로 가는 쉐이더 파이프 데이터를 프로세싱하도록 구성될 수 있다.
둘 이상의 스케일링가능하고 통합된 컴퓨팅 시스템들, 이 통합된 컴퓨팅 유닛 시스템 자체의 서브세트를 포함하는 구성을 갖는 본 발명의 실시예들은 리페어가능 유닛(repairable unit)이 되도록 구성될 수 있다. 이러한 실시예들에서, 결함이 있는 통합된 컴퓨팅 유닛 시스템으로 갈 워크로드(workload)들은 대신 리던던트의 통합된 컴퓨팅 유닛 시스템에 전송되어, 모든 ALU, 텍스처, 및 메모리 동작이 프로세싱될 수 있다. 이것은, 텍스처 맵핑 유닛 및 L1 캐시 시스템을 포함한다는 점 때문에, 리페어에 의해 커버되는 디바이스의 부분이 크게 증가하고, 따라서 이러한 디바이스의 수율을 크게 향상시킨다.
특정 구성, 정렬, 및 단계들이 설명되지만, 이것은 단지 예시적 목적으로 설명되는 것임을 이해해야만 한다. 관련 기술분야에서 숙련된 자라면, 다른 구성, 정렬, 및 단계들이 본 발명의 사상 및 범위를 벗어남이 없이 사용될 수 있음을 알 수 있을 것이다. 본 발명이 다양한 다른 애플리케이션에서도 또한 사용될 수 있음이 관련 기술분야에서 숙련된 자에게는 명백할 것이다.
본 명세서에서 언급되는 "일 실시예", "실시예", "예시적 실시예" 등이 나타내는 바는, 설명되는 실시예가 특정된 특징, 구조, 혹은 특성을 포함할 수 있지만, 모든 실시예가 그 특정된 특징, 구조 혹은 특성을 반드시 포함할 필요는 없음을 나타낸다는 것에 주의해야 한다. 더욱이, 이러한 어구가 반드시 동일한 실시예를 말하는 것은 아니다. 더욱이, 특정된 특징, 구조, 혹은 특성이 실시예와 함께 설명될 때, 명시적으로 설명되고 있든 그렇지 않든 상관없이, 이러한 특징, 구조, 혹은 특성을 다른 실시예들과 결합하여 통합하는 것은 본 발명의 기술분야에서 숙련된 자의 인식 범위 내에 있는 것이다.
본 발명이 본 명세서에서 특정 애플리케이션에 대해 예시적 실시예들을 참조하여 설명되지만, 본 발명이 이러한 것에만 한정되는 것은 아님을 이해해야만 한다. 본 명세서에서 제공되는 가르침에 액세스할 수 있는 본 발명의 기술분야에서 숙련된 자들은 본 발명의 범위 내에서 추가적인 수정, 응용, 및 실시예를 인식할 수 있을 것이고, 그리고 본 발명의 효용도가 크게 드러날 수 있는 추가적인 분야도 인식할 수 있을 것이다.
도 1은 본 발명의 실시예에 따른, 스케일링가능하고 통합된 컴퓨팅 시스템(100)을 나타낸다. 시스템(100)은 시퀀서(110), 스케일링가능하고 통합된 컴퓨팅 유닛 모듈(120), 및 레벨 2 캐시 시스템(130)을 포함한다. 스케일링가능하고 통합된 컴퓨팅 유닛 모듈(120)은 쉐이더 파이프 어레이(122), 선택적인 리던던트 쉐이더 파이프 어레이(124), 텍스처 맵핑 유닛(126), 및 레벨 1 텍스처 캐시 시스템(128)을 포함한다.
쉐이더 파이프 어레이(122)는 입력 데이터에 관한 ALU 동작을 수행한다. 시퀀서(110)는, 포함된 워크로드들에 대한 쉐이더 프로그램 명령 발행 및 쉐이더 파이프 어레이(122)를 통한 데이터의 흐름을 제어한다. 추가적으로, 리던던트 쉐이더 파이프 어레이(124)가 존재하는 실시예에서, 시퀀서(110)는, 명령들을 적절한 리던던트 유닛들에 스케쥴링함으로써 쉐이더 파이프 어레이(122) 내에서 일어나는 결함있는 쉐이더 파이프들에 반응한다.
시퀀서(110)는 텍스처 페치(texture fetch) 혹은 로드/저장 동작을 발행할 수 있고, 이것은 쉐이더 파이프 어레이(122)로 하여금, 발행된 명령을 갖는 어드레스들을 텍스처 맵핑 유닛(126)에 전송하도록 개시시킨다. 이 경우에, 텍스처 맵핑 유닛(126)은 이 어드레스들과 관련된 텍셀 데이터 혹은 메모리 데이터를 포함하는 레벨 1 텍스처 캐시 시스템(128)에 적절한 어드레스들을 발생시킨다. 레벨 1 캐시 시스템(128)은, 이 어드레스들을 수신한 이후, 관련된 텍셀 혹은 데이터를 텍스처 맵핑 유닛(126)에 반환할 것이다. 요청된 텍셀 혹은 메모리 데이터가 레벨 1 캐시 시스템(128)에 존재하지 않는 경우, 이 요청은 레벨 2 캐시 시스템(130)으로 포워딩되어 이 요청된 텍셀 데이터가 획득되어 반환된다.
도 2는 본 발명의 실시예에 따른, 쉐이더 파이프 어레이(122)의 더 세부적 도면이 포함된 스케일링가능하고 통합된 컴퓨팅 유닛 모듈(120)을 나타낸다. 이 실시예에서, 쉐이더 파이프 어레이(122)는 하나 이상의 쉐이더 파이프 블럭들을 포함하고, 여기서는 SP_0 내지 SP_M으로 나타나 있고, 여기서 "M"은 1보다 큰 양의 정수를 나타낸다.
리던던트 쉐이더 파이프 어레이(124)가 존재하는 실시예에서, 만약 시퀀서(110)가, 예를 들어, 쉐이더 파이프 블럭(SP_1)에 위치하고 있는 쉐이더 파이프에 결함이 있다고 식별한다면, 결함이 있는 파이프에 갈 쉐이더 파이프 데이터는 입력 모듈에 의해 입력 스트림을 통해 리던던트 쉐이더 파이프 어레이(124)로 전송되고, 이 리던던트 쉐이더 파이프 어레이(124)에 의해 프로세싱된다. 모든 텍스처 맵핑 요청들은, 시퀀서(110)로부터 수평 제어 경로(211)를 통해 지시되는 경우, 리던던트 쉐이더 파이프 어레이(124)에 의해 인터셉트(intercept)된다. 리던던트 쉐이더 파이프 어레이(124)가 결함이 있는 쉐이더 파이프로 초기에 갈 쉐이더 파이프 데이터를 프로세싱하는 경우, 이 프로세싱된 리던던트 쉐이더 파이프 어레이(124) 데이터는, 리던던트 쉐이더 파이프 어레이(124)로부터 쉐이더 파이프(122)의 출력 스트림으로 다시 전달되고, 출력 유닛(미도시)에서 재정렬된다.
일 실시예에서, 리던던트 쉐이더 파이프 어레이(124)는 단일 블럭으로 구성되어 있고, 따라서 결함이 있는 단일의 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 한번에 단지 프로세싱할 수 있다. 리던던트 쉐이더 파이프 어레이(124)가 복수개의 리던던트 쉐이더 블럭들을 포함하는 또 다른 실시예에서는, 리던던트 쉐이더 파이프 어레이(124)는 결함이 있는 하나 이상의 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 동시에 프로세싱할 수 있다.
도 3은 본 발명의 실시예에 따른 텍스처 맵핑 유닛(126)의 더 상세한 도면을 나타낸다. 이 실시예에서, 쉐이더 파이프 어레이(122)는 텍스처 혹은 메모리 로드/저장 요청을 텍스처 맵핑 유닛(126)에 발생시키며, 이 텍스처 맵핑 유닛(126)은 어드레스 발생기 시스템(318), 프리-포맷터 모듈(310), 인터폴레이터 모듈(312), 축적기 모듈(314), 및 포맷 모듈(316)을 포함한다. 텍스처 맵핑 유닛(126)은 쉐이더 어레이들(122 및 124)과 시퀀서(110) 각각으로부터의 요청을 수신하고, 그리고 어드레스 발생기 시스템(318)에서 명령을 프로세싱하여 서비스에 대한 실제 어드레스가 결정되도록 한다. 레벨 1 텍스처 캐시 시스템(128)으로부터 결과적인 텍셀 데이터가 수신되고, 이후 이 데이터는 프리-포맷터 모듈(310), 인터폴레이터 모듈(312), 축적기 모듈(314), 및 포맷 모듈(316)에서 프로세싱된다. 결과적인 텍셀 데이터가 쉐이더 파이프 어레이(122) 및/또는 리던던트 쉐이더 파이프 어레이(124)에서의 요청 리소스에 다시 전송된다. 프리-포맷터 모듈(310)은 텍셀 데이터를 수신함과 아울러 블럭 정규화를 수행하도록 구성되고, 그럼으로써 정규화된 고정 포인트 텍셀 데이터를 발생시킨다. 인터폴레이터 모듈(312)이 이 정규화된 고정 포인트 텍셀 데이터를 프리-포맷터 모듈(310)로부터 수신하고, 그리고 하나 이상의 인터폴레이션들을 수행하고, 그 각각은 축적기 모듈(314)에 축적되어, 원하는 레벨의 바이리니어, 트리리니어, 및 이방성 텍스처 맵핑이 달성될 수 있게 한다. 포맷 모듈(316)은 축적기 모듈(314)에서의 축적된 텍셀 데이터를 요청 리소스, 즉 쉐이더 파이프 어레이(122)에 대한 표준 플로팅 포인트 표현으로 변환시킨다. 범용의 로드/저장 데이터에 대해, 프리-포맷터 모듈(310), 인터폴레이터 모듈(312), 축적기 모듈(314), 및 포맷 모듈(316)은 요청된 반환 데이터를 수정되지 않은 상태로 전달한다.
도 3에 의해 제시되는 실시예는 또한 레벨 2 캐시 시스템(130)을 사용하는 것을 나타낸다. 레벨 2 캐시 시스템은 추가적인 메모리로서, 데이터를 레벨 1 캐시 시스템(128)으로부터 판독 및/또는 레벨 1 캐시 시스템(128)에 기입하는 것이 필요하거나 바람직할 때, 스케일링가능하고 통합된 컴퓨터 유닛 모듈(120)에 대해 이용가능한 메모리이다.
도 4는 스케일링가능하고 통합된 컴퓨팅 시스템을 사용하는 텍스처 맵핑을 위한 방법(400)을 나타내 흐름도이다. 이 방법(400)은 단계(402)에서 시작한다. 단계(404)에서, 쉐이더 파이프는, 픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨터 워크 아이템들의 특정된 세트에 대한 텍스처 요청들의 세트를 시퀀서로부터 수신한다. 단계(406)에서, 쉐이더 파이프가, 픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 이 특정된 세트에 대한 쉐이더 프로그램 명령들에 근거하여 어드레스들의 데이터 세트를 발생시킨다. 단계(408)에서, 텍스처 맵핑 유닛은 저장된 텍셀 데이터를 레벨 1 및/또는 레벨 2 텍스처 캐시 시스템으로부터 검색한다. 더욱이, 단계(410)에서, 텍스처 맵핑 유닛은, 포맷되고 축적된 인터폴레이션을 상기 검색된 텍셀 데이터 및 발신 쉐이더 명령(originating shader instruction)에 근거하여 계산한다. 이 방법(400)은 단계(412)에서 끝난다.
도 1, 도 2, 도 3, 및 도 4에서 설명된 기능들, 프로세스들, 시스템들, 방법들은 소프트웨어, 펌웨어, 혹은 하드웨어로 구현될 수 있거나, 또는 이들의 임의의 조합을 사용하여 구현될 수 있다. 만약 프로그래밍가능 로직이 사용된다면, 이러한 로직은 상업적으로 입수가능한 프로세싱 플랫폼 혹은 특수 목적 디바이스 상에 실행될 수 있다.
관련 기술분야에 숙련된 자에게는 명백한 바와 같이, 본 명세서에서의 설명에 근거하여, 본 발명의 실시예들은, 하드웨어 기술 언어(Hardware Description Language, HDL), 예를 들어, 베리로그(Verilog) 혹은 VHDL과 같은 언어를 사용하여 소프트웨어로 설계될 수 있다. HDL-설계는 전자 시스템의 동작을 모델링할 수 있고, 이 경우 이러한 설계는 합성될 수 있으며, 궁극적으로 하드웨어 디바이스로 제조될 수 있다. 추가적으로 HDL-설계는 컴퓨터물에 저장될 수 있고, 그리고 하드웨어 제조 이전에 컴퓨터 시스템에 로딩될 수 있다.
개요 및 요약서 부분이 아닌 발명의 상세한 설명 부분이 특허청구범위를 해석하는데 사용되도록 의도된 부분임을 이해해야 한다. 개요 및 요약서 부분은, 본 발명의 발명자(들)에 의해 고려된 바와 같이, 본 발명의 하나 이상의 예시적 실시예들을 설명할 수는 있지만, 모든 예시적 실시예들을 설명하는 것은 아니고, 따라서 본 발명 및 첨부되는 청구항들을 어떠한 식으로든 한정하도록 의도되지 않았다.
본 발명은, 특정된 기능들 및 이들의 관계의 구현을 나타내는 기능적 빌딩 블럭들의 도움을 받아 앞서 설명되었다. 이러한 기능적 빌딩 블럭들의 경계는 설명의 편의를 위해 본 명세서에서 임의적으로 정의되었다. 이 특정된 기능들 및 이들의 관계가 적절하게 수행되는 한 다른 경계들이 정의될 수 있다.
특정 실시예들의 앞서의 설명은 본 발명의 전반적 성질을 완전히 밝히고 있으며, 이것은 본 발명의 기술분야에서 숙련된 기술 범위 내의 정보를 적용함으로써, 과도한 실험 없이, 그리고 본 발명의 전반적 개념을 벗어남이 없이, 다른 사람들이 이러한 특정된 실시예들의 다양한 애플리케이션들을 위해 쉽게 수정 및/또는 조작할 수 있게 한다. 따라서, 이러한 조작 및 수정은, 본 명세서에서 제시되는 가르침 및 안내에 근거하여, 이 개시되는 실시예들과 등가의 의미 및 범위 내에 있는 것으로 고려될 수 있다. 본 명세서의 어구 혹은 용어는 한정의 의미로 사용된 것이 아니고 설명의 목적으로 사용되었고 따라서 본 명세서의 용어 혹은 어구는 그 가르침 및 안내의 견지에서 볼 때 숙련된 기술자들에 의해 해석돼야 함을 이해해야 한다.
본 발명의 다양한 실시예들이 앞서 설명되었지만, 이들은 한정적 의미를 갖지 않으며, 단지 예시적으로 제공되었음을 이해해야만 한다. 관련 기술 분야에서의 숙련된 자들에게는 명백한 것으로서, 본 발명의 사상 및 범위를 벗어남이 없이 그 형태 및 세부적 사항에 있어 다양한 변경이 행해질 수 있다. 따라서, 본 발명의 범위 및 영역은 앞서 설명된 예시적 실시예들 중 어떠한 것에 의해서도 제한돼서는 안 되고, 단지 다음의 특허청구범위 및 그 등가물에 따라서만 정의돼야만 한다.

Claims (25)

  1. 스케일링가능하고 통합된 컴퓨팅 모듈(scalable and unified compute module)로서,
    텍스처 명령(texture instruction)들을 수용하고 출력 데이터를 발생시키도록 되어 있는 쉐이더 파이프 어레이(shader pipe array)와;
    텍스처 출력 데이터를 저장하도록 되어 있는 레벨 1 텍스처 캐시 시스템(level one texture cache system)과; 그리고
    상기 레벨 1 텍스처 캐시 시스템으로부터 텍스처 출력 데이터를 수신함과 아울러 포맷된 인터폴레이션 데이터(formatted interpolation data)를 발생시키도록 되어 있는 텍스처 맵핑 유닛(texture mapping unit)을 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  2. 제1항에 있어서,
    상기 쉐이더 파이프 어레이는 ALU, 로드/저장, 및 출력 명령들을 수용하도록 되어있는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  3. 제1항에 있어서,
    상기 쉐이더 파이프 어레이의 결함이 있는 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 프로세싱하도록 되어 있는 리던던트 쉐이더 파이프 어레이(redundant shader pipe array)를 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  4. 제1항에 있어서,
    상기 쉐이더 파이프 어레이는 하나 이상의 쉐이더 파이프 블럭들을 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  5. 제4항에 있어서,
    쉐이더 파이프 블럭은 하나 이상의 쉐이더 파이프들을 포함하도록 되어 있는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  6. 제1항에 있어서,
    상기 레벨 1 텍스처 캐시 시스템은 레벨 2 캐시 시스템에 대한 판독 및 기입을 행하도록 되어 있는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  7. 제1항에 있어서,
    상기 텍스처 맵핑 유닛은,
    텍셀 데이터를 수용함과 아울러 정규화된 고정 포인트 텍셀 데이터를 발생시키도록 되어 있는 프리포맷터 모듈(pre-formatter module)과;
    상기 프리포맷터 모듈로부터의 상기 정규화된 고정 포인트 텍셀 데이터에 인터폴레이션을 수행함과 아울러 다시 정규화된 플로팅 포인트 텍셀 데이터를 발생시키도록 되어 있는 인터폴레이터 모듈(interpolator module)과;
    상기 인터폴레이터 모듈로부터의 플로팅 포인트 텍셀 데이터를 축적하도록 되어 있는 축적기 모듈(accumulator module)과; 그리고
    상기 축적기 모듈로부터의 텍셀 데이터를 표준 플로팅 포인트 표현으로 변환하도록 되어 있는 포맷 모듈(format module)을 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  8. 제7항에 있어서,
    상기 인터폴레이터 모듈은,
    바이리니어 텍스처 필터링(bilinear texture filtering)과;
    트리리니어 텍스처 필터링(trilinear texture filtering)과; 그리고
    이방성 텍스처 필터링(anisotropic texture filtering) 중 적어도 하나를 달성하기 위해 하나 이상의 인터폴레이션들을 수행하도록 되어 있는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 모듈.
  9. 스케일링가능하고 통합된 컴퓨팅 방법으로서,
    픽셀들, 버텍스(vertex)들, 프리미티브(primitive)들, 서피스(surface)들, 혹은 컴퓨팅 워크 아이템(compute work item)들의 특정된 세트에 대한 텍스처 요청들의 세트를 수신하는 단계와;
    픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 상기 특정된 세트에 대한 쉐이더 프로그램 명령에 근거하여 어드레스들의 데이터 세트를 발생시키는 단계와;
    저장된 텍셀 데이터를 레벨 1 캐시 시스템으로부터 검색하는 단계와; 그리고
    포맷되고 축적된 인터폴레이션을 상기 검색된 텍셀 데이터 및 발신 쉐이더 명령(originating shader instruction)에 근거하여 계산하는 단계를 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  10. 제9항에 있어서,
    결함이 있는 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 프로세싱하는 단계를 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  11. 제9항에 있어서,
    상기 레벨 1 텍스처 캐시 시스템으로부터 판독을 행하고 상기 레벨 1 텍스처 캐시 시스템으로부터 레벨 2 캐시 시스템으로 기입을 행하는 단계를 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  12. 제9항에 있어서,
    플로팅 포인트 텍셀 데이터를 수신하는 단계와;
    정규화된 고정 포인트 텍셀 데이터를 상기 플로팅 포인트 텍셀 데이터로부터 발생시키는 단계와;
    상기 정규화된 고정 포인트 텍셀 데이터에 인터폴레이션을 수행하는 단계와;
    다시 정규화된 플로팅 포인트 텍셀 데이터를 발생시키는 단계와;
    다시 정규화된 텍셀 데이터를 축적하는 단계와; 그리고
    상기 축적된 다시 정규화된 텍셀 데이터를 표준 플로팅 포인트 표현으로 포맷하는 단계를 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  13. 제12항에 있어서,
    인터폴레이션은,
    바이리니어 텍스처 필터링과;
    트리리니어 텍스처 필터링과; 그리고
    이방성 텍스처 필터링을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  14. 제12항에 있어서,
    상기 방법은 하드웨어 기술 언어 명령들을 합성함으로써 수행되는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 방법.
  15. 스케일링가능하고 통합된 컴퓨팅 시스템으로서,
    프로세서와; 그리고
    복수의 프로세싱 명령들을 저장하도록 되어 있음과 아울러 상기 프로세서와 통신하는 메모리를 포함하여 구성되며,
    상기 프로세싱 명령들은, 상기 컴퓨팅 시스템으로 하여금,
    픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 특정된 세트에 대한 텍스처 요청들의 세트를 수신하도록 하고;
    픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 상기 특정된 세트에 대한 쉐이더 프로그램 명령에 근거하여 어드레스들의 데이터 세트를 발생시키도록 하고;
    저장된 텍셀 데이터를 레벨 1 캐시 시스템으로부터 검색하도록 하고; 그리고
    포맷되고 축적된 인터폴레이션을 상기 검색된 텍셀 데이터 및 발신 쉐이더 명령에 근거하여 계산하도록 하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  16. 제15항에 있어서,
    상기 컴퓨팅 시스템으로 하여금,
    결함이 있는 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 프로세싱하도록 하는 명령들을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  17. 제15항에 있어서,
    상기 컴퓨팅 시스템으로 하여금,
    상기 레벨 1 텍스처 캐시 시스템으로부터 판독을 행하고 상기 레벨 1 텍스처 캐시 시스템으로부터 레벨 2 캐시 시스템으로 기입을 행하도록 하는 명령들을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  18. 제15항에 있어서,
    상기 컴퓨팅 시스템으로 하여금,
    플로팅 포인트 텍셀 데이터를 수신하도록 하도록 하고;
    정규화된 고정 포인트 텍셀 데이터를 상기 플로팅 포인트 텍셀 데이터로부터 발생시키도록 하도록 하고;
    상기 정규화된 고정 포인트 텍셀 데이터에 인터폴레이션을 수행하도록 하고;
    다시 정규화된 플로팅 포인트 텍셀 데이터를 발생시키도록 하고;
    다시 정규화된 텍셀 데이터를 축적하도록 하고; 그리고
    상기 축적된 다시 정규화된 텍셀 데이터를 표준 플로팅 포인트 표현으로 포맷하도록 하는 명령들을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  19. 제15항에 있어서,
    상기 컴퓨팅 시스템으로 하여금,
    바이리니어 텍스처 필터로 필터링을 행하도록 하고;
    트리리니어 텍스처 필터로 필터링을 행하도록 하고; 그리고
    이방성 텍스처 필터로 필터링을 행하도록 하는 명령들을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  20. 스케일링가능하고 통합된 컴퓨팅 시스템으로서,
    특정된 픽셀에 대한 리소스로부터의 텍스처 요청을 수신하는 수단과;
    상기 특정된 픽셀에 대한 렌더링 계산에 근거하여 출력 텍셀 데이터를 발생시키는 수단과;
    레벨 1 캐시 시스템으로부터 텍셀 데이터를 검색하는 수단과; 그리고
    포맷된 인터폴레이션을, 상기 텍셀 데이터를 근거로, 맵핑 유닛을 사용하여 계산하는 수단을 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  21. 제20항에 있어서,
    결함이 있는 쉐이더 파이프로 갈 쉐이더 파이프 데이터를 프로세싱하는 수단을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  22. 제20항에 있어서,
    상기 레벨 1 텍스처 캐시 시스템으로부터 판독을 행하고 상기 레벨 1 텍스처 캐시 시스템으로부터 레벨 2 캐시 시스템으로 기입을 행하는 수단을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  23. 제20항에 있어서,
    플로팅 포인트 텍셀 데이터를 수신하는 수단과;
    정규화된 고정 포인트 텍셀 데이터를 상기 플로팅 포인트 텍셀 데이터로부터 발생시키는 수단과;
    상기 정규화된 고정 포인트 텍셀 데이터에 인터폴레이션을 수행하는 수단과;
    다시 정규화된 플로팅 포인트 텍셀 데이터를 발생시키는 수단과;
    다시 정규화된 텍셀 데이터를 축적하는 수단과; 그리고
    상기 축적된 다시 정규화된 텍셀 데이터를 표준 플로팅 포인트 표현으로 포맷하는 수단을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  24. 제20항에 있어서,
    바이리니어 텍스처 필터를 사용하여 필터링을 행하는 수단과;
    트리리니어 텍스처 필터를 사용하여 필터링을 행하는 수단과; 그리고
    이방성 텍스처 필터를 사용하여 필터링을 행하는 수단을 더 포함하는 것을 특징으로 하는 스케일링가능하고 통합된 컴퓨팅 시스템.
  25. 하나 이상의 명령들로 된 하나 이상의 시퀀스들을 가지고 있는 컴퓨터 판독가능 매체로서, 상기 명령들은 하나 이상의 프로세서 기반의 컴퓨팅 디바이스들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 디바이스들로 하여금 스케일링가능하고 통합된 컴퓨팅 방법을 수행하도록 하며, 상기 스케일링가능하고 통합된 컴퓨팅 방법은,
    픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 특정된 세트에 대한 텍스처 요청들의 세트를 수신하는 단계와;
    픽셀들, 버텍스들, 프리미티브들, 서피스들, 혹은 컴퓨팅 워크 아이템들의 상기 특정된 세트에 대한 쉐이더 프로그램 명령에 근거하여 어드레스들의 데이터 세트를 발생시키는 단계와;
    저장된 텍셀 데이터를 레벨 1 캐시 시스템으로부터 검색하는 단계와; 그리고
    포맷되고 축적된 인터폴레이션을 상기 검색된 텍셀 데이터 및 발신 쉐이더 명령에 근거하여 계산하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체.
KR1020107029824A 2008-05-30 2009-06-01 스케일링가능하고 통합된 컴퓨팅 시스템 KR101427408B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US5748308P 2008-05-30 2008-05-30
US61/057,483 2008-05-30
PCT/US2009/003316 WO2009145918A1 (en) 2008-05-30 2009-06-01 Scalable and unified compute system

Publications (2)

Publication Number Publication Date
KR20110019764A true KR20110019764A (ko) 2011-02-28
KR101427408B1 KR101427408B1 (ko) 2014-08-07

Family

ID=41377445

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107029824A KR101427408B1 (ko) 2008-05-30 2009-06-01 스케일링가능하고 통합된 컴퓨팅 시스템

Country Status (5)

Country Link
EP (1) EP2297723A4 (ko)
JP (1) JP5491498B2 (ko)
KR (1) KR101427408B1 (ko)
CN (1) CN102047315B (ko)
WO (1) WO2009145918A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8952962B2 (en) 2011-09-14 2015-02-10 Samsung Electronics Co., Ltd. Graphics processing method and apparatus using post fragment shader
US9176880B2 (en) 2011-10-17 2015-11-03 Samsung Electronics Co., Ltd. Cache memory system for tile based rendering and caching method thereof

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10089708B2 (en) * 2016-04-28 2018-10-02 Qualcomm Incorporated Constant multiplication with texture unit of graphics processing unit
CN109614086B (zh) * 2018-11-14 2022-04-05 西安翔腾微电子科技有限公司 基于SystemC和TLM模型的GPU纹理缓冲区数据存储硬件及存储装置
CN110930493A (zh) * 2019-11-21 2020-03-27 中国航空工业集团公司西安航空计算技术研究所 一种gpu纹素并行获取方法
CN112581575B (zh) * 2020-12-05 2024-05-03 西安翔腾微电子科技有限公司 一种外视频做纹理系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3645024B2 (ja) * 1996-02-06 2005-05-11 株式会社ソニー・コンピュータエンタテインメント 描画装置及び描画方法
US6104415A (en) * 1998-03-26 2000-08-15 Silicon Graphics, Inc. Method for accelerating minified textured cache access
US7136068B1 (en) * 1998-04-07 2006-11-14 Nvidia Corporation Texture cache for a computer graphics accelerator
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
WO2000011607A1 (en) * 1998-08-20 2000-03-02 Apple Computer, Inc. Deferred shading graphics pipeline processor
US6919895B1 (en) * 1999-03-22 2005-07-19 Nvidia Corporation Texture caching arrangement for a computer graphics accelerator
US6731303B1 (en) * 2000-06-15 2004-05-04 International Business Machines Corporation Hardware perspective correction of pixel coordinates and texture coordinates
US7124318B2 (en) * 2003-09-18 2006-10-17 International Business Machines Corporation Multiple parallel pipeline processor having self-repairing capability
CN1239023C (zh) * 2003-10-16 2006-01-25 上海交通大学 基于运动自适应和边缘保护的三维视频格式转换方法
KR100519779B1 (ko) * 2004-02-10 2005-10-07 삼성전자주식회사 깊이영상기반 3차원 그래픽 데이터의 고속 시각화 방법 및장치
US7385607B2 (en) * 2004-04-12 2008-06-10 Nvidia Corporation Scalable shader architecture
US7577869B2 (en) * 2004-08-11 2009-08-18 Ati Technologies Ulc Apparatus with redundant circuitry and method therefor
US7218291B2 (en) * 2004-09-13 2007-05-15 Nvidia Corporation Increased scalability in the fragment shading pipeline
JP2006244426A (ja) * 2005-03-07 2006-09-14 Sony Computer Entertainment Inc テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法
JP4660254B2 (ja) * 2005-04-08 2011-03-30 株式会社東芝 描画方法及び描画装置
US20090051687A1 (en) * 2005-10-25 2009-02-26 Mitsubishi Electric Corporation Image processing device
US20070211070A1 (en) * 2006-03-13 2007-09-13 Sony Computer Entertainment Inc. Texture unit for multi processor environment
US7965296B2 (en) * 2006-06-20 2011-06-21 Via Technologies, Inc. Systems and methods for storing texture map data

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8952962B2 (en) 2011-09-14 2015-02-10 Samsung Electronics Co., Ltd. Graphics processing method and apparatus using post fragment shader
US9176880B2 (en) 2011-10-17 2015-11-03 Samsung Electronics Co., Ltd. Cache memory system for tile based rendering and caching method thereof

Also Published As

Publication number Publication date
WO2009145918A1 (en) 2009-12-03
CN102047315A (zh) 2011-05-04
JP2011524562A (ja) 2011-09-01
EP2297723A4 (en) 2015-08-19
EP2297723A1 (en) 2011-03-23
JP5491498B2 (ja) 2014-05-14
CN102047315B (zh) 2015-09-09
KR101427408B1 (ko) 2014-08-07

Similar Documents

Publication Publication Date Title
US8558836B2 (en) Scalable and unified compute system
US9177351B2 (en) Multi-primitive graphics rendering pipeline
US8421794B2 (en) Processor with adaptive multi-shader
US20080303841A1 (en) Extrapolation of nonresident mipmap data using resident mipmap data
US8542247B1 (en) Cull before vertex attribute fetch and vertex lighting
US20130271465A1 (en) Sort-Based Tiled Deferred Shading Architecture for Decoupled Sampling
US7880745B2 (en) Systems and methods for border color handling in a graphics processing unit
CN109584140B (zh) 图形处理
KR101427408B1 (ko) 스케일링가능하고 통합된 컴퓨팅 시스템
US20140098096A1 (en) Depth texture data structure for rendering ambient occlusion and method of employment thereof
KR20090079241A (ko) 공유된 산술 논리 유닛을 구비한 그래픽 처리 유닛
KR20110016938A (ko) 기하 셰이더를 사용하는 테셀레이션 엔진을 위한 시스템, 방법, 및 컴퓨터 프로그램 제품
US10192348B2 (en) Method and apparatus for processing texture
US7944453B1 (en) Extrapolation texture filtering for nonresident mipmaps
US11972518B2 (en) Hybrid binning
KR101427409B1 (ko) 분산형 레벨 1 캐시 시스템 및 중앙집중형 레벨 2 캐시를 구비한 복합형 쉐이더
US20240104685A1 (en) Device and method of implementing subpass interleaving of tiled image rendering
US20240037835A1 (en) Complex rendering using tile buffers
US20210304488A1 (en) Sampling for partially resident textures
EP4315257A1 (en) Synchronization free cross pass binning through subpass interleaving

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20170704

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190627

Year of fee payment: 6