/* * $Id$ * * [ Description ] * * Test "RegisterFile" */ #ifdef SYSTEMC #include "systemc.h" #endif #include #include #include #include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/include/Register_unit_Glue.h" using namespace std; using namespace morpheo; using namespace morpheo::behavioural; using namespace morpheo::behavioural::core; using namespace morpheo::behavioural::core::multi_execute_loop; using namespace morpheo::behavioural::core::multi_execute_loop::execute_loop; using namespace morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit; using namespace morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit::register_unit_glue; void test (string name, morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit::register_unit_glue::Parameters * param); class Time { private : timeval time_begin; // private : timeval time_end; public : Time () { gettimeofday(&time_begin ,NULL); }; public : ~Time () { cout << *this; }; public : friend ostream& operator<< (ostream& output_stream, const Time & x) { timeval time_end; gettimeofday(&time_end ,NULL); uint32_t nb_cycles = static_cast(sc_simulation_time()); double average = static_cast(nb_cycles) / static_cast(time_end.tv_sec-x.time_begin.tv_sec); output_stream << nb_cycles << "\t(" << average << " cycles / seconds )" << endl; return output_stream; } };