테라스케일(마이크로아키텍처)

TeraScale (microarchitecture)

TeraScaleATI Technologies/AMD에 의해 개발된 그래픽 처리 장치 마이크로 아키텍처 패밀리와 Xenos에 이은 통합 셰이더 모델을 구현하는 두 번째 마이크로 아키텍처의 코드 이름입니다.테라스케일은 기존의 고정 파이프라인 마이크로아키텍처를 대체하고 엔비디아 최초의 통합 셰이더 마이크로아키텍처[1][2]Tesla와 직접 경쟁했다.

테라스케일은 80nm와 65nm로 제조된 HD 2000, 65nm와 55nm로 제조된 HD 3000, 55nm와 40nm로 제조된 HD 4000, 40nm로 제조된 HD 5000과 HD 6000에서 사용되었습니다.TeraScale은 코드명 "Brazos", "Lano", "Trinity" 및 "Richland"로 명명된 AMD 가속 처리 장치에도 사용되었습니다.테라스케일은 일부 후속 그래픽 카드 브랜드에서도 볼 수 있습니다.

TeraScale은 VLIW SIMD 아키텍처이며 Tesla는 RISC SIMD 아키텍처로 TeraScale의 후속 Graphics Core Next와 유사합니다.TeraScale은 HyperZ[3]구현합니다.

TeraScale에는 [4]LLVM 코드 생성기(컴파일러 백엔드)를 사용할 수 있지만 LLVM 매트릭스에는 [5]없는 것 같습니다. 예를 들어 Mesa 3D가 이를 사용합니다.

테라스케일 1

테라스케일 1
발매일2007년 5월, 15년 전(2007년 [citation needed]5월)
역사
전임자공개되지[citation needed] 않음
후계자테라스케일 2

2008년 12월 SIGGRAPH 08에서 AMD의 직원 Mike Houston은 TeraScale 마이크로아키텍처의 [6]일부를 설명했습니다.

AMD의 테크놀로지 파트너인 SUSE Linux의 Matthias Hopf는 FOSDEM09에서 [7]R600용 오픈 소스 드라이버 프로그래밍에 관한 슬라이드를 발표했습니다.

통합 셰이더

이전의 GPU 아키텍처는 고정 파이프 라인을 구현했습니다. 즉, 셰이더 유형별로 별도의 셰이더 프로세서가 있었습니다.TeraScale은 다양한 유형의 셰이더를 처리하도록 스케줄링할 수 있는 많은 유연한 셰이더 프로세서를 활용하여 GPU 스루풋을 대폭 향상시킵니다(아래에 기술한 바와 같이 애플리케이션 명령 혼합에 따라 다름).R600 코어에서는 OpenGL 3.0을 완전히 [8]지원할 뿐만 아니라 Direct3D 10.0 사양에 따라 정점, 지오메트리 및 픽셀 셰이더를 처리합니다.

새로운 통합 셰이더 기능은 코어가 [9]병렬로 작업을 실행하는 매우명령어(VLIW) 아키텍처를 기반으로 합니다.

셰이더 클러스터는 5개의 스트림 처리 단위로 구성된다.각 스트림 처리 유닛은 클럭당 완성된 단정도 부동소수점 MAD(또는 ADD 또는 MUL) 명령, 닷 곱(DP 및 ALU를 조합하여 특수 캐싱) 명령 및 정수 [10]ADD를 폐기할 수 있다.5번째 장치는 더 복잡하며 사인 및 코사인 [10]같은 특수 초월 함수를 추가로 처리할 수 있습니다.각 셰이더 클러스터는 클럭 사이클(피크)당 6개의 명령어를 실행할 수 있습니다.이 명령어는 5개의 쉐이딩 명령과1개의 [10]브랜치로 구성됩니다.

특히 VLIW 아키텍처에는 VLIW 설계에 고유한 몇 가지 고전적인 과제, 즉 최적의 명령 [9]흐름을 유지하는 문제가 있습니다.또, 한쪽이 다른 한쪽의 결과에 의존하고 있는 경우, 칩은 명령을 동시에 발행할 수 없습니다.GPU의 성능은 응용 프로그램에서 사용되는 명령의 혼합과 드라이버의 실시간 컴파일러가 해당 [10]명령을 얼마나 잘 구성할 수 있는지에 따라 크게 좌우됩니다.

R600 코어에는 64개의 셰이더 클러스터가 있으며, RV610 코어에는 각각8개의 셰이더 클러스터와 24개의 셰이더 클러스터가 있습니다.

