Qualcomm Hexagon

Hexagon
Qualcomm Hexagon
Información
Tipo Procesador de señales digitales
Fecha de creación 2006
Desarrollador Qualcomm

Hexagon es el nombre de marca para una familia de procesadores de señales digitales (DSP) productos por Qualcomm. Hexagon también es conocido como QDSP6, siglas de la frase en inglés “procesador de señales digitales de sexta generación de Qualcomm". Según Qualcomm, la arquitectura Hexagon está diseñada para ofrecer rendimiento con poca energía para una variedad de aplicaciones.[1][2]

Cada versión de Hexagon tiene un juego de instrucciones y un micro-arquitectura. Estos dos características están íntimamente relacionadas.

Hexagon es utilizado en los chips Qualcomm Snapdragon, por ejemplo en teléfonos inteligentes, automóviles, dispositivos wearables y otros dispositivos móviles, y es también utilizado en componentes de redes de telefonía celular.

Arquitectura del conjunto de instrucciones[editar]

Los dispositivos informáticos tienen conjuntos o juegos de instrucciones, que son sus lenguajes más bajos y primitivos. Las instrucciones comunes son aquellas que hacen que se agreguen, multipliquen o combinen dos números de otras maneras, así como las instrucciones que dirigen al procesador a dónde buscar en la memoria su siguiente instrucción. Existen muchos otros tipos de instrucciones.

Los ensambladores y compiladores traducen los programas de un computador en flujos de instrucciones - flujos de bits - que el dispositivo puede entender y llevar a cabo (ejecutar). A medida que se ejecuta un flujo de instrucciones, la integridad de la función del sistema se sostiene mediante el uso de niveles de privilegios de instrucción. Las instrucciones con privilegios tienen acceso a más recursos en el dispositivo, incluida la memoria. Hexagon admite niveles de privilegios.

Originalmente, las instrucciones de Hexagon operaban sobre números enteros, pero no sobre números en coma flotante, eventualmente, en la versión 5 (v5) se agregó el soporte para punto flotante.[3][4]

La unidad de procesamiento que maneja la ejecución de instrucciones es capaz de despachar, en orden, hasta 4 instrucciones (por paquete) a 4 Unidades de Ejecución por ciclo del procesador (cada tick).[5][6]

Soporte de software[editar]

Sistemas operativos[editar]

El port de Linux para Hexagon se ejecuta bajo una capa de hipervisor ("Hexagon Virtual Machine") y se fusionó con la versión 3.2 del núcleo.

La versión original del Hipervisor (hypervisor) es de código cerrado, mas en abril del 2013, se libero una versión mínima, de código abierto del hipervisor, el cual fue implementado para la arquitectura QDSP6 V2 y V3. Teniendo por nombre "Hexagon MiniVM", este ultimo fue liberado por Qualcomm bajo una licencia de tipo BSD.

Compiladores[editar]

El soporte para Hexagon fue agregado en la versión 3.1 de LLVM por Tony Linthicum. La compatibilidad con Hexagon/HVX V66 ISA se agregó en la versión 8.0.0 de LLVM. También hay una rama no mantenida por la FSF de GCC y binutils.

Adopción del bloque de SIP[editar]

Los DSPs Qualcomm Hexagon han estado disponibles en los SoCs Qualcomm Snapdragon desde 2006. En el Snapdragon S4 (MSM8960 y más recientes) existen tres núcleos QDSP, dos en el subsistema del módem y un núcleo hexagonal en el subsistema multimedia. Los núcleos de módem son programados por Qualcomm solamente, y sólo el núcleo multimedia puede ser programado por el usuario.

También son utilizados en algunos procesadores para femtoceldas de Qualcomm, incluyendo los FSM98xx, FSM99xx y FSM90xx.[7]

Integración de terceras partes[editar]

En marzo de 2016, se anunció que el software de procesamiento de audio AudioSmart de la compañía de semiconductores Conexant sería integrado al Hexagon de Qualcomm.[8]

En mayo de 2018 wolfSSL agregó soporte para usar Qualcomm Hexagon. Esto es soporte para ejecutar operaciones criptográficas wolfSSL en el DSP. Además del uso de operaciones criptográficas, más tarde se agregó una biblioteca de administración de carga de operaciones especializada.

Versiones[editar]

Existen seis versiones de la arquitectura QDSP6 publicadas: V1 (2006), V2 (2007-2008), V3 (2009), V4 (2010-2011), QDSP6 V5 (2013, en el Snapdragon 800); y QDSP6 V6 (2016, en el Snapdragon 820).[9][10]​ La V4 tiene 20 DMIPS por milliwatt, operando a 500 MHz.[11][10]​ La velocidad de reloj del Hexagon varía entre los 400-2000 MHz para el QDSP6 y entre 256-350 MHz para generación anterior de la arquitectura, el QDSP5.[12]

Versions of QDSP6 Process node, nm Date[13] Number of simultaneous threads Per-thread clock, MHz Total core clock, MHz Product
QDSP6 V1 65[13] Oct 2006
QDSP6 V2 65 Dec 2007[13] 6 100 600
QDSP6 V3 (1st gen)[14] 45 2009 6 67 400
QDSP6 V3 (2nd gen)[14] 45 2009 4 100 400
QDSP6 V4[14]​ (V4M, V4C, V4L[13]​) 28 2010–2011 3 167 500
QDSP6 V5 (V5A, V5H[13]​) 28 2013 3[13] 200 or greater with DMT[15] 600
642 14 2017 Snapdragon

630

QDSP6 V6 or 680 14 2016/2017 4 500 2000 Snapdragon

820/821/636/660

