Quartus - Como inicializar uma memória usando arquivos .mif
Use o código para Matlab abaixo para criar o arquivo data.mif.
% Gere um arquivo de audio usando o Audacity e exporte como .wav
% Importando o arquivo .wav
clear all;
filename = 'data';
newData1 = importdata([filename '.wav']);
data = newData1.data;
plot(data);
% Definindo o cabeçalho do arquivo .mif
word_len = 13; % numero de bit dos dados na memória
address_len = 9; % numero de bits do endereço da memória
fid = fopen([filename '.mif'], 'wt');
fprintf(fid, 'DEPTH = %6d;\n', 2^address_len);
fprintf(fid, 'WIDTH = %6d;\n', word_len);
fprintf(fid, 'ADDRESS_RADIX = HEX;\n');
fprintf(fid, 'DATA_RADIX = BIN;\n');
fprintf(fid, 'CONTENT\n');
fprintf(fid, 'BEGIN\n');
% Gerando os pares e endereços e dados
for N=1:2^address_len
dec_num = floor(data(N)*2^(word_len-2));
bin_num = signed2bin(dec_num,word_len);
fprintf(fid, '%6.0x : %s ;\n', N-1, bin_num);
end
fprintf(fid, 'END;');
fclose(fid);
</syntaxhighlight>
FONTE: http://www.alteraforum.com/forum/showthread.php?t=27934&highlight=text+to+mif+conversion