用MATLAB生成Quartus II下ROM初始化文件(MIF,HEX)
来源:互联网 发布:tcp ip网络互连 pdf 编辑:程序博客网 时间:2024/06/03 15:58
使用quartus ii 写DDS模块时需要生成0-0.5pi范围的正弦查找表,需要使用ROM核,初始化ROM需要使用.mif文件或hex文件。
生成MIF文件
mif文件的格式如下:
WIDTH=15;
DEPTH=2048;
ADDRESS_RADIX=DEC;
DATA_RADIX=DEC;
CONTENT BEGIN
0:0;
1:25;
2:50;
3:75;
4:101;
5:126;
6:151;
7:176;
8:201;
9:226;
…….
END
使用matlab可以生成这种文件,代码如下:
%生成0-pi/2 的正弦查找表,保存为mif格式depth=2048; %深度width=15; %位宽fid1=fopen('sin_coe.mif','wt'); %wt(write tab)是写换行的意思 fprintf(fid1,'WIDTH=%d;\n',width); fprintf(fid1,'DEPTH=%d;\n',depth); fprintf(fid1,'ADDRESS_RADIX=DEC;\n'); %地址基值fprintf(fid1,'DATA_RADIX=DEC;\n'); %数据基值fprintf(fid1,'CONTENT BEGIN\n'); %开始数据区for i=0:1:(depth-1) %在[0:depth-1]做depth次循环,每次加1 y2=round(sin(i/depth*pi/2)*(2^width-1)); %在[0:0.5*pi]中等间隔取depth个点,计算相应的正弦值 ,扩大浮点值并取整 fprintf(fid1,'%d:%d;\n',i,y2); end fprintf(fid1,'END'); %结束fclose(fid1);
mif文件生成方法
这篇文章中提到:
注意: mif文件都是ASCⅡ码,负数应该是用补码处理,否则负数在mif文件中会变成0。
由于我生成的是0-0.5pi之间的正弦表,没有负数,所以没有遇到这个问题,以后可以研究一下。
生成HEX文件
只要将生成的mif文件在quartus ii中打开,然后另存为hex即可。
0 0
- 用MATLAB生成Quartus II下ROM初始化文件(MIF,HEX)
- 用MATLAB生成*.mif(QUARTUS II)内存初始化文件
- 利用matlab进行ROM初始化mif文件方法(转)
- Quartus rom 初始化文件hex modelsim仿真问题
- Quartus rom 初始化文件hex modelsim仿真问题
- matlab生成quartus中可用的.mif文件
- 用MATLAB生成mif文件
- 用MATLAB生成MIF文件
- Altera RAM/ROM 初始化文件MIF生成详解
- 在quartus和modelsim中使用mif和hex文件
- 用matlab生成HEX文件
- 使用matlab生成rom初始化文件.coe
- 用quartus II创建ROM
- 用MATLAB产生mif文件
- Matlab 生成 图片的coe文件初始化xilinx rom
- matlab输出mif文件
- 如何生成mif文件
- 如何生成mif文件
- c++基础:新标准constexpr基本用法及其他注意点
- Atcoder Grand 011 E- Increasing Numbers
- 2017要学的
- 小心使用ArrayList和LinkedList
- Ubuntu下的ll和l命令打不开的问题
- 用MATLAB生成Quartus II下ROM初始化文件(MIF,HEX)
- KNN算法原理(python代码实现)
- 杀死任务名称的linux进程
- 常用工具
- 【数据结构】层序生成二叉树
- 【51Nod1462】树据结构
- Struts 2 简单数据验证
- EffectiveJava(29)优先考虑类型安全的异构容器
- android 播放器的初探