본문 바로가기

Fun,Fun,Fun

그래픽 칩셋 GPU(Graphics Processing Unit)

GPU(Graphics Processing Unit)




Graphics Processing Unit ( 그래픽 처리 장치, 줄여서 GPU )는 개인용 컴퓨터나 워크 스테이션등의 화상 처리를 담당하는 주요 부품의 하나이다. Visual Processing Unit ( 비주얼 프로세싱 유닛 , VPU )라는 명칭 도있다.


컴퓨터 시스템에서 이미지 표시를 담당하는 ASIC인 그래픽 컨트롤러에서 발전한것으로, GPU는 지오 메트리 엔진과 같은 전용 하드웨어가 이미지 데이터를 처리하는 집적 회로를 가리킨다. 현재 고기능 GPU는 고속의 VRAM과 연결된 그래픽 쉐이딩에 특화한 연산기를 가진 마이크로 프로세서이다.



역사
1970 년대 ~ 1980 년대
소비자 PC용 GPU의 기원은 1970년대부터 1980년대의 그래픽 컨트롤러로 거슬러 올라간다. 당시의 그래픽 컨트롤러는 사각형이나 다각형의 영역을 단순히 채우거나 BitBLT ( Bit Block Transfer 비트 단위의 블록 전송 )등에 의해, 2차원 이미지에 대해 간단한 그리기 작업을 수행하고 그 기능과 능력은 제한적이었다.


그래픽 컨트롤러에 몇 가지 지침을 디스플레이 목록으로 정리해 실행하거나 DMA 전송을 이용하여 메인 CPU의 부하를 감소시키고 하는 것도 있었다. 이 같은 전용 그래픽 컨트롤러를 사용하지 않고, DMA 컨트롤러에서 처리하거나 범용 CPU를 그래픽 처리 전용으로 할당된 그래픽 서브 시스템을 충당하는 컴퓨터도 존재 했다. 일반적인 그래픽 코어 프로세서는 옛부터 개발 되어 왔지만, 당시의 기술적 제약에서 싼 제품은 기능이나 성능이 부족하고, 또한 강력한것은 회로의 규모가 증대해 매우 비쌀수밖에 없으며 결과적으로 개인용 컴퓨터에 널리 채택 되지 않았다.


1980년대부터 1990년대 초반은 Bit Block Transfer를 지원하는 칩과 그리기 속도 칩은 별도의 칩으로 구현 되어 있었지만, 칩 처리 기술이 진화 하면서 저렴해지고, VGA 카드를 비롯한 그래픽 카드에 구현되어 대중해 갔다. 1987년 VGA 발표와 함께 출시된 IBM의 8514 그래픽 시스템은 2D의 기본적인 그리기 기능을 지원하는 최초의 PC용 그래픽 가속기가 되었다. Amiga는 비디오 하드웨어에 Blitter을 탑재한 최초의 소비자용 컴퓨터 였다.



1980년대 후반부터 1990년대 전반의 널리 보급되어 있던 PC로 PC - 9800시리즈가 그래픽 컨트롤러로 GDC, GRCG, EGC 가 탑재 되었다. 이들은 그래픽 VRAM에 직선 · 원호 · 사각 채우기등의 그리기를 수행 하거나 동시 렌더링하는 기능을 가지고 있었다.


1990 년대
1990년대에 들어서면서 실리콘 그래픽스가 자사의 그래픽 워크 스테이션용 그래픽 라이브러리로 개발 · 구현한 IRIS GL이 OpenGL로 발전하고 표준화된 표준화된 그래픽 라이브러리와 API를 지원하는 하드웨어 가속이라는 도식이 등장한다.


구현 당초 IRIS GL은 소프트웨어에 의한 것이었다. 그러나 SGI는 당초보다 이 API를 하드웨어에 의해 고속 처리하도록 (하드웨어 가속) 염두에두고 설계 하여 IRIS GL 가속기를 탑재한 워크 스테이션이 등장한다. 그러나 당시 IRIS GL 가속기는 아직 단체의 반도체 프로세서가 아닌 그래픽 서브 시스템은 거대한 기판이였다.


1990 년대 초 무렵 Microsoft Windows의 보급과 함께 그래픽 가속기에 대한 요구가 높아져, Windows 의 그래픽 API 인 GDI 에 대응한 그래픽 가속기가 개발 되었다.


