source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_unit_Glue/src/Ifetch_unit_Glue_genMealy_event.cpp @ 123

Last change on this file since 123 was 123, checked in by rosiere, 15 years ago

1) Fix performance
2) add auto generation to SPECINT2000
3) add reset in genMoore and genMealy

  • Property svn:keywords set to Id
File size: 1.4 KB
Line 
1#ifdef SYSTEMC
2/*
3 * $Id: Ifetch_unit_Glue_genMealy_event.cpp 123 2009-06-08 20:43:30Z rosiere $
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_unit_Glue/include/Ifetch_unit_Glue.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace core {
14namespace multi_front_end {
15namespace front_end {
16namespace ifetch_unit {
17namespace ifetch_unit_glue {
18
19
20#undef  FUNCTION
21#define FUNCTION "Ifetch_unit_Glue::genMealy_event"
22  void Ifetch_unit_Glue::genMealy_event (void)
23  {
24    log_printf(FUNC,Ifetch_unit_Glue,FUNCTION,"Begin");
25
26    if (PORT_READ(in_NRESET))
27      {
28    Tcontrol_t address_ack = PORT_READ(in_EVENT_ADDRESS_ACK);
29    Tcontrol_t queue_ack   = PORT_READ(in_EVENT_QUEUE_ACK  );
30    Tcontrol_t val         = PORT_READ(in_EVENT_VAL        );
31
32    PORT_WRITE(out_EVENT_ACK        , address_ack and queue_ack);
33    PORT_WRITE(out_EVENT_ADDRESS_VAL, val         and queue_ack);
34    PORT_WRITE(out_EVENT_QUEUE_VAL  , address_ack and val);
35      }
36    else
37      {
38    PORT_WRITE(out_EVENT_ACK        , 0);
39    PORT_WRITE(out_EVENT_ADDRESS_VAL, 0);
40    PORT_WRITE(out_EVENT_QUEUE_VAL  , 0);
41      }
42
43    log_printf(FUNC,Ifetch_unit_Glue,FUNCTION,"End");
44  };
45
46}; // end namespace ifetch_unit_glue
47}; // end namespace ifetch_unit
48}; // end namespace front_end
49}; // end namespace multi_front_end
50}; // end namespace core
51
52}; // end namespace behavioural
53}; // end namespace morpheo             
54#endif
Note: See TracBrowser for help on using the repository browser.