zoukankan      html  css  js  c++  java
  • mif文件生成方法

    mif文件就是存储器初始化文件,即memory initialization file,用来配置RAM或ROM中的数据。常见生成方法:

    1. Quartus自带的mif编辑器生成
    2. mif软件生成
    3. 高级编程语言生成

    前两种方法都有一定的缺陷,主要介绍第三种方法,按照mif文件格式,使用高级编程语言(Matlab、C)编写生成。

    注意: mif文件都是ASCⅡ码,负数应该是用补码处理,否则负数在mif文件中会变成0。

    Matlab参考代码如下:

    clc;clear;close all;
    width = 10;
    depth = 2^width;
    t = linspace(0,6.28,depth);
    sin_val = sin(t);
    %cos_val = cos(t);
    sin_val = fix(sin_val*(2^width-1)/2 + 0.5);  %四舍五入
    %cos_val = fix(cos_val*(2^width-1)/2 + 0.5);
    sin_val(find(sin_val<0))=sin_val(find(sin_val<0)) + 2^width; %求补码 
    addr = [0:depth - 1];
    file = fopen('sin.mif','wt');
    fprintf(file,'WIDTH=%d;
    ',width);      %该格式对应于mif格式,最后不要变
    fprintf(file,'DEPTH=%d;
    ',depth);
    fprintf(file,'
    ');
    fprintf(file,'ADDRESS_RADIX=UNS;
    ');
    fprintf(file,'DATA_RADIX=HEX;
    ');
    fprintf(file,'
    ');
    fprintf(file,'CONTENT BEGIN
    ');
    for i=1:depth
        fprintf(file,'    %d  :  %X;
    ',addr(i), sin_val(i));
    end
    fprintf(file,'
    ');
    fprintf(file,'END;
    ');
    fclose(file);
    
  • 相关阅读:
    获取系统DPI、系统显示比例等
    [LeetCode] 698. Partition to K Equal Sum Subsets
    .NET Framework基础知识(二)(转载)
    linux week3
    多进程
    Python 析构方法__del__
    面向对象作业
    网页视频加速播放
    javaScript(5)---运算符
    javaScript(5)---运算符
  • 原文地址:https://www.cnblogs.com/yfwblog/p/4783723.html
Copyright © 2011-2022 走看看