Efinix presentó el SoC Sapphire RV64, un procesador RISC-V de 64 bits configurable que se implementa como núcleo blando (soft-core) en sus FPGA Titanium y Trion. Está basado en el núcleo VexiiRiscv y admite de uno a cuatro núcleos RISC-V a una frecuencia de hasta 400 MHz.

El Sapphire RV64 tiene un pipeline de siete etapas, cachés L1 configurables, una caché L2 opcional de 64 a 512 KB y de 4 a 512 KB de RAM interna. Trabaja con memoria DDR3, LPDDR4x y HyperRAM a través de interfaces AXI de hasta 512 bits, con memoria externa de 4 MB a 8 GB. Suma una FPU opcional, predictor de saltos, prefetchers, MMU SV39, hasta 32 GPIO, cinco I²C, tres SPI, tres UART, temporizadores, watchdog y hasta ocho interrupciones de usuario.

Especificaciones del Sapphire RV64

CPU

  • De 1 a 4 núcleos VexiiRiscv de 64 bits con pipeline de 7 etapas (búsqueda, alineación y descompresión, decodificación, emisión, ejecución, memoria y escritura)
  • Frecuencia de sistema configurable entre 20 MHz y 400 MHz
  • Extensiones RV64IMACFD_Zba_Zbc_Zbs, que incluyen punto flotante de precisión simple y doble, operaciones atómicas, instrucciones comprimidas, manipulación de bits y gestión de bloques de caché
  • Unidad de gestión de memoria (MMU) SV39 opcional para correr Linux
  • Unidad de protección de memoria física (PMP) opcional con granularidad de 4 KB
  • Caché L1 de instrucciones y datos configurable, de hasta 8 vías con 4 KB por vía
  • Caché L2 compartida opcional de 8 vías, de 64 KB a 512 KB

Memoria

  • RAM interna de 4 KB a 512 KB, con cargador de arranque integrado para memoria flash SPI
  • Memoria externa por interfaz AXI3 half-duplex o AXI4 full-duplex
  • DDR3 hasta 400 MHz (800 Mbps)
  • LPDDR4x hasta 1.600 MHz (3.200 Mbps)
  • HyperRAM hasta 250 MHz (500 Mbps)
  • Capacidad externa de 4 MB a 8 GB

Entradas y salidas

  • Hasta 32 GPIO
  • Hasta 5 maestros I²C y hasta 3 maestros SPI
  • Hasta 3 UART, a 115.200 baudios
  • Un canal maestro AXI4 y hasta 5 interfaces esclavas APB3 para periféricos propios del usuario

Depuración

  • Depuración RISC-V estándar
  • Hasta 4 puntos de interrupción por hardware
  • Hasta 4 contadores de rendimiento (la guía de usuario también menciona de 1 a 9)
  • Codepuración opcional con el depurador de la FPGA

Otros

  • Hasta 8 interrupciones de usuario
  • 3 temporizadores de usuario
  • Temporizador watchdog
  • Predictor de saltos dinámico
  • Prefetchers por software y por hardware
  • Interfaz de instrucciones personalizadas con 1.024 identificadores

Consumo. Depende de la FPGA, de la frecuencia de reloj y de las funciones habilitadas.

¿Cómo se configura y se programa?

Flujo de desarrollo de software y hardware del SoC Sapphire RV64 de Efinix

Flujo de desarrollo de software y hardware del Sapphire RV64.

El Efinity IP Manager permite configurar el SoC y generar un núcleo IP a la medida. Para el firmware, Efinity RISC-V Embedded Software IDE ofrece un entorno basado en Eclipse para desarrollar y depurar en C y C++.

IDE Efinity RISC-V Embedded Software

El IDE de software embebido Efinity RISC-V.

Según la configuración, el SoC puede arrancar desde una flash SPI directo a la RAM interna, o copiar una aplicación más grande a la memoria externa antes de ejecutarla. Las configuraciones con varios núcleos usan multiprocesamiento simétrico (SMP), que reparte la carga entre todos los procesadores para subir el rendimiento total del sistema.

Uso de recursos y rendimiento en la Titanium Ti375 C529

Uso de recursos y rendimiento en la Titanium Ti375 C529, la Topaz Tz170 J484 y la Trion T120 F324.

De los núcleos de 32 bits al Sapphire RV64

CNX Software ya había cubierto los primeros SoC RISC-V blandos de Efinix para las FPGA Trion, los núcleos Ruby, Jade y Opal, diseños de 32 bits basados en VexRiscv. Después la empresa llevó la idea a silicio fijo. Titanium estrenó un bloque RISC-V de 32 bits y cuatro núcleos basado en el núcleo blando Sapphire, y la familia Topaz llevó el mismo tipo de bloque a una FPGA de 16 nm más barata.

Efinix también presentó el kit de desarrollo Topaz Tz170b y la más reciente Titanium Edge, que son las placas y los chips donde corren esos núcleos. El Sapphire RV64 es la continuación en formato blando. Es de 64 bits, se sigue construyendo dentro de la lógica de la FPGA y apunta a los diseños que ya les quedaron chicos los núcleos de 32 bits.

¿Dónde está disponible?

El Sapphire RV64 está disponible en el Efinity IP Manager para todas las FPGA Titanium y Topaz, y para los dispositivos Trion desde el T20 hacia arriba. Requiere Efinity 2026.1 o una versión más nueva, y Efinix entrega licencias gratuitas del software Efinity. La página de soporte enlaza la hoja de datos y la guía de usuario, y hay más detalles en el comunicado de prensa.