하드웨어 테셀레이션

TeraScale에는 테셀레이션을 수행할 수 있는 여러 장치가 포함되어 있습니다.Xbox 360에 사용되는 Xenos GPU의 프로그래밍 가능 장치와 유사합니다.

테셀레이션은 DirectX 11과 OpenGL 4로 시작하는 주요 API에서 공식적으로 지정되었습니다.TeraScale 1 기반 GPU(HD 2000, 3000 및 4000 시리즈)는 Direct3D 10 및 OpenGL 3.3에만 대응하고 있기 때문에 벤더 고유의 API [11]확장을 사용하는 테셀레이션 원리가 다릅니다.TeraScale 2 기반 GPU(Radeon HD 5000 시리즈 이후)는 Direct3D 11과 OpenGL 4.0 테셀레이션 [12]기술을 모두 준수하는 최초의 제품입니다.TeraScale 1 테셀레이터는 디자인이 더 단순하지만 AMD는 테셀레이션 [13]표준의 하위 집합으로 설명합니다.

개발자는 TeraScale 테셀레이터 유닛을 사용하여 단순한 폴리곤 메쉬를 취하여 곡면 평가 기능을 사용하여 세분화할 수 있습니다.N 패치가 있는 베지어 표면, B 스플라인NURBS와 같은 다양한 테셀레이션 형태가 있으며, 일반적으로 변위 지도와 같은 [14]텍스처를 포함하는 표면의 일부 세분화 기법도 있습니다.기본적으로 성능에는 거의 영향을 주지 않으면서 폴리곤 밀도가 낮은 단순한 모델을 실시간으로 크게 높일 수 있습니다.Tech Report의 Scott Wasson은 AMD 데모에서 결과 모델이 수백만 개의 폴리곤으로 매우 밀도가 높아 [9]견고한 것으로 보인다고 지적했습니다.

TeraScale 테셀레이터는 Radeon 8500에서 [15]처음 사용된 초기 하드웨어 테셀레이션 유닛의 브랜드 이름인 ATI TruForm을 연상시킵니다.

ATI TruForm은 소프트웨어 개발자들로부터 거의 주목을 받지 못했습니다.일부 게임(Madden NFL 2004, Severity Sam, Unreal Tournam 20032004, 비공식 Morowind 등)은 ATI의 테셀레이션 기술을 지원했습니다.이러한 느린 적응은 NVIDIA GPU가 주요 게임 [16]개발자의 지원을 더 적게 받은 Quintic-RT 패치를 사용하여 경쟁 테셀레이션 솔루션을 구현했기 때문에 NVIDIA GPU와 공유되는 기능이 아니라는 사실과 관련이 있습니다.Xbox 360의 GPU는 ATI의 아키텍처를 기반으로 하기 때문에 마이크로소프트는 하드웨어 가속 표면 테셀레이션을 GPU의 주요 기능으로 보았다.몇 년 후 2009년 [14][17]DirectX 11 출시와 함께 테셀레이션 기능이 필수화되었습니다.

TeraScale에서 도입된 테셀레이션 원칙은 OpenGL 3.3 또는 Direct3D 10.0 요건에는 포함되지 않았으며 GeForce 8 시리즈 등의 경쟁 제품에는 유사한 하드웨어가 없었지만 마이크로소프트는 향후 DirectX 10.1 [17]계획의 일부로 테셀레이션 기능을 추가했습니다.마지막으로 Microsoft는 DirectX 10.1이 아닌 DirectX [18]11에서 테셀레이션을 필수 기능으로 도입했습니다.

GCN 지오메트릭 프로세서는 ATI의 GPU 사업을 인수한 AMD의 최신 GPU를 사용한 테셀레이션 솔루션입니다.

울트라 스레드 디스패치 프로세서

R600은 이전 설계와는 큰 차이가 있지만 이전 모델인 Radeon [9]R520과 많은 기능을 공유하고 있습니다.울트라 스레드 디스패치 프로세서는 Radeon X1000 GPU와 마찬가지로 R600 코어의 주요 아키텍처 컴포넌트입니다.이 프로세서는 3종류의 다른 스레드(버텍스, 지오메트리, 픽셀 셰이더)와 [9]그 사이의 스위치를 필요에 따라서 관리합니다.다수의 스레드를 동시에 관리하면 스레드 순서를 재구성하여 셰이더를 최적으로 활용할 수 있습니다.즉, 디스패치 프로세서는 R600의 다른 부품을 평가하고 처리 효율을 가능한 한 높게 유지하려고 합니다.80개의 스트림프로세서로 구성된 각 SIMD 어레이에는 자체 시퀀서와 아비터가 있습니다.아비터는 다음에 처리할 스레드를 결정하는 반면 시퀀서는 [9]각 스레드 내에서 최상의 성능을 위해 명령 순서를 변경하려고 시도합니다.

