StarFive Dubhe-100: un núcleo RISC-V de 64 bits compatible con RVA23 para aplicaciones de alto rendimiento

StarFive ha presentado un nuevo núcleo RISC-V de 64 bits de alto rendimiento perteneciente a la familia Dubhe. Se trata del Dubhe-100, compatible con la especificación RVA23, diseñado para servidores y HPC, así como para otras aplicaciones de alto rendimiento.

El nuevo núcleo IP RISC-V alcanza una puntuación de 15/GHz en SPECint2006, es compatible con las extensiones Vector y Vector Crypto e incorpora un diseño de ejecución fuera de orden (out-of-order) especialmente profundo, con una segmentación (pipeline) de 15 etapas y una emisión de 6 instrucciones por ciclo.


Núcleo RISC-V Dubhe-100 de StarFive

Estas son las características y especificaciones principales del StarFive Dubhe-100:

  • ISA (conjunto de instrucciones) – RV64GCBVH
  • Segmentación de 15 etapas y emisión de 6 instrucciones por ciclo
  • Superescalar, con ejecución fuera de orden muy profunda
  • Soporte de coherencia de caché multinúcleo
  • Soporte de fusión de instrucciones
  • Soporte de AIA 1.0
  • Rendimiento
    • SPECint2006: 15/GHz
    • Dhrystone v2.2: 10,0/MHz (legal)
  • HPM (Hardware Performance Monitor)
    • Soporte del HPM estándar de RISC-V
    • Análisis a nivel de microarquitectura y ajuste del rendimiento
  • PMP y PMA (Physical Memory Protection / Physical Memory Attributes)
    • Regiones PMP configurables de 16/32/64, con un tamaño mínimo de región de 4096 bytes
    • Soporte de PMA predefinidos y de Svpbmt
  • Depuración y traza
    • Módulo de depuración estándar conforme a la especificación de depuración de RISC-V
    • Interfaz de módulo de traza estándar conforme a la especificación de traza de RISC-V
  • Gestión de energía
    • Mecanismo WFI a nivel de núcleo
    • Enmascaramiento de reloj (clock gating) a nivel de núcleo y de clúster
    • Estados de bajo consumo a nivel de núcleo y de clúster: ON/OFF/retención
    • Escalado de frecuencia a nivel de clúster
  • TKU (Trunk Unit)
    • ROB de 512 entradas y 6 vías para decodificación, renombrado y commit
    • Banco de registros físicos de enteros con 256 entradas
    • Banco de registros físicos de coma flotante/vectoriales con 256 entradas
  • VPU (Vector Processing Unit)
    • Operaciones con enteros de 8/16/32/64 bits, coma flotante de 16/32/64 bits conforme al estándar IEEE 754-2008 y coma flotante BF16
    • VLEN=2*DLEN=256
    • 2 unidades de segmentación vectoriales
    • 2 unidades de segmentación de coma flotante que comparten la VPU
  • IFU (Instruction Fetch Unit)
    • Captación de instrucciones desacoplada de la predicción de saltos
    • Anchura de captación: 32 bytes por ciclo
    • Predictor RAS para las instrucciones de retorno
    • Predictor IJTP para las instrucciones de salto indirecto
    • Predictor de estilo TAGE para las instrucciones de salto condicional
  • MMU
    • Modos Bare, Sv39 y Sv48 definidos por la especificación de privilegios de RISC-V
    • ITLB L1 totalmente asociativo de 16 entradas
    • DTLB L1 totalmente asociativo de 64 entradas
    • STLB asociativo por conjuntos de 5 vías con 128 entradas
    • Comprobación de paridad configurable

Diagrama de bloques del Dubhe-100
Diagrama de bloques del Dubhe-100

El desarrollo de software puede realizarse a través del IDE StarStudio de StarFive con uno de estos dos SDK:

  • SDK Bare Metal con cadenas de herramientas GCC/LLVM, GDB, OpenOCD precompilado y proyectos de ejemplo
  • SDK Linux con Yocto, kernel Linux 6.18, OpenSBI, U-Boot y herramientas de desarrollo para el host

De momento ninguno de ellos está disponible para su descarga, pero es de esperar que, en cuanto exista un SoC comercial basado en el Dubhe-100, StarFive publique los SDK o actualice los ya existentes en su cuenta de GitHub.

Uno de los primeros clientes del Dubhe-100 es LECARC, que actualmente está diseñando un SoC para servidores basado en este nuevo núcleo IP de 64 bits. Además de SoC para HPC y centros de datos, se espera que el Dubhe-100 aparezca también en chips para inferencia de modelos de lenguaje (LLM), agentes de IA, inferencia de IA y análisis visual (visión por computador), así como en productos de infraestructura, como controladores Smart NIC y controladores de almacenamiento distribuido. Puede encontrar más información en la página del producto.


Posibles aplicaciones de IA para SoC basados en el Dubhe-100
Posibles aplicaciones de IA para SoC basados en el Dubhe-100

Traducido del artículo en inglés «StarFive Dubhe-100 – A 64-bit, RVA23-compliant RISC-V core for high-performance applications» de Jean-Luc Aufranc (CNXSoft).