RAM_PROM.v


/*
 Produced by NSL Core, IP ARCH, Inc. Fri Jun 04 17:54:57 2010

 Licensed to :EVALUATION USER:
*/

module RAM_PROM ( p_reset , m_clock , AD_i , DB_o1 , DB_o2 , CS_i , REN_i );
  input p_reset, m_clock;
  input [2:0] AD_i;
  output [7:0] DB_o1;
  output [7:0] DB_o2;
  input CS_i;
  input REN_i;
  reg [7:0] mem_array [0:7];
  reg [7:0] clocked_rdout;
  wire _net_0;
  wire _net_1;

   assign  _net_0 = CS_i&REN_i;
   assign  _net_1 = CS_i&REN_i;

//synthesis translate_off
always @(posedge m_clock or posedge p_reset)
  begin
if ((~_net_0)&_net_0)
 begin $display("Warning: assign collision(RAM_PROM:DB_o1) at %d",$time);
if (~_net_0) $display("assert (~_net_0) at 44\n");
if (_net_0) $display("assert (_net_0) at 42\n");

  end
  end
//synthesis translate_on
   assign  DB_o1 =
//synthesis translate_off
((~_net_0)&_net_0)? 8'bx :((~_net_0)|_net_0)?
//synthesis translate_on
((~_net_0)?8'b00000000:8'b0)|
    ((_net_0)?mem_array[AD_i]:8'b0)
//synthesis translate_off
:8'bx
//synthesis translate_on
;
   assign  DB_o2 = clocked_rdout;
initial begin
    mem_array[0] <= 8'b00000001;
    mem_array[1] <= 8'b00000010;
    mem_array[2] <= 8'b00000011;
    mem_array[3] <= 8'b00000100;
    mem_array[4] <= 8'b10010110;
    mem_array[5] <= 8'b00111000;
    mem_array[6] <= 8'b11111110;
    mem_array[7] <= 8'b10101100;
end
always @(posedge m_clock)
  begin

//synthesis translate_off
if ((~_net_1)&_net_1)   clocked_rdout <= 8'bx;
  else
//synthesis translate_on
if (~_net_1)
      clocked_rdout <= 8'b00000000;
else if (_net_1)
      clocked_rdout <= mem_array[AD_i];
end

//synthesis translate_off
always @(posedge m_clock)
  begin
if (((~_net_1)|_net_1=='b1) ||
 ((~_net_1)|_net_1=='b0) ) begin
 if ((~_net_1)&_net_1)
 begin $display("Warning: assign collision(RAM_PROM:clocked_rdout) at %d",$time);

  end
 end
 else
 $display("Warning: register set hazard(RAM_PROM:clocked_rdout) at %d",$time);
  end
//synthesis translate_on
endmodule
/*
 Produced by NSL Core, IP ARCH, Inc. Fri Jun 04 17:54:57 2010

 Licensed to
*/
PAGE TOP