RISC-V adopta la IA y el ML con una placa de desarrollo de 64 bits y doble núcleo para la visión y la audición artificiales

RISC-V es la última adición al resurgimiento de la innovación de los núcleos de 32 bits. Pero esta vez se trata de un entorno de ingeniería diferente. Las recientes innovaciones de núcleos y la competencia se han centrado en el mercado establecido de microcontroladores de propósito general, y los periféricos genéricos se han orientado a las aplicaciones automotrices resistentes. Sin embargo, el panorama actual de los sistemas integrados se centra en los puntos finales del Internet de las cosas (IoT), que apuntan a sistemas de computación periférica sofisticados e industriales. En lugar de limitarse a temporizadores genéricos e interfaces seriales, los últimos microcontroladores RISC-V también admiten periféricos sofisticados, que incluyen motores de inferencia de inteligencia artificial (IA) y capacidades de aprendizaje automático (ML).

Sin embargo, RISC-V tiene otras ventajas que van más allá del mercado en evolución y de las exigencias técnicas. Antes de hablar de ello, echemos un vistazo rápido a los antecedentes.

Una muy breve historia de la innovación de microcontroladores

El mercado de los microcontroladores integrados experimenta una revolución cada pocos años. Estas se producen en momentos irregulares y están motivadas no solo por las necesidades del mercado en cuanto a rendimiento y características, sino también por los aspectos comerciales de la industria. Empezando por el venerable 8051, el mercado de los 8 bits dominaba los sistemas integrados en casi todo, incluidas las aplicaciones automotrices, los juegos y los electrodomésticos. Hasta el día de hoy, el microcontrolador de consumo ultrabajo de 8 bits sigue vigente en todas partes, e incluso el 8051 sigue generando cifras impresionantes (más adelante hablaremos al respecto).

El microcontrolador de 16 bits ha ocupado durante mucho tiempo el punto óptimo entre el bajo consumo y el rendimiento y, hasta el día de hoy, sigue siendo un mercado incomprendido para muchos proveedores ajenos a las figuras establecidas. Luego, llegaron los procesadores de 32 bits. Estos se volvieron importantes más allá de las computadoras personales con una variedad de arquitecturas patentadas durante la guerra de núcleos de los años 90 y principios de la década del 2000.

Arm puso fin a la guerra de núcleos de 32 bits. Con su gran variedad de proveedores, todos unidos de forma flexible bajo una arquitectura común, los clientes salieron ganando al poder cambiar fácilmente de proveedor sin tener que hacer un esfuerzo significativo para portar su código, una ventaja sobre las arquitecturas patentadas.

RISC-V reduce realmente el conjunto de instrucciones

Durante mucho tiempo, RISC-V tuvo una cuota de mercado que pasaba inadvertida, sobre todo porque no se percibía una verdadera necesidad en el mercado de una nueva arquitectura de conjunto de instrucciones (ISA) de 32 bits. Sin embargo, cualquier ingeniero que observara la arquitectura del núcleo del RISC-V quedaba impresionado al instante.

Desde siempre, RISC ha tenido el significado de núcleo/computadora con conjunto de instrucciones reducidas, lo que significa de manera literal que solo tiene las instrucciones mínimas necesarias para realizar operaciones útiles. Desde aquellos inicios, la mayoría de las arquitecturas denominadas RISC hoy se han alejado de esa definición, e incluyen tantas instrucciones complejas que los ingenieros ahora miran la etiqueta con cierta desconfianza. No obstante, la ISA RISC-V se mantiene tan fiel a esa definición que casi podemos oír la voz de James Earl Jones en nuestra cabeza diciendo claramente: “Impresionante. Muy impresionante”.

El RISC-V básico de 32 bits tiene 32 registros de núcleo de 32 bits, de x0 a x31. 31 de ellos son de propósito general, mientras que el registro x0 está programado en cero. Al profundizar en el conjunto de instrucciones de RISC-V, podemos apreciar la sensatez de la fórmula x0 = 0 y por qué x0 es un operando necesario para muchas instrucciones que mantienen el conjunto de instrucciones reducidas de tal manera: reducidas. Pero esa es una historia para otra ocasión.

La industria de los semiconductores es una industria global con muchas interdependencias positivas, pero ahora los proveedores de semiconductores, por razones tanto obvias como sutiles, quieren tener más control sobre sus productos, lo que incluye reconsiderar los costosos acuerdos de licencia y las fuentes de propiedad intelectual (IP) que se venden y revenden. Esto hace que RISC-V sea una ISA personalizable, de código abierto y libre de derechos de autor: la arquitectura ideal en el momento ideal de la historia. Tanto es así, que DigiKey ha puesto a RISC-V en primer plano en su página educativa con un libro electrónico al respecto llamado “Guía de referencia académica de componentes: RISC-V”, que presenta las herramientas y los kits de evaluación de RISC-V a desarrolladores principiantes y experimentados. Con estas herramientas, los desarrolladores que no tienen experiencia previa con la arquitectura pueden familiarizarse a fondo y rápidamente con el modelo de programación y la ISA RISC-V.

RISC-V: Potente núcleo para la IA/ML

