Desarrollo de una arquitectura y un conjunto de reglas para diseño de FPGAs desde lenguaje C en entornos “Do It Yourself”

Bonet Sanz, Marina (2018). Desarrollo de una arquitectura y un conjunto de reglas para diseño de FPGAs desde lenguaje C en entornos “Do It Yourself”. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. Industriales (UPM).

Description

Title: Desarrollo de una arquitectura y un conjunto de reglas para diseño de FPGAs desde lenguaje C en entornos “Do It Yourself”
Author/s:
  • Bonet Sanz, Marina
Contributor/s:
  • Torroja Fungairiño, Yago
Item Type: Final Project
Degree: Grado en Ingeniería en Tecnologías Industriales
Date: November 2018
Subjects:
Faculty: E.T.S.I. Industriales (UPM)
Department: Automática, Ingeniería Eléctrica y Electrónica e Informática Industrial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[thumbnail of TFG_MARINA_BONET_SANZ.pdf]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (3MB) | Preview

Abstract

Dentro del marco de las aplicaciones para el “Do It Yourself” (DIY), el uso de las plataformas con microprocesadores, como Arduino, son altamente conocidas y utilizadas mientras que la tecnología de las FPGAs no ha logrado dar el salto fuera de los sectores especializados, como puedan ser la comunidad académica o el sector industrial.
Por ello, en la División de Ingeniería Electrónica (DIE) de la ETSI Industriales se ha planteado un proyecto marco, del que forma parte este TFG, que busca el acercamiento de la tecnología de las FPGAs a la comunidad amateur mediante una herramienta integrada que, enfocada al ámbito del DIY, permita el uso de FPGAs de una forma más sencilla que mediante las herramientas habituales, como pueda ser Vivado.
Así, se busca ofrecer una aplicación que permita diseñar de forma cómoda y sencilla funcionalidades hardware, simularlas e implementarlas en una FPGA, a la vez que puedan ser accesibles desde aplicaciones software que se ejecuten en un microprocesador. Y todo ello integrado en el IDE de Arduino, que es una interfaz muy conocida.
Para ello se plantean los objetivos del proyecto marco siguientes:
• El usuario final pueda describir circuitos electrónicos mediante un lenguaje más cómodo y familiar que el VHDL: C, dentro de un entorno conocido y fácil de usar.
• El código C generado no sólo permita describir fielmente la funcionalidad del hardware que se desea obtener, sino también los elementos que componen el circuito.
• Dicho código C se pueda ejecutar en bucle en un microcontrolador a modo de banco de pruebas, de forma que se pueda depurar el código antes de su implementación en la FPGA.
• El código C sea traducible a VHDL de forma automática y transparente para el usuario final.
• El código traducido a VHDL sea implementado y cargado en la FPGA de forma automática y transparente.
• El hardware generado mediante este proceso en la FPGA sea accesible y fácilmente controlable desde cualquier proceso que se ejecute en un microcontrolador.
• La FPGA pueda albergar varias funcionalidades hardware diferentes ejecutándose a la vez.
Dentro de este TFG se dará cumplimiento a algunos de ellos, de forma que al finalizarlo se provea de las siguientes herramientas:
• Arquitectura básica del sistema implementado en hardware, de forma que éste adquiera un moderado nivel de escalabilidad.
• Interfaz de comunicación implementada en hardware para la comunicación entre el microcontrolador y la FPGA.
• Funciones de acceso, tanto de lectura como de escritura, para el uso adecuado de las señales de control y su optimización durante los ciclos de lectura y escritura del microcontrolador sobre la FPGA.
• Gestor de interrupciones que permita su uso en los módulos diseñados.
• Guía de usuario donde se recopilan las normas necesarias para el uso de la aplicación por parte del Usuario Final, donde se especifica la estructura que debe de tener el código en C para una correcta descripción de hardware.
• Guía de traducción para poder realizar la traducción de C a VHDL de forma manual, y base para una futura automatización del proceso.

More information

Item ID: 53850
DC Identifier: https://oa.upm.es/53850/
OAI Identifier: oai:oa.upm.es:53850
Deposited by: Biblioteca ETSI Industriales
Deposited on: 04 Feb 2019 15:08
Last Modified: 04 Apr 2019 22:30
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM