From WikiChip
Difference between revisions of "qualcomm/microarchitectures/hexagon"
< qualcomm

(| type = 4-way VLIW, 4-thread SMT (barell multithreading?))
(add tables)
Line 7: Line 7:
 
| introduction  =  
 
| introduction  =  
 
| phase-out    =
 
| phase-out    =
| process      = 65 - 28
+
| process      = 65 nm
 +
| process 2    = 45 nm
 +
| process 3    = 28 nm
 +
| process 4    = 14 nm
 +
| process 5    = 10 nm
 
| cores        =  
 
| cores        =  
 
| cores 2      =  
 
| cores 2      =  
Line 90: Line 94:
 
* L3 Cache:
 
* L3 Cache:
 
* TLBs:
 
* TLBs:
 +
 +
== Versions ==
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! DSP/NPU <br>versions
 +
! Process <br>node, nm
 +
! Year
 +
! Number of <br>simultaneous <br>threads
 +
! Per-thread <br>clock, MHz
 +
! Total core <br>clock, MHz
 +
! Product
 +
|-
 +
| QDSP6 V1 || [[65 nm]] || [[2006]] || || ||
 +
|
 +
|-
 +
| QDSP6 V2 || [[65 nm]] || [[2007]] || 6 || 100 || 600
 +
|
 +
|-
 +
| QDSP6 V3 (1 Gen) || [[45 nm]] || [[2009]] || 6 || 67 || 400
 +
|
 +
|-
 +
| QDSP6 V3 (2 Gen) || [[45 nm]] || [[2009]] || 4 || 100 || 400
 +
|
 +
|-
 +
| QDSP6 V4 <br>(V4M, V4C, V4L) || [[28 nm]] || [[2010]] || 3 || 167 || 500
 +
| [[Snapdragon 6]]<br>• 600 •
 +
|-
 +
| QDSP6 V5 <br>(V5A, V5H) || 28 || 2013 || 3 || 200 or greater <br>with DMT || 600
 +
| Snapdragon <br>• 410 • 412 • 800 • 801 •
 +
|-
 +
| 536
 +
| 12/28
 +
| 2014
 +
|
 +
|
 +
|
 +
| [[Snapdragon 2]]<br>• 205 • 208 • 210 • 212 •<hr>[[Snapdragon 4]]<br>• 425 • 427 • 429 • 430 • 435 • 439 •
 +
|-
 +
| V50 (or QDSP6 V5.0)
 +
| 28
 +
| 2014
 +
|
 +
|
 +
| 700/800 (805)
 +
| Snapdragon <br>• 415 • 610 • 615 • 616 • 805 •
 +
|-
 +
| 546
 +
| 14/28
 +
| 2015
 +
|
 +
|
 +
|
 +
| Snapdragon <br>• 450 • 617 • 625 • 626 • 632 •
 +
|-
 +
| V56 (or QDSP6 V5.6)
 +
| 20/28
 +
| 2015
 +
|
 +
|
 +
| 800 (808/810)
 +
| Snapdragon <br>• 650 • 652 • 653 • 808 • 810 •
 +
|-
 +
| 642
 +
| 14
 +
| 2017
 +
|
 +
|
 +
|
 +
| [[Snapdragon 6]]<br>• 630 •
 +
|-
 +
| 680 (or QDSP6 V6) || 14 || 2016 || 4 || 500 || 787 (660), 2000 <br>(820 & 821)
 +
| [[Snapdragon 6|Snapdragon]]<br>• [[Snapdragon 636|636]] • [[Snapdragon 660|660]] • 820 • 821 •
 +
|-
 +
| 682
 +
| 10
 +
| 2017
 +
|
 +
|
 +
|
 +
| [[Snapdragon 8]]<br>• 835 •
 +
|-
 +
| 683
 +
| 11
 +
| 2020
 +
|
 +
|
 +
|
 +
| Snapdragon <br>• 460 • 662 •
 +
|-
 +
| 685
 +
| 10/11
 +
| 2018
 +
| (3 TOPS)
 +
|
 +
|
 +
| [[Snapdragon]] <br>• 670 • 675 • 678 •<br>• 710 • 712 • 845 • 850 •
 +
