Red de conocimiento informático - Material del sitio web - Cómo generar archivos mif

Cómo generar archivos mif

Método 1: utilice el editor mif que viene con Quartus

Ventajas: para RAM de pequeña capacidad, la edición de archivos mif se puede completar rápida y fácilmente sin la necesidad de editar software de terceros;

Desventajas: una vez que la cantidad de datos es demasiado grande, ingresarlos uno por uno provocará un bloqueo;

Uso: en quartus.file/new, seleccione el archivo de inicialización de memoria y aparecerá la siguiente ventana aparecerá:

Número de palabras: el número de celdas de memoria direccionables; para una línea de dirección de 8 bits, seleccione 256 aquí;

Tamaño de palabra: el ancho de la celda de memoria , 8 bits;

Luego haga clic en "Aceptar". Haga clic en Aceptar.

Ingrese los datos de inicialización en la tabla;

Haga clic derecho en el valor de la dirección a la izquierda para modificar el formato de visualización de la dirección y los datos;

Cualquier dato en la tabla Dirección = valor de columna + valor de fila, como se muestra en la imagen, la dirección de la celda azul = 24 + 4 = 28;

Complete el valor inicial de cada celda y luego guarde el archivo.

Método 2: use software mif para generar

No importa qué editor use, debe asegurarse de que el formato del archivo mif sea el siguiente: la dirección está en el lado izquierdo de los dos puntos, y los datos están en el lado derecho; Fin del número;

DEPTH = 256;

WIDTH = 8;

ADDRESS_RADIX = HEX;

DATA_RADIX = HEX;

CONTENIDO

COMIENZO

0000: 0000;

0001: 0000;

0002: 0000;

......(Aquí se omiten mil palabras*.

00FA: 00FF;

00FB : 00FF;

00FC: 00FF ;

00FD : 00FF;

00FE : 00FF;

00FF : 00FF;

00FF : 00FF;

00FF : 00FF;

END;

Aquí está el generador de mif recomendado: Mif_Maker2010.exe, que se puede descargar de Baidu; para saber cómo utilizar el software, consulte "Cómo utilizar Mif Maker2010".

Método 3: utilizar lenguaje de alto nivel

Utilizar lenguaje C o matlab para generar. El código generado en lenguaje C es el siguiente: Este código genera una forma de onda de datos de onda sinusoidal y la guarda en TestMif.mif.

#include

#include

#define PI 3.141592

#define PROFUNDIDAD 128 /*Profundidad de datos, es decir, el número de unidades de almacenamiento

#define WIDTH 8 /*Profundidad de datos, es decir, el número de unidades de almacenamiento

#define WIDTH 8 /* Profundidad de datos, es decir, Definir ANCHO 8 /* Ancho de la unidad de almacenamiento**

{

int main(void)

{

int i,temp ;

float s;

ARCHIVO *fp;

fp = fopen("TestMif.mif", "w" ); /*El nombre del archivo es arbitrario Sí, pero la extensión debe ser .mif*/

if(NULL==fp)

printf("¡No se puede crear el archivo!\r\ n");

else

{

printf("¡Archivo creado correctamente!\n");

/*

* Generar encabezado de archivo: tenga cuidado de no olvidar ";"

**

fprintf(fp, "DEPTH = %d;\n",DEPTH) ;

fprintf (fp, "WIDTH = %d;\n",WIDTH);

fprintf(fp, "ADDRESS_RADIX = HEX;\n");

fprintf(fp, "DATA_RADIX = HEX;\n");

fprintf(fp, "CONTENIDO\n");

fprintf(fp, "BEGIN\n ");

>*

* Dirección de salida y datos en hexadecimal

*

for(i=0; i

{

/* Onda sinusoidal con un periodo de 128 puntos*/

s = sin(PI*i/64);

/* Ampliar valores de onda sinusoidal entre -1 y 1 entre 0 y 255*/

temp = (int)((s+1)*255/2);

/* Dirección de salida y datos en hexadecimal */

fprint(fp,"%x\t:\t%x;\n",i,temp);

}/end para

fprintf(fp, "END;\n");

fclose(fp);

}

}

Verifique si los datos generados son correctos: use el Bloc de notas para abrir el archivo mif generado y use Quartus para abrir el archivo mif. El contenido es el siguiente:

. Se puede importar con éxito y los datos son consistentes, lo que indica que la generación es correcta.