텍스처링 및 안티에일리어싱

R600 코어에서의 텍스처링과 최종 출력은 비슷하지만 R580과는 다릅니다.R600에는 R520 [9]및 R580 GPU와 같이 셰이더 코어에서 분리(독립)되는 4개의 텍스처 유닛이 탑재되어 있습니다.Radeon HD 2000 시리즈의 ROP(Render Output Unit)는 Radeon X1000 시리즈와 같이 픽셀 셰이더를 사용하는 대신 프로그램 가능한 샘플 그리드와 최대 8개의 샘플 포인트를 사용하여 MSAA(Multisample Anti-Aliasing) 작업을 수행합니다.HDR 라이팅에 널리 사용되는 FP16 텍스처를 풀 스피드로 필터링할 수 있는 새로운 기능도 있습니다.또한 ROP는 모든 텍스처 형식에 대해 삼선형이방성 필터링을 실행할 수 있습니다.R600에서는 FP16 텍스처의 경우 클럭당 합계 16픽셀이지만 고정밀 FP32 텍스처는 하프 스피드(클럭당8픽셀)[9]로 필터링됩니다.

안티에이리어스 기능은 R520 시리즈보다 R600에서 더 강력합니다.R300에서 R580까지의 6배 MSAA에서 8배 MSAA를 실행할 수 있는 것 외에 R600에는 새로운 커스텀 필터 안티 에일리어싱(CFAA) 모드가 있습니다.CFAA는 최종 색상을 계산하기 위해 처리 중인 특정 픽셀 주변의 픽셀을 보고 이미지에 [10]안티에이리어스를 적용하는 비박스 필터 구현을 말합니다.CFAA는 ROP가 아닌 셰이더에 의해 실행됩니다.필터는 커스터마이즈할 수 있기 때문에 프로그래머빌리티가 대폭 향상되지만 셰이더 자원의 사용으로 인해 잠재적인 성능 문제가 발생할 수도 있습니다.CFAA는 R600 출시 시점부터 폭이 넓고 폭이 좁은 텐트 필터를 사용하고 있습니다.이를 통해 처리 중인 픽셀 외부에서 온 샘플은 해당 픽셀의 중심으로부터의 거리에 따라 선형으로 가중치를 부여하고,[10] 선택한 넓은 필터 또는 좁은 필터에 따라 선형 함수가 조정됩니다.

메모리 컨트롤러

메모리 컨트롤러는 프로세서에 감긴 내부 양방향 링 버스를 통해 연결됩니다.Radeon HD 2900에서는 1,024비트 양방향 링 버스(512비트 읽기 및 512비트 쓰기)이며, 2900 XT에서는 8개의 64비트 메모리 채널을 사용하여 총 버스 폭 512비트입니다.Radeon HD 3800에서는 512비트 링 버스, Radeon HD 2600 및 HD 3600에서는 256비트 링 버스, Radeon HD 2400 및 HD 3400에서는 링 버스가 없습니다.[9]

반세대 업데이트

이 시리즈에서는 RV670, RV635 및 RV620과 같은 다이 수축(55 nm) 변종과 함께 반세대가 업데이트되었습니다.모든 모델은 PCI Express 2.0, DirectX 10.1 및 Shader Model 4.1 기능, 모든 모델에[19] 전용 ATI Unified Video Decoder(UVD), 데스크톱 비디오 [20]카드용 PowerPlay 기술을 지원합니다.

Radeon HD 3800 시리즈를 제외한 모든 모델은 2개의 통합 DisplayPort 출력을 지원하며 최대 2,560×1,600 해상도의 24비트 및 30비트 디스플레이를 지원합니다.각 출력에는 출력당 1, 2, 또는 4개의 레인이 포함되었으며, 데이터 전송 속도는 레인당 최대 2.7 Gbit/s였습니다.

