Procesadores y SoCs RISC-V para Sistemas Embebidos

Creado: Agosto 3, 2022
Actualizado: Julio 1, 2024

Cada microprocesador está construido sobre una arquitectura de conjunto de instrucciones (ISA), la cual define las funciones de alto nivel utilizadas para ejecutar operaciones de cómputo con datos digitales. Una ISA es uno de los componentes fundamentales de una CPU que define cómo el software se comunicará con el hardware. Básicamente, define comandos de una manera que una máquina puede entender e incluye típicamente instrucciones para operaciones de memoria, manejo de datos, operaciones aritméticas, operaciones lógicas y operaciones de control de flujo. Una ISA también define cómo se almacenan, codifican y acceden las instrucciones.

Las ISA dominantes durante las últimas dos décadas han sido x86, x64 y ARM, todas las cuales han impulsado la adopción de la computación personal y embebida a los niveles que vemos hoy. Mientras que ARM está entre las arquitecturas de procesos más utilizadas, un nuevo competidor de código abierto está siendo adoptado por la industria de semiconductores. Esta arquitectura alternativa es RISC-V (pronunciado “riesgo cinco”), y ha sido acogida por la comunidad de código abierto y los proveedores de semiconductores como una alternativa a las arquitecturas ARM y x86/x64.

Aunque no esperamos que las arquitecturas de Intel x86/x64 o ARM desaparezcan pronto, RISC-V proporciona una alternativa de código abierto convincente. Ahora, algunos proveedores de semiconductores están apoyando implementaciones de RISC-V en sus FPGAs, y la comunidad de código abierto ha respondido con una ola de IP de proveedores y bibliotecas para ayudar a acelerar el desarrollo. En este artículo, veremos algunos de los productos basados en RISC-V más recientes lanzados al mercado por proveedores de semiconductores.

¿Qué es RISC-V?

La ISA RISC-V es una ISA de código abierto que se puede utilizar para definir las manipulaciones digitales de datos de bajo nivel que se implementan en un núcleo de microprocesador. La especificación utiliza un conjunto de 49 instrucciones que son compatibles con implementaciones de hardware de 32 bits. El ancho de palabra se puede utilizar a 64 bits con un conjunto de 14 instrucciones de extensión, o hasta 128 bits (en teoría). Como una especificación de código abierto, el conjunto de instrucciones primario y las extensiones opcionales pueden ser personalizadas, eliminadas o totalmente reescritas para proporcionar una arquitectura de procesador personalizada o altamente especificada para su uso en nuevos chips.

Desde que el desarrollo de RISC-V comenzó en 2010 (en el Par Lab de Berkeley), los creadores de RISC-V pasaron a iniciar SiFive, una compañía de IP de núcleo de procesador. La compañía proporcionó la primera arquitectura de núcleo de procesador completamente de código abierto construida sobre RISC-V. La arquitectura se puede utilizar como la especificación base para diseñar una arquitectura de lógica digital que implementa la ISA RISC-V y cualquier función adicional del usuario.

¿Por qué construir sobre RISC-V?

Construir un procesador de aplicación personalizado en RISC-V ofrece a los desarrolladores un excelente camino hacia la construcción de un nuevo procesador en silicio personalizado, o la construcción de un procesador reconfigurable en un FPGA. El desarrollo de lógica con RISC-V en un FPGA trae sus propios beneficios gracias a la personalización y reconfigurabilidad de las plataformas FPGA, así como su alta densidad de cómputo. Para aplicaciones embebidas que requieren más que un RTOS, los núcleos RISC-V pueden ser portados para soportar distribuciones de Linux.

Procesadores RISC-V e IP

Los desarrolladores de RISC-V pueden usar el conjunto de instrucciones y su implementación de hardware de dos maneras posibles: para desarrollar diseños de lógica personalizados en un nuevo diseño de chip, o para implementar lógica especializada en un FPGA. La industria apenas está comenzando a usar RISC-V como una arquitectura central para diseños de microcontroladores, pero estos componentes no están disponibles a gran escala.

Actualmente, el rango de procesadores comercialmente disponibles que pueden soportar RISC-V se limita a FPGAs, donde RISC-V es compatible con IP de proveedor. Por el momento, construir en un FPGA es una excelente opción para los desarrolladores de sistemas, tanto desde una perspectiva de prototipado como en términos de diseñar hardware específico de aplicación personalizado que está muy optimizado para cargas de trabajo de cómputo pesado.

Microchip PolarFire

La plataforma PolarFire de Microchip es la plataforma FPGA basada en RISC-V insignia de la compañía, donde una pieza de procesador listo para usar se construye directamente desde la tela de interconexión FPGA. La línea de productos PolarFire abarca múltiples componentes y números de parte, todos los cuales apuntan al consumo de energía más bajo con alta densidad de cómputo en aplicaciones embebidas. Este SoC FPGA puede ser altamente personalizado usando el Libero SoC Design Suite, y el IP central está disponible para su uso en la plataforma PolarFire. En términos de capacidades de hardware, el sistema puede soportar transceptores de 12.7 Gbps y PCIe 2 I/O.

Efinix Trion y Titanium

Efinix es un proveedor de semiconductores más pequeño, pero han adoptado RISC-V en su IP de proveedor con dos productos SoC para los productos Trion y Titanium.

Sapphire SoC - Esta implementación de RISC-V es una instanciación configurable por el usuario con un controlador de memoria opcional (DDR o HyperRAM) y múltiples interfaces (hasta 32 GPIOs, 3 maestros I2C, 3 maestros SPI y 3 UARTs) integrados en el núcleo del dispositivo.

