source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Icache_Access/src/Icache_Access_transition.cpp @ 88

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

Almost complete design
with Test and test platform

  • Property svn:keywords set to Id
File size: 1.1 KB
Line 
1#ifdef SYSTEMC
2/*
3 * $Id: Icache_Access_transition.cpp 88 2008-12-10 18:31:39Z rosiere $
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/Core/Icache_Access/include/Icache_Access.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace core {
14namespace icache_access {
15
16
17#undef  FUNCTION
18#define FUNCTION "Icache_Access::transition"
19  void Icache_Access::transition (void)
20  {
21    log_begin(Icache_Access,FUNCTION);
22
23    if (PORT_READ(in_NRESET) == 0)
24      {
25        _priority->reset();
26      }
27    else
28      {
29        // next priority
30        _priority->transition();
31
32#ifdef STATISTICS
33        if (usage_is_set(_usage,USE_STATISTICS))
34          for (uint32_t i=0; i<_param->_nb_icache_port;i++)
35            {
36              (*_stat_nb_access         [i]) += _internal_ICACHE_REQ_NB_ACCESS         [i];
37              (*_stat_nb_access_conflit [i]) += _internal_ICACHE_REQ_NB_ACCESS_CONFLIT [i];
38            }
39#endif
40      }
41
42#if defined(STATISTICS) or defined(VHDL_TESTBENCH)
43    end_cycle ();
44#endif
45
46    log_end(Icache_Access,FUNCTION);
47  };
48
49}; // end namespace icache_access
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.