¿Es posible generar una EEPROM funcional (con persistencia) dentro de un FPGA / CPLD?

0

Estoy buscando implementar un pequeño EEPROM paralelo de 'espacio de configuración' persistente dentro de un diseño. Sin embargo, dada la naturaleza volátil de los FPGA, esto no parece posible sin una manipulación muy inteligente de su flash de asistencia. Quizás me equivoque en este supuesto (y estaría muy agradecido por los detalles si ese es el caso).

Dicho esto, la naturaleza menos volátil de la configuración de CPLD me intriga por esta aplicación. Estoy buscando implementar el diseño de nivel superior (y la posterior EEPROM paralela) en una variante XC9500XL, y espero hacer esto como una solución de un solo chip (en lugar de simplemente agregar una EEPROM paralela externa, ciertamente barata)

¿Pensamientos? ¿Consejo? "JFGI" - amenazas de muerte? Cualquier ayuda es apreciada!

    
pregunta Chris

2 respuestas

1

No puede crear EEPROM / FLASH a partir de recursos genéricos del dispositivo. Cualquier solución será inherentemente específica de la familia de dispositivos

Muchos CPLD y FPGA con memoria interna no volátil tendrán algún repuesto y un método para acceder a esa memoria. Esto es cierto para Altera MAX V y MAX 10. El bloque se presenta de forma nativa con una interfaz serial específica para Altera, pero Altera proporciona un bloque IP que lo envuelve para proporcionar varios tipos de interfaces seriales y paralelas.

Los chips MAX V tienen 8 kilobits de memoria flash de usuario, lo cual no suena como los estándares actuales, pero debería ser suficiente para la configuración básica, los chips MAX 10 tienen mucho más.

De manera similar, los FPGA que se inician con memoria flash externa a menudo proporcionan una forma de hablar con el chip de memoria después de que se haya iniciado el FPGA, lo que le permite leer y escribir datos de usuarios de áreas de repuesto en esa memoria.

    
respondido por el Peter Green
1
  1. Los FPGA modernos de Xilinx tienen características como:

    • eFuse
    • registro de USUARIO

    quizás esto ya cubra tus necesidades.

  2. La memoria flash proporcionada está diseñada principalmente para almacenar al menos 2 diseños. Este flash se puede leer y escribir desde el FPGA. Así que puedes usar un espacio de memoria al final.

  3. La mayoría de las tarjetas están equipadas con dispositivos serie como:

    • EEPROM de OneWire
    • EEPROMs de la CII
    • Relojes IIC RealTime con memoria no volátil incorporada (batería con respaldo)
    • chips de memoria flash serie SPI
    • ...
  4. Incluso es posible buscar en la red PHY para algunos nvram / EEPROM :)

respondido por el Paebbels

Lea otras preguntas en las etiquetas