Mithro opera cadenas de herramientas FPGA de código abierto

Tim [Mithro] Ansell tiene mucho que contarte sobre el estado actual del equipo FPGA abierto: 115 presentaciones de diapositivas en 25 minutos si cuentas. Su proyecto SymbiFlow pretende ser el GCC de los kits de herramientas FPGA: multiplataforma, multiplataforma, completamente gratuito y completo. Eso significa que es un marco de techo para todo el trabajo que hacen los demás, desde el trabajo en herramientas sintéticas y de control, hasta la ubicación y el enrutamiento, hasta bibliotecas de chips de ventas específicas. Su discurso lo captura con el estado del arte a fines de 2019, y está incluido a continuación. Alarma de alerón: SymbiFlow tiene la gran serie FPGA-Xilinx-7 en su punto de mira y se cierra. SymbiFlow es tan cerca obtenga un sistema Linux en línea en la estructura FPGA en Xilinx 7 hoy, completamente independiente de cualquier herramienta de ventas.

Pero retrocedamos un segundo para conocer algunos antecedentes. Cuando codifica para FPGA, las palabras que escribe se convierten en pequeños flujos y ceros que activan tal vez algunos millones de interruptores dentro del chip. Pasar de un lenguaje más avanzado a un poco de fluidez es similar a compilar lenguajes de programación normales, excepto con el giro de que la lógica informática resultante no se asigna directamente al lenguaje de máquina, sino a hardware físico menos avanzado en la FPGA. Por tanto, la "compilación" de FPGA implica dos pasos: síntesis y ubicación y enrutamiento. Synthesis toma el lenguaje más avanzado que escribe y lo transforma en un conjunto de redes y requisitos de tiempo que representan la misma lógica y pueden funcionar en todas las familias de chips. Yosys es la herramienta de síntesis de código libre elegida aquí.

Location-and-route luego mapea la lógica de programación en la arquitectura de arquitectura AR y la característica de la FPGA individual, y es aquí donde se ha realizado y se está realizando el trabajo de ingeniería inversa para acomodar más familias de FPGA. nextpnr toma la lógica del programa y la mapea en puertas FPGA, y no puede hacerlo sin descripciones detalladas de los diversos chips internos. Para ello, SymbiFlow divide cada familia de chips FPGA en sus propios proyectos de procesamiento y documentos de flujo de bits. Hasta ahora tenemos Project IceStorm para los chips Lattice iCE40, Project Trellis para los Lattice ECP5 que estaban en la insignia de Supercon y Project X-ray para los Xilinx 7.

Mithro comienza mencionando que el objetivo es cubrir todos los FPGA con una cadena de herramientas. Ese es un objetivo increíble que está muy, muy lejos. Pero el progreso es ridículamente rápido. A principios de 2018, por ejemplo, solo las partes de Lattice iCE40 eran realmente bien entendidas y respaldadas. Se eligió esta FPGA porque es asequible, barata y fácilmente reversible, pero la participación de mercado de Lattice es aproximadamente cero. Xilinx y Altera son las FPGA de Intel y AMD del mundo, y sin cubrir sus chips, solo se puede decir que el proyecto apenas está comenzando. Sin embargo, dentro de un año Dave Shah básicamente documentó completamente el Lattice ECP5, mucho más poderoso, y pudimos traerles la insignia de La-Tecnologia Supercon. Demasiado para Lattice.

Como se mencionó en la apertura, la verdadera historia aquí es el tremendo progreso logrado en 2019 en las piezas de Xilinx. A medida que el Proyecto X-ray Radio despegó en serio, algunas partes de nextpnr resultaron ser más específicas de la red de lo que se pensaba anteriormente, y una nueva herramienta de ubicación y ruta, Verilog to Routing, desarrollada en la Universidad de Toronto, ingresó a SymbiFlow.

Al mismo tiempo, algunos de los pasos sintéticos en Yosys no han optimizado el uso de algunas de las funcionalidades más avanzadas de las partes de Xilinx, como los bloques de procesamiento de señales digitales especializados (DSP), y se ha avanzado mucho en ese frente en 2019. (Por supuesto, algunas de las mejoras de DSP en los chips Xilinx 7 se han extendido a los Grid ECP5, por lo que todos ganan).

