OpenCores
URL https://opencores.org/ocsvn/async_sdm_noc/async_sdm_noc/trunk

Subversion Repositories async_sdm_noc

[/] [async_sdm_noc/] [branches/] [init/] [sdm/] [tb/] [rtdriver.cpp] - Diff between revs 33 and 34

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 33 Rev 34
Line 42... Line 42...
  sc_logic ack_lv_high, ack_lv_low;             // the sc_logic ack
  sc_logic ack_lv_high, ack_lv_low;             // the sc_logic ack
 
 
  // read the ack
  // read the ack
#ifdef ENABLE_CHANNEL_CLISING
#ifdef ENABLE_CHANNEL_CLISING
  ack_lv_high = rtia.read().and_reduce();
  ack_lv_high = rtia.read().and_reduce();
  ack_lv_high = rtia.read().or_reduce();
  ack_lv_low = rtia.read().or_reduce();
#else
#else
  ack_lv_high = rtia.read();
  ack_lv_high = rtia.read();
  ack_lv_high = rtia.read();
  ack_lv_low = rtia.read();
#endif  
#endif  
 
 
  if(ack_lv_high.is_01() && ack_lv_high.to_bool())
  if(ack_lv_high.is_01() && ack_lv_high.to_bool())
    rtinp_sig = true;
    rtinp_sig = true;
 
 
Line 65... Line 65...
  data_lv = rtod[0].read() | rtod[1].read() | rtod[2].read() | rtod[3].read() | rtod4.read();
  data_lv = rtod[0].read() | rtod[1].read() | rtod[2].read() | rtod[3].read() | rtod4.read();
  data_lv_high = data_lv.and_reduce();
  data_lv_high = data_lv.and_reduce();
  data_lv_low = data_lv.or_reduce();
  data_lv_low = data_lv.or_reduce();
#else
#else
  data_lv = rtod[0].read() | rtod[1].read() | rtod[2].read() | rtod[3].read();
  data_lv = rtod[0].read() | rtod[1].read() | rtod[2].read() | rtod[3].read();
  data_lv_high = data_lv.and_reduce() & rtod4.read();
  data_lv_high = data_lv.and_reduce() | rtod4.read();
  data_lv_low = data_lv.or_reduce() | rtod4.read();
  data_lv_low = data_lv.or_reduce() | rtod4.read();
#endif
#endif
 
 
  if(data_lv_high.is_01() && data_lv_high.to_bool())
  if(data_lv_high.is_01() && data_lv_high.to_bool())
    rtoutp_sig = true;
    rtoutp_sig = true;
Line 246... Line 246...
        for(j=0; j<4; j++) {
        for(j=0; j<4; j++) {
          dd[0] = mdata[0][i*4+j];
          dd[0] = mdata[0][i*4+j];
          dd[1] = mdata[1][i*4+j];
          dd[1] = mdata[1][i*4+j];
          dd[2] = mdata[2][i*4+j];
          dd[2] = mdata[2][i*4+j];
          dd[3] = mdata[3][i*4+j];
          dd[3] = mdata[3][i*4+j];
          mflit[i-1] |= c1o42b(dd.to_uint()) << j;
          mflit[i-1] |= c1o42b(dd.to_uint()) << j*2;
        }
        }
      }
      }
    } else if (mflit.ftype != F_TL) {
    } else if (mflit.ftype != F_TL) {
      // fill in data
      // fill in data
      for(i=0; i<ChBW; i++) {
      for(i=0; i<ChBW; i++) {
        for(j=0; j<4; j++) {
        for(j=0; j<4; j++) {
          dd[0] = mdata[0][i*4+j];
          dd[0] = mdata[0][i*4+j];
          dd[1] = mdata[1][i*4+j];
          dd[1] = mdata[1][i*4+j];
          dd[2] = mdata[2][i*4+j];
          dd[2] = mdata[2][i*4+j];
          dd[3] = mdata[3][i*4+j];
          dd[3] = mdata[3][i*4+j];
          mflit[i] |= c1o42b(dd.to_uint()) << j;
          mflit[i] |= c1o42b(dd.to_uint()) << j*2;
        }
        }
      }
      }
    }
    }
 
 
    // send the flit to the NI
    // send the flit to the NI

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.