编写并运行完程序后,使用QUARTUS软件FILES栏中的CREAT SYMBOL FILES FOR CURRENT FILE 命令生成功能模块(如图5。3所示),以便于在BLOCK原理图中调用。

图5。3相位累加器模块

5。4波形储存器的实现

    设计需要调用QUARTUS库里的ROM器件,但是存在如何往ROM中写入需要数据的问题,也就是说需要给ROM导入一个MIF文件才行。生成MIF文件有以下两种方式:一是通过QUARTUS新建MIF文件,接着将要写入的数值逐个写入到MIF表,表中存放完ROM的数值后点击保存,然后创建ROM时直接调用即可[12]。采取这种方法的话,在数据量比较小的时候是方便的,然而这次的设计需要采用256*8的ROM,并且每个单元都要存放数据,产生的数据量较大,所以要采取第二种方法,就是用高级语言编写程序生成MIF文件。在这次的设计中我采取用VISUAL C++语言编程的方法,下面是具体的产生MIF文件的VC++程序,以正弦波形幅值为例,代码如下:

#include<iostream。h>来:自[优.尔]论,文-网www.chuibin.com +QQ752018766-

#include<math。h>

#include<fstream。h>

void main(void)

{

ofstream os;

os。open("sin。txt");

double d=0,a=2*3。1415926/256;

int i;

for(i=0;i<256;i++)

{

         os<<int(127*sin(d)+128)<<endl;

     d=d+a;

}

os。close();

}

一般用VC++语言编程得到的正弦波形幅值数据存储在ROM中时,为了储存方便,会将它的X轴和Y轴数值扩大,得到的结果为整数。然后选取256个进行复制,然后在QUARTUSⅡ中新建一个MIF文件,设置字数为2的8次方即256,字符宽为8,然后将从Visual C++中复制的数据粘贴进来

上一篇:ADS无接触人体生命体征检测雷达设计
下一篇:TMS320C6678的FFT算法的多核DSP实现研究

等波纹最佳逼近FIR数字滤波器设计

LABVIEW虚拟FIR数字滤波器的设计

MATLAB数字图像处理的交通信号灯识别系统设计

单片机的数字式电感电容表设计

数字图像水印技术的研究

基于EDA的多功能数字钟设计

FPGA+Microblaze软核的数字示波器设计+程序

国内外无刷直流电动机研究现状

高校网球场馆运营管理初探【1805字】

拉力采集上位机软件开发任务书

辩护律师的作证义务和保...

中国古代秘书擅权的发展和恶变

多元化刑事简易程序构建探讨【9365字】

浅谈传统人文精神茬大學...

浅谈新形势下妇产科护理...

谷度酒庄消费者回访调查问卷表

《醉青春》导演作品阐述