Si bien es común que una nueva ISA se presente en el mercado con microcontroladores de propósito general, acompañados de una placa de evaluación con LED llamativos y parpadeantes, RISC-V apunta directamente a la IA y el ML. Por ejemplo, Seeed Technology está fomentando el ML con la placa de desarrollo Seeed 110991190 Sipeed Maix-BiT, basada en el RISC-V RV64I, una ISA de direcciones y datos de 64 bits con registros de núcleo de 64 bits de x0 a x31 (Figura 1).

Figura 1: La placa de desarrollo Sipeed Maix-BiT de Seeed Technology se basa en un RISC-V RV64GC de doble núcleo y está orientada a aplicaciones relacionadas con la visión artificial y el aprendizaje automático. (Fuente de imagen: Seeed Technology)

Como se comenta en el libro electrónico sobre RISC-V de DigiKey (a partir de la página 5), el pequeño tamaño y el alto rendimiento de esta placa la hacen adecuada para aplicaciones de IoT de procesamiento periférico.

El procesador de núcleo de la placa Sipeed Maix-BiT es un sistema en chip (SoC) para el microcontrolador RV64GC de doble núcleo, en el que el sufijo G especifica la compatibilidad con las extensiones de propósito general de multiplicación y división de hardware, las instrucciones atómicas de lectura-modificación-escritura en la memoria y la compatibilidad con el punto flotante de precisión simple y doble. El sufijo C indica que el microcontrolador admite instrucciones comprimidas de 16 bits, útiles para escribir código compacto. El microcontrolador puede acceder a 6 mebibytes (MiB) de SRAM de propósito general en un chip, además de a 128 megabits (Mbits) de memoria de programa Flash externa. Se trata de una potencia de procesamiento impresionante para una ISA relativamente nueva y una memoria suficiente para aplicaciones de computación periférica complejas.

Lo que más impresiona del microcontrolador RV64GC de doble núcleo es el procesador de red neuronal de IA de propósito general integrado en un chip, diseñado para detectar caras y objetos en tiempo real. El procesador de IA cuenta con 2 MiB de SRAM dedicada para realizar operaciones relativas a la IA. Esto proporciona una cantidad impresionante de potencia de procesamiento accesible a cualquier persona con conocimientos moderados de programación de microcontroladores.

La placa Sipeed Maix-BiT incluye una ranura para introducir una tarjeta micro SD y ampliar la memoria Flash. El micrófono de sistema microelectromecánico (MEMS) incorporado puede utilizarse con la unidad de IA para aplicaciones de audición artificial, que incluyen sistemas complejos de reconocimiento de voz y ruido. El kit también incluye una cámara externa que se conecta a un conector de cámara con puerto de video digital (DVP) en la parte inferior de la placa. Esto facilita las aplicaciones complejas de visión artificial, una ventaja en los sistemas de procesamiento periférico del IoT.

La placa también cuenta con una interfaz USB-C para la programación y depuración, que se conecta al RV64GC de doble núcleo con un chip de USB a UART. Hay un conector adicional para la pantalla LCD externa incluida. Esto permite obtener una respuesta visual durante el desarrollo del programa y también se puede utilizar en la aplicación para recibir comentarios del usuario.

Conclusión

Ha sido un largo viaje desde los días del microcontrolador de 8 bits. ¿Logrará la ISA RISC-V llegar al nivel de Arm en un mercado de sana competencia? Con todo el interés que despierta RISC-V y las placas de desarrollo avanzadas como la que se comenta en este artículo, parece seguro que RISC-V tiene suficiente ímpetu como para insertarse en el mercado, pero ese es un debate más extenso. En este momento, con ofertas como la 110991190 Sipeed Maix-BiT de Seeed, parece seguro que se abrirá paso en aplicaciones relacionadas con el IoT y la IA/ML en el borde.

Ah, una cosa más. Para subrayar la omnipresencia de los microcontroladores de 8 bits, tanto el circuito integrado (CI) de la interfaz LCD como el CI de USB a UART del CH552 de la placa de desarrollo son microcontroladores de 8 bits preprogramados. Y el CH552 es en realidad un venerable 8051.

Acerca de este autor

Image of Bill Giovino

Bill Giovino es ingeniero electrónico con un BSEE de la universidad de Syracuse y es uno de los pocos profesionales capaz de pasar de ingeniería en diseño a ingeniería de aplicación en campo a marketing tecnológico de forma exitosa.

Durante más de 25 años, Bill ha disfrutado promocionar las nuevas tecnologías a audiencias técnicas y no técnicas por igual en muchas empresas, entre ellas STMicroelectronics, Intel y Maxim Integrated. Mientras trabajó en STMicroelectronics, Bill ayudó a dirigir los primeros éxitos de la empresa en la industria de microcontroladores. En Infineon, Bill estuvo a cargo de que el diseño del primer controlador de la empresa tuviera éxito en la industria automotriz de EE. UU. Como consultor de marketing para CPU Technologies, Bill ha ayudado a muchas empresas a convertir sus productos con bajo rendimiento en casos de éxito.

Bill fue uno de los primeros en adoptar el Internet de las cosas, incluso colocar la primera pila de TCP/IP en un microcontrolador. Bill es un ferviente creyente de "Vender a través de la educación" y de la gran importancia de contar con comunicaciones claras y bien escritas a la hora de promocionar productos en línea. Es moderador del grupo en Linkedin denominado Semiconductor Sales & Marketing (Marketing y ventas de semiconductores) y habla sobre el concepto B2E (empresa-empleado) de manera fluida.

More posts by Bill Giovino
 TechForum

Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.

Visit TechForum