¿Pueden los aficionados pobres utilizar FPGA?

4

Entiendo que los FPGA se pueden usar para la lógica de pegamento digital en una placa de circuito, como las puertas NOR. También pueden ejecutar directamente el cifrado AES, Ethernet y Linux.

No soy muy rico y no soy un experto en electrónica. Tampoco tengo un analizador de lógica elegante. Probablemente podría armar una sola computadora de la placa 6502 si copié el código de algún lugar. Si quisiera racionalizar el número de componentes de compuertas AND, flip flops y decodificadores BCD, ¿es factible un FPGA para mi posición? Este es el nivel de sofisticación que estoy buscando, en lugar de los núcleos de microprocesadores. O bien, ¿existe una tecnología de pegamento alternativa adecuada para un aficionado con poca actividad?

Suplementario:

Una mejor pregunta podría ser "¿con qué puedo reemplazar las compuertas 5 OR, las 3 Schmitts y un contador Divide by 10?" La cosa es que también estoy considerando el costo del software de diseño. Una placa de desarrollo de £ 25 + compilador de £ 5000 / asiento + programador de £ 1000 no es muy buena para los pobres y privados.

    
pregunta Paul Uszak

3 respuestas

5

No necesita ser muy rico para usar la lógica programable

En el mundo del "pegamento": los CPLD son lo que está buscando si solo necesita un pequeño parche de lógica programable. En general, los CPLD más antiguos en estos días son dispositivos de 3.3V, con dispositivos más nuevos que tienen núcleos de 1.8V y 1.8 o 3.3VI / O, y pueden ser programados en el circuito y escaneado de límites a través de JTAG, con la "memoria de programa" interna al dispositivo . (Existían 5V CPLD, pero son universalmente obsoletos).

El único inconveniente es que generalmente solo son compatibles con una cadena de herramientas específica del proveedor (como Quartus para Altera o ISE para Xilinx). Afortunadamente, hay versiones gratuitas, aunque de tamaño limitado, disponibles. , y son lo suficientemente grandes para los CPLD, así como para los FPGA más pequeños / menos costosos que están disponibles en los tableros de control no muy terribles en estos días.

También, para los FPGA, la mayor parte de su depuración se realizará a nivel de simulación con la ayuda de un banco de pruebas, en lugar de hacerlo directamente en el silicio. Además, la mayoría de los FPGA tienen soporte para la exploración interna de nodos a través de JTAG, aunque las cadenas de herramientas de free-as-in-beer pueden o no admitirlo. Finalmente, algunas tecnologías de FPGA requieren que se cargue el "programa" al inicio (las partes de Xilinx, Altera y Atmel son todas de esta manera; las partes de Lattice y Actel / Microsemi, por otro lado, son como CPLD en que " programa "se almacena en el chip de forma persistente.)

    
respondido por el ThreePhaseEel
2

Ok, después de su aclaración, entiendo ahora. Necesitas la clase de dispositivos llamados CPLD.

Varios fabricantes ofrecen estos dispositivos, Altera, Lattice, Atmel, Xilinx. Mi experiencia va con Xilinx, y recomendaría CoolRunner-II. La placa de desarrollo de muestra es de $ 37 en Mouser.com, y las herramientas de desarrollo (para tamaños básicos) son gratuitas, incluido el simulador lógico. Puede encontrar tablas de muestra por menos de $ 5 en eBay.

El paquete más pequeño para CoolRunner es QFN-32 (chip de 32 pines, 5 mm x 5 mm), con un paso de 0.5 mm y cuesta $ 1.40 en la cantidad 1. Si no está cómodo con QFN, tienen TQFP-44. Con más broches estilo bricolaje para soldar. El chip mínimo tiene entradas de activación de Schmitt, que no es común en CPLD, más de 30 macrocélulas configurables (flip-flops con lógica alrededor), que te permitirán hacer máquinas de estados bastante complejas (secuenciadores) y muchas otras cosas interesantes, traducción de nivel como uno, todos hasta 300MHz.

Para programarlo para la funcionalidad deseada, necesitará aprender un poco de Verilog (para describir sus funciones deseadas), qué enclavar, en qué reloj, qué función lógica aplicar. Luego define entradas-salidas, y listo. La herramienta de desarrollo Xilinx viene con el compilador Verilog / VHDL y todas las herramientas necesarias para particionar, mapear y enrutar el CPLD. No necesita saber mucho sobre la arquitectura lógica interna si la lógica de su proyecto se compila y se ajusta al CPLD seleccionado. Si no, entonces necesitas hacer más investigaciones.

Existen otros CPLD capaces, como iCE40 UltraLite Familiy, de Lattice. Estos CPLD son realmente serios, con RAM de bloque incrustadas, aproximadamente 640 LUT para el chip más pequeño, etc., pero su empaque está fuera de los reinos para DYI, 0.35 mm de bola, tamaño total de 1.4 mm x 1.4 mm, etc. Y no sé nada Sobre sus herramientas de desarrollo o costos.

    
respondido por el Ale..chenski
0

Aunque no responde exactamente a su pregunta, si desea obtener conocimientos / experiencias con el lenguaje de descripción de hardware / diseño de lógica digital (HDL) en el lado barato, puede descargar versiones gratuitas de las herramientas de vendedores de FPGA que vienen con simuladores de HDL ( Altera viene con una versión de Modelsim, Xilinx tiene su propio simulador incorporado en Vivado).

Básicamente, escribiría el código fuente que finalmente podría dirigir a un CPLD o FPGA, pero en lugar de comprar hardware y probarlo, escribe otra pieza de código fuente llamada banco de pruebas que estimula (en simulación) las entradas de su diseño. Ejecuta las herramientas del simulador y puede monitorear las salidas (que aparecen como un analizador lógico) y asegurarse de que se comporten correctamente, o incluso monitorear los registros / señales internas.

Sin embargo, le advertiré que no siempre se garantiza que las cosas que puede hacer en una configuración de simulación HDL sean sintetizables. También le recomendaría que continúe y utilice las herramientas de síntesis / construcción periódicamente y asegúrese de que su diseño sea válido. La mayoría de las versiones gratuitas de herramientas de proveedores le permiten aumentar hasta cierto tamaño.

    
respondido por el user2913869

Lea otras preguntas en las etiquetas