¿Por qué mis programas no permanecen en el FPGA MAX 10 después de un ciclo de encendido? [cerrado]

Programo mi FPGA (MAX 10) con un archivo .sof y funciona, pero cuando apago mi dispositivo todo se borra de mi FPGA. Después de explorar en Internet, encontré el EPCS IC y descubrí que mi placa necesita EPCS. Pero EPCS no es compatible con el MAX 10, así que exploré más profundamente y descubrí que el MAX 10 tiene flash interno.

Pero no puedo entender cómo puedo usar el flash interno para la programación persistente.

Guía del usuario de configuración de FPGA MAX 10 . Parece que necesita generar un archivo "POF" en lugar de un archivo "SOF" para programar el flash en el chip.
Voto para cerrar esta pregunta como fuera de tema porque la respuesta se puede encontrar mediante la búsqueda más básica de la documentación del proveedor.
Eh, parece perezoso, pero puedo ver cómo sería realmente confuso para un 'n00b' total. Muchas cosas que son 'obvias' sobre los FPGA son extremadamente confusas cuando estás comenzando. Parecen vivir en su propio pequeño mundo de conocimiento :/
@Daniel, sí, pero la respuesta debería ser "Mira en este manual" y una explicación del tipo de información que normalmente encuentras en la Guía del usuario de configuración para un FPGA. Este sitio no puede reemplazar la documentación de un millón de productos diferentes.
Debo decir que estoy de acuerdo con Daniel. Especialmente porque la documentación de Altera es terriblemente difícil de manejar. Parece que no hay una explicación de alto nivel de esto, gran parte de la documentación se refiere a otros documentos y asume mucho conocimiento. Conocí los FPGA en los primeros años traviesos y la gente se sentaba a hablar como cabezas de hélice y te miraban cuando no entendías. O incapaz de pensar a su nivel. Bien por Diablo por tratar de aprender lo que es un tema arcano, incluso para ingenieros experimentados.

Respuestas (1)

Deberá configurar Quartus para producir un archivo POF. Puede generar un POF directamente o convertir un SOF en un POF. Este archivo se puede cargar en la memoria flash. Consulte la página 37 de este documento: https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/max-10/ug_m10_config.pdf . Una vez que haya generado el archivo POF, se puede escribir en la memoria flash interna de la FPGA a través de la interfaz JTAG con un cable USB Blaster.

También existe un proceso similar para los FPGA de Xilinx, donde se genera un archivo MCS en lugar de (oa partir de) un archivo de bits. La razón por la que este paso es necesario es que en realidad solo hay una forma de programar el FPGA directamente, pero hay varias formas diferentes de programar un chip flash. Ahora, por lo general, son solo los datos del archivo de bits cargados a partir de la dirección 0 ... pero hay otras opciones si es necesario. Por ejemplo, se pueden cargar dos diseños diferentes en el chip flash con diferentes compensaciones, lo que permite que las actualizaciones fallidas del firmware de la FPGA recurran a una imagen de arranque 'dorada'. O múltiples diseños en el mismo chip flash dirigido a diferentes FPGA. O múltiples diseños que se pueden cambiar sobre la marcha (bueno, más o menos). O tal vez se requieran algunos datos adicionales después del archivo de bits,

tnx amigo, mi problema se resolvió, debe programar el fpga con el archivo .sof después de eso, debemos usar pof