• quartus ii中仿真rom时遇到的问题(待完善)


    1.modelsim仿真只支持.hex,并不支持.mif(Memory Initialzation File)。

    2.在Matlab中生成.mif文件,然后再quartus中打开,转换为hex格式后另存为。

    3.让modelsim支持hex,https://wenku.baidu.com/view/48e7216704a1b0717fd5dda0.html?re=view

    4..hex文件要在modelsim工程下,还是quartus工程下???

    以上是之前遇到这个问题时候在网上找到的解决方法,就先放着。

    这个问题搞了两天了,今天终于有些明白了,写出来记录一下。

    一、modelsim能不能调用.mif文件。

      对于这个问题,我的答案是(网上有好多帖子都说modelsim只支持.hex,不支持.mif),其实持不支持的观点也并不是错了。下面我就来说说我的理解。

      当.mif中的数据是非负数时,modelsim是能够支持的,当存在负数时,modelsim就会将它默认作为0进行处理,并且给出常遇到的错误提示:

    ERROR: sin.mif, line 2055, Invalid Altera-mif record.
    

    这个提示指出了在.mif中出现的负数的位置,line 2055,你可以去.mif文件中查看这一行中的数据,或者是在这一行的附近,应该会是一个负数。之所以说modelsim支持.hex文件,是因为负数在存储时,是按照补码的形式存的,而.mif默认是按照十进制或者说是原码进行存储的。

    二、rom仿真中出现的问题。

       解决了上面的问题,那么再来看看如何在modelsim中调用rom。(如果你要存储的数据中含有负数,那就生成.hex文件吧,生成的方法可以在参照文章开头的2中那样去处理)。

      仿真rom无非是查找表中的数据,那么就会有地址和数据,上面解决了数据的问题,再来看看地址的处理。当你把存储地址的变量声明为reg类型时,切记要进行初始化,因为reg类型的数据,默认的初始值是不定的,即为x。(准备再写一个介绍仿真时初始化的问题

  • 相关阅读:
    大数据数仓数据分层名次介绍
    php 解压zip 格式的文件 何苦
    php 命令行执行 何苦
    VSCode使用笔记 何苦
    K8S Cilium网络插件——安装(v1.11.x版本)
    产品
    如何做好餐饮
    写作
    历史
    本能
  • 原文地址:https://www.cnblogs.com/lovexz/p/6675386.html
Copyright © 2020-2023  润新知