FPGA con bajo número de pines (y por lo tanto más pequeño y, con suerte, más barato)

3

¿Hay algún FPGA con un número de pines bajo (8 a 16) y un paquete pequeño y, con suerte, barato (casi tan barato como un micro)?

Parece que los FPGA suelen estar diseñados para ser masivamente paralelos & aplicaciones rápidas pero con enlaces seriales de alta velocidad, no se requiere el número de pines y el tamaño del paquete grande. Los PIC y otros micros pequeños se usan generalmente para controladores lógicos pequeños / baratos, y actualmente estamos usando un ARM Cortex STM32 barato para ese propósito, pero a continuación necesitaré algo mucho más rápido.

Encontré una pregunta similar aquí y la respuesta fue no . Si la respuesta realmente es no , me pregunto ¿por qué no?

    
pregunta JimFred

5 respuestas

7

Nadie realmente hace un FPGA tan pequeño. Realmente no es suficiente con pines IO para hacer mucho con cualquier cosa. Sin embargo, puedes obtener FPGA con 32-64 pines.

La mayor parte del costo de los FPGA es la prueba. Cada dispositivo se prueba para garantizar que todas las LUT, flip flops, RAM de bloque, componentes de matriz de enrutamiento, transceptores e IOB funcionen perfectamente para todas las configuraciones posibles. Los dispositivos también están agrupados en grados de velocidad. Esto consume mucho tiempo, y el tiempo es dinero, por lo que cobran por ello. Sin embargo, algunos de los FPGA Spartan 6 más pequeños solo cuestan alrededor de $ 10 en cantidades de una sola unidad, lo que está a la par con el precio de un microcontrolador. No va a obtener uno en un paquete DIP, pero puede obtener los pequeños en paquetes TQFP y luego cargarlos en un panel de ruptura.

    
respondido por el alex.forencich
5

¿Por qué asume que con los enlaces de alta velocidad, no se requiere un recuento alto de pines? Tal vez para su aplicación.

De los diversos proyectos en los que trabajé y de otros con los que he estado en contacto, aquí está el alcance del uso de un FPGA / CPLD con enlaces de alta velocidad:

  • Se utiliza como un expansor de E / S con una CPU / SoC / DSP. El FPGA, por ejemplo, conectará múltiples enlaces de alta velocidad como Gigabit ethernet y se conectará a la CPU a través de un enlace de mayor velocidad como PCI Express o un bus LVDS personalizado. El FPGA se utiliza como un multiplexor inteligente. En este caso, se necesita un alto número de pines pero con pocas puertas lógicas y memoria interna.

  • Usado solo: el FPGA sirve como CPU, hará todo el procesamiento. En este caso, un alto número de pines y muchas puertas lógicas y una alta memoria interna o memoria externa para el procesamiento (que necesitan pines ...)

Por ejemplo, trabajé en un conmutador Ethernet determinista aeroespacial con un FPGA de gama alta: 28 puertos @ 1 Gbps + 2 enlaces PCI Express y 2 memorias QDR para tablas de enrutamiento y estadísticas. Se necesitaba un número de pines muy alto y muchas puertas lógicas.

Si no encaja en este caso de dos usos, tal vez tenga una aplicación muy específica en la que el proveedor de FPGA no esté interesado.

Sin embargo, entiendo su punto de vista, trabajé personalmente en un proyecto en el que necesitábamos un FPGA con muchos transceptores (hasta 20, con hasta 10Gbps ...) pero con pocas puertas lógicas (ya que se utilizará como un multiplexor inteligente) y no hemos encontrado una referencia con una huella pequeña, muchos transceptores y pocos pines GPIO.

Como no proporciona información sobre su solicitud (¿velocidad de enlace?), puede echar un vistazo a la familia Lattice ICE40. Creo que esto se ajustará a sus necesidades.

enlace

Editar (explicación sobre el alto número de pines):

