Ignore:
Timestamp:
Dec 10, 2008, 7:31:39 PM (15 years ago)
Author:
rosiere
Message:

Almost complete design
with Test and test platform

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Register_translation_unit/Stat_List_unit/include/Types.h

    r81 r88  
    2323  class stat_list_entry_t
    2424  {
    25   private : bool     _is_free ; // set = is present in free list
    26   private : bool     _is_link ; // set = is present in rat
    27   private : bool     _is_valid; // set = an instruction have write in this register
    28   private : uint32_t _counter ; // number of register that must read this register
     25  public : bool     _is_free ; // set = is present in free list
     26  public : bool     _is_link ; // set = is present in rat
     27  public : bool     _is_valid; // set = an instruction have write in this register
     28  public : uint32_t _counter ; // number of register that must read this register
    2929
    3030  public :  stat_list_entry_t (void) {};
     
    5555    }
    5656
    57   public : void retire_write_old (void)
     57  public : void retire_write_old (bool restore_old)
    5858    {
    59       _is_link  = 0;
     59      if (not restore_old)
     60        {
     61          _is_link  = 0;
     62        }
     63      // else nothing
    6064    }
    6165
    62   public : void retire_write_new (void)
     66  public : void retire_write_new (bool restore_old)
    6367    {
     68      if (restore_old)
     69        {
     70          _is_link  = 0;
     71        }
     72
     73      // in all case
    6474      _is_valid = 1;
    6575    }
     
    7989      return ((_is_free  == 0) and
    8090              (_is_link  == 0) and
    81               (_is_valid == 1) and
     91//            (_is_valid == 1) and // if is_link <- 0, then retire_write_old or reset
    8292              (_counter  == 0));
    8393    }
    8494
    85   public : friend std::ostream& operator<< (std::ostream& output_stream,
     95  public : friend std::ostream& operator<< (std::ostream& output,
    8696                                            stat_list_entry_t & x)
    8797    {
    88       output_stream << x._is_free  << " "
    89                     << x._is_link  << " "
    90                     << x._is_valid << " "
    91                     << x._counter;
     98      output << x._is_free  << " "
     99             << x._is_link  << " "
     100             << x._is_valid << " "
     101             << x._counter;
    92102     
    93       return output_stream;
     103      return output;
    94104    }
    95105
Note: See TracChangeset for help on using the changeset viewer.