Adreno

З Вікіпедії, вільної енциклопедії

Adreno - це серія напівпровідникових ядер з інтелектуальною власністю графічних процесорів (GPU), розроблених Qualcomm і використовуваних у багатьох їхніх SoC.

Історія

Adreno (анаграма бренду відеокарт AMD Radeon) появився як власний бренд графічних технологій Qualcomm та використовувалася в їх мобільних чипсетах. Ранні моделі Adreno включали Adreno 100 і 110, які мали прискорення 2D-графіки та обмежені мультимедійні можливості. На той час 3D-графіка на мобільних платформах зазвичай оброблялася за допомогою програмних двигунів рендерингу, що обмежувало їх продуктивність. У зв'язку зі зростаючим попитом на більш просунуті можливості мультимедіа та 3D-графіки Qualcomm придбала ліцензію на IP Imageon у AMD, щоб додати можливості апаратного прискорення 3D у свої мобільні продукти[1]. Подальша співпраця з AMD привела до розробки Adreno 200, спочатку названого AMD Z430, заснованого на архітектурі R400[2], що використовується в графічному процесорі Xenos гральної консолі Xbox 360[3] і випущеному в 2008 році, який був інтегрований. в перший SoC Snapdragon. У січні 2009 року AMD продала Qualcomm весь свій підрозділ графічної обробки портативних пристроїв Imageon за 65 мільйонів доларів[4][5][6].

Технічні деталі

Узагальнити
Перспектива

Варіанти

Компанія пропонує графічні процесори Adreno різних типів як компонент своїх Snapdragon SoC:

Більше інформації Назва, Мікроархітектура ...
Назва Мікроархітектура Архітектура і
 техпроцес
Частота [МГц] Технологія пам'яті Швидкість заповнення GFLOPS API (версія) Використовується у Qualcomm... Посилання
Тип ALU
(SIMD, FP32) [note 1]
Вбудована графічна пам'ять TMU Пропускна здатність пам'яті Triangle

[MT/s]

Pixel

[ГП/с]

Texture

[ГТ/с]

(FP64) (FP32) (FP16) Vulkan OpenGL ES OpenVG OpenCL OpenGL Direct3D
До Adreno
Defender2 0.25 0.007 1.0 [7]
Defender3 0.25 0.022
Stargate 0.6 0.09 1.1
Серія Adreno 1xx
Adreno 100 1.0 [8]
Adreno 110 1.1 [8][9]
Adreno 120 Фіксовані функціональні конвеєри 1.1 [10][8]
Adreno 130 ? ? 90 або 65 ? 1.6

4 [11]

?

0.133

?

0.3

?

1.2

?

2.4

Н/ДН/ДDirect3D Mobile MSM7x00, MSM7x00A, MSM7x01, MSM7x01A [12][13][14][8]
Серія Adreno 2xx - yamato
Adreno 200 (AMD Z430) Уніфікована шейдерна модель
5-сторонній VLIW[15]
8

[2]

256 КБ 65 133 LPDDR-333 Одноканальний 32-бітний @ 166.5 МГц (1.3 ГБ/с) 22.85 0.133 0.53 2.12 4.25 Н/Д 2.0 1.1 Н/Д 1.4 (freedreno driver) 11
(feature level 9_3)[16]
Snapdragon S1 (MSM7227, MSM7627 QSD8250, QSD8650), Freescale i.MX51, i.MX53
Adreno 200 'enhanced' 45 200 245 LPDDR-400 Одноканальний 32-бітний @ 200 МГц (1.6 GB/s) 42 0.200 0.245 0.80 0.98 3.20 3.92 6.40 12.8 Snapdragon S1 (MSM7227A, MSM7627A, MSM7225A, MSM7625A)
Adreno 203 16

[4]