Los FPGA tienden a tener paquetes con un alto número de pines por algunas de estas razones:

  • pines de configuración: La mayoría de los FPGA tienen un acceso JTAG con pines dedicados. Dependiendo del modelo, estos pines se pueden usar como GPIO (si no se usa el JTAG) o están totalmente dedicados. También tendrá algunos pines utilizados para reinicio, programación, etc. A veces, puede tener alrededor de 10 pines para fines de configuración, si tiene la suerte de que estos pines estén empotrados para que pueda usarlos como GPIO y pines de configuración.

  • Potencia / GND: Este es el uso que más consume pin. Las E / S FPGA tienden a ser organizadas por bancos reagrupando los pines. Como los FPGA se utilizan para la creación de prototipos, el voltaje de E / S depende del banco: cada banco tiene sus propios pines de alimentación, por lo que puede tener señales de 3.3V en algunos GPIO y en otros bancos con 2.5V o 1.8V. Esto es muy útil cuando su FPGA crea una interfaz con un procesador reciente (voltaje de E / S de 1.8V o 2.5V) y usted tiene chips de 3.3V en su tarjeta, el FPGA se puede usar como un cambiador de voltaje. Además, cuando tienes transceptores en tu FPGA, los pines están protegidos con pines GND alrededor.

Cuando tome un FPGA con un paquete BGA, tendrá alrededor del 30% de los pines utilizados para Power y GND. Los paquetes TQFP y SMD tienden a tener menos pines de alimentación / GND pero están más limitados en términos de integridad de la señal.

También si tienes un paquete pequeño con pocos pines, digamos 16 pines. Si cuenta aproximadamente 4 pines para la configuración, 4 pines para GND y 2 pines para la alimentación del núcleo y la energía de E / S, ya usa 10 pines, u 8 si usa solo 2 pines para GND, por lo que solo tendrá 8 Pines de E / S.

    
respondido por el zeqL
2

Todo lo que quieres es Altera MAX10 10M02D V36 .

10M02D es un dispositivo de bajo número de pines de la familia MAX10. Se envía con un paquete de paso de 0.4 mm WLCSP6x6 de tamaño 3 mm x 3 mm. Tiene PLL y LVDS de alto rendimiento. Ahora planeo construir un prototipo usando este pequeño chip. Un inconveniente de usar 10M02D es que tiene que proporcionar rieles de alimentación de 3.3V, 2.5V, 1.2V.

  1. Ahora, ¿por qué FPGA favorece la alta cantidad de pines? Porque está dirigido a operaciones lógicas híbridas, preprocesadores y puentes. En algunas aplicaciones de gama alta como Video, Surveillance, SDR, que requieren el procesamiento paralelo de múltiples MDPI o MSPS ADC, y luego procesan estos datos en tiempo real, finalmente controlan muchos otros IC de alto pin. FPGA es lo mejor para eso.

  2. Ahora, ¿por qué necesitamos FPGA de conteo de pin pequeño? Porque 1, es versátil. Yo mismo prefiero codificar VHDL o verilog del sistema sobre C. 2, ya que proporciona una funcionalidad paralela moderada. Por ejemplo, detección de eventos . ¡Y si! no se requiere ninguna interrupción si codifica la lógica de detección de eventos en FPGA, y también es compatible con múltiples activadores paralelos. 3, FPGA se puede utilizar como un dispositivo de decodificación (expansión lógica). Puede recibir flujos LVDS de alta velocidad y decodificarlos en lógicas de control TTL. Por lo general, 2 pares en, 16/24 pines hacia fuera.

respondido por el liubenyuan
2

Bien, entonces sé que este es un hilo viejo, pero en caso de que alguien más lo encuentre como yo (también estoy buscando un FPGA del tamaño de un microcontrolador). He llegado a través de la serie Lattice XO2, que parecen ser muy aplicables para usted. No tienen un alto conteo de LUT (1K-10K orden de magnitud), pero son extremadamente baratos (~ £ 5 para una potencia media, comparable a una MCU de rango medio) e incluso se han hecho algunos dev-board (< a href="http://tinyfpga.com/"> enlace ) para ellos, que he ordenado a algunos de ellos. Espero que esto ayude a cualquiera a mirar.

    
respondido por el void
1

Si puede manejar 20 contactos en un punto de 2 mm x 3 mm, ahora hay varios CMIC interesantes (IC configurables de señal mixta) en la línea GreenPAK de Silego. No son programables en el campo, per se, ya que su configuración se almacena en el NVM programable por única vez de la unidad en lugar de EEPROM externo o flash. Sin embargo, sus herramientas de diseño no apestan y su kit de desarrollo permite que uno lo configure en el circuito sin grabar en NVM. No estoy seguro de si esa capacidad se puede implementar en el campo si está buscando algo que pueda cambiar de personalidad después de la implementación.

    
respondido por el petiepooo

Lea otras preguntas en las etiquetas