|-
 +
| 686
 +
| 6/8/11
 +
| 2019
 +
| (3.3 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 6|Snapdragon]]<br>• 480 • 480+ • 665 • 680 • 685 • 695 •
 +
|-
 +
| 688
 +
| 8
 +
| 2019
 +
| (3.6 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 7]]<br>• 730 • 730G • 732G •
 +
|-
 +
| 690
 +
| 7
 +
| 2019
 +
| (7 TOPS/<br>9 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 8|Snapdragon]]<br>• [[Snapdragon 855|855]] • [[Snapdragon 855+|855+]] • [[Snapdragon 860|860]] •<br>• 8c • [[Snapdragon 8cx|8cx]] • 8cx (Gen 2) •<hr>• Microsoft SQ1 • SQ2 •
 +
|-
 +
| 692
 +
| 8
 +
| 2020
 +
| (5 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 7|Snapdragon]]<br>• 690 • 720G • 7c • 7c (Gen 2) •
 +
|-
 +
| 694
 +
| 8
 +
| 2020
 +
| (4.7 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 7]] <br>• 750G •
 +
|-
 +
| 696
 +
| 7
 +
| 2020
 +
| (5.4 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 7]] <br>• 765 • 765G • 768G •
 +
|-
 +
| 698
 +
| 7
 +
| 2020
 +
| (15 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 8]]<br>[[Snapdragon 865|865]] • 865+ • 870 • [[Snapdragon 8cx|8cx]] (Gen 3) • <hr>• Microsoft SQ3 •
 +
|-
 +
| 770
 +
| 5/6
 +
| 2021
 +
| (12 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 7]] <br>• 778G • 778G+ • 780G • 782G •
 +
|-
 +
| 780
 +
| 5
 +
| 2021
 +
| (26 TOPS/<br>32 TOPS)
 +
|
 +
|
 +
| [[Snapdragon 8]] <br>• 888 • 888+ •
 +
|-
 +
| 790 (NPU/HTP)<ref>https://ai-benchmark.com/ranking_processors</ref>
 +
| 4
 +
| 2021
 +
| (32 TOPS)<br>(INT8)
 +
|
 +
|
 +
| [[Snapdragon 8]] <br>• 8 (Gen 1) • 8+ (Gen 1) •
 +
|-
 +
| NPU (HTP Gen 2)
 +
| 4
 +
| 2022
 +
| (26 TOPS)<br>(INT8)
 +
|
 +
|
 +
| [[Snapdragon 8]] <br>• 8 Gen 2 •
 +
|-
 +
| NPU (HTP Gen 3)
 +
| 4
 +
| 2023
 +
| (34 TOPS)<br>(INT8)
 +
|
 +
|
 +
| [[Snapdragon 8]] <br>• 8 Gen 3 • 8s Gen 3 •
 +
|-
 +
| NPU (HTP Gen 4)
 +
| 3
 +
| 2024
 +
| (50 TOPS)<br>(INT8)<ref>https://www.reddit.com/r/LocalLLaMA/comments/1gy9wsx/npu_information_for_apple_and_snapdragon/</ref>
 +
|
 +
|
 +
| [[Snapdragon 8]]<br>• 8 Elite •
 +
|-
 +
| NPU (HTP Gen 4)
 +
| 4
 +
| 2024
 +
| (45 TOPS) <br>(INT8)<ref>https://www.ernestchiang.com/en/notes/general/tops-comparison-table-by-brand/</ref><ref>https://www.anandtech.com/show/21445/qualcomm-snapdragon-x-architecture-deep-dive</ref>
 +
|
 +
|
 +
| [[Snapdragon X]]<br>• X • X Elite •  X Plus •
 +
|-
 +
|}
 +
<!--
 +
<pre>
 +
Processor NPU Performance GPU Performance Bandwidth
 +
Apple
 +
A18 Pro 35.0 INT8 4.454 FP16 60 GB/s
 +
M2 15.8 FP16 5.68 FP16 102 GB/s
 +
M4 38.0 INT8 9.20 FP16 120 GB/s
 +
M3 Max 35.0 INT8 32.80 FP16 300/400 GB/s
 +