245 294 LPDDR2-600 Одноканальний 32-бітний @ 300 МГц (2.4 GB/s) 40.8 49.0 0.245 0.294 1.96 2.35 7.84 9.40 15.6 18.8 Snapdragon S4 Play (MSM8225, MSM8625), Snapdragon 200 (MSM8225Q, MSM8625Q)
Adreno 205 245 266 LPDDR2-666 Дво-канальний 32-бітний (64-бітний) @ 333 МГц (5.3 GB/s) 40.8 44.3 0.245 0.266 1.96 2.12 7.84 8.51 15.6 17.0 Snapdragon S2 (MSM7x30, MSM8x55, APQ8055)
Серія Adreno 2xx - leia
Adreno 220 Уніфікована шейдерна модель
5-сторонній VLIW[15]
32

[8]

512 KB 45 266 LPDDR2-666 Одноканальний 32-бітний @ 333 МГц (2.6 GB/s) 88.7 0.532 4.25 17.0 34.0 Н/Д 2.0 1.1 Н/Д 1.4 (freedreno driver) 11
(feature level 9_3)[16]
Snapdragon S3 (APQ8060, MSM8x60)
Adreno 225 28 200 300 400 LPDDR2-1000 Дво-канальний 32-бітний (64-бітний) @ 500 МГц (8.0 GB/s) 133.3 0.8 3.20 4.80 6.40 12.8 19.2 25.6 25.6 38.4 51.2 Snapdragon S4 Plus (APQ8060A, MSM8x60A, MSM8960) [17]
Серія Adreno 3xx - oxili
Adreno 304 Уніфікована шейдерна модель
Скалярний набір інструкцій[18]
24

[24]

96 KB 28 400 LPDDR2/3-768/1066 Одноканальний 32-бітний @ 384-533 МГц (3.0-4.2 GB/s) 4.80 19.2 38.4 Н/Д 3.0[16] (freedreno driver: 3.0, 3.1 incomplete, 3.2 partial) 1.1 1.1 embedded profile 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) 11
(feature level 9_3)[16]
Snapdragon 208, Snapdragon 210, Snapdragon 212
Adreno 305 (1-ше покоління) 256 KB 400 450 LPDDR2-800 Одноканальний 32-бітний @ 400 МГц (3.2 GB/s) 66.7 75 0.8 4.80 5.40 19.2 21.6 38.4 43.2 Snapdragon S4 Plus (MSM8x27)
Adreno 305 (2nd Gen.) 128 KB LPDDR2/3-1066 Одноканальний 32-бітний 533 МГц (4.2 GB/s) 66.7 75 0.8 Snapdragon 200 (MSM8210, MSM8610, MSM8212, MSM8612)
Snapdragon 400[19] (MSM8x26, MSM8x28, MSM8x30, MSM8x30AB, APQ8026, APQ8030)
[20]
[21]
Adreno 306 400 LPDDR2/3-1066 Одноканальний 32-бітний @ 533 МГц (4.2 GB/s) 84.3 0.8 4.80 19.2 38.4 Snapdragon 410 (MSM8916), Snapdragon 412 (MSM8916v2) [22]
Adreno 308 500 LPDDR3-1333 Одноканальний 32-бітний @ 666.5 МГц (5.3 ГБ/с) 105.4 1.0 6.00 24.0 48.0 Snapdragon 425 (MSM8917) Snapdragon 427 (MSM8920)
Adreno 320 (1st Gen.) 64

[64]

512 KB[22] 400 LPDDR2-1066 Дво-канальний 32-бітний (64-бітний) @ 533 МГц (8.5 ГБ/с) 225 1.6 3.2 12.8 51.2 102.4 Snapdragon S4 Pro (MSM8960T, APQ8064, APQ8064-1AA), Snapdragon S4 Prime (MPQ8064) [23]
Adreno 320 (2nd Gen.) 96

[96]

400 450 LPDDR3-1200 Дво-канальний 32-бітний (64-бітний) @ 600 МГц (9.6 ГБ/с) 225 253.1 2.4 2.7 >3.2 19.2 21.6 76.8 86.4 153.6 172.8 Snapdragon 600 (APQ8064T, APQ8064AB) [23]
Adreno 330 128

[128]

1024 KB 450 550 578 LPDDR3-1600 Дво-канальний 32-бітний (64-бітний) @ 800 МГц (12.8 ГБ/с) 253.1 309.4 325.1 3.6 4.4 4.624 28.8 35.2 36.9 115.2 140.8 147.9 230.4 281.6 295.9 Snapdragon 800 (MSM8974, APQ8074), Snapdragon 801 (MSM8274AB, MSM8974AB, MSM8974AC) [24]
Серія Adreno 4xx
Adreno 405 Уніфікована шейдерна модель 48