Lo que nos lleva a la línea de penalti. ¿Puede SymbiFlow reemplazar completamente la cadena de herramientas patentada (e inconveniente) de Xilinx? No, porque los dispositivos laterales de alta velocidad de FPGA todavía no funcionan bien con el camino abierto. Y mientras Mithro dijo en el discurso que el consorcio Symbiflow está trabajando duro para llegar a ese punto para fines de 2019, hablamos con él el 29 de diciembre y todavía estaban presentes. Pero si nos preguntas, predeciríamos que veremos una cadena Xilinx 7 completa y completamente abierta en 2020. ¿Quizás incluso este verano? Es un proyecto cercano y querido para nuestros corazones, así que lo mantendremos informado.

Pero si bien Mithro, que es un tipo de programación / Linux, apunta a un conjunto de herramientas completamente abierto para construir un sistema Linux, no debe desanimarse para probar cualquier otra cosa en Xilinx 7 o Lattice. ahora. Ambos flujos son completamente funcionales para microcontroladores o aplicaciones de IoT. Siempre que no necesite la memoria de alta velocidad y los periféricos Ethernet, está bien. Y si realmente necesita esas cosas, puede sintetizar con Yosys y hacer un place-and-go con las herramientas de Life cerradas hasta que SymbiFlow lance algunas cajas más. Nunca ha habido un mejor momento que AHORA para comenzar con FPGA, en mi humilde opinión.

  • Alan Hightower dice:

    Es Xilinx, no XiLEX. Casi dejé de buscar las primeras 20 faltas de pronunciación. Pero felicitaciones a estos muchachos por lo que hacen.

    La cuota de mercado de la red creció más del 10% en las previsiones 2019/2020. Ya no es una empresa pequeña gracias a piezas como ECP5, su enfoque móvil y automotriz, y compras como SiliconBlue. Y si nos fijamos en los mercados de piezas pequeñas y medianas, Lattice está muy por encima del 10%. Xilinx e Intel fabrican piezas grandes que otros proveedores de silicio utilizan para crear prototipos de ASIC, donde está el dinero real.

    Una red podría crecer aún más si solo aceptaran este esfuerzo y vendieran a los constructores del producto en lugar de los productos en sí.

    • RW versión 0.0.1 dice:

      Duele un poco en el trasero, aunque los grandes tienen todo orientado a que desarrolles ASIC, no, no tengo 4 millones metidos en el colchón y no necesito 500.000 de ellos. Con los precios que reflejan el valor como una herramienta que lo lleva a ASIC más rápido, le ahorra costos de desarrollo de ASIC, evita costosos errores en el ASIC, se enfría, quiero hacer esto con FPGA.

      • eekee dice:

        ¡Ja ja! Ese sentimiento me devuelve. Creo que no había FPGA cuando entré por primera vez en la electrónica, pero había ASIC, y * todo * estaba destinado a grandes pedidos. Maplin era bueno entonces, proporcionando todo tipo de cosas que de otro modo necesitaríamos comprar en gran parte.

    • aestetix dice:

      Aprendí algo de Verilog de libros y demás. Pero lo que realmente me frena es no saber por dónde empezar. Algunos dicen Lattice, pero también tienes el proyecto MiSTer con el DE-10, que es Intel y una plataforma atractiva para tal cosa que quiero hacer.

      Las parrillas son las únicas que parecen tener herramientas gratuitas decentes.

      ¿Por dónde diría que es un buen punto de partida?

  • jcyr dice:

    "Xilinx y Altera son los Intel y AMD del mundo FPGA". Un poco confuso Altera IS Intel ... ha pasado un tiempo.

    • RW versión 0.0.1 dice:

      Así que arreglemos todo, Altera es Intel, Xilinx representa a AMD, así que somos modernos o clásicos, con VIA o Cyrix, pero entonces, ¿quién es el IDT Winchip, o el Rise MP6, o incluso ... el UMC U5 ... entonces? es Incluiremos a Harris por ese 286 rápido levantamiento de ellos más allá de la mera copia, o por ese NEC que participó en el juego con el V20 y otros, y ¿dónde encaja exactamente Nexgen ???

    • Elliot Williams dice:

      Esa es la broma de Tim. Lo balanceé.

      El caso es que en el mundo FPGA dominan dos jugadores, uno con una parte mayor y otro con una parte menor: Intel y AMD. La línea de penalización es que en el mundo FPGA, Intel es "AMD". (O al menos compraron Altera, que era "AMD").

      ¡Vamos, es divertido!

  • Patrick Helmick dice:

    Gracias por el estímulo para explorar FPGA. Creo que a veces el verdadero "giro" es detenerse mentalmente en el lenguaje de máquina y no ver el flujo de bits subyacente en ningún procesador. Tener que pensar en una FPGA probablemente ha eliminado más de un bloqueo mental al buscar la mejor manera de hacer un trabajo.

    • Peluquero dice:

      Estoy de acuerdo. Quiero que la gente simplemente detenga la analogía con la computadora por completo. Los flujos de bits no son código de máquina. compilar HDL es un proceso completamente diferente a compilar un programa. Esta analogía dificulta la enseñanza de la codificación FPGA, los estudiantes siempre esperan que HDL sea solo otro idioma. No lo es, es una descripción de un circuito, o al menos una descripción de registros y lógica combinatoria.

  • Miguel dice:

    No estoy muy seguro de qué se trata. Soy un ingeniero integrado y uso FPGA y CPLD profesionalmente. Nunca he pagado por ninguna herramienta porque los proveedores ofrecen ediciones gratuitas que admiten todos los beneficios excepto los sangrientos. Los proveedores venden los circuitos integrados, no las herramientas.

    Lo que sería interesante y útil es un simulador de código abierto para un superpaisaje del terriblemente lento / noble Multisim, que es gratuito con las herramientas de ventas.

    • Elliot Williams dice:

      Sims: prueba Icarus Verilog para las cosas pequeñas y Verilator para las más grandes. GTKwave para renderizar.

      Pero abrir no se trata de precio. Se trata de la capacidad de adaptar / modificar / ampliar las herramientas de la forma que desee. Hay herramientas de control formales integradas en la cadena de herramientas abierta. Puede mezclar / combinar herramientas en diferentes etapas del flujo. Las personas crean sus propias interfaces GUI, desde las más simples hasta las increíblemente complejas. Etc. Open se trata de flexibilidad.

      Pero si. Si no está seguro de qué se trata, esa es la señal más segura de que lo intentará. 🙂 ¿Recuerda la primera vez que necesitó comprar compiladores a proveedores para CPU?

      • Jerry Morrow dice:

        Pensé lo mismo, todos tenían una caja "Borland C ++" en su escritorio en los años 90, ahora todos usan gcc. Algún día, las empresas de silicio se darán cuenta de que es más fácil mantener los kits de software libre para todo el trabajo gratuito. ¿Por qué pagar por un empleado de desarrollo de software en su oficina cuando solo puede confiar en millones de geeks en todo el mundo?

    • galletas dice:

      Casi respondiste a tu pregunta tú mismo. El proyecto pretende ser un conjunto de herramientas multiplataforma para el desarrollo de FPGA. Así que crea un prototipo de su proyecto en una placa de desarrollo Ice40 FPGA y descarga y aprende el kit de herramientas del proveedor Lattice Diamond. Luego, decide agregar más funciones y cambiar a la placa artix 7. Otra cadena de herramientas de ventas para descargar y aprender. Tal vez decida antes de producir usted mismo, no es un fanático de las herramientas de Xilinx y regresa a la cuadrícula en ECP5 FPGA. Cambie de nuevo las cadenas de herramientas. Symbiflow no necesitaría todo ese flip-flop.

      Sin mencionar que algunas de las cadenas de venta gratuitas solo son gratuitas para los FPGA bajos. Y los núcleos IP son $$$ en esos ecosistemas de código cerrado.

      • Alan Hightower dice:

        Excepto que no usa Diamond para el desarrollo de iCE40 (usa Radiant). Y, en general, una simple síntesis se trata de abrirse carpeta, selección de varios archivos .v y pulsación de un botón. Hay muy poca diferencia en las herramientas de ventas para esto. Las diferencias se relacionan principalmente con las funciones de soporte para sus proyectos. Pero ese no es el atractivo de las herramientas FPGA de FOSS.

        El llamamiento cubre muchas áreas. Me gustaría usar una cadena de herramientas de línea de comandos en una caja Linux moderna. Las versiones de Grid funcionan duro en Linux, especialmente si no usa su distribución. Me gustaría ejecutar herramientas en el RPi conectado directamente a la FPGA. Buena suerte con eso con las herramientas de ventas. Me gustaría implementar un kernel PCIe con puertos de servicio de alta velocidad. Todos los vendedores quieren mucho dinero por eso. Etc.

        • galletas dice:

          oh, mezclé mis fpgas.
          Actualmente estoy usando el mach XO3L que necesita un diamante ya que todavía no hay soporte en las herramientas fpga de FOSS.

        • Jerry Morrow dice:

          así que estaba buscando una alternativa a las herramientas de GUI de ventas, ¡gracias! Prefiero linux / línea de comandos para todos. Parece que el equipo Symbiflow está respondiendo a mi llamada. También trae python, cmake, etc., que la mayoría de los ingenieros de software conocen.

    • David Kuder dice:

      Una buena razón para usar cadenas de herramientas de código abierto y bibliotecas centrales es deshacerse de la basura que obtiene con las herramientas del proveedor. Bunnie señala en su revisión de LiteX vs Life (https://www.bunniestudios.com/blog/?p=5018) que los núcleos IP proporcionados por el proveedor a menudo no están optimizados (quieren venderle chips más grandes y más rápidos).

      • Peluquero dice:

        Desafío a cualquiera a subcontratar el compilador Vivado FIR. Pasará la mayor parte de un mes y terminará con un resultado peor.

        • Tom McWilliams dice:

          Me gustaría recuperar el mes de mi vida que me robó Vivado. Es tremendamente lento y la herramienta de desarrollo más lenta que he visto en años anteriores.

          • buscador de facturas dice:

            Entonces no probaste Vitis:>) De hecho, estaba bien con Life Speed ​​no porque sea rápido sino porque era mucho más rápido que ISE. La velocidad de síntesis también debe estar separada de la velocidad P&R. Si bien hay motores de sintetizador más rápidos, P&R controla todo el tiempo, por lo que obtener un sintetizador rápido no afectará mi programación.

  • Pedro dice:

    Entonces, ¿alguien puede decirme cuándo obtengo un MISTer de nueva generación que podría copiar en hardware computadoras y consolas de los años 90?

  • ThomR dice:

    Pro Fer Gawd: es N en XILINK. Son zzz-eye-links, no zzz-eye-licks.

  • Cuyo editor dice:

    Aquí está la segunda imagen de una presentación FPGA que vi donde parece que el editor parecía estar dormido. Por ejemplo, a las 12:50, el tipo EXPUESTO a la presentación, sin embargo, el editor no se molestó en insertar las diapositivas en el video.

    • Mike Szczys dice:

      La edición se realizó durante la transmisión en vivo. El enlace a las diapositivas se ha publicado en la descripción de YouTube, por lo que puede seguirlo si lo desea:
      https://j.mp/had19-symbiflow

      • Cuyo editor dice:

        ¡Gracias por las diapositivas!

  • PMP dice:

    Si desea producir, entonces el "código abierto" es el equivalente a probar antes de comprar, y ¡vaya, esa cadena le costará! ¿Se fabrica una unidad de $ 1500 con $ 12 de piezas? ¿Software de $ 8000 y una tarifa mensual de $ 150? y eso es para una herramienta en la cadena. Vale, si vendes miles, si no millones, de unidades, pero ¿entras en un nicho de alta calidad y baja cantidad? Algunas personas no quieren hacerse ricas, solo quieren compartir lo que aman. Para pagar por esto, necesita vender en gran volumen, cortar todos los rincones y usar la mierda más barata que pueda venderle al "usuario". Ningún producto de alta calidad, punto. Hubo un tiempo en que un error era un desastre, ahora se esperan. Casi nadie ha escuchado un sonido de alta calidad, y los autos son menos eficientes en caballos de fuerza que hace 50 años, los autos ahora son “vehículos” para vender ASIC. Es la opción china, no pagan la tarifa inicial y la tarifa anual, pero eso es todo lo que diré sobre la electrónica china. ¿Alguien ha leído detenidamente los acuerdos de usuario? Estas empresas básicamente te pertenecen a ti, a tu empresa y a tu trabajo si estás de acuerdo con ellas. No, gracias. ¿Realmente necesitan todo ese dinero para compensar sus deficiencias? Si necesita hacerse rico, ¿por qué no vender barato de alta calidad? Eso siempre ha funcionado en el pasado. China ha sido el principal comerciante del mundo durante miles de años. Históricamente, todas las sociedades que se han comprometido con el modelo de negocio de “ahócalos” se han derrumbado, pero lee la historia. ¿Por qué no vender circuitos integrados y luego facilitar su uso fácilmente? Sus creadores alguna vez disfrutaron de los mejores productos electrónicos con los que me he encontrado, no pueden permitirse millones de dólares para ejecutar su laboratorio en el sótano y vender algunas unidades al año. Hay muchas prácticas comerciales estúpidamente autodestructivas. Supongo que estamos conectados con nuestras computadoras lentas, de baja potencia, de mala calidad, extranjeras, producidas por esclavos, también conocidas como "teléfonos", nos da algo que mirar en la línea inactiva y en los comedores de beneficencia, junto con todos los otros científicos de la computación, aunque no uso "teléfonos", leo algo llamado "libros", algunos de ustedes pueden recordarlos.

Maya Lorenzo
Maya Lorenzo

Deja una respuesta

Tu dirección de correo electrónico no será publicada.