M4 Max 38.0 INT8 34.08 FP16 546 GB/s
 +
M2 Ultra 31.6 FP16 53.96 FP16 800 GB/s
 +
Snapdragon
 +
SD Gen2 26 INT8 4.178 FP16 67.0 GB/s
 +
SD Gen3 34 INT8 5.548 FP16 76.6 GB/s
 +
SD Gen4 50 INT8 6.758 FP16 85.1 GB/s
 +
SD X Elite 45 INT8 9.200 FP16 133.9 GB/s
 +
</pre>
 +
-->
  
 
== Core ==
 
== Core ==
Line 98: Line 330:
  
 
== All SoCs using Hexagon ==
 
== All SoCs using Hexagon ==
 +
{{empty section}}
 +
 +
== Documents ==
 
{{empty section}}
 
{{empty section}}
  
Line 104: Line 339:
 
*  Lucian Codrescu, Qualcomm, [https://www.hotchips.org/wp-content/uploads/hc_archives/hc27/HC27.24-Monday-Epub/HC27.24.20-Multimedia-Epub/HC27.24.211-Hexagon680-Codrescu-Qualcomm.pdf Architecture of the Hexagon 680 DSP for Mobile Imaging and Computer Vision], HotChips #27 2015
 
*  Lucian Codrescu, Qualcomm, [https://www.hotchips.org/wp-content/uploads/hc_archives/hc27/HC27.24-Monday-Epub/HC27.24.20-Multimedia-Epub/HC27.24.211-Hexagon680-Codrescu-Qualcomm.pdf Architecture of the Hexagon 680 DSP for Mobile Imaging and Computer Vision], HotChips #27 2015
 
<!-- https://developer.qualcomm.com/software/hexagon-dsp-sdk/dsp-processor -->
 
<!-- https://developer.qualcomm.com/software/hexagon-dsp-sdk/dsp-processor -->
 
== Documents ==
 
{{empty section}}
 

Revision as of 18:01, 26 February 2025

Edit Values
Hexagon µarch
General Info
Arch TypeDSP
DesignerQualcomm
ManufacturerTSMC
Process65 nm, 45 nm, 28 nm, 14 nm, 10 nm
Pipeline
Type4-way VLIW, 4-thread SMT
OoOENo
Decode4-way
Instructions
ExtensionsHVX

Hexagon is VLIW DSP architecture designed by Qualcomm. It is used in many Qualcomm's SoC as Audio, Sensor or Compute coprocessor, and in the many Qualcomm modems. Usually runs some kind of Real-time OS, optimized for low power and small chip area. Supports of simultaneous execution of several threads, with interleaved multithreading in V1-V4 and dynamic multithreading since V5.

Architecture

Versions of Hexagon Architecture:

  • V1 - 65nm, October 2006
  • V2 - 65nm, December 2007
  • V3M - 45nm, June 2009
  • V3C - 45nm, August 2009
  • V3L - 45nm, November 2009
  • V4M - 28nm, December 2010
  • V4C - 28nm, December 2010
  • V4L - 28nm, April 2011
  • V5A - 28nm, December 2012
  • V5H - 28nm, December 2012
  • Hexagon 400
    • Only Fixed Point
  • Hexagon 500
    • Floating Point
  • Hexagon 600
    • Hexagon Vector eXtensions (HVX) added

Overview

Block Diagram

Memory Hierarchy

  • L1I Cache:
  • L1D Cache:
  • L2 Cache:
  • L3 Cache:
  • TLBs:

Versions

DSP/NPU
versions
Process
node, nm
Year Number of
simultaneous
threads
Per-thread
clock, MHz
Total core
clock, MHz
Product
QDSP6 V1 65 nm 2006
QDSP6 V2 65 nm 2007 6 100 600
QDSP6 V3 (1 Gen) 45 nm 2009 6 67 400
QDSP6 V3 (2 Gen) 45 nm 2009 4 100 400
QDSP6 V4
(V4M, V4C, V4L)
28 nm 2010 3 167 500 Snapdragon 6
• 600 •
QDSP6 V5
(V5A, V5H)
28 2013 3 200 or greater
with DMT
600 Snapdragon
• 410 • 412 • 800 • 801 •
536 12/28 2014 Snapdragon 2
• 205 • 208 • 210 • 212 •
Snapdragon 4
• 425 • 427 • 429 • 430 • 435 • 439 •
V50 (or QDSP6 V5.0) 28 2014 700/800 (805) Snapdragon
• 415 • 610 • 615 • 616 • 805 •
546 14/28 2015 Snapdragon
• 450 • 617 • 625 • 626 • 632 •
V56 (or QDSP6 V5.6) 20/28 2015 800 (808/810) Snapdragon
• 650 • 652 • 653 • 808 • 810 •
642 14 2017 Snapdragon 6
• 630 •
680 (or QDSP6 V6) 14 2016 4 500 787 (660), 2000
(820 & 821)
Snapdragon
636660 • 820 • 821 •
682 10 2017 Snapdragon 8
• 835 •
683 11 2020 Snapdragon
• 460 • 662 •
685 10/11 2018 (3 TOPS) Snapdragon
• 670 • 675 • 678 •
• 710 • 712 • 845 • 850 •
686 6/8/11 2019 (3.3 TOPS) Snapdragon
• 480 • 480+ • 665 • 680 • 685 • 695 •
688 8 2019 (3.6 TOPS) Snapdragon 7
• 730 • 730G • 732G •
690 7 2019 (7 TOPS/
9 TOPS)
Snapdragon
855855+860
• 8c • 8cx • 8cx (Gen 2) •
• Microsoft SQ1 • SQ2 •
692 8 2020 (5 TOPS) Snapdragon
• 690 • 720G • 7c • 7c (Gen 2) •
694 8 2020 (4.7 TOPS) Snapdragon 7
• 750G •
696 7 2020 (5.4 TOPS) Snapdragon 7
• 765 • 765G • 768G •
698 7 2020 (15 TOPS) Snapdragon 8
865 • 865+ • 870 • 8cx (Gen 3) •
• Microsoft SQ3 •
770 5/6 2021 (12 TOPS) Snapdragon 7
• 778G • 778G+ • 780G • 782G •
780 5 2021 (26 TOPS/
32 TOPS)
Snapdragon 8
• 888 • 888+ •
790 (NPU/HTP)[1] 4 2021 (32 TOPS)
(INT8)
Snapdragon 8
• 8 (Gen 1) • 8+ (Gen 1) •
NPU (HTP Gen 2) 4 2022 (26 TOPS)
(INT8)
Snapdragon 8
• 8 Gen 2 •
NPU (HTP Gen 3) 4 2023 (34 TOPS)
(INT8)
Snapdragon 8
• 8 Gen 3 • 8s Gen 3 •
NPU (HTP Gen 4) 3 2024 (50 TOPS)
(INT8)[2]
Snapdragon 8
• 8 Elite •
NPU (HTP Gen 4) 4 2024 (45 TOPS)
(INT8)[3][4]
Snapdragon X
• X • X Elite • X Plus •

Core

New text document.svg This section is empty; you can help add the missing info by editing this page.

Die

All SoCs using Hexagon

New text document.svg This section is empty; you can help add the missing info by editing this page.

Documents

New text document.svg This section is empty; you can help add the missing info by editing this page.

References

  1. https://ai-benchmark.com/ranking_processors
  2. https://www.reddit.com/r/LocalLLaMA/comments/1gy9wsx/npu_information_for_apple_and_snapdragon/
  3. https://www.ernestchiang.com/en/notes/general/tops-comparison-table-by-brand/
  4. https://www.anandtech.com/show/21445/qualcomm-snapdragon-x-architecture-deep-dive
codenameHexagon +
designerQualcomm +
full page namequalcomm/microarchitectures/hexagon +
instance ofmicroarchitecture +
manufacturerTSMC +
nameHexagon +
process65 nm (0.065 μm, 6.5e-5 mm) +, 45 nm (0.045 μm, 4.5e-5 mm) +, 28 nm (0.028 μm, 2.8e-5 mm) +, 14 nm (0.014 μm, 1.4e-5 mm) + and 10 nm (0.01 μm, 1.0e-5 mm) +