source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/src/RegisterFile_Multi_Banked_deallocation.cpp @ 112

Last change on this file since 112 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.8 KB
Line 
1/*
2 * $Id: RegisterFile_Multi_Banked_deallocation.cpp 112 2009-03-18 22:36:26Z rosiere $
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Generic/RegisterFile/RegisterFile_Multi_Banked/include/RegisterFile_Multi_Banked.h"
9#include "Behavioural/include/Allocation.h"
10
11namespace morpheo                    {
12namespace behavioural {
13namespace generic {
14namespace registerfile {
15namespace registerfile_multi_banked {
16
17
18  void RegisterFile_Multi_Banked::deallocation (void)
19  {
20    log_printf(FUNC,RegisterFile_Multi_Banked,"deallocation","Begin");
21
22    if (usage_is_set(_usage,USE_SYSTEMC))
23      {
24        delete in_CLOCK;
25        delete in_NRESET;
26     
27        DELETE1_SIGNAL( in_READ_VAL     ,_param->_nb_port_read,1);
28        DELETE1_SIGNAL(out_READ_ACK     ,_param->_nb_port_read,1);
29        DELETE1_SIGNAL( in_READ_ADDRESS ,_param->_nb_port_read,_param->_size_address);
30        DELETE1_SIGNAL(out_READ_DATA    ,_param->_nb_port_read,_param->_size_word);
31       
32        DELETE1_SIGNAL( in_WRITE_VAL    ,_param->_nb_port_write,1);
33        DELETE1_SIGNAL(out_WRITE_ACK    ,_param->_nb_port_write,1);
34        DELETE1_SIGNAL( in_WRITE_ADDRESS,_param->_nb_port_write,_param->_size_address);
35        DELETE1_SIGNAL( in_WRITE_DATA   ,_param->_nb_port_write,_param->_size_word);
36       
37        DELETE2(reg_DATA                ,_param->_nb_bank,_param->_nb_word);
38       
39        DELETE1(internal_WRITE_VAL      ,_param->_nb_port_write);
40        DELETE1(internal_WRITE_BANK     ,_param->_nb_port_write);
41        DELETE1(internal_WRITE_NUM_REG  ,_param->_nb_port_write);
42      }       
43
44    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
45
46    delete _component;
47
48    log_printf(FUNC,RegisterFile_Multi_Banked,"deallocation","End");
49  };
50
51}; // end namespace registerfile_multi_banked
52}; // end namespace registerfile
53}; // end namespace generic
54
55}; // end namespace behavioural
56}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.