www.pudn.com > noc.rar > bram64k.cpp


/*
 *  TU Eindhoven
 *  Eindhoven, The Netherlands
 *
 *  Name            :   bram64k.h
 *
 *  Author          :   A.S.Slusarczyk@tue.nl
 *
 *  Date            :   
 *
 *
 */

#include "bram64k.h"

void BRAM64KCONV::in()
{
  mem_clk.write( clk.read() );
 
  bool ww=false, wb=false, rb=false, rw=false;
  bool enable = (en.read()[0]!=0);
  sc_uint<2> _w = w.read(), _r = r.read();
  
  ww = enable && (_w==1);
  wb = enable && (_w==2);
  rw = enable && (_r==1);
  rb = enable && (_r==2);
  
  mem_ww.write(ww); mem_wb.write(wb); mem_rw.write(rw); mem_rb.write(rb); 
  
  mem_addr.write( addr.read() );
  mem_din.write( din.read() );
  
}

void BRAM64KCONV::out()
{
  dout.write( mem_dout.read() );
  memwait.write(false);
}