source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/src/Register_unit_Glue_genMealy_insert.cpp @ 60

Last change on this file since 60 was 60, checked in by rosiere, 17 years ago
File size: 1.6 KB
Line 
1#ifdef SYSTEMC
2//#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
3/*
4 * $Id$
5 *
6 * [ Description ]
7 *
8 */
9
10#include "Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/Register_unit_Glue/include/Register_unit_Glue.h"
11
12namespace morpheo                    {
13namespace behavioural {
14namespace core {
15namespace multi_execute_loop {
16namespace execute_loop {
17namespace register_unit {
18namespace register_unit_glue {
19
20
21#undef  FUNCTION
22#define FUNCTION "Register_unit_Glue::genMealy_insert"
23  void Register_unit_Glue::genMealy_insert (void)
24  {
25    log_printf(FUNC,Register_unit_Glue,FUNCTION,"Begin");
26
27    for (uint32_t i=0; i<_param->_nb_ooo_engine; i++)
28      {
29        uint32_t x=_param->_nb_inst_insert_rob [i];
30
31        for (uint32_t j=0; j<x; j++)
32          {
33            Tcontrol_t val = PORT_READ(in_INSERT_ROB_VAL [i][j]);
34            Tcontrol_t gpr_use = PORT_READ(in_INSERT_ROB_RD_USE [i][j]);
35            Tcontrol_t spr_use = PORT_READ(in_INSERT_ROB_RE_USE [i][j]);
36            Tcontrol_t gpr_ack = PORT_READ(in_INSERT_ROB_GPR_STATUS_ACK [i][j]);
37            Tcontrol_t spr_ack = PORT_READ(in_INSERT_ROB_SPR_STATUS_ACK [i][j]);
38           
39            PORT_WRITE(out_INSERT_ROB_ACK [i][j], gpr_ack and spr_ack);     
40            PORT_WRITE(out_INSERT_ROB_GPR_STATUS_VAL [i][j], val and gpr_use and spr_ack);
41            PORT_WRITE(out_INSERT_ROB_SPR_STATUS_VAL [i][j], val and spr_use and gpr_ack);
42          }
43      }
44
45    log_printf(FUNC,Register_unit_Glue,FUNCTION,"End");
46  };
47
48}; // end namespace register_unit_glue
49}; // end namespace register_unit
50}; // end namespace execute_loop
51}; // end namespace multi_execute_loop
52}; // end namespace core
53
54}; // end namespace behavioural
55}; // end namespace morpheo             
56#endif
57//#endif
Note: See TracBrowser for help on using the repository browser.