source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/OOO_Engine_Glue/src/OOO_Engine_Glue_genMealy_retire_valack.cpp @ 88

Last change on this file since 88 was 88, checked in by rosiere, 16 years ago

Almost complete design
with Test and test platform

  • Property svn:keywords set to Id
File size: 1.8 KB
Line 
1#ifdef SYSTEMC
2/*
3 * $Id: OOO_Engine_Glue_genMealy_retire_valack.cpp 88 2008-12-10 18:31:39Z rosiere $
4 *
5 * [ Description ]
6 *
7 */
8/*
9#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/OOO_Engine_Glue/include/OOO_Engine_Glue.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace core {
14namespace multi_ooo_engine {
15namespace ooo_engine {
16namespace ooo_engine_glue {
17
18
19#undef  FUNCTION
20#define FUNCTION "OOO_Engine_Glue::genMealy_retire_valack"
21  void OOO_Engine_Glue::genMealy_retire_valack (void)
22  {
23    log_begin(OOO_Engine_Glue,FUNCTION);
24    log_function(OOO_Engine_Glue,FUNCTION,_name.c_str());
25
26    uint32_t x=0;
27    for (uint32_t i=0; i<_param->_nb_rename_unit; ++i)
28      for (uint32_t j=0; j<_param->_nb_inst_retire[i]; ++j)
29        {
30          Tcontrol_t ACK             = PORT_READ(in_RETIRE_ACK             [x]   );
31          Tcontrol_t RENAME_UNIT_ACK = PORT_READ(in_RETIRE_RENAME_UNIT_ACK [i][j]);
32          Tcontrol_t COMMIT_UNIT_VAL = PORT_READ(in_RETIRE_COMMIT_UNIT_VAL [i][j]);
33         
34         
35         
36          Tcontrol_t VAL             = (RENAME_UNIT_ACK and
37                                        COMMIT_UNIT_VAL );
38          Tcontrol_t RENAME_UNIT_VAL = (ACK             and
39                                        COMMIT_UNIT_VAL );
40          Tcontrol_t COMMIT_UNIT_ACK = (ACK             and
41                                        RENAME_UNIT_ACK );
42         
43          PORT_WRITE(out_RETIRE_VAL             [x]   , VAL            );
44          PORT_WRITE(out_RETIRE_RENAME_UNIT_VAL [i][j], RENAME_UNIT_VAL);
45          PORT_WRITE(out_RETIRE_COMMIT_UNIT_ACK [i][j], COMMIT_UNIT_ACK);
46           
47          x ++;
48        }
49   
50    log_end(OOO_Engine_Glue,FUNCTION);
51  };
52
53}; // end namespace ooo_engine_glue
54}; // end namespace ooo_engine
55}; // end namespace multi_ooo_engine
56}; // end namespace core
57
58}; // end namespace behavioural
59}; // end namespace morpheo             
60*/
61#endif
Note: See TracBrowser for help on using the repository browser.