[48]

256 KB 28 550 LPDDR3-1333/1866 Одноканальний 32-бітний @ 666.5-933 МГц (5.3-7.4 ГБ/с) 13.2 52.8 105.6 Н/Д 3.2 (freedreno driver: 3.0, 3.1 incomplete, 3.2 partial) 1.1 1.2 full profile 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) 11
(feature level 11_1)[16]
Snapdragon 415 (MSM8929), Snapdragon 610 (MSM8936), Snapdragon 615 (MSM8939), Snapdragon 616 (MSM8939v2), Snapdragon 617 (MSM8952)
Adreno 418 128

[128]

512 KB 20 600 LPDDR3-1866 Дво-канальний 32-бітний (64-бітний) @ 933 МГц (14.9 ГБ/с) 38.4 153.6 307.2 1.0 [25] Snapdragon 808 (MSM8992)
Adreno 420 1536 KB 28 500 600 LPDDR3-1600 Дво-канальний 64-бітний (128-бітний) @ 800 МГц (25.6 ГБ/с) 281.3 337.5

(0.56[26] Tr/clock)

4

4.8

(8.2 Px/clock)

32.0 38.4 128.0 153.6 256.0 307.2 1.0 [note 2] Snapdragon 805 (APQ8084) [27]
Adreno 430 256

[256]

20 500 600 650 LPDDR4-3200 Дво-канальний 32-бітний (64-бітний) @ 1600 МГц (25.6 ГБ/с) ? 4.8

6.0 6.6

64.0 76.8 83.2 256.0 307.2 332.8 512.0 614.4 665.6 1.0 [25] Snapdragon 810 (APQ8094, MSM8994)
Серія Adreno 5xx
Adreno 504 Уніфікована шейдерна модель + Уніфікована пам'ять ? ? 12 ? LPDDR3-1600 Одноканальний 32-бітний @ 800 МГц (6.4 ГБ/с)  ?  ?  ?  ? 1.0[25] 3.2[28] (freedreno driver: 3.1, 3.2 partial) ? 2.0 Full 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) 11
(feature level 11_1)[16]
Snapdragon 429
Adreno 505 48

[48]

128 + 8 KB 28 450 ? 10.8 43.2 86.4 Snapdragon 430 (MSM8937), Snapdragon 435, Snapdragon 439
Adreno 506 96

[96]

14 600 650 LPDDR3-1866 Одноканальний 32-бітний @ 933 МГц (7.4 ГБ/с) ? ? ? 28.8 31.2 115.2 124.8 230.4 249.6 Snapdragon 450, Snapdragon 625, Snapdragon 626, Snapdragon 632
Adreno 508 128

[128]

650 LPDDR4-2666 Дво-канальний 16бітний (32-бітний) @ 1333 МГц (10.6 ГБ/с) ? ? ? 41.6 166.4 332.8 Snapdragon 630
Adreno 509 256 + 16 KB 720 LPDDR4-2666 Дво-канальний 32-бітний (64-бітний) @ 1333 МГц (21.3 ГБ/с) ? ? ? 46.0 184.3 368.6 Snapdragon 636
Adreno 510 256 KB 28 600 LPDDR3-1866 Дво-канальний 32-бітний (64-бітний) @ 933 МГц (14.9 ГБ/с) ? ? ? 38.4 153.6 307.2 3.2 (3.1 + AEP) (freedreno driver: 3.1, 3.2 partial) Snapdragon 650 (MSM8956), Snapdragon 652 (MSM8976),

Snapdragon 653 (MSM8976PRO)

Adreno 512 256 + 16 KB 14 850 LPDDR4-3732 Чотири-канальний 16-бітний (64-бітний) @ 1866 МГц (29.8 ГБ/с) ? ? ? 54.4 217.6 435.2 Snapdragon 660 (MSM8976 Plus)
Adreno 530 256

[256]

