整體思路:
先用MATLAB製作MIF格式的波形文件,再用Quartus製作HEX格式的波形文件。
1、編寫MATLAB腳本,製作sigmoid函數mif文件,sigmoid函數圖如下:
MATLAB腳本如下:
clear;
clc;
close all;
accy = 0.01;
x1 = -7.99:accy:-0.01;
x2 = 0:accy:7.99;
x = -7.99:accy:7.99;
y = 1./(1+exp(-x));
plot(x,y);
y1 = 1./(1+exp(-x1));
y2 = 1./(1+exp(-x2));
n1 = round(x1.*4096+65536);
n2 = round(x2.*4096);
m1 = round(y1.*4096);
m2 = round(y2.*4096);
s = [[n1,n2];[m1,m2]];
%s = [n2;m2];
fid=fopen('./sigmoid.mif','w' ); % sigmoid.mif is the file which you want to use in Quartus II %
fprintf(fid,'WIDTH=16;\n'); % WIDTH is the word band %
fprintf(fid,'DEPTH=65536;\n'); % DEPTH is the the number of datas %
fprintf(fid,'ADDRESS_RADIX=HEX;\n');
fprintf(fid,'DATA_RADIX=HEX;\n');
fprintf(fid,'CONTENT BEGIN\n');
fprintf(fid,'%x : %x;\n',s);
fprintf(fid,'END;'); % the end of the file %
fclose(fid);
生成的MIF文件部分內容如下:
2、用Quartus打開MIF文件,如下圖:
另存文件位HEX格式,
3、保存退出,可以查看到生成的HEX文件部分內容如下: