Hace unos días hice una pregunta en facebook “¿Que curso te gustaría ver en una semana de la tecnologia en el ITA? Ing. Electronica” y puse como muestra MatLab, AutoCAD y LaTex, pero claro 'Joseph Velazquez Martinez' tenia que llegar (y luego dicen que uno es el pokemon)
Y así me puse a investigar un poco y esto fue lo mejor que encontré de FPGA (que por cierto creo que Piña hablo un poco de ellos en el verano de potencia), en post posteriores hablare del VHDL.
Un FPGA (Field-Programmable Gate Array) es un circuito integrado que, dicho en términos llanos, puede configurarse para llevar a cabo cualquier función lógica y hacer lo que a su dueño le plazca.
Claro que para conseguir eso el diseñador debe programar configurar el circuito, normalmente siguiendo la especificación de un lenguaje de descripción de hardware. Esto es algo así como hacer código en vez de electrónica digital. ¿Te imaginas las posibilidades creativas de una plataforma así?
Considera que con un FPGA eres capaz, en teoría, de reinventar todo tipo de dispositivos de cómputo. Incluso hacerlos trabajar en un mismo espacio y de forma paralela.
Por supuesto, en la práctica la creación está limitada por la capacidades de cada tarjeta FPGA, y también por la plataforma. Para trabajar con un FPGA debes contar con un software especial creado por el fabricante. En Windows la experiencia es completa, pero en Linux puede presentar inconvenientes.
Por cierto, FPGA Libre impulsa “el desarrollo con dispositivos FPGA utilizando herramientas de software libre u open source”. Además, fomenta “el intercambio y desarrollo de cores IP con licencias que posean el mismo espíritu que las del software libre”. (En otra ocasión hablaremos de hardware libre, como Arduino.)
Los FGPA comerciales tienen unos 25 años entre nosotros. Cada vez poseen más áreas de aplicación (e.g., radioastronomía, emulación de hardware, bioinformática, criptografía). Las universidades están extendiendo su uso como excelente herramienta didáctica y de prototipado.
Quizá en el futuro contemos con herramientas de aún más alto nivel (dicho en términos de abstracción, no de calidad) para la configuración de FPGA. De ser así, ya no solo ingenieros o científicos sino también artistas y creativos en general producirán resultados aún más sorprendentes, inimaginables y poderosos que los que voy a presentarte a continuación.
Tetris multijugador
Tetris en versión para dos jugadores. Cada participante juega en su propia pantalla usando un teclado PS/2, al tiempo que sus movimientos pueden influenciar los del otro. ¿Cómo? Si un jugador elimina líneas, una cantidad predefinida de ellas aumenta en las del oponente.
Atari 2600
Un solo FPGA fue suficiente para reconstruir el viejo Atari 2600. Permite audio, vídeo y hasta un control remoto SEGA Genesis. Retromaster, el creador, publicó el código bajo la licencia GPL. No es la primera versión de un Atari 2600 sobre una FPGA.
Arcade
El proyecto FPGA Arcade intenta desde hace varios años recrear el hardware de una máquina Arcade. Al día de hoy han construido chips con Pacman (el vídeo lo demuestra) y otros clásicos como Pong y Crush Roller. Otros han implementado sus propias consolas basadas en FPGA.
Gracias 'Joseph Velazquez Martinez' fuera de mamadas, espero seguir contando con tu apoyo.
Visto en: ALT1040
No hay comentarios:
Publicar un comentario