1991 년에 S3 Graphics가 개발한 'S3 86C911'는 첫 2D 그래픽 가속기였다. '86C911'라는 이름은 설계자가 그 속도를 표방 하는 '포르쉐 911'을 따서 명명했다. 86C911을 시작으로 수많은 그래픽 가속기 가 발매 되었다.


1995년에는 3Dlabs 가 OpenGL 가속 원칩화에 성공 하고 저가격화와 고성능 화가 가속적으로 진행 하기 시작한다. 또한 같은해에 등장한 인텔의 Pentium Pro 프로세서의 처리 능력은 동시대의 RISC 프로세서의 영역에 도달해 있으며, 이 CPU 와 원칩화에 의해 가격을 낮춘 OpenGL 가속기 세트는 지금까지 메이커에 고수익을 가져 왔다. 그래픽 워크 스테이션은 저가형에서 가격 파괴를 거는 원동력이 되었다.


1995 년까지 모든 주요 PC 그래픽 칩 제조 업체가 2D 가속기를 개발, 일반 그래픽 코어 프로세서 는 시장에서 사라졌다.


1995 년에 마이크로 소프트가 Windows95 함께 개발한 게임 제작및 멀티미디어 재생을위한 API 군 DirectX는 그래픽 가속기의 성능을 향상 시켰다. Direct3D는 처음부터 3D 그래픽 처리 하드웨어화를 상정 한 렌더링 파이프 라인을 가지고 있었다.


1997 년 당시의 그래픽 가속기는 렌더링 밖에 지원하지 않았지만, 이 무렵부터 Z 버퍼, 알파 블렌딩, 포그 , 스텐실 버퍼, 텍스처 매핑, 텍스처 필터링등의 기능을 차례 차례로 탑재 해, 각사는 3D 그래픽 기능을 겨루게되었다 . DVD - Video 재생 지원 기능을 갖춘칩도 나왔다.


VDP등의 범용 그래픽 프로세서는 카내비게이션등의 표시에 사용되는 새로운 시장을 형성하고 있다. 90 년대 후반부터는 휴대 전화에 여러 가지 빛깔의 표시가 사용되게 되어, 이 분야에서 유용한 시장을 형성 하고있다.


한편, 시스템의 저가격화를 목적으로 칩셋의 노스 브릿지에 그래픽 코어를 통합한 통합 칩셋이 1997 년 무렵부터 등장 하기 시작한다. 1999 년의 'Intel 810' 칩셋 의 등장으로 , 저가 제품에는 통합 칩셋 사용 이 정착 하기 시작했다.




2000 년대
3차원 그래픽 파이프라인 처리
2000 년대에 들어 오면 좌표 변환과 라이팅이 하드웨어화되어 CPU의 부하는 격감했다 ( 하드웨어 T & L ). 이때부터 그래픽 가속기는 GPU 라는 것이 일반적으로 되었다.


DirectX 8이되면서 GPU는 고정적인 파이프 라인이 아닌 프로그래머가 자유롭게 수식을 변경할수 있는 프로그래머블 쉐이더가 지원 되었다.


종래는 폴리곤 단위로 밖에 계산을 프로그램 할 수 없었던 반면 , 픽셀 단위로 프로그래밍이 가능한 프로그래머블 픽셀 쉐이더의 도입으로 자유도는 비약적으로 향상 했다. 프로그래머블 셰이더는 버텍스 셰이더 ( Vertex Shader )와 픽셀 셰이더 ( Pixel Shader )의 2 종류가 준비되어 버텍스 쉐이더는 변환과 라이팅을 픽셀 쉐이더는 렌더링을 각각 담당 했다.




또한 이 세대가되면 멀티 텍스처, 큐브 맵, 이방성 필터, 볼륨 텍스처등이 새롭게 지원 되고 HDRI의 렌더링 및 동적 환경 맵의 생성이 가능하게 되었다. 동영상 재생이나 압축 셰이더를 사용하는 기술도 탑재 되었다. ( Intel Clear Video , PureVideo , AVIVO , Chromotion )



