TUTORIALES

FPGA

Los tutoriales se centran en la programación y aplicaciones de dispositivos FPGA. Aquí aprenderás a diseñar y desarrollar proyectos que aprovechen las capacidades de estos potentes dispositivos.

FPGA (Field Programmable Gate Array)

Las FPGA conforman actualmente la máxima evolución de los PLDs (Programmable Logic Device), definidos éstos como circuitos integrados en los que se pueden programar ecuaciones lógicas booleanas, tanto combinatorias como secuenciales. Existen actualmente una gran variedad de estos chips, y algunos de ellos pueden contener hasta 10,000 compuertas lógicas. Así mismo, las FPGA (Field Programmable Gate Array) son circuitos lógicos programables directamente por el usuario, lo cual requiere de herramientas de costo relativamente bajo, como lo son el software de desarrollo y el dispositivo grabador. La grabación o programación de uno de estos dispositivos se puede llevar a cabo en milisegundos. La figura 1 muestra como es físicamente un PLDs producido por la empresa Xilinx.

EMPREZANDO CON EL DISEÑO BÁSICO DE SISTEMA ARTY

El diseño básico del sistema Arty es un proyecto prediseñado que conecta todos los hardware necesarios de la Arty al procesador Microblaze para ser utilizados en Xilinx SDK. Ello permite al usuario saltar directamente al diseño de software en SDK.

En este tutorial, agregamos nuestro propio bloque IP personalizado en el diseño básico del sistema para ser utilizado con unos RGB LED programables.

Esta guía proporciona un ejercicio práctico paso a paso para la creación del diseño básico del sistema Arty – Proyecto en Vivado, y para empezar en Xilinx SDK.

GYRO DISPLAY

Afortunadamente, hay un bloque IP personalizado mantenido por Digilent para GYRO, que puede ser encontrado en su GitHub. El repositorio incluye también algunos códigos de ejemplo para la utilización del giroscopio/Gyro dentro del procesador de núcleo suave MicroBlaze (soft-core) que puede ser implementado en la FPGA. Este código de ejemplo fue extremadamente útil y contenía una librería/biblioteca para la obtención de la temperatura y los datos de aceleración del giroscopio/Gyro. Para este proyecto he decidido ignorar los datos de temperatura del giroscopio/Gyro y centrarme sólo en las mediciones de aceleración en las direcciones x, y, y z.

Cada medición es transferida al programa software por SPI, utilizando la librería GYRO dada. Luego debo ejecutar dichas mediciones por medio de un par de comparaciones e intentar pesar cuál medición es la mayor. Asimismo, debo promediar los últimos 50 valores para cada eje, ya que estos giroscopios son tendentes a registrar aumentos en lecturas debido a vibraciones ligeras.

Básicamente, el objetivo era relacionar una medición de eje específica a un color específico para visualizar en los LEDs RGB. Las diferentes combinaciones de colores se obtenían con el núcleo PWM IP dado.

Empezando con el Diseño Básico del sistema ARTY

INTRODUCCIÓN El diseño básico del sistema Arty es un proyecto prediseñado que conecta todos los hardware necesarios de la Arty al procesador Microblaze para ser utilizados en Xilinx SDK. Ello permite al usuario saltar directamente al diseño de software en SDK. En este tutorial, agregamos nuestro propio bloque IP personalizado en el diseño básico del sistema para ser utilizado con unos RGB LED programables. Esta guía proporciona un ejercicio práctico paso a paso para la creación del diseño básico del sistema Arty – Proyecto en Vivado, y para empezar en Xilinx SDK. Al final de este tutorial tiene: Abierto el diseño de hardware (HW) basado en Microblaze prediseñado en Xilinx Vivado.Importado e implementado un bloque personalizado DigiLEDs IP en el diseño.Creado el proyecto .C en Xilinx...