ATI는 DirectX 10.1을 지원하면 반올림 오류 감소로 퍼포먼스와 처리 효율 향상(평균 오차 1.0 ULP에 비해 허용 오차 0.5 ULP), 이미지 디테일과 품질 향상, 글로벌 조명(애니메이션 영화에 사용되는 기술), 소비자 게임 시스템 개선으로 인해 givi가 향상된다고 주장했습니다.ng 보다 사실적인 게임 [21]체험.)

비디오 카드

(이 페이지의 칩 목록 참조)

TeraScale 2 "Evergreen" 패밀리

테라스케일 2
발매일2009년 9월, 12년 전(2009년 [citation needed]9월)
역사
전임자테라스케일 1
후계자테라스케일 3

TeraScale 2(VLIW5)는, 「Evergreen」이라고 명명된 Radeon HD 5000 시리즈 GPU에 도입되었습니다.

HPG10에서 Mark Fowler는 "Evergreen"을 발표하면서 5870(Cypress), 5770(Juniper), 5670(Redwood)은 6배 2560×1600 픽셀의 최대 해상도를 지원하며 5470(Cedar)은 AMD Eyefinity 멀티 모니터에 중요한 4배 2560×1600 픽셀을 지원한다고 밝혔습니다.[22]

Cypress의 출시로 Terascale 그래픽 엔진 아키텍처는 RV770에 비해 스트림 코어, 텍스처 유닛 및 ROP 유닛의 수가 2배로 업그레이드되었습니다.스트림 코어의 아키텍처는 거의 변경되지 않았지만 [23]새로운 명령으로 DirectX 11/Direct Compute 11 기능을 지원합니다.또한 RV770과 마찬가지로 4개의 텍스처 유닛이 16개의 스트림 코어에 연결되어 있습니다(각 유닛에는 5개의 처리 요소가 있으며 총 80개의 처리 요소가 있습니다).이 조합을 SIMD 코어라고 합니다.

이전 Radeon R700과는 달리 DirectX 11은 보간에 대한 완전한 개발자 제어를 요구하기 때문에 SIMD 코어에 의존하는 전용 인터폴레이터가 제거되었습니다.스트림 코어는 단일 정밀도와 이중 정밀도 모두에서 높은 반올림 정밀도 퓨전 다중 추가(FMA) 명령을 처리할 수 있으므로 다중 추가(MAD)보다 정밀도가 높아지고 IEEE 754-2008 [24]표준에 준거합니다.절대차이명령합(SAD)이 프로세서에 기본적으로 추가되어 있습니다.이 명령을 사용하여 3D 엔진의 비디오 인코딩 및 트랜스코딩과 같은 일부 프로세스의 성능을 크게 개선할 수 있습니다.각 SIMD 코어는 32KiB의 로컬 데이터 공유와 8KiB의 L1 [23]캐시를 갖추고 있으며, 모든 SIMD 코어는 64KiB의 글로벌 데이터 공유를 공유하고 있습니다.

메모리 컨트롤러

각 메모리 컨트롤러는 2개의 쿼드 ROP(64비트 채널당 1개)와 전용 512KiB L2 [23]캐시에 접속합니다.

전력 절약

AMD PowerPlay가 지원됩니다.여기를 참조해 주세요.

칩스

  • 상록수 칩:
    • 시더 RV810
    • 레드우드 RV830
    • 주니퍼 RV840
    • 편백 RV870
    • 헴록 R800
    • 터크스 RV930
    • 바츠 RV940
    • Cacoscos RV910
  • TeraScale 2 IGP를 포함한 APU:
    • 온타리오.
    • 자카테
    • 라노

테라스케일 3 "북방 제도" 패밀리

테라스케일 3
발매일2010년 10월, 11년 전(2010년 [citation needed]10월)
역사
전임자테라스케일 2
후계자그래픽스 코어 Next 1

TeraScale 3(VLIW4)는 이전의 5방향 VLIW 설계를 4방향 VLIW 설계로 대체합니다.또한 새로운 디자인에는 Direct3D 11의 성능을 개선하기 위해 테셀레이션 유닛이 추가되어 있습니다.

TeraScale 3은 Radeon HD 6900 브랜드의 그래픽 카드 및 TrinityRichland APU에 구현되어 있습니다.그 칩들은 "북쪽 섬" 가족으로 세례를 받는다.

전력 절약

새로운 버전의 Power 아키텍처GCN1.1 칩에 도입된 튜닝.

AMD PowerTune은 GPU의 동적 주파수 스케일링으로 2010년 12월 15일에 Radeon HD 6900 시리즈에 도입되어 AnandTech[25][26][27][28]리뷰에 기재되어 있듯이 계속 발전하고 있습니다.

칩스

  • Northern Islands 칩:
    • 케이맨 RV970
    • 앤틸리스 R900
    • Trinity 및 Richland에는 TeraScale 3 IGP가 포함되어 있습니다.

후계자

2011년 8월 HPG11에서 AMD의 직원 Michael Mantor(시니어 펠로우 아키텍트)와 Mike Houston(Fellow Architect)은 [29]TeraScale의 뒤를 잇는 마이크로 아키텍처인 Graphics Core Next를 발표했습니다.

레퍼런스

  1. ^ Kevin Parrish (March 9, 2011). "The TeraScale 3 architecture of the HD 6990". Tom's Hardware. Retrieved 2015-04-08.
  2. ^ "Anatomy of AMD's TeraScale Graphics Engine" (PDF). Archived from the original (PDF) on 2010-06-13. Retrieved 2021-11-21.
  3. ^ "Feature matrix of the free and open-source "Radeon" graphics device driver". Retrieved 2014-07-09.
  4. ^ "[LLVMdev] RFC: R600, a new backend for AMD GPUs".
  5. ^ 대상별 구현 주의사항: 대상 기능 매트릭스 // LLVM 대상 독립 코드 생성기, LLVM 사이트.
  6. ^ "Anatomy of AMD's TeraScale microarchitecture" (PDF). 2008-12-12. Archived from the original (pdf) on 2014-08-24. Retrieved 2014-07-06.
  7. ^ "Archived copy" (PDF). Archived from the original (PDF) on 2016-01-09. Retrieved 2014-07-17.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  8. ^ AMD OpenGL 3.0 드라이버 출시(2009년 1월 28일)
  9. ^ a b c d e f g h i 와슨, 스콧AMD Radeon HD 2900 XT 그래픽스 프로세서: R600 발표, 테크니컬 리포트, 2007년5월 14일
  10. ^ a b c d e f Beyond 3D 리뷰: AMD R600 아키텍처GPU Analysis, 2007년 6월 2일 취득.
  11. ^ "AMD_vertex_shader_tessellator (OpenGL extension)". Khronos Group. Retrieved 2021-04-04.
  12. ^ "Tessellation (OpenGL Wiki)". Khronos Group. Retrieved 2021-04-04.
  13. ^ "Advanced Topics in GPU Tessellation: Algorithms and Lessons Learned" (PDF). Natalya Tatarchuk, AMD. Retrieved 2021-04-04.
  14. ^ a b Extreme Tech 리뷰
  15. ^ Witheiler, Matthew (2001-05-29). "ATI TruForm – Powering the next generation Radeon". AnandTech. Retrieved 2016-01-30.
  16. ^ nVidia GeForce3 SDK 화이트페이퍼
  17. ^ a b Wayback Machine 프레젠테이션, 슬라이드 24-29에서 DirectX 아카이브의 미래 2013-06-16
  18. ^ "Tessellation Stages (Windows Developer)". Microsoft. Retrieved 2021-04-04.
  19. ^ "RV670 Cards & Specs Revealed". VR-Zone. August 22, 2007.
  20. ^ (스페인어) MadboxWayback Machine에서 PC 커버리지 2012-10-18년 아카이브, 2007년 11월 10일 취득
  21. ^ ATI DirectX 10.1 백서 Wayback Machine에서 2010-03-07 아카이브, 2007년 12월 7일 취득
  22. ^ "Presenting Radeon HD 5000" (PDF).
  23. ^ a b c DirectX 11 in the Open : ATI Radeon HD 5870 리뷰 2009-09-27 Wayback Machine에서 아카이브 완료
  24. ^ 보고서: AMD Radeon HD 5870 및 5850
  25. ^ "Redefining TDP With PowerTune". AnandTech. 2010-12-15. Retrieved 2015-04-30.
  26. ^ "Introducing PowerTune Technology With Boost". AnandTech. 2012-06-22. Retrieved 2015-04-30.
  27. ^ "The New PowerTune: Adding Further States". AnandTech. 2013-03-22. Retrieved 2015-04-30.
  28. ^ "PowerTune: Improved Flexibility & Fan Speed Throttling". AnandTech. 2014-10-23. Retrieved 2015-04-30.
  29. ^ "AMD "Graphic Core Next": Low Power High Performance Graphics & Parallel Computer" (PDF). 2011-08-05. Retrieved 2014-07-06.