重温FPGA开发27

vivado 中存储器IP的应用

学习如何展示这类IP的学习和应用方法

ROM_test.v 使用IP核 IP catalog。在菜单栏中可以看到有两个与ROM相关的IP,一个是Distributed Memory Generator, 另一个是Block Memory Generator,先简单说说两个的差别,两者最主要的差别是生成的core所占用的FPGA资源不一样,从Distributed Memory Generator 生成的ROM、RAM core占用的资源是 LUT(查找表,查找表本质是一个小的RAM);从Block memory Generator 生成的ROM RAM core占用的资源是 Block memory(嵌入式的硬件RAM),两者详细的区别和使用会进行详解。

各自的应用场合:假如只需要一个32或128字节的ROM,使用LUT比较合适,消耗的不多。Block memory Generator要么就是9k或者18k,需求量比较大的场景。根据存储空间的大小来决定。

IP的操作

还有mif 初始化文件。ROM的初始化文件

简单写testbench显示

module rom_tb;

reg clka;
reg [11:0]addra;
wire [9:0]douta;

rom rom(
	clka;
	addra;
	douta
	);

initial clka = 1;
always #10 clka = ~clka;

initial begin
	addra = 100;
	#501;
	repeat(3000) begin
		addra = addra + 1;
		#20;
	end
	#2000;
	$stop;
end


endmodule

主要看 仿真输出延时

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值