682 10 2017 Snapdragon

835

683 11 2020 Snapdragon

845/670/675/678/710/712

686 11/8 2019/2021 (3.3 TOPS) Snapdragon

665/480

688 8 2019/2020 (3.6 TOPS) Snapdragon

730(G)/732G

690 7 2019 (7 TOPS) Snapdragon

855/855+

692 8 2020 Snapdragon

720G/690

694 8 2020 (4.7 TOPS) Snapdragon

750G

696 7 2020 (5.4 TOPS) Snapdragon

765(G)/768G

698 7 2020 (15 TOPS) Snapdragon

865/865+/870

780 5 2021 (26 TOPS) Snapdragon

888

790 ? 2022 ? - - Snapdragon 8 gen 1 / 8+ gen 1

Disponibilidad en Snapdragon productos[editar]

Tanto los núcleos Hexagon (QDSP6) como los pre-Hexagon (QDSP5) se utilizan en los SoC modernos de Qualcomm, QDSP5 principalmente en productos de gama baja. Los QDSP de módem (a menudo anteriores a Hexagon) no se muestran en la tabla.

QDSP5 uso:

Snapdragon Generación Chipset (SoC) ID DSP Generación DSP Frecuencia, MHz Nodo de proceso, nm
S1[12] MSM7627, MSM7227, MSM7625, MSM7225 QDSP5 320 65
S1[12] MSM7627Un, MSM7227Un, MSM7625Un, MSM7225Un QDSP5 350 45
S2[12] MSM8655, MSM8255, APQ8055, MSM7630, MSM7230 QDSP5 256 45
S4 Juego[12] MSM8625, MSM8225 QDSP5 350 45
S200[16] 8110, 8210, 8610, 8112, 8212, 8612, 8225Q, 8625Q QDSP5 384 45 #elepé

QDSP6 (Hexágono) uso:

Snapdragon Generación Chipset (SoC) ID QDSP6 versión DSP Frecuencia, MHz Nodo de proceso, nm
S1[12] QSD8650, QSD8250 QDSP6 600 65
S3[12] MSM8660, MSM8260, APQ8060 QDSP6 (V3?) 400 45
S4 Albor[12] MPQ8064 QDSP6 (V3?) 500 28
S4 Pro[12] MSM8960 Pro, APQ8064 QDSP6 (V3?) 500 28
S4 Plus[12] MSM8960, MSM8660Un, MSM8260Un, APQ8060Un, MSM8930, MSM8630, MSM8230, APQ8030, MSM8627, MSM8227



QDSP6 (V3?) 500 28
S400[16] 8926, 8930, 8230, 8630, 8930AB, 8230AB, 8630AB, 8030AB, 8226, 8626 QDSP6V4 500 28 #elepé
S600[16] 8064T, 8064M QDSP6V4 500 28 #elepé
S800[16] 8974, 8274, 8674, 8074 QDSP6V5Un 600 28 HPm
S820[17] 8996 QDSP6V6 2000 14 FinFet LPP

Véase también[editar]

Referencias[editar]

  1. «Hexagon DSP SDK». Qualcomm Developer Network (en inglés). Consultado el 14 de enero de 2021. 
  2. «Hexagon DSP SDK Processor». Qualcomm Developer Network (en inglés). Consultado el 14 de enero de 2021. 
  3. Humrick, Matt. «Qualcomm Details Snapdragon 835: Kryo 280 CPU, Adreno 540 GPU, X16 LTE». www.anandtech.com. Consultado el 14 de enero de 2021. 
  4. Group, Lindley. «Microprocessor Report». 
  5. «Rob Landley's Blog Thing for 2012». Landley.net. Consultado el 19 de octubre de 2012. 
  6. Porting LLVM to a Next Generation DSP, L. Taylor Simpson (Qualcomm) // LLVM Developers’ Meeting: 11/18/2011
  7. Qualcomm Aims Hexagon at Femtocells, October 31, 2011. Linley Gwennap// Linley WIRE
  8. «Qualcomm to Integrate Conexant AudioSmart into Hexagon DSPs». Speech Tech Magazine. 1 de marzo de 2016. Consultado el 11 de marzo de 2016. 
  9. Qualcomm Announces Next Generation Snapdragon Premium Mobile Processors // Qualcomm, January 07, 2013
  10. a b QDSP6 V4: Qualcomm Gives Customers and Developers Programming Access to its DSP Core // InsideDSP, June 22, 2012
  11. Qualcomm Announces Its 2012 Superchip: 28nm Snapdragon S4, 10/12/2011 by John Oram. Quote: "Hexagon DSPs have been in Snapdragon chips since 2006."
  12. a b c d e f g h i j «List of Snapdragon SoCs». Developer.qualcomm.com. Archivado desde el original el 26 de octubre de 2012. Consultado el 19 de octubre de 2012. 
  13. a b c d e f Lucian Codrescu (Qualcomm) (August 2013). «Qualcomm Hexagon DSP: An architecture optimized for mobile multimedia and communications». Palo Alto, CA: Hot Chips 25. 
  14. a b c «QDSP6 V4: BDTI Benchmark Results and Implementation Details Of Qualcomm's DSP Core | Berkeley Design Technology, Inc». www.bdti.com. Consultado el 3 de mayo de 2023. 
  15. «QUALCOMM EXTENDS HEXAGON DSP». 26 de agosto de 2013. 
  16. a b c d Snapdragon 800, 600, 400, 200 Processor Specs // Qualcomm
  17. Qualcomm's QDSP6 v6: Imaging and Vision Enhancements Via Vector Extensions // BDTI, September 29, 2015