2010 년대
주요 CPU 업체들은 기존의 CPU 기능에만 머물지 않고 하나의 CPU 칩에 여러개의 CPU 코어 ( 멀티 코어 ) 를 탑재 하는 동시에 이미지 출력 전용 회로로 GPU 코어도 통합한 제품을 제공하게 했다. 예를 들어, 미국 AMD 는 'AMD Fusion'구상 에서 하나의 다이에 두개 이상의 CPU와 GPU를 통합했다. 미국 인텔 에서 Core i5, Core i7, Core i3 에서의 'Sandy Bridge' 세대에서 비슷한 제품을 제공 하고있다. CPU 칩에 GPU 가 포함 된것으로, 종래 필요했던 CPU측의 외부 메모리 공간의 그래픽 데이터를 GPU의 외부 메모리 공간 측에 전송하는 작업이 기본적으로 필요 하게되지만, CPU 와 GPU 의 외부 메모리가 공유 되기 때문에 CPU 칩의 외부 메모리 버스는 CPU 접근 대역 이외에 GPU의 액세스 대역폭도 참가한다. 따라서 만일 CPU 칩에 매우 높은 성능의 GPU를 통합 해서 통합칩 메모리 액세스 대역폭도 상응하여 강화 되지 않으면, 그것은 병목 이되고 성능 향상은 바랄수 없다.




임베디드 시스템
최근 휴대 전화나 카 내비게이션 시스템의 표시 기능의 고도화가 현저하게 임베디드 시스템에 사용되고 있던 VDP 대신 프로그래머블 쉐이더를 탑재한 GPU 채택이  많아지고 있다. 


GPU 개발 기업
DMP
AMD
DisplayLink
Matrox
NVIDIA
S3 Graphics


칩셋 또는 CPU 통합 GPU만을 다루고있는 기업

인텔
SiS 


과거에 GPU 또는 비디오 칩 을 다루고 있던 기업
3dfx ( 현재는 NVIDIA 의 일부 )
3Dlabs ( 현재는 저전력 미디어 프로세서를 다루는기업 )
ATI Technologies ( 현재는 AMD의 부문 이지만 브랜드는 생존 )
Chips & Technologies
Cirrus Logic ( 그래픽 부문을 매각 )
NeoMagic ( 소형 장치용 미디어 프로세서 사업등을 실시하고 , PC용에서 철수 )
Number Nine
Trident Microsystems
Tseng Labs
VideoLogic ( 현재 Imagination Technologies . 임베디드 시장에 특화한 업체에 디자인의 라이센스를 하고있다 )
Weitek ( 로크웰에 인수 됨)
XGI Technology Inc .




" GPU "
GPU 는 NVIDIA Corporation 이 GeForce 256의 발표시에 제창한 호칭이다. VPU는 3Dlabs Inc.가 WildcatVP ( 양산품으로는 세계 최초의 범용 쉐이더형 디자인의 GPU )의 발표시에 명명했다. 또한, VPU 의 호칭에 관해서는, ATI Technologies 가 RADEON9500/9700의 발표시에 제창한 것으로 오해하기 쉽지만, 실제로, 3DLabs 의 WildcatVP의 발표가 선행하고 있다. 또한 ATI 가 VPU의 호칭을 사용한 것은 당시 는 3DLabs와 제휴하고 있었기 때문 이기도하다.


덧붙여 현재는 AMD( ATI )도 주로 GPU의 호칭을 사용 하고있다.


통합 GPU
일반적으로 칩셋및 CPU 내장 GPU ( 통합 GPU , iGPU )의 그래픽 기능은 단일칩 형태의 GPU ( 개별 GPU , dGPU )에 뒤떨어 지지만, 소비 전력이나 비용면에서 유리하다. 따라서 사무실및 인터넷 접속등을 중심으로한 고성능이 필요없는 용도가 상정되어 저렴한 가격이 요구되는 업무용 단말( 클라이언트 )기용과 저발열 · 저전력이 요구되는 노트북등에서는 개별칩의 GPU 대신 통합 GPU가 많이 탑재 되어 있다. 비교적 고성능 GPU를 사용 하는 게임기에서도 비용 절감을 목적으로 GPU의 통합이 진행되고있다.


고성능 GPU의 이용을 전제로 하는 Aero를 탑재 한 Windows Vista의 등장 이후, 칩 세트및 CPU 패키지에 통합된 GPU 코어의 성능이 향상되어 왔기 때문에, 저가형 물건에서 GPU 단체의 제품은 3D 게임과 같은 플레이 용도를 상정한 비교적 비싼 고성능 으로 변화 하고있다.