ROM數據顯示
工程地址:https://github.com/HaHaHaHaHaGe/Planof2019_half/tree/master/Course_Project/FPGA/class05_onchipROM
基於數碼管的項目增添ROM數據輸出
硬件結構
開發板:AC620
整體框架
注ROM是由IP生成的生成步驟如下:
創建mif/hex文件
IP核創建
在IP核配置中導入mif/hex文件
完成
IP核配置
選擇ip核生成文件保存的位置
配置rom大小(位寬與words)以及存儲器選擇
端口控制配置
mif/hex文件導入
代碼部分
代碼過多更多代碼在github
頂層代碼
module top(
rst,
clk,
lock595,
out595,
clk595
);
input rst,clk;
output lock595,out595,clk595;
wire clk1;
wire clk2;
wire clk3;
wire [31:0]data;
reg [2:0]addr;
frequencydivider frequencydivider1(
.clk(clk),
.rst(rst),
.fclk(clk1)
);
frequencydivider frequencydivider2(
.clk(clk1),
.rst(rst),
.fclk(clk2)
);
frequencydivider frequencydivider3(
.clk(clk2),
.rst(rst),
.fclk(clk3)
);
rom rom1 (
.address(addr),
.clock(clk3),
.q(data)
);
BCDDisplay BCDDisplay1(
.clk(clk),
.rst(rst),
.data(data),
.lock595(lock595),
.out595(out595),
.clk595(clk595)
);
always@(negedge clk3,negedge rst)
if(!rst)
addr <= 3'b0;
else
addr <= addr + 3'b1;
endmodule