Yosys: un marco open source para herramientas de síntesis Verilog

Yosys show_rtl

La semana pasada se realizó un anuncio por parte de W. Clifford quien dio a conocer la nueva versión 0.8 de Yosys.

Para quienes no han escuchado hablar sobre Yosys les puedo decir que este es un marco para herramientas de síntesis RTL. Actualmente cuenta con una amplia compatibilidad con Verilog y proporciona un conjunto básico de algoritmos de síntesis para varios dominios de aplicación.

En este nuevo lanzamiento se han agregado muchas cosas, pero la información principal que se puede ver en la nota de lanzamiento es que el desarrollo de Yosys es muy activo.

El objetivo de Yosys de convertirse en la «navaja suiza gratuita» de FPGA se puede considerar casi indispensable al día hoy.

Sobre Yosys Open SYnthesis Suite

Yosys se puede adaptar para realizar cualquier trabajo de síntesis combinando los pases existentes (algoritmos) usando scripts de síntesis y agregando pases adicionales según sea necesario al extender la base de códigos C ++ de Yosys.

Yosys es un software gratuito con licencia bajo la licencia ISC (una licencia compatible con GPL que es similar en términos a la licencia MIT o la licencia BSD de 2 cláusulas).

En el proceso de desarrollo de FPGA / ASIC, la síntesis es el paso de conversión del modelo de hardware simulado a «netlist RTL» del cual se puede derivar el circuito real.

show_coarse

Sobre Verilog

Verilog es un lenguaje de modelado de hardware (HDL de lenguaje de descripción de hardware) para describir una simulación de circuitos digitales.

Este modelo Verilog sirve como especificación para una realización «física» del componente modelado.

La síntesis HDL se puede ver como una conversión del código HDL en un «esquema electrónico» que consiste en componentes digitales conectados entre sí. Esto se denomina «lista de red RTL» (Nivel de transferencia de registro ).

Yosys no es el único software gratuito para la síntesis de Verilog (también podemos pensar en el uso de ODIN II en la suite de software VTR ).

Pero, sin lugar a dudas, el software libre es el que más se ha hablado de él recientemente y cuyo desarrollo es el más activo.

De hecho, Yosys ahora apunta a muchos FPGA baratos como CoolRunner-II, ECP5, MAX10, Cyclone IV y especialmente el ICE40.

El ICE40 es un poco especial en la lista, ya que para este FPGA se ha lanzado toda la cadena de desarrollo.

Por supuesto, podemos hacer la síntesis de Verilog ya que el FPGA es compatible con Yosys, pero también la ubicación de enrutamiento con arachnepnr, así como la generación del archivo de configuración (flujo de bits) con icepack / iceprog .

También es posible verificar los tiempos con icetime.

show_cmos

Sobre la nueva versión de Yosys

  • En este nuevo lanzamiento de Yosys se han dado a conocer las nuevas funcionalidades de las cuales se pueden destacar:
  • El lenguaje FIRRTL utilizado por Chisel3 es un posible «backend» para generar el netlist;
  • El soporte del motor de verificación formal de yosys-smtb casi se puede considerar estable.
  • La lista de FPGA soportados (y otros ASIC) se alarga irremediablemente;
  • Así como los formatos de «netlist» que permiten volver a integrarse en el software propietario de los fundadores: BLIF, EDIF, BTOR, SMT-LIB, RTL Verilog, FIRRTL

¿Cómo instalar Yosys en Linux?

Para quienes estén interesados en poder probar esta herramienta, pueden realizar la instalación en sus sistemas. Para ello deben de seguir las instrucciones que compartimos a continuación.

Para los que son usuarios de Ubuntu y derivados de este pueden gozar de una sencilla instalación. Esto lo pueden hacer añadiendo el siguiente repositorio a su sistema.

Primero debemos de abrir una terminal con Ctrl + ALT + T y en ella ejecutar el siguiente comando:

sudo add-apt-repository ppa:saltmakrell/ppa

Hecho esto ahora debemos de actualizar nuestro listado de paquetes y repositorios con:

sudo apt-get update 

Y finalmente instalamos la aplicación con:

sudo apt-get install yosys

Para el resto de las distribuciones de Linux debemos de compilar la herramienta. Para ello debemos de clonar el código fuente del repositorio GIT:

git clone https://github.com/cliffordwolf/yosys.git

Configurar las configuraciones de compilación con:

make config-clang

vi Makefile

vi Makefile.conf

Finalmente construir, probar e instalar:

make

make test

sudo make install

Para poder obtener más información al respecto, así como poder encontrar documentación sobre el uso de Yosys pueden visitar el siguiente enlace.


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.