Con un número cada vez mayor de empresas interesadas en dispositivos basados en RISC-V ISA, y un número cada vez mayor de núcleos, aceleradores y componentes de infraestructura disponibles, ya sea comercialmente o en forma de código abierto, los usuarios finales enfrentan un desafío cada vez más difícil de asegurándose de que tomen las mejores decisiones.
Es probable que cada usuario tenga un conjunto de necesidades e inquietudes que casi igualan la flexibilidad de las ofertas de RISC-V, extendiéndose mucho más allá de las métricas tradicionales de PPA hacia inquietudes de seguridad o consideraciones de calidad. Eso podría incluir la adaptabilidad de la garantía de verificación, que permite la extensión arquitectónica y la verificación necesaria que la acompañe.
Tradicionalmente, se han implementado tres niveles de creación de prototipos: prototipos virtuales, emulación y prototipos FPGA, incluidos híbridos entre ellos. Luego, cada plataforma se utiliza para una variedad de propósitos, incluida la verificación de software, validación de arquitectura, verificación funcional del hardware, análisis de rendimiento y más.
Si bien los ecosistemas de diseño y software para RISC-V se están estableciendo, los ecosistemas de configuración y verificación están rezagados y requieren la construcción de nueva tecnología. Es la flexibilidad misma de RISC-V lo que crea enormes desafíos para la verificación, más allá de lo que se requiere para la verificación de procesadores fijos. También hace que el codesarrollo de hardware y software no sólo sea posible, sino necesario.
Co-desarrollo
En el pasado, se seleccionaba el hardware y luego se desarrollaba el software para ejecutarlo. Con RISC-V, el hardware suele estar controlado por software. "Lo primero que debe elegir es qué opciones RISC-V estándar desea", dice Simon Davidmann, fundador y director ejecutivo de Software Imperas. “El conjunto de funciones de RISC-V tiene actualmente 200 o 300 opciones. ¿Cómo saber si su algoritmo se beneficiaría de una unidad de punto flotante, SIMD, multiplicadores de hardware o incluso un motor vectorial? Tienes que determinar las capacidades de hardware que vas a necesitar y que puedes permitirte para el tipo de aplicación o el trabajo que quieres que haga ese procesador. Eso en sí mismo se convierte en un desafío”.
Se requieren prototipos para hacer ese tipo de compensaciones. "Si el objetivo del diseñador es evaluar el rendimiento y la adecuación al propósito, entonces la creación de prototipos virtuales es la única opción viable", dice Steve Roddy, CMO de cuádrica. “Construir prototipos de hardware requiere entre 10 y 50 veces más tiempo que crear un modelo SystemC de un subsistema o de un SoC completo. El prototipo virtual SystemC generalmente se ejecuta lo suficientemente rápido como para responder preguntas de rendimiento, como cuántos fotogramas por segundo de rendimiento puedo obtener con este núcleo de procesador, o cuál es el requisito de ancho de banda máximo y promedio de la función X, dentro de un marco de precisión aceptable”.
Obtener la precisión adecuada puede resultar complicado. "Se trata de precisión y de la capacidad de hacer girar un modelo muy rápidamente", afirma Frank Schirrmeister, vicepresidente de soluciones y desarrollo empresarial de IP de Arteris. “La precisión correcta se define por lo que exija su pregunta, y generarlas no es trivial. Si es un proveedor de ASIP, podrá generarlos a partir de cualquier plantilla que tenga. Dependiendo de la pregunta, es posible que necesite precisión en la canalización, es posible que necesite precisión en la memoria, no es necesario que sea completamente precisa, pero cuando hay un departamento de CAD involucrado, tienen demasiado miedo de responder la pregunta equivocada”.
Pero la precisión es una compensación frente a la velocidad. "Si bien algunos prototipos virtuales tienen ciclos precisos, a menudo funcionan demasiado lento para poder tener el rendimiento de software necesario", dice Davidmann de Imperas. “Los prototipos virtuales de mayor rendimiento no son motores de rendimiento porque no modelan tuberías de procesador. Lo ven desde el punto de vista del software, donde se puede compilar y ejecutar en hardware, y se puede ver el rendimiento aproximado al observar el recuento de instrucciones o las estimaciones de tiempo aproximadas. Esto debería ser suficiente para tomar este tipo de decisión arquitectónica”.
A menudo se necesitan varios prototipos. "Generalmente creamos prototipos por dos razones", dice Venki Narayanan, director senior de ingeniería de sistemas y software dentro de la unidad de negocios FPGA de Microchip Technology. “Uno es la validación arquitectónica para asegurarnos de que cumplimos con todas las métricas y requisitos de rendimiento y la validación funcional. La otra razón es el desarrollo de software y firmware integrados. Utilizamos diferentes niveles de técnicas de creación de prototipos, siendo el más común utilizar nuestros propios FPGA para desarrollar una plataforma de emulación para validación tanto arquitectónica como funcional. También utilizamos modelos arquitectónicos como QEMU para construir plataformas virtuales tanto para la validación del rendimiento como para el desarrollo de software integrado”.
El número de posibilidades está creciendo. "Hay muchas maneras en que las empresas están creando prototipos con RISC-V hoy", dice Mark Himelstein, CTO de RISC-V International. “Estos van desde computadoras de placa única a nivel de fabricante hasta placas empresariales con capacidad para LINUX. Los entornos de emulación (como QEMU) permiten a los desarrolladores progresar con el software antes de que su hardware esté completo, y hay piezas disponibles en el mercado en todas partes, desde SoC integrados (de empresas como Espressif y Telink) hasta FPGA (de empresas como Microsemi) y la próxima placa Horse Creek de Intel y SiFive”.
Todo vuelve al equilibrio entre rendimiento y precisión. "Los prototipos físicos requieren mucho más esfuerzo de diseño, porque estás conectando y sintetizando RTL real, pero ofrecen mucha mayor precisión y rendimiento", dice Roddy de Quadric. “Crear un prototipo físico en un sistema FPGA, ya sea local o de las grandes empresas EDA, requiere esfuerzo. Pero puede ejecutarse un orden de magnitud más rápido que un modelo SystemC, y varios órdenes de magnitud más rápido que una simulación completa a nivel de puerta. Los equipos de diseño normalmente pasarán de modelos basados en C durante el proceso de selección de IP a modelos físicos tanto para la verificación del diseño real después de la selección de IP como como plataforma de desarrollo de software del sistema”.
Una vez que sepa qué conjunto de funciones desea en el hardware, puede ver si alguien ya ha creado una solución que satisfaga la mayoría de sus necesidades. "Lo más probable es que con todos los proveedores que existen, haya una solución comercial que tenga el tipo de producto que usted está buscando", dice Davidmann. “Pero con RISC-V, no es necesario aceptar esa solución tal como está. Una parte importante del valor de RISC-V es la libertad de cambiarlo, modificarlo y agregar las cosas diferentes que desee”.
Seleccionar una implementación
Hay muchas formas de implementar un conjunto de características, como la cantidad de etapas de canalización o características de ejecución especulativa. Cada uno tendrá una compensación diferente entre potencia, rendimiento y área. "La versión ISA, ya sea RISC-V, Arm, Xtensa de Cadence o ARC de Synopsys, realmente no afecta los objetivos ni las compensaciones del modelado y la creación de prototipos", dice Roddy. “Un arquitecto de sistemas necesita responder preguntas sobre los objetivos de diseño de SoC independientemente de la marca del procesador. A nivel técnico, el tren RISC-V se encuentra realmente en una posición estable en el mercado en relación con el soporte de herramientas de modelado y análisis de rendimiento. Existen numerosos proveedores principales que compiten, cada uno con diferentes implementaciones y características de procesador. Como CPU del sistema principal, no tiene la longevidad de un Arm y, por lo tanto, menos actores del ecosistema en el mundo EDA han validado ampliamente el soporte de modelado listo para usar para núcleos RISC-V disponibles en el mercado de la variedad. de proveedores de RISC-V. Como núcleo configurable y modificable, el mundo RISC-V está por detrás del nivel de automatización de conjuntos de instrucciones que Tensilica ha dedicado 25 años a construir. Por lo tanto, RISC-V tiene menos soporte de modelado como bloque de construcción listo para usar y menos automatización para usar como plataforma para la experimentación con conjuntos de instrucciones”.
Pero ese es sólo un aspecto de una implementación que necesita ser evaluado. ¿Cuál es la calidad del mismo? Si quieres modificarlo ¿cómo lo revalidas?
El rendimiento es el más fácil de evaluar. "Esto no es diferente a recurrir a cualquier proveedor de procesadores tradicional", afirma Davidmann. “Le dirán que este núcleo le proporciona esta cantidad de Dhrystones por vatio, le darán los datos analíticos típicos del procesador, que indican qué tan rápido se ejecuta esta microarquitectura. Tienen todos esos datos, y cualquiera que obtenga una licencia de un núcleo de procesador estará familiarizado con esos datos y hablará con ellos y obtendrá esa información. Probablemente tendrán muchas opciones seleccionables en su hoja de datos y dirán: "Si activa esta opción, obtendrá esto o aquello". Puede consultarlo en la hoja de datos, en los sitios web de los proveedores”.
En este nivel, probablemente necesite precisión del ciclo. "Veo que la mayoría de las personas lo introducen en un emulador y ejecutan suficientes datos para tomar una decisión razonable", dice Schirrmeister. “No veo que vayamos a pasar a los prototipos virtuales en el corto plazo. Algunas empresas están hablando de prototipos de FPGA, en los que tienes tu propia solución de placa única. Dependiendo de la pregunta que necesite responder, puede decidir configurarlo, generarlo y luego bombearlo a una FPGA para ejecutar más datos a través de él, con las rutinas de software apropiadas encima. La industria tiene vías de entrada lo suficientemente rápidas a los emuladores y la creación de prototipos para que esto sea posible. El problema básico es que usted quiere tomar esta decisión basándose en datos lo más precisos posible, pero es posible que no tenga esos datos precisos en el momento en que quiera tomar esa decisión”.
Muchos de estos prototipos tienen que incluir algo más que el procesador. "Las plataformas virtuales brindan la capacidad de integrarse con otras funciones de hardware físico externo, como memoria y sensores que operan en un entorno del mundo real", dice Narayanan de Microchip. “Los sistemas híbridos pueden combinar plataformas virtuales con prototipos físicos para otras funciones externas. La emulación y la creación de prototipos de FPGA ayudan a encontrar errores relacionados con el tiempo, como las condiciones de carrera, ya que esto es más preciso en el ciclo y las funciones externas funcionan a mayor velocidad”.
Verificación
Debido a que el diseño del procesador se ha realizado internamente durante mucho tiempo, no existe un ecosistema de verificación público para construir un procesador y las características de RISC-V requieren una solución de verificación mucho más flexible que la que jamás haya existido en el pasado. La creación de esto apenas comienza a suceder.
"Existen métricas de la industria como Dhrystones o CoreMark, para que la gente pueda comparar el rendimiento", dice Davidmann. “¿Pero cómo se puede comparar la calidad de la verificación? Es necesario que haya igualdad de condiciones para que cada proveedor pueda decir: "Así es como lo hacemos". Necesitamos algunas métricas de calidad relacionadas con la verificación”.
Aquí es donde el movimiento de código abierto puede ayudar. "Si nos fijamos en el ecosistema RISC-V, encontramos un gran número de desarrolladores de procesadores con mucha experiencia", afirma Schirrmeister. “Hay dos extremos. Una es que estoy obteniendo un núcleo de un proveedor y si no funciona, tienes un problema con él. Por otro lado, tengo total libertad y hago todo yo mismo. Se está desarrollando un equilibrio en algún punto entre estos dos extremos. Obtienes algo donde tu proveedor proporciona una cierta cantidad de verificación, y luego las extensiones son tu propia responsabilidad”.
Y aquí es donde entran en juego las métricas. “La compatibilidad con ISA es sólo el primer peldaño de una escalera llena de complejidades que sólo unas pocas empresas han subido”, afirma Dave Kelf, director ejecutivo de Breker Verification Systems. “La creación de prototipos puede ser la única forma de garantizar completamente el funcionamiento confiable del procesador, pero aprovechar cargas de trabajo reales para impulsar estos prototipos roza la superficie de la cobertura real del procesador. Esto está en desacuerdo con los esfuerzos competitivos de una ISA abierta que impulsa el desarrollo acelerado y los problemas de tiempo de comercialización”.
¿Pero cuáles son esas métricas? "En el grupo de calidad de OpenHW intentamos determinar cuáles deberían ser estas métricas", afirma Davidmann. “Eso incluye cosas como la cobertura funcional, porque no se trata sólo de simples instrucciones. Para un procesador de alta calidad, necesitas mucho más que eso. Es necesario contar con una metodología de verificación en la que haya confianza de que las comparaciones con una referencia lo cubren todo. La cobertura funcional simplemente muestra que tienes la prueba, pero eso debe combinarse con una metodología que se compare con algún tipo de referencia conocida. Vamos a agregar tecnología de inyección de fallas para que sea posible saber si su banco de pruebas realmente detecta problemas”.
Fig. 1: Definición de la arquitectura de una solución de verificación RISC-V. Fuente: Imperas
Se necesitará un conjunto de herramientas. "A medida que madura el ecosistema RISC-V, las implementaciones comerciales comienzan a respaldar segmentos de mercado definidos", dice Ashish Darbari, fundador y director ejecutivo de Axiomise. “Vemos apoyo para mercados, como el automotriz, que requieren cumplimiento de seguridad funcional. Vemos soporte para IoT, que requiere seguridad. Los proveedores de RISC-V están invirtiendo en técnicas de verificación avanzadas, incluida la creación de prototipos virtuales para el modelado y el rendimiento arquitectónicos. Ahora hay herramientas disponibles para la adopción temprana de métodos formales para eliminar errores en las primeras etapas del proceso de diseño y evitar la inserción de errores mientras los diseñadores luchan por detectar errores en los casos extremos con simulación en la interfaz de memoria del procesador”.
Una de las herramientas que será necesaria es la capacidad de generar casos de prueba basados en una lista de características o un conjunto de capacidades. "La generación automatizada de contenido de prueba para impulsar prototipos que tengan en cuenta las complejidades de la verificación de manera oportuna es clave", dice Kelf de Breker. "Estos mecanismos de generación están empezando a aparecer en el mercado".
Conclusión
Un ecosistema es tan bueno como su componente más débil, y para RISC-V esa es la cadena de herramientas EDA. Las razones de esto son dobles. En primer lugar, hasta hace poco no existía un mercado comercial para herramientas de verificación de procesadores. Si bien existieron en el pasado, todos desaparecieron o se disolvieron en las empresas de procesadores heredadas. En segundo lugar, la flexibilidad de RISC-V ISA crea un nuevo enfoque de optimización a nivel de sistema que requiere un nuevo conjunto de herramientas. Se necesita tiempo para que se comprenda esta oportunidad y para que aparezcan herramientas comerciales que la atiendan adecuadamente.
Relacionado:
Un RISC-V mínimo
¿Hay espacio para una versión aún más pequeña de un procesador RISC-V que pueda reemplazar a los microcontroladores de 8 bits?
RISC-V empuja hacia la corriente principal
Los núcleos de procesador de código abierto están comenzando a aparecer en paquetes y SoC heterogéneos.
Seguimiento eficiente en RISC-V
Cómo trabajar con el nuevo estándar de depuración RISC-V.
¿Qué tan seguros son los chips RISC-V?
El código abierto por sí solo no garantiza la seguridad. Todavía todo se reduce a los fundamentos del diseño.
- Distribución de relaciones públicas y contenido potenciado por SEO. Consiga amplificado hoy.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. Accede Aquí.
- Fuente: https://semiengineering.com/selecting-the-right-risc-v-core/
- 1
- 10
- a
- capacidad
- Poder
- Sobre
- arriba
- acelerado
- aceleradores
- Aceptar
- aceptable
- Mi Cuenta
- la exactitud
- preciso
- dirección
- Adopción
- avanzado
- Después
- en contra
- algoritmo
- Todos
- ya haya utilizado
- cantidad
- análisis
- Pruebas analíticas
- y
- e infraestructura
- https://www.youtube.com/watch?v=xB-eutXNUMXJtA&feature=youtu.be
- Aparecer
- Aplicación
- enfoque
- adecuado
- Arco
- arquitectónico
- arquitectura
- Reservada
- ARM
- aspecto
- evaluado
- Confirmación de Viaje
- Automatización
- automotor
- Hoy Disponibles
- promedio
- Atrás
- Ancho de banda
- basado
- básica
- porque
- se convierte en
- cada vez
- antes
- Comienzo
- "Ser"
- es el beneficio
- MEJOR
- entre
- Más allá de
- Big
- Poco
- Bloquear
- tablero
- marca
- llevar
- en general
- Error
- loco
- build
- Construir la
- construido
- desarrollo de negocios
- CAD
- capacidades
- capaz
- lucha
- ceo
- a ciertos
- Reto
- retos
- posibilidades
- el cambio
- Papas fritas
- manera?
- opciones
- Elige
- Trepado
- CMO
- Colateral
- cómo
- completo
- comercialmente
- Algunos
- Empresas
- comparar
- compatibilidad
- compitiendo
- competitivos
- completar
- complejidades
- compliance
- componente
- componentes
- computadoras
- Inquietudes
- condiciones
- confianza
- Configuración
- Conectándote
- consideraciones
- contenido
- Core
- podría
- acoplado
- cobertura
- cubierta
- CPU
- creado
- crea
- Creamos
- creación
- Arroyo
- CTO
- En la actualidad
- datos
- David
- Koops
- definir
- entregamos
- demandas
- Departamento
- Dependiente
- desplegado
- Diseño
- proceso de diseño
- diseñadores
- desarrollar
- desarrollado
- desarrolladores
- el desarrollo
- Desarrollo
- Dispositivos
- una experiencia diferente
- difícil
- Director
- No
- No
- DE INSCRIPCIÓN
- el lado de la transmisión
- impulsados
- conducción
- durante
- cada una
- Temprano en la
- fácil
- ecosistema
- ecosistemas
- esfuerzo
- esfuerzos
- ya sea
- integrado
- permite
- Motor
- Ingeniería
- motores
- suficientes
- garantizar
- asegurando que
- Empresa
- Todo
- entrada
- Entorno
- ambientes
- Equivale
- equilibrio
- se establece
- estima
- evaluar
- Incluso
- NUNCA
- todo
- ejecución
- experimentado
- extensión
- extensión
- extensiones
- externo
- extremos
- Cara
- familiar
- Moda
- RÁPIDO
- más rápida
- Feature
- Caracteristicas
- pocos
- campo
- Higo
- Encuentre
- la búsqueda de
- Nombre
- cómodo
- fijas
- Flexibilidad
- flexible
- formulario
- formal
- fundador
- Fundador y CEO
- FPGA
- Freedom
- en
- ser completados
- completamente
- función
- funcional
- funciones
- Las Bases (Fundamentales)
- en general
- generar
- la generación de
- generación de AHSS
- obtener
- conseguir
- Donar
- da
- Go
- Goals
- va
- candidato
- mayor
- Grupo procesos
- Creciendo
- garantizamos
- suceder
- Materiales
- ayuda
- ayuda
- alta calidad
- de cosecha propia
- caballo
- Cómo
- HTTPS
- enorme
- Impacto
- implementar
- implementación
- in
- incluir
- incluye
- Incluye
- creciente
- cada vez más
- energético
- información
- EN LA MINA
- Instrucciones
- integrar
- Intel
- interesado
- Interfaz
- Internacionales
- metas de
- involucra
- IOT
- IP
- cuestiones
- IT
- sí mismo
- Trabajos
- Clave
- Tipo
- Saber
- conocido
- ladder
- large
- Legado
- Nivel
- aprovechando
- Licencias
- que otros
- Linux
- Lista
- Largo
- largo tiempo
- longevidad
- Mira
- mirando
- hecho
- Inicio
- para lograr
- fabricante
- HACE
- muchos
- marca
- Mercado
- Industrias
- madura
- max-ancho
- Conoce a
- Salud Cerebral
- Metodología
- métodos
- Métrica
- mínimo
- modelo
- modelado
- modelos
- modificar
- más,
- MEJOR DE TU
- movimiento
- emocionante
- necesario
- ¿ Necesita ayuda
- Nuevo
- número
- numeroso
- objetivo
- Odds
- Lista de ofrendas
- ONE
- habiertos
- de código abierto
- funcionamiento
- Inteligente
- Oportunidad
- optimización
- Optión
- Opciones
- solicite
- en pedidos de venta.
- Otro
- EL DESARROLLADOR
- paquetes
- parte
- partes
- pasado
- En pleno
- Personas
- actuación
- los libros físicos
- industrial
- Pivot
- plataforma
- Plataformas
- Platón
- Inteligencia de datos de Platón
- PlatónDatos
- players
- jugando
- punto
- Punto de vista.
- posición
- POSIBILIDADES
- posible
- industria
- presidente
- probablemente
- Problema
- problemas
- Procesador
- procesadores
- Progreso
- correctamente
- prototipo
- prototipos
- prototipado
- proporcionar
- previsto
- proveedor
- público
- bomba
- de bombeo
- propósito
- fines
- calidad
- pregunta
- Preguntas
- Carrera
- distancia
- confeccionado
- real
- mundo real
- razón
- mejor
- razones
- recientemente
- Independientemente
- confianza
- reemplazar
- exigir
- Requisitos
- requisito
- Requisitos
- requiere
- responsabilidad
- Conferencia
- Ejecutar
- correr
- Safety
- Seguridad y Protección
- Segundo
- seguro
- EN LINEA
- segmentos
- seleccionado
- seleccionar
- selección
- mayor
- sensor
- set
- Varios
- tienes
- Mostrar
- Shows
- importante
- Simon
- sencillos
- simulación
- soltero
- Despacio
- menores
- So
- Software
- Desarrollo de software ad-hoc
- a medida
- Soluciones
- algo
- Alguien
- algo
- en alguna parte
- Pronto
- Fuente
- velocidad
- gastado
- Girar
- estable
- etapas
- estándar
- Comience a
- Steve
- Sin embargo
- Luchar
- tal
- suite
- SOPORTE
- Superficie
- te
- Todas las funciones a su disposición
- ¡Prepárate!
- toma
- escuchar
- hablar
- equipos
- Técnico
- técnicas
- Tecnología
- plantilla
- test
- El
- su
- por lo tanto
- cosa
- cosas
- Tres
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- rendimiento
- equipo
- prolongado
- veces
- sincronización
- a
- hoy
- juntos
- demasiado
- parte superior
- Total
- rastrear
- tradicional
- GIRO
- principiante
- típicamente
- entendido
- unidad
- próximos
- utilizan el
- Usuario
- usuarios
- validado
- validación
- propuesta de
- variedad
- vendedor
- vendedores
- Verificación
- versión
- y
- Vice Presidenta
- Ver
- Virtual
- plataformas virtuales
- falto
- formas
- sitios web
- ¿
- Que es
- sean
- que
- mientras
- seguirá
- dentro de
- Actividades:
- rutina de ejercicio
- mundo
- se
- Mal
- X
- años
- tú
- zephyrnet