FPGA中存储器的初始化文件生成

在VC开发环境下生成正弦信号的初始化ROM表

首先,新建一个Win32 Console Application的空工程,再新建一个sin_rom.c文件并将其添加到Source Files中,然后编译、运行。

相关C程序如下:

#include "stdio.h"
#include "math.h"

void main()
{
  int i;
  float s;
  printf(" width=10;\n");
  printf(" depth=1024;\n");
  printf(" address_radix=uns;\n");
  printf(" data_radix=uns;\n");
  printf("content begin\n");
  for(i=0;i<1024;i++)
  {
    s=sin(atan(1)*8*i/1024);
    printf(" %d: %d;\n",i,(int)((s+1)*1023/2));
  }
  printf("end;\n");
}

将上述程序编译成功后,即可形成sin_rom.exe文件,
然后在DOS命令下执行:sin_rom>sinmif.mif即可生成正弦波形的ROM初始化文件。

注意事项:

1、在DOS中运行前最好先修改一下路径,并将生成的sin_rom.exe文件也复制到相应的路径位置,这样便于找到生成的.mif文件(改变路径方法:例如输入"d:"即可将路径改至d盘下)。
2、设置好数据的宽带和深度,尤其是address_radix和data_radix的设置,最好设置成"uns",若设置成"dec"可能会出现错误。
3、在每输出一个数据后应进行换行,即程序中的:printf(" %d: %d;\n"....);

原文地址:https://www.cnblogs.com/asus119/p/2002524.html