Subversion Repositories ngs

Rev

Rev 2 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

  1. module ram(
  2.         addr,
  3.         data,
  4.         ce_n,oe_n,we_n
  5. );
  6.  
  7.    input [15:0] addr;
  8.    inout [7:0] data;
  9.    wire [7:0] data;
  10.    input ce_n,oe_n,we_n;
  11.         reg [7:0] array [0:65535];
  12.  
  13.    reg [7:0] dou;
  14.  
  15.  
  16.         integer i;
  17.  
  18.         initial
  19.         begin
  20.                 for(i=0;i<65536;i=i+1)
  21.                         array[i] = 8'd0;
  22.         end
  23.  
  24.  
  25.   assign data = dou;
  26.  
  27.  
  28.         always @*
  29.         begin
  30.                 if( !ce_n && !oe_n && we_n )
  31.                         dou <= array[addr];
  32.                 else
  33.                         dou <= 8'bZZZZZZZZ;
  34.  
  35.  
  36.                 if( !ce_n && !we_n )
  37.                         array[addr] <= data;
  38.  
  39.  
  40.         end
  41.  
  42.  
  43.  
  44.  
  45. endmodule
  46.  
  47.