zoukankan      html  css  js  c++  java
  • [转载]ISE中COE与MIF文件的联系与区别

    ISE中,当用Blcok Memory Generator 生成某个ROM模块时,经常要对ROM中的内容作初始化。这时,就需要我们另外去制作初始化文件了。COE文件与MIF文件是经常被提及的两个概念,那么,这两者究竟有什么联系与区别?

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

     

    [转载]ISE中COE与MIF文件的联系与区别

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


    [转载]ISE中COE与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文件没变,所以初始化内容也会保持不变。

  • 相关阅读:
    python3画聚类树图
    RedHat 7.0 系统 安装
    在VMware vSphere Client安装新的服务器(虚拟机)
    RedHat 7.0 VMware Tools 安装
    RedHat 7.0 Firefox浏览器 安装与更新
    Redhat 7.0 Opera浏览器 安装
    windows 8.1 IE11 和 windows 10 Edge & IE11 FlashPlayer 的安装与卸载
    在Windows和Mac上输入unicode字符
    已知IP 查看hostname
    RedHat 7.0 Chrome浏览器 安装
  • 原文地址:https://www.cnblogs.com/JustDoFPGA/p/8412739.html
Copyright © 2011-2022 走看看