FPGA设计中,RAM的两种实现方法详解
时间:2020-11-16 17:26:50
手机看文章
扫描二维码
随时随地手机看文章
[导读]RAM是用来在程序运行中存放随机变量的数据空间,使用时可以利用 Quartus II 的LPM功能实现RAM的定制。
操作系统:win7
实现方法一:利用LPM_RAM
DEPTH = 256;WIDTH = 8;ADDRESS_RADIX = HEX;DATA_RADIX = HEX;CONTENTBEGIN0000 : 0000;0001 : 0000;0002 : 0000;……(此处省略一千字*.*)00FA : 00FF;00FB : 00FF;00FC : 00FF;00FD : 00FF;00FE : 00FF;00FF : 00FF;END;
(2) 设置全局参数
int main(void){int i,temp;float s;FILE *fp;fp = fopen("TestMif.mif","w"); /*文件名随意,但扩展名必须为.mif*/if(NULL==fp)printf("Can not creat file!\r\n");else{printf("File created successfully!\n");/** 生成文件头:注意不要忘了“;”*/fprintf(fp,"DEPTH = %d;\n",DEPTH);fprintf(fp,"WIDTH = %d;\n",WIDTH);fprintf(fp,"ADDRESS_RADIX = HEX;\n");fprintf(fp,"DATA_RADIX = HEX;\n");fprintf(fp,"CONTENT\n");fprintf(fp,"BEGIN\n");/** 以十六进制输出地址和数据*/for(i=0;i{/*周期为128个点的正弦波*/s = sin(PI*i/64);/*将-1~1之间的正弦波的值扩展到0-255之间*/temp = (int)((s+1)*255/2);/*以十六进制输出地址和数据*/fprintf(fp,"%x\t:\t%x;\n",i,temp);}//end forfprintf(fp,"END;\n");fclose(fp);}}
方法二、使用verilog纯文本的描述方式
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!






