Guest User

Untitled

a guest
Jul 12th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.55 KB | None | 0 0
  1. module ram1(
  2.  
  3. input clk,
  4. input [11:0] addr,
  5. input [15:0] din,
  6. input write_en,
  7. output reg [15:0] dout
  8.  
  9. );
  10.  
  11. parameter addr_width = 12;
  12. parameter data_width = 16;
  13.  
  14. integer i;
  15. reg [data_width-1:0] dout; // Register for output.
  16. reg [data_width-1:0] mem1 [0:4095];
  17. initial begin
  18. for (i = 0; i < 4096; i = i + 1) begin
  19. mem1[i] <= 0; // Initialize the RAM with 0
  20. end
  21. end //mem[1:0] <= "A";
  22. always @(posedge clk)
  23. begin
  24. if (write_en)
  25. mem1[(addr)] <= din;
  26. dout = mem1[addr]; // Output register controlled by clock.
  27. end
  28.  
  29.  
  30. endmodule
Add Comment
Please, Sign In to add comment