通过MATLAB将数据转化为mif文件,供Quartusii软件的ROM核读取调用
生活随笔
收集整理的這篇文章主要介紹了
通过MATLAB将数据转化为mif文件,供Quartusii软件的ROM核读取调用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
clc;
clear;
close all;
warning off;
addpath 'func\'for i = 1:2^14x(i) = i; y(i) = round(2^14*sin(pi*(i-1)/2^14));fprintf('%d:',i-1);fprintf('o_sine <= ');fprintf('%d',y(i));fprintf(';\n');endfid=fopen('sine.mif','W' ); % 打開T1.mif文件向里面寫數(shù)據(jù),如果還沒有建立這個文件,會自動建立之后打開
fprintf(fid,'WIDTH=16;\n'); % 數(shù)據(jù)寬度為8位(灰度值是0-255,8位的數(shù)據(jù))
fprintf(fid,'DEPTH=16384;\n\n'); % 數(shù)據(jù)的深度(180*180的圖片,32400個數(shù)據(jù))
fprintf(fid,'ADDRESS_RADIX=UNS;\n');% 地址數(shù)據(jù)為無符號數(shù)(unsigned)
fprintf(fid,'DATA_RADIX=UNS;\n\n'); % 像素數(shù)據(jù)也是無符號數(shù)
fprintf(fid,'CONTENT BEGIN\n');
for x = 1:2^14 % 32400個數(shù)據(jù)fprintf(fid,'%d:%d;\n',x-1,y(x)); % 寫入數(shù)據(jù)
end
fprintf(fid,'END;'); % 文件結(jié)束
fclose(fid);
運行之后,可以得到:
WIDTH=16;
DEPTH=16384;
ADDRESS_RADIX=UNS;
DATA_RADIX=UNS;
CONTENT BEGIN
0:0;
1:3;
2:6;
3:9;
4:13;
5:16;
6:19;
7:22;
8:25;
9:28;
10:31;
11:35;
12:38;
13:41;
14:44;
15:47;
其含義是位寬16,數(shù)據(jù)深度16384,地址類型為UNS無符號,數(shù)據(jù)類型為UNS無符號,,然后數(shù)據(jù)項左側(cè)為地址,右側(cè)為數(shù)據(jù)內(nèi)容。
然后在QII軟件中,就可以通過ROM讀取上述文件了。
總結(jié)
以上是生活随笔為你收集整理的通过MATLAB将数据转化为mif文件,供Quartusii软件的ROM核读取调用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用MATLAB模拟天线接收信号时,突然出
- 下一篇: 14.parfor并行循环处理