The arithmetic for modern graphics processing units (GPUs) for 3D graphics systems requires not only addition and multiplication but also complex operations like division, square root and various transcendental functions. However, it is a challenging issue to realize these kinds of complex operations on the handheld platform that has small footprints and limited power budgets.
In this thesis, a high-performance, low-power, and small-area GPU has been developed to solve this issue. The GPU integrates a RISC, a geometry processor (GP, also known as a vertex shader), a rendering engine (RE) and three power management units (PMUs). The geometry processor includes 128-bit multifunction unit, which unifies vector operations (addition, subtraction, multiplication, division, square-root, multiply-and-add, lerp, dot product, and cross product), matrix multiplication, and transcendental functions (power, logarithm, trigonometric, inverse trigonometric, hyperbolic, and inverse hyperbolic functions) in a single four-way arithmetic platform. The functional unit adopts the hybrid number system (HNS) of floating-point and logarithmic numbers for the small-size and low-power unification. It achieves single cycle throughput with maximum 5-cycle latency for all the supported operations except for the matrix multiplication, which takes 2-cycle throughput with 6-cycle latency. The GPU is divided into triple power domains: RISC, GP, and RE domains of dynamic voltage and frequency scaling for the lowest power consumption for the given workloads of each domain.
A test chip is implemented with 0.18-µm CMOS technology. It integrates 1.57M transistors and 29KB SRAM. It shows maximum performance of 141Mvertices/s and power consumption of 52.4mW at 60frames/s.
최근 발표되는 3차원 그래픽 처리를 위한 그래픽 프로세서는 덧셈과 곱셈 이외에도, 나눗셈, 제곱근, 초월함수 등의 복잡한 연산들을 필요로 하지만, 작은 면적과 배터리 사용시간에 제약을 갖는 휴대기기에서 이들을 구현하는 것은 어려움이 따른다.
본 논문에서는 이러한 문제를 해결하기 위한 고성능, 저전력, 소면적의 그래픽 프로세서를 제안한다. 이 그래픽 프로세서는 RISC 프로세서, 기하연산 프로세서, 렌더링 엔진 및 세 개의 전력 관리기를 내장하고 있다. 기하연산 프로세서는 128-bit의 다기능 연산기를 포함하며, 이는 다양한 벡터 연산 (덧셈, 뺄셈, 곱셈, 나눗셈, 제곱근, 곱셈-덧셈, 선형 내삽, 내적 및 외적)과 행렬 연산 및 초월함수 연산 (멱함수, 로그함수, 삼각함수, 역삼각함수, 쌍곡선함수, 및 역쌍곡선 함수)을 하나의 연산기로 통합 구현하고 있다. 특히, 이 연산기는 부동 소수점 수와 로그 수를 함께 이용하는 복합적 수 체계를 이용하여 작은 면적과 낮은 전력 소모를 갖는 통합적 구현을 이룩하였다. 이는 행렬연산을 제외한 지원되는 모든 연산에 대하여 1-cycle throughput과 최대 5-cycle latency로 처리하며, 행렬연산에 대해서는 2-cycle throughput과 6-cycle latency로 처리한다. 이 그래픽 처리기는 저전력 설계를 위해, 전력 관리 영역이 세 개의 영역으로 나누어져 있으며, 각 영역의 전압과 동작 주파수는 그 영역의 작업량에 따라 각기 동적으로 조절된다.
제안된 그래픽 프로세서는 0.18-µm CMOS 공정을 이용하여 시험 칩으로 구현되었으며, 1.57M개의 트랜지스터와 29KB의 SRAM을 집적하였다. 개발된 칩은 최대 141Mvertices/s의 성능을 보이며, 60frames/s로 동작할 때 52.4mW의 전력을 소비한다.