1024 KB 510 624 653 ? 6.7

8.1

7.7

8.1

65.2 79.8 83.5 261.1 319.4 334.3 522.2 638.9 668.6 12
(feature level 11_1)
Snapdragon 820 (MSM8996),

Snapdragon 821 (MSM8996PRO)

Adreno 540 384

[384]

10 710 739 >450 ? 11.36 (16 Texel/clock) [29][30] 136.3 141.8 545.2 567.5 1090.0 1135.1 Snapdragon 835 (MSM8998)
Серія Adreno 6xx
Adreno 605 Уніфікована шейдерна модель + Уніфікована пам'ять 128+8 KB 14 1.0 and 1.1[31][25] 3.2 2.0 Full WIP (freedreno driver) 12
(feature level 12_1)[16]
Adreno 608 10 LPDDR4X-4266 Дво-канальний 16-бітний (32-бітний) @ 2133 МГц (17.0 ГБ/с) Snapdragon SA6155P [32]
Adreno 610 128 [128] ? 11 600

750

950

28.8

36

68
115.2

144

273

230.4

288

546

Snapdragon 460
Snapdragon 662
Snapdragon 665

QCS4290

[33][34]
6 Snapdragon 680
Adreno 612 128 256+16 KB 11 745

845

LPDDR4X-3732 Дво-канальний 16-бітний (32-бітний) @ 1866 МГц (14.9 ГБ/с) 47.7

54.1

190.7

216.3

381.4

432.6

Snapdragon 675
Snapdragon 678
Adreno 615 256

[128]

512 KB 10 700

780

89.6 358.4 716.8 QCS603

QCS605

Snapdragon 670

[35][36]
Adreno 616 750 96.0 384.0 768.0 Snapdragon 710
Snapdragon 712
Adreno 618 8 700

825

[37]

89.6 105.6 358.4 422.4 716.8 844.8 Snapdragon 720G
Snapdragon 730
Snapdragon 730G
Snapdragon 732G
Snapdragon 7c

Snapdragon 7c Gen 2

[38]
Adreno 619L 950 LPDDR4X-4266 Дво-канальний 16-бітний (32-бітний) @ 2133 МГц (17.0 ГБ/с) Snapdragon 690
Adreno 619 825

950

116.4

134

465.5

536

930.9

1072

Snapdragon 480/480+
Snapdragon 750G
[39]
6 Snapdragon 695
Adreno 620 384

[192]

7 625
750
6.7/8.1 120.0 144.0 480.0 576.0 960.0 1152.0 Snapdragon 765
Snapdragon 765G
Snapdragon 768G
Adreno 630 512

[256]

1024 KB 10 710 LPDDR4X-4266 Чотири-канальний 16-бітний (64-бітний) @ 1866 МГц (29.8 ГБ/с) >500 ? 15.4 181.7 727.0 1454.0 Snapdragon 845
Snapdragon 850
[40][41][42][43]
Adreno 640 768

[384]

12*2[44] 7 585
675
LPDDR4X-4266 Чотири-канальний 16-бітний (64-бітний) @ 2133 МГц (34.1 ГБ/с) ? 9.4 28.1 224.6 259.2 898.5 1036.8 [37]
1797.1 2073.6 [45] Snapdragon 855/855+
Snapdragon 860

Snapdragon 855A (SA8155P)

[46][40]
Adreno 642L 384

[192]

6 490 LPDDR4X-4266 Дво-канальний 16-бітний (32-бітний) @ 2133 МГц (17.0 ГБ/с) Snapdragon 778G/778G+
Adreno 642 5 Snapdragon 780G
Adreno 643L 6 812 LPDDR4X-4266 або LPDDR5-6400 Чотири-канальний 16-бітний (64-бітний) @ 2133 МГц або 3200 МГц (34.1 ГБ/с або 44.0ГБ/с) QCS6490
Adreno 650 1024

[512]

[47]

? and 300 Go/s [47] 24*2[44] 7 587 670 LPDDR4X-4266 або LPDDR5-6400 Чотири-канальний 16-бітний (64-бітний) @ 2133 МГц або 3200 МГц (34.1 ГБ/с або 44.0 ГБ/с) 14.x (est.) [48] 28.1 (est.) [48] 300.5 343.0 1202.1 1372.1 [37][48][49][50] 2404.3 2744.3 Snapdragon 865/865+
Snapdragon 870

