altera小实验——ROM读取

简介: altera小实验——ROM读取

在研究固定系数乘法器的查超标法,需要用到ROM存储器,因此探究了下初步使用。

器件:altera Cyclone III

1.建立工程与主文件

2.建立ROM的初始化文件

由于ROM不可写入,因此其数据的存储需要一个初始化文件,里面预写入ROM中的存储数据。

在File->New...里选择Hex文件或MIF文件都可以,用MIF文件更加容易借助其他工具如MATLAB等进行修改与生成,因此选择MIF文件。

277ab32bbfa2a30229afd9b9780d1539_SouthEast.png

双击生成文件,并对文件数据进行修改。随便改了改里面的存储数值,地址与数值一致了。保存文件为rom.mif。

83161e87810bf9cd9a5fcd298d6a3410_SouthEast.png

打开.mif文件可见其组织方式。

fcb98ed29632aa170317a19a6ad8f5a5_SouthEast.png

3.建立ROM IP核

2bbb1bb6b49bd06f279961c0cf1f2287_SouthEast.png

本页设置数据位宽与数据深度,ROM类型(一般auto即可),输入地址的时钟与输出数据的时钟。

64412e6c17b5eb1ca9f1f6fc967ffae4_SouthEast.png

该页选择是否在数据输出端加入一个reg来减小延时,如果加入的话,数据会晚一个周期抵达。

ed8a791884868d9f5fba1df1e0f1d6fa_SouthEast.png

该页添加rom.mif初始文件,注意地址一定要写全,否则会出现如下报错:

Error (127001): Can't find Memory Initialization File or Hexadecimal (Intel-Format) File ......

之后生成.v文件即可

4.实例化并编译

添加rom.v文件并实例化编译,用signaltap抓取信号观察结果。

可以观察到输出数据与输入地址之间差了两个周期,这是因为输入地址时打了一拍,输出数据时打了一拍。

7798b8ac90ce8ea3134955a6c7722939_SouthEast.png

7326f77045995340679c3fb930dfda50_SouthEast.png

相关文章
|
存储
ZYNQ-pbuf操作指南(一)
ZYNQ-pbuf操作指南
453 0
ZYNQ-pbuf操作指南(一)
|
存储 芯片 内存技术
Jlink使用技巧之读写SPI Flash存储芯片
Jlink使用技巧之读写SPI Flash存储芯片
807 0
Jlink使用技巧之读写SPI Flash存储芯片
|
2月前
|
异构计算
FPGA片内ROM测试实验(二)
FPGA片内ROM测试实验
33 1
|
2月前
|
存储 算法 物联网
MCU的最佳存储方案CS创世 SD NAND
MCU的最佳存储方案CS创世 SD NAND
51 7
|
2月前
|
存储 数据格式 异构计算
FPGA片内ROM测试实验(一)
FPGA片内ROM测试实验
42 1
|
2月前
|
存储 API 开发工具
【ZYNQ】SD 卡读写及文件扫描实验
【ZYNQ】SD 卡读写及文件扫描实验
|
2月前
|
Linux 开发工具 异构计算
【ZYNQ】QSPI Flash 固化程序全攻略
【ZYNQ】QSPI Flash 固化程序全攻略
233 0
|
12月前
|
存储 物联网
stm32驱动RFID高频读卡器读取IC卡
stm32驱动RFID高频读卡器读取IC卡
120 0
|
Android开发 异构计算
nios ii FIFO读取FPGA数据交互实验1
nios ii FIFO读取FPGA数据交互实验1
218 0
nios ii FIFO读取FPGA数据交互实验1
|
12月前
|
存储 算法 计算机视觉
m基于FPGA的各类存储器纯Verilog实现,包含testbench,包括RAM,SRAM等
m基于FPGA的各类存储器纯Verilog实现,包含testbench,包括RAM,SRAM等
356 2