Ignore:
Timestamp:
Dec 8, 2007, 5:12:36 PM (16 years ago)
Author:
rosiere
Message:

read_queue : systemC et vhdl ok !
queue : quelques petits modif pour avoir une queue de taille 1
nettoyage des fichiers *mkf*

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Multi_Read_unit/Read_unit/Read_queue/src/Read_queue_genMealy_read_queue_out_gpr.cpp

    r66 r68  
    6565    for (uint32_t i=0; i<_param->_nb_gpr_write ; i++)
    6666      {
     67        bool cmp;
     68
     69        if (_param->_have_port_ooo_engine_id)
     70          cmp = (PORT_READ (in_GPR_WRITE_OOO_ENGINE_ID [i]) == _queue_head->_ooo_engine_id);
     71        else
     72          cmp = true;
     73
    6774        // Test if this bypass is valid
    68         if ( (PORT_READ (in_GPR_WRITE_VAL           [i]) == 1) and
    69              (PORT_READ (in_GPR_WRITE_OOO_ENGINE_ID [i]) == _queue_head->_ooo_engine_id)
    70              )
     75        if ( (PORT_READ (in_GPR_WRITE_VAL [i]) == 1) and cmp)
    7176          {
    7277            Tgeneral_address_t gpr_write_num_reg = PORT_READ(in_GPR_WRITE_NUM_REG [i]);
     
    7883
    7984                internal_READ_QUEUE_OUT_DATA_RA_VAL = 1;
     85#ifdef SYSTEMC_VHDL_COMPATIBILITY
     86                if (_queue_head->_read_ra == 1)
     87#endif
    8088                internal_READ_QUEUE_OUT_DATA_RA     = gpr_write_data;
    8189              }
     
    8492                log_printf(TRACE,Read_queue,FUNCTION," * internal_READ_QUEUE_OUT_DATA_RB_VAL   - bypass hit (%d)",i);
    8593                internal_READ_QUEUE_OUT_DATA_RB_VAL = 1;
     94#ifdef SYSTEMC_VHDL_COMPATIBILITY
     95                if (_queue_head->_read_rb == 1)
     96#endif
    8697                internal_READ_QUEUE_OUT_DATA_RB     = gpr_write_data;
    8798              }
Note: See TracChangeset for help on using the changeset viewer.