QCS8250

[40][51]
Adreno 660 1024

[512]

5 792 905 LPDDR5-6400 Чотири-канальний 16-бітний (64-бітний) @ 3200 МГц (51.2 ГБ/с) 405.5 463.3 1622.0 1853.4 [52] 3244.0 3706.8 Snapdragon 888/888+
Adreno 675 1344 [672] ? 7 590 LPDDR4X-4266 Чотири-канальний 16-бітний (64-бітний) @ 2133 МГц (34.1 ГБ/с) 396.4 1585.9 3171.8 Snapdragon 8c [53]
Adreno 680 1536

[768]

? 600 LPDDR4X-4266 Восьми-канальний 16-бітний (128-бітний) @ 2133 МГц (68.2 ГБ/с) 460.8 1843.2 [54] 3686.4 [55] Snapdragon 8cx Gen 1/2

Snapdragon SA8195P

[55][56]
Adreno 685 ? 250 590 192.0 453.1 768.0 1812.4 1536.0 3624.9 Microsoft SQ1 [57][58]
Adreno 690[59] 661 680 507.6 522.2 2030.5 2088.9 4061.1 4177.9 Microsoft SQ2 [60]
Серія Adreno 7xx
Adreno 702 845 LPDDR3-1866 Одноканальний 32-бітний @ 933 МГц (7.4 ГБ/s) або

LPDDR4X-3732 Дво‑канальний 16-бітний (32-бітний) @ 1866 МГц (14.9 ГБ/с)

QCS2290
Adreno 730 1536

[768]

1024 KB 4 818 LPDDR4X-3732 Дво-канальний 16-бітний (32-бітний) @ 1866 МГц (14.9 ГБ/с) або

LPDDR5-3200 Одноканальний 128-бітний @ 933 МГц (64 ГБ/с)

1,864 MT/s 22.0 GPixel/s 628.2 2512.8 5025.7 Snapdragon 8 Gen 1 [61]
Назва Тип ALU
(SIMD, FP32) [note 1]
Вбудована графічна пам'ять TMU Архітектура і
 техпроцес
Частота МГц Пропускна здатність пам'яті Triangle

[MT/s]

Pixel

[ГП/с]

Texture

[ГТ/с]

