目录
一、前言
二、ROM_STYLE
一、前言
ROM英文全称为Read Only Memory,只读存储器,里面主要存放固定的数据。
二、ROM_STYLE
ROM的使用方式与RAM类似,格式样例为:(* rom_style="{distributed | block}" *),但可设置的值只有distributed和block,同时也支持在约束文件XDC使用set_property设置。
2.1 工程代码
module ROM_STYLE(dout,clk,address,ce);
input clk;
input [2:0] address;
input ce;
output [7:0] dout;
reg [7:0] dout;
(* rom_style="block" *) reg [7:0] rom_name[7:0];
initial begin
rom_name[0]<=4'd0;
rom_name[1]<=4'd1;
rom_name[2]<=4'd2;
rom_name[3]<=4'd3;
rom_name[4]<=4'd4;
rom_name[5]<=4'd5;
rom_name[6]<=4'd6;
rom_name[7]<=4'd7;
end
always @(posedge clk)
if(!ce)
dout<=8'bz;
else
dout<=rom_name[address];
endmodule
属性ROM_STYLE设置为block,结果如图,实现ROM使用的是BRAM
属性ROM_STYLE设置为distributed,此时实现是通过LUT和寄存器FDRE组合实现