Me faltan dos semanas para completar mi primer curso de diseño de lógica digital de la universidad, y aparentemente no habrá un proyecto final, solo un examen final tedioso.
Entonces, como haría cualquier estudiante curioso, investigué qué son realmente los FPGA y qué me dieron de comer en la clase. Y he decidido completar un proyecto simple de FPGA. Estoy usando un FPGA Basys2 Spartan-3E, y estoy familiarizado con la lógica digital y el uso de ISE para empujar las puertas lógicas, pero no conozco VHDL / Verilog (estoy seguro de que podría aprenderlo fácilmente).
¿Alguien tiene alguna idea de proyecto para un principiante? He hecho muchas demostraciones de laboratorio, pero nada demasiado elegante.
Respuestas:
Encontré que "PGA Chu" FPGA Prototyping By Verilog Ejemplos: Xilinx Spartan-3 Version "es un libro muy útil. Está destinado a una placa Spartan-3 diferente de la que mencionó, pero aún así debería ser útil.
También hay una edición VHDL si prefiere ir por esa ruta
fuente
Tienes VGA en eso por lo que parece. El video siempre me interesa en mi experiencia :)
Aquí hay un plan que puede probar (no se requiere framebuffer):
Creo que todo debería caber en un 250E. (El reloj VGA es lento en términos de FPGA, por lo que puede multiplicarse por 4-8x con el DCM que permitirá que un motor de sprites se multiplexe en más de una instancia de sprite)
fuente
Este curso en línea gratuito escrito por Hamster es increíble y está escrito con Basys 2 y Nexys 2 en mente.
Yo personalmente usé Basys 2 y aprendí un montón al pasar por este curso. Repasa todos los aspectos del tablero de Basys y muchos conceptos para llevar a cabo la mayoría de los proyectos más allá del curso.
fuente
Como con todo lo demás, comience con un proyecto hello world , en este caso, parpadee un LED y haga que su período sea variable solo por diversión.
Para hacer eso, necesitará aprender a construir un contador en Verilog / VHDL. Es un buen comienzo para aprender las complejidades de HDL porque aprenderá a:
Una vez hecho esto, ve a opencores y comienza a piratear proyectos más grandes. Encontrarás muchos otros proyectos divertidos de algunos de nuestros miembros aquí, incluido el tuyo de verdad. :)
fuente
Martin sugiere que tienes capacidad VGA.
¿Qué pasa con un "marco de fotos" decente que permite un mejor control de las fotos que cualquier otro disponible típicamente?
La mayoría maneja los subdirectorios mal.
Casi ninguno permite el orden de visualización aleatoria, lo cual es una ventaja muy importante cuando tiene un gran número de fotos.
Posibilidad de inventar una presentación de diapositivas basada en fotos seleccionadas. (Ver Irfanview para ejemplos).
Puntos extra: agregue la capacidad de reproducción de MP3. Intercalar música con fotos.
Almacén de datos SD Flash.
¿USB?
802.11? (demasiado para esperar)
fuente
He estado trabajando con la placa NEXYS2 y el texto asociado de Digilent. Es caro pero ha sido una buena experiencia.
fuente
El libro de Hamblen et al está lleno de proyectos interesantes para los tableros Altera Cyclone DE1 y DE2; Se suministra el código VHDL. Implemente algunos de ellos en su placa Spartan-3E.
fuente
Una de las primeras cosas que debe hacer es descargar (del proveedor o de un sitio entusiasta) y crear un proyecto esqueleto que conecte las entradas a las salidas; esto puede ser extremadamente frustrante para trabajar hasta que tenga algo de experiencia.
Luego, puede comenzar a poner lógica entre máquinas de estado para ejemplos artificiales como los que tuvo en clase, o más complicados, como los generadores de video que otros recomiendan. Bloques más complicados como simples procesadores de bricolaje, etc.
fuente
Cuando tomé mi curso de VHDL, hice un microprocesador con ALU con algunas instrucciones, comunicación de memoria y secuenciador de microinstrucciones. Lleva más tiempo del que crees que tomará, especialmente si quieres hacerlo robusto.
fuente