Перейти к содержанию
    

mif файл

Здарствуйте уважаемые коллеги. Есть следующая небольшая проблемка. Необходимо в ROM-память в Quartus-е записать 1024 слова.

Очень уж нехочется делать это руками. Не подскажет ли кто нибудь, можно ли каким нибудь другим способом импортировать значения 1024 слов в mif файл.

Например из Matlab или Exel. Заранее благодарен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

на любом скриптовом языке делается за 5 минут.

 

WIDTH=18;
DEPTH=512;

ADDRESS_RADIX=UNS;
DATA_RADIX=UNS;

CONTENT BEGIN
   0    :   198137;
   1    :   198223;
   2    :   197871;
   3    :   197957;
..........
   509    :   64273;
   510    :   63921;
   511    :   64007;

END;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

на любом скриптовом языке делается за 5 минут.

 

WIDTH=18;
DEPTH=512;

ADDRESS_RADIX=UNS;
DATA_RADIX=UNS;

CONTENT BEGIN
   0    :   198137;
   1    :   198223;
   2    :   197871;
   3    :   197957;
..........
   509    :   64273;
   510    :   63921;
   511    :   64007;

END;

 

Большое спасибо за ответ!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Писал для матлаба такую фиговину:

function write_mif(filename,datain,depth,width)
    if (length(datain) > depth)
        error('Too much data!');
    end
    fd = fopen(filename,'w');
    fprintf(fd,'-- Matlab generated Memory Initialization File (.mif)\n');
    fprintf(fd,'-- Created on: %s\n\n',date);
    fprintf(fd,'WIDTH=%i;\n',width);
    fprintf(fd,'DEPTH=%i;\n\n',depth);
    fprintf(fd,'ADDRESS_RADIX=UNS;\n');
    fprintf(fd,'DATA_RADIX=UNS;\n\n');
    fprintf(fd,'CONTENT BEGIN\n');
    for i=1:length(datain)
        fprintf(fd,'%i : %i;\n',i-1,datain(i,:));
    end
    if ((depth - length(datain)) > 0)
        fprintf(fd,'[%i..%i] : 0;\n',length(datain),depth-1);
    end
    fprintf(fd,'END;');
    fclose(fd);
end

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Здарствуйте уважаемые коллеги. Есть следующая небольшая проблемка. Необходимо в ROM-память в Quartus-е записать 1024 слова.

Очень уж нехочется делать это руками. Не подскажет ли кто нибудь, можно ли каким нибудь другим способом импортировать значения 1024 слов в mif файл.

Например из Matlab или Exel. Заранее благодарен!

 

 

Скопируйте 1024 ячейки из Exel в открый в Quartus-е файл.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здарствуйте уважаемые коллеги. Есть следующая небольшая проблемка. Необходимо в ROM-память в Quartus-е записать 1024 слова.

Очень уж нехочется делать это руками. Не подскажет ли кто нибудь, можно ли каким нибудь другим способом импортировать значения 1024 слов в mif файл.

Например из Matlab или Exel. Заранее благодарен!

А чем Вас не устраивает код Матлаба предыдущего поста?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А чем Вас не устраивает код Матлаба предыдущего поста?

Да нет, впринципе всем устраивает. Но я сделал по другому. Вычисленные данные из Матлаба скопировал в блокнот, а в блокноте удалил информацию касающуюся номеров ячеек данных. Затем просто тупо скопировал в mif файл. Но все равно, всем большое спасибо за ваши ответы.

Кстати не давно, вроде в вашем блоге, нашел информацию по реализации DDS-синтезатора на ПЛИС. Кое что подчерпнул для себя в реализации данного вопроса. Так что спасибо вдвойне.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...