(FP64) (FP32) (FP16) Vulkan OpenGL ES OpenVG OpenCL OpenGL Direct3D Використовується у Qualcomm... Посилання
Мікроархітектура Технологія пам'яті Швидкість заповнення GFLOPS API (версія)
Закрити
Notes
  1. Adreno ALU = ALU x сума MP
  2. Драйвер Vulkan для Adreno 420 ніколи не виходив
  • Adreno 130 всередині MSM7x01 і MSM7x01A. Він підтримує OpenGL ES 1.1, OpenVG 1.1, EGL 1.3, Direct3D Mobile, SVGT 1.2, Direct Draw і GDI.
  • Adreno 200 (AMD Z430) всередині QSD8x50 і MSM7x27 (133 МГц). Він пропонує програмований конвеєр функцій і потокові текстури з підтримкою OpenGL ES 1.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, SVGT 1.2 і DirectDraw. (22 млн трикутників в секунду, 133 млн пікселів в секунду, тактова частота до 133 МГц)
  • Adreno 200 enhanced всередині MSM7x25A і MSM7x27A (200 МГц). Він підтримує OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, SVGT 1.2, Direct Draw і GDI. (40 млн трикутників/секунду, 200 млн пікселів/секунду, тактова частота до 200 МГц)
  • Adreno 203 всередині MSM8225 та MSM8225Q (400 МГц). Це покращення в порівнянні з Adreno 205. Він має більш високу частоту, кращу швидкість заповнення пікселів, нижче енергоспоживання та кращу продуктивність у 3D. Він приблизно на 50-100% швидше, ніж Adreno 200 (покращений), і на 10-25%, ніж Adreno 205. Він може працювати вдвічі швидше, ніж Adreno 205. Він підтримує OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, DirectX 9.0c, SVGT 1.2, Direct Draw та GDI. (42-50 млн трикутників за секунду, 250-300 пікселів за секунду, тактова частота 192-400 МГц).
  • Adreno 205 всередині QSD8x50A, MSM7x30 та MSM8x55 (245 МГц). Його покращення включають апаратне прискорення SVG і Adobe Flash і кращу шейдерну продуктивність, ніж Adreno 200. Він підтримує OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, SVGT 1.2, Direct Draw та G (57 млн трикутників за секунду, 250 млн пікселів за секунду, тактова частота до 400 МГц).
  • Adreno 220 всередині MSM8660 або MSM8260 (266 МГц) з одноканальною пам'яттю. Він підтримує OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, DirectX 9.0c, SVGT 1.2, Direct Draw та GDI. (88 млн трикутників за секунду, 500 млн пікселів за секунду, стандартна тактова частота до 266 МГц, розгін до 400 МГц).
  • Adreno 225 всередині MSM8960 (400 МГц) з уніфікованою шейдерною архітектурою та двоканальною пам'яттю. Він підтримує Direct3D 9.0c на додаток до OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, SVGT 1.2, Direct Draw та GDI.
  • Adreno 320 всередині Qualcomm S4 Pro & Prime Series з уніфікованою шейдерною архітектурою та двоканальною пам'яттю. Він підтримує рівень функцій Direct3D 9_3 крім OpenGL ES 3.0, OpenGL ES 2.0, OpenGL ES 1.1, OpenVG 1.1, EGL 1.4, Direct3D Mobile, SVGT 1.2.[23]
  • Adreno 330 всередині Nexus 5, серія планшетів Amazon Kindle HDX, Amazon Fire phone, планшеті Nokia Lumia 2520, Nokia Lumia 1520, Nokia Lumia Icon, Nokia Lumia 930, Samsung Galaxy S5, Samsung Galaxy Note 3, Sony Xperia Z1, Sony Xperia Z1 Compact, Sony Xperia Z2, Sony Xperia Z3, Sony Xperia Z3 Compact, Sony Xperia Z Ultra, Xiaomi Mi3, Xiaomi Mi4, OnePlus One, HTC One (M8) і LG G2/G3.
  • Adreno 420 всередині Qualcomm Snapdragon 805 підтримує середовище виконання Direct3D 11.2. Всередині Google Nexus 6, Samsung Galaxy S5 LTE-A, Samsung Galaxy Note 4, Samsung Galaxy Note Edge, LG G3 Cat. 6, Qualcomm Snapdragon 805 - перша телефонна SoC, яка будь-коли мала 128-бітну шину пам'яті.
  • Adreno 540 всередині Qualcomm Snapdragon 835 - це перша телефонна SoC зі змінною частотою оновлення та Foveated Render/Variate Rate Shading, Qualcomm називає свої реалізації Q-Sync і Adreno Foveation.
  • Adreno 630 всередині Qualcomm Snapdragon 845 - перша телефонна SoC з функцією Inside-Out Room-scale 6DoF з SLAM
  • Adreno 640 всередині Qualcomm Snapdragon 855 — перша телефонна SoC з драйверами графічного процесора, що оновлюються, з Google Play Store.
  • Adreno 660 всередині Qualcomm Snapdragon 888 є перший SoC для телефону, який має Variable Rate Shading (VRS)

Підтримка операційних систем

Див. також: Безкоштовний драйвер з відкритим кодом#Qualcomm

Існують фірмові драйвери для мобільної операційної системи Android на базі Linux, які доступні самій Qualcomm. Історично єдиним способом підтримувати графічний процесор на Linux, не ОС Android, був пакет libhybris.

Linux і Mesa підтримують графічні процесори серії Adreno 200/300/400/500 з драйвером під назвою freedreno. Freedreno дозволяє використовувати графіку з відкритим вихідним кодом на таких пристроях, як 96Boards Dragonboard 410c і Nexus 7 (2013).

Див. також

Джерела

Wikiwand - on

Seamless Wikipedia browsing. On steroids.