Desarrolle con FPGA, ¿pero apunta a hardware discreto?

4

Donde trabajo, estamos haciendo la transición a una metodología Agile para el desarrollo de nuestro software. También nos gustaría explorar lo mismo para el desarrollo de hardware, pero el desajuste de impedancia mental podría interferir. Específicamente, una gran parte de la mayoría de las metodologías ágiles es que trabaja en un conjunto de características priorizadas. En software, eso está bien porque siempre se puede volver atrás y refactorizar / reelaborar el código pasado. Pero en hardware, al menos para un diseño grande y sofisticado, significa que usted está dando vueltas en cada iteración. O bien, está construyendo su sistema alrededor de la lógica programable.

Entonces, ¿por qué no comenzar con (y terminar con) un diseño basado en FPGA? Bueno, como ingeniero de software no tengo ningún problema con eso, pero a veces la gente del hardware tiene razones legítimas para no hacerlo. Pero dejando eso a un lado, tengo curiosidad por desarrollar con un FPGA para la velocidad y la agilidad, pero al final de la transición del desarrollo del hardware a la lógica discreta es algo que se realiza comúnmente (o al menos a veces).

    
pregunta John Passaniti

4 respuestas

2

Creo que sería un sistema muy extraño que migraría a lógica discreta desde un FPGA. Puedes incluir tanta lógica en un FPGA, incluso una pequeña, que tendrías que mantenerte bajo control en gran medida si quisieras asegurarte de que lo que hiciste el prototipo era una cantidad sensiblemente pequeña de lógica discreta. En cuyo caso, esperaría que fuera razonablemente sencillo hacerlo bien la primera vez (ish :)

    
respondido por el Martin Thompson
2

Hay algo más que un FPGA que te permite experimentar con diferentes circuitos. Es el PSoC de Cypress.

Elchipcontienedocenasdebloquesdeconstruccióndigitalesyanalógicos.LosbloquesdigitalessonmuyparecidosalosqueseencuentranenlosFPGA,loquetepermitecreartodotipodefuncionesdigitales:gtes,flipflops,adders,shifters,LUT,etc.LosbloquesanalógicostepermitencrearcosascomoOpAmps,comparadores,filtros,algunosvaloresderesistencia,ADC,DAC,etc.

Elentornodedesarrollolepermite,literalmente,conectarunesquemaytenerloimplementadodentrodelchip.

Al tener su circuito funcionando bien, puede decidir volver a implementarlo utilizando componentes discretos. Sin embargo, al igual que con el FPGA, el chip es capaz de ofrecer tanto componentes discretos que pueden costar mucho más dinero y espacio en el tablero.

    
respondido por el Rocketmagnet
1

Absolutamente, hay cualquier número de tarjetas de acelerador y entornos de simulación para flujos ASIC que vuelcan el diseño en FPGA para la simulación "casi" en tiempo real. Y eso se hace para que el SW y la electrónica de soporte también puedan ser depurados. Esto se hace para la prueba "funcional" pero nunca para el cierre final. Y aquí funcional no significa lo mismo que el paradigma funcional de SW.

El desajuste principal de la "impedancia" es la distinción entre el apagado real y la prueba funcional. La mayoría del software existe exclusivamente en el lado funcional de las cosas, a menos que esté haciendo programación paralela y subprocesos pesados con la preocupación por las condiciones de carrera, etc.

En la primera parte de la exploración del desarrollo, esto se hace mucho, pero a medida que el diseño avanza, debe cerrarse y deben tratarse las condiciones no controladas.

Otro elemento es que los FPGA realmente grandes y flexibles son muy caros y, de hecho, hay ciertos dispositivos que básicamente solo se usan para esto.

    
respondido por el placeholder
1

A menos que esté haciendo la transición a un ASIC o tenga requisitos muy simples de lógica digital , un FPGA (o CPLD) será comparable o más barato en costo y una mejor solución final. Los FPGA solo reemplazarán la parte digital del diseño de hardware, con la excepción de algunas funciones básicas de DAC y ADC.

Dependiendo de la complejidad del diseño, una placa FPGA puede ser un esfuerzo complejo de desarrollo de hardware. Puede comprar una gran variedad de placas de desarrollo FPGA que incluyen todo tipo de periféricos analógicos y digitales que hacen que los entornos de creación de prototipos sean excelentes sin tener que diseñar su propia placa FPGA por adelantado.

Por ejemplo: enlace

Con muchas opciones de tarjetas de expansión: enlace

O en el extremo opuesto del espectro de complejidad de precios: enlace

    
respondido por el davidd

Lea otras preguntas en las etiquetas