source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/Shifter/src/Shifter_deallocation.cpp

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

1) Stat_list : fix retire old and new register bug
2) Stat_list : remove read_counter and valid flag, because validation of destination is in retire step (not in commit step)
3) Model : add class Model (cf Morpheo.sim)
4) Allocation : alloc_interface_begin and alloc_interface_end to delete temporary array.
5) Script : add distexe.sh
6) Add Comparator, Multiplier, Divider. But this component are not implemented
7) Software : add Dhrystone

  • Property svn:keywords set to Id
File size: 1.6 KB
Line 
1/*
2 * $Id: Shifter_deallocation.cpp 112 2009-03-18 22:36:26Z rosiere $
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Generic/Shifter/include/Shifter.h"
9#include "Behavioural/include/Allocation.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace generic {
14namespace shifter {
15
16
17  void Shifter::deallocation (void)
18  {
19    if (usage_is_set(_usage,USE_SYSTEMC))
20      { 
21#if (defined(STATISTICS) || defined (VHDL_TESTBENCH))
22        delete     in_CLOCK;
23#endif
24
25        DELETE1_SIGNAL( in_SHIFTER_DATA       ,_param->_nb_port,_param->_size_data);
26        if (_param->_shift_value == 0)
27        DELETE1_SIGNAL( in_SHIFTER_SHIFT      ,_param->_nb_port,_param->_size_shift);
28        if (_param->_direction == external_direction)
29        DELETE1_SIGNAL( in_SHIFTER_DIRECTION  ,_param->_nb_port,1);
30        if (_param->_rotate == external_rotate)
31        DELETE1_SIGNAL( in_SHIFTER_TYPE       ,_param->_nb_port,1);
32        if (_param->_carry == external_carry)
33        DELETE1_SIGNAL( in_SHIFTER_CARRY      ,_param->_nb_port,1);
34        if (_param->_carry == external_completion)
35        {
36        if (_param->_type_completion_bool == true)
37          {
38        DELETE1_SIGNAL( in_SHIFTER_CARRY_IN   ,_param->_nb_port,1);
39          }
40        else
41          {
42        DELETE1_SIGNAL( in_SHIFTER_COMPLETION ,_param->_nb_port,_param->_size_data_completion);
43          }
44        }
45        DELETE1_SIGNAL(out_SHIFTER_DATA       ,_param->_nb_port,_param->_size_data);
46      }
47
48    delete _component;
49
50  };
51
52}; // end namespace shifter
53}; // end namespace generic
54
55}; // end namespace behavioural
56}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.