Edge Vision SoC - Esta biblioteca está destinada para aplicaciones de visión embebida e incluye interfaces estándar para sistemas en esta área de aplicación. Funciones adicionales del usuario como bloques DSP especializados o manipulación de datos pueden ser agregados a este IP con herramientas de desarrollo.

Los productos de desarrollo están disponibles para ambas líneas de productos para ayudar a los usuarios a comenzar con una nueva plataforma, como el Trion T20 MIPI D-PHY/CSI-2 Dev Kit para aplicaciones de visión.

Xilinx y Bluespec

Bluespec Inc., un socio oficial de desarrollo para Xilinx, ahora soporta implementaciones de núcleos RISC-V de 32 bits en FPGAs de Xilinx. Este SoC IP está dirigido a aplicaciones que requieren un único núcleo de procesador ejecutando Linux en un FPGA. El RISC-V RV32IMAC SCL soporta las Instrucciones Básicas de Enteros RISC-V (I), Multiplicación y División de Enteros (M), Atómicas (A) e Instrucciones Comprimidas (C), instrucciones de punto flotante Simple y Doble (FD). Los usuarios pueden implementar el Bluespec RISC-V 32IM core IP en FPGAs de Xilinx utilizando el conjunto estándar de herramientas de desarrollo en el IDE de Vivado.

El beneficio de usar hardware de un proveedor importante como Xilinx es el nivel de soporte de código abierto y productos de desarrollo disponibles para construir una aplicación embebida. El amplio portafolio de IP de Xilinx puede usarse junto con la arquitectura lógica central definida en RSIC-V para construir una implementación de hardware personalizada. Como un ejemplo, el core IP Freedom E310 de SiFive puede ser programado en la plataforma de desarrollo Arty A7 de Digitlent utilizando el IDE de Arduino.

Otros Productos Llegando al Mercado

Otras compañías han hecho anuncios recientes de productos respecto al uso de núcleos RISC-V en nuevos productos semiconductores. Estos productos están destinados a ser algo más cercano a procesadores de aplicación que aún ofrecen cierta programabilidad de propósito general a través de una aplicación embebida. Algunos de los anuncios recientes de productos incluyen:

  • Productos Estándar Específicos de Aplicación (ASSPs) de Renesas, una línea de productos basados en RISC-V destinados a combinar el procesamiento de propósito general con especificidad de aplicación.

  • Picocom PC802 5G NR SoC, un procesador específico de aplicación para pequeñas celdas 5G NR que se interfazan con unidades de radio a través de O-RAN Open Fronthaul eCPRI o JESD204B.

  • Intel ahora soportará RISC-V a través de su nueva división de servicios de fundición, permitiendo a las compañías sin fábrica crear diseños que son compatibles con las capacidades de procesamiento de silicio de Intel.

  • El próximo chip acelerador de IA basado en RISC-V de Kneron tiene la intención de traer autonomía a los autos sin conductor al soportar sistemas ADAS de Nivel 1 y 2 ADAS systems.

Más Recursos para el Desarrollo de RISC-V

El diseño de chips es una disciplina difícil, pero usar un conjunto de instrucciones de código abierto como RISC-V como marco de desarrollo es una excelente manera de acelerar el diseño de la arquitectura de chips. El desafío para un diseñador lógico es crear los circuitos lógicos que representan las instrucciones definidas en la especificación de RISC-V. Para un microcontrolador o MPU, esto es una tarea ardua y requiere mucha experiencia; no es algo que un diseñador haría típicamente solo.

Sin embargo, para un FPGA, hay muchas implementaciones de RISC-V que se pueden utilizar para construir rápidamente una arquitectura altamente extensible que incorpora funciones personalizadas del usuario. Esto es algo en lo que las herramientas de los proveedores y la comunidad de código abierto han invertido una cantidad significativa de tiempo en construir, y ahora hay muchos núcleos RISC-V que se pueden utilizar en el desarrollo de FPGA. Para comenzar, echa un vistazo a algunos de estos repositorios de GitHub:

Esto es solo una pequeña sección transversal de lo que está disponible, hay muchos más repositorios de código abierto que encontrarás en GitHub que son útiles con una variedad de FPGAs. Además, para cualquier desarrollador de FPGA interesado en construir sobre el ISA, RISC-V International lanzó un Programa de Socios de Entrenamiento RISC-V. Los desarrolladores pueden obtener una mayor comprensión de los beneficios de la cooperación abierta y expandir su conocimiento de RISC-V.

La gran parte de la arquitectura RISC-V es que puede ser modificada y vendida en el mercado abierto. Las startups de semiconductores sin fábrica están ahora proporcionando su IP central basada en el ISA de RISC-V para licenciar a otras compañías bajo un modelo de negocio similar al de ARM. De manera similar, las compañías están haciendo que su IP de proveedor esté disponible para la compra y uso en FPGAs de los principales fabricantes de semiconductores. A medida que estos componentes basados en RISC-V salgan al mercado, podemos esperar que ofrezcan altos niveles de especificidad para aplicaciones avanzadas.

Cuando estés listo para comenzar a seleccionar tu FPGA, SoC programable y otros componentes para tu nuevo sistema, asegúrate de usar las funciones avanzadas de búsqueda y filtrado en Octopart para encontrar todos los componentes avanzados que necesitan para diseños avanzados. Cuando uses el motor de búsqueda de electrónica de Octopart, tendrás acceso a datos de precios de distribuidores actualizados, inventario de partes y especificaciones de partes, y todo es libremente accesible en una interfaz amigable para el usuario. Echa un vistazo a nuestra página de circuitos integrados para encontrar los componentes que necesitas.

Mantente al día con nuestros últimos artículos suscribiéndote a nuestro boletín.

Recursos Relacionados

Volver a la Pàgina de Inicio
Thank you, you are now subscribed to updates.