Este tutorial se ha creado como complemento a la charla titulada Codiseño y cosimulación basado en FPGAs para plataforma Arduino del Open Source Hardware Convention 2011.
Tiene seis partes:
- Parte I - Introducción
- Parte II - Emulación del modelo RTL de Arduino
- Parte III - Simulación con ModelSIM (si se usa una versión de pago)
- Parte IV - Simulación con ISim (integrado en Xilinx ISE)
- Parte V - Compilar programas Arduino para simulación
- Parte VI - Acelerar, personalizar y optimizar Arduino
Conclusiones*:
- Emular el microcontrolador de Arduino o cualquier otro en una FPGA permite personalizar ancho de buses, número y tipo de salidas y entradas, frecuencias de reloj, tamaño de memoria o puertos de comunicación e inhabilitar los recursos que no sean utilizados para optimizar y adaptar el hardware al proyecto (y no viceversa).
- Simular el proyecto completo, hardware y software, a nivel de señal desde un PC sin necesidad de programación en una FPGA es una ventaja tremenda hasta para proyectos básicos de Arduino.
- Existen otras ventajas de utilizar hardware reconfigurable como son la capacidad de procesado o la protección de obsolescencia pero no son tan importantes en el ámbito DIY/Hardware Libre.
Trabajos futuros:
- Crear una herramienta open-source que permita configurar un sistema completo, añadir módulos con funcionalidades, comunicaciones, co-procesamiento, etc. El prototipo se llama Oruga y está escrito en Javascript: http://oruga.tk
- Crear módulos en HDL (VHDL, Verilog...) administrados desde Arduino, independientes de ellas o conectados a otros módulos como, por ejemplo:
- Salida PWM con frecuencia configurable.
- Entrada RC-PPM de varios canales desde una misma señal.
- Salida VGA.
- Memoria externa.
- Generadores de ondas.
- Entrada analógica.
- Comunicación genérica de protocolos serie como I2C o SPI.
- Generación y mezcla de sonido y otras funciones DSP.
- Módulos de coprocesamiento.
No hay comentarios:
Publicar un comentario