ISE中COE与MIF文件的联系与区别

ISE中COE与MIF文件的联系与区别,第1张

我们首先来看看一个ROM的生成过程。当我们生成一个ROM模块时,在Memory Initialization选项中,会让开发者去指定COE文件的路径,

当我们指定好COE文件的路径,最后生成ROM后,会发现,在生成的ROM的IP核工程的文件夹列表中会同时生成MIF文件,

打开MIF文件,会发现里面内容与COE文件相同,这时不禁会让人感到疑惑:到底ROM会用哪个文件作为自己的初始化文件呢?

答案是MIF文件。

COE文件的作用,是困败生成IP核工程的时候,将其文件中的内容导入,生成MIF文件。也就是说,MIF文件是基于COE文件生成的,所以二者的内容才会相同(格式上是不汪基颤同的)。此后,在实际的使用中,只有MIF文件才会发挥作用,COE这时就已经“无用”了。由此可以推测,若想改变某个ROM模块的初始化文件,要么重新生成一遍ROM模块,导入新的COE文件,要么直接替换掉MIF文件,二者的作用是等效的,只是后者做法不太规范,由于COE文件未变,若再生成ROM模块会导致MIF文件会根据老的COE文件重生成。

总结起来,在使用过程中,需要注意以下几点:

1、  MIF文件是根据COE文件生成的。

2、  COE文件只会在锋野生成ROM模块时起作用,其作用就是根据文件内容生成相应的MIF文件,而ROM真正使用的是MIF文件。

3、  若想改变某个ROM模块的初始化内容,根本上来说是要改变MIF文件,有两种方法:一是替换掉原来的COE文件,再将ROM模块重新生成一遍;二是直接替换掉MIF文件。前者是比较规范的作法,因为后者的COE文件未变,若后面再去因为配置ROM参数而重新生成ROM模块会导致MIF文件又会回到“老样子”。切忌直接替换COE而不重新生成ROM模块的作法,这样MIF文件没变,所以初始化内容也会保持不变

设计DDS的核心就是调用IP ROM,vivado调用ROM的方法和ISE相类似,都是加载.coe文件,我这里特地做笔记,以防忘记。

这是DDS的原理图,DDS并没有像它的名字一样说的那么玄乎,它的核心便是控制频率的fword字输入,和相位字pword输入,最后调用IP核查找表即可,代码也十分简单,下面给出DDS design代码。

 DDS_design

使用vivado调用IP核ROM教程如下

点击IP catalog

选择block memory,然后双击

将show disabled ports 选项勾选掉

输入ROM名,我这里为了演示重新配置一个方波ROM,命名为square_rom

这里选择single ports ROM

按如上图所示勾选参数,port width是数据宽度,我们根据代码要求设置为10位,

port width是数据深度,即有多少个这样的数据,我打开生成的square.coe文件可以清楚的看到一共有4096这样的数据。

always enable是ROM一直处于工作宏笑脊状态,不需要使能信号。

这里是加载.coe文件,勾选load init file 然后点击browse将刚才生成的square.coe文件加载到ROM中,最后点击OK。

选择generate生成IP核

打开如图所示文件,

将生成的IP核实例化,即可

最后编写测试文件进行测试

最后右键点击da_data选择wave style选择analog,将会看到模拟波形,但是有时候还是需要设置一下模拟波形的显升颂示,同样右键点击da_data选择wave style选择analog setting,选择如蔽渗下图所示参数。

最后便大功告成,即可得打方波的波形图

大家还可以按照这种方法将其他两种波形都做出来。

本人最近刚宏或开始学习ISE,需要调用Xilinx IP核设计一个正简FIR低通滤波器,滤波器系数我是利用MATLAB的FDATool工具得到的,把系数写入coe文件,然后在ISE中调用该coe文件来设计我想要的滤波器,并通过Modelsim仿真。应该说到现在为止整个过程我已经基本上完成了,也在Modelsim上得到了仿真结果。之后为了验证结果的正确性,我又用得到的系数在MATLAB上用filter函数得到了一个结果,现在的问题是两个结果不一样,而且差距很大,这个问题困扰了我很多天了,实在想不出问题出在哪里,现望高手指点。(说明一下:在调用IP核时,ISE有一组默认的滤波器系数,21阶的,系数全是整数蔽清伍,我用这组系数在ISE和MATLAB上得到的结果是一样的,而我自己设计的滤波器是35阶的,而且系数全是小数,个人认为应该跟这没关系)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11969947.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存