FPGA实验课8:ROM(IP核)使用实例

FPGA实验课8:ROM(IP核)使用实例

FPGA:ROM(IP核)使用实例

文章目录

FPGA:ROM(IP核)使用实例一、实验要求:二、实验步骤:1.ROM介绍2.生成波形数据文件(sin.mif、Triangle.mif、Sawtooth.mif)3.Quartus配置ROM核并将mif文件加入工程1.找到`ROM-1PORT`,并创建`rom.v`文件:2.配置ROM空间的位宽和字长:3.找到mif波形文件路径:4.将mif文件添加至工程:

5.写地址控制器:5.调用ROM核:

三、实验仿真:1.新建testbeach文件:2.modelism仿真结果:

四、在线逻辑分析1.新建STL文件:2.设置clk和数据分析长度3.添加分析信号:4.保存文件并进行编译5.添加设备6.分析仿真:7.调制设置显示波形:

一、实验要求:

调用Quartus II自带的IP核,生成ROM,并设置ROM存储的数值,实现正弦波、三角波和锯齿波的输出,并使用在线逻辑分析工具Signal Tap观察波形。

二、实验步骤:

1.ROM介绍

ROM(Read Only Memory)只读存储器,这种存储器(Memory)的内容任何情况下都不会改变,电脑与用户只能读取保存在这里的指令,和使用存储在ROM的资料,但不能变更或存入资料。ROM被存储在一个非易失性芯片上,也就是说,即使在关机之后记忆的内容仍可以被保存,所以这种存储器多用来存储特定功能的程序,如固件。

ROM有地址,只能读而不能写。用初始化文件mif/ceo将内容存进去,读取不会使得数据减少消失。

2.生成波形数据文件(sin.mif、Triangle.mif、Sawtooth.mif)

生成mif文件的方法有三种:

1.利用Quartus自带的mif编辑器

2.利用mif软件(Mif_Maker2010.exe 提取码:03ey)来生成

3.利用高级语言生成

这里我用第二种方法,Mif_Maker生成:

首先设置全局参数:

设置波形的长度为 512,宽度为 8 :

sin.mif :

Triangle.mif :

Sawtooth.mif :

3.Quartus配置ROM核并将mif文件加入工程

1.找到ROM-1PORT,并创建rom.v文件:

2.配置ROM空间的位宽和字长:

3.找到mif波形文件路径:

图中仅示例了sin.mif文件添加路径,其他两个路径按照上述步骤新建rom1.v、rom2.v添加波形路径。

4.将mif文件添加至工程:

Assignments-> Settings-> Files,选中需添加至工程的mif文件后,记得点击OK,这样才会保存刚刚改动的设置。

5.写地址控制器:

//地址寄存器

reg [9:0] addr = 10'd0;

//地址控制

always @(posedge clk or negedge rst_n)

begin

if(!rst_n)

addr <= 10'd0;

else if(addr == 10'd511)

addr <= 10'd0;

else

addr <= addr + 1'b1;

end

5.调用ROM核:

//Sin

rom my_rom1(

.address (addr),

.clock (clk),

.q (Sin)

);

//Triangle

rom1 my_rom2(

.address (addr),

.clock (clk),

.q (Triangle)

);

//Sawtooth

rom2 my_rom3(

.address (addr),

.clock (clk),

.q (Sawtooth)

);

三、实验仿真:

1.新建testbeach文件:

`timescale 1ns/1ns

module rom_tb();

reg clk;

reg rst;

wire [7:0] Sin;

wire [7:0] Triangle;

wire [7:0] Sawtooth;

initial begin

clk <= 0;

rst <= 0;

#15

rst <= 1;

end

always begin

#10 clk <= ~clk;

end

rom_test rom_sin(

.clk (clk),

.rst_n (rst),

.Sin (Sin),

.Triangle (Triangle),

.Sawtooth (Sawtooth)

);

endmodule

2.modelism仿真结果:

因为数据没有波形明显,我们这里需要将这三个信号设置一下:

Format - Analog(custom) :

最后仿真波形显示如下:

四、在线逻辑分析

1.新建STL文件:

2.设置clk和数据分析长度

3.添加分析信号:

4.保存文件并进行编译

5.添加设备

6.分析仿真:

7.调制设置显示波形:

选择 Bus Display Format - Unsigned Line Chart

相关推荐

5个万能公式,轻松提炼产品卖点
365bet网址是多少

5个万能公式,轻松提炼产品卖点

📅 11-03 👁️ 300
Buriedbornes通关攻略 传说隐藏职业技能解析
365bet网址是多少

Buriedbornes通关攻略 传说隐藏职业技能解析

📅 07-21 👁️ 7066
《昆仑墟》评测:诠释仙侠战斗新模式
365bet足球比分直播

《昆仑墟》评测:诠释仙侠战斗新模式

📅 09-03 👁️ 7792