题解 | #ROM的简单实现#
ROM的简单实现
http://www.nowcoder.com/practice/b76fdef7ffa747909b0ea46e0d13738a
实现的代码如下:
`timescale 1ns/1ns module rom( input clk, input rst_n, input [7:0]addr, output [3:0]data ); reg [3:0] ROM_data [7:0]; //为ROM开辟空间,也可以理解为声明一个二维数组,左边低维,右边高维 integer i,j; always@ (posedge clk&nbs***bsp;negedge rst_n) begin if(~rst_n) begin for(i = 0; i <= 7; i++) begin ROM_data[i] <= i + i; end end else begin for(j = 0; j <= 7; j++) begin ROM_data[j] <= ROM_data[j]; end end end assign data = ROM_data[addr]; endmodule