1.理论
- ROM全称:Read-Only Memory,也就是只读型固态半导体存储器,即一旦存储信息,无法再改变,信息也不会因为电源关闭消失。但在FPGA中,实际使用的ROM IP核并不是真正的ROM,其实都是内部的RAM资源,也就是掉电导致信息丢失。ROM IP核的作用就是在使用前添加相应的mif文件,通过mif数据文件给ROM模块初始化,使其看起来像一个掉电非易失存储器。
- ROM IP核分类:
单端口ROM:一个读地址端口,一个读数据端口,只读。
双端口ROM:两个读地址端口,两个读数据端口,只读。
2.实践
2.1 配置ROM IP核
软件平台:Quartus II
-
前期准备
建立4个文件夹
在第二个工程文件夹里新建一个IP核文件夹
-
ROM初始化文件
新建一个工程,并选择“Memory Initialization File”
设置容量和位宽
通过软件平台自带数据填充功能生成数据
根据数据容量,设置最大值为255,每次增加1个数
生成256个数据
保存这个文件为.mif格式,存放在之前建立的IP核文件夹中
-
创建ROM IP核
打开IP核配置界面
设置IP核存放位置
默认设置
取消勾选‘q’output port
将初始化的mif文件导入到这个位置
next
这里只勾选inst,文件
完成整个IP核的创建,qip文件被添加到工程文件目录下
小结
今天主要介绍了ROM IP核的相关内容,通过编写初始化文件,最后创建了一个可以使用的ROM IP 核。由于时间关系,还没设计如何使用这一部分内容的实践,明天继续ROM IP核的实际使用小实战。
最后分享一句雷总最近演讲中的话:
“一个人对奇迹的信念,永远是一个奇迹能够产生的首要前提。”
坚持做难而正确的事。