source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Generic/RegisterFile/src/Parameters.cpp @ 137

Last change on this file since 137 was 137, checked in by rosiere, 14 years ago

Various modif (add test, and vhdl)

  • Property svn:keywords set to Id
File size: 3.0 KB
Line 
1/*
2 * $Id: Parameters.cpp 137 2010-02-16 12:35:48Z rosiere $
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Generic/RegisterFile/include/Parameters.h"
9
10namespace morpheo {
11namespace behavioural {
12namespace generic {
13namespace registerfile {
14
15
16  Parameters::Parameters (morpheo::behavioural::generic::registerfile::registerfile_monolithic  ::Parameters * param)
17  {
18    log_printf(FUNC,RegisterFile,"Parameters","Begin");
19
20    _instance          = instance_RegisterFile_Monolithic;
21    _nb_port_read      = param->_nb_port_read ;
22    _nb_port_write     = param->_nb_port_write;
23    _nb_word           = param->_nb_word      ; 
24    _size_word         = param->_size_word    ; 
25    _size_address      = param->_size_address ;
26    _have_port_address = param->_have_port_address;
27
28    _param_registerfile_monolithic   = param;
29    _param_registerfile_multi_banked = NULL;
30
31    test();
32
33    log_printf(FUNC,RegisterFile,"Parameters","End");
34  };
35
36  Parameters::Parameters (morpheo::behavioural::generic::registerfile::registerfile_multi_banked::Parameters * param) :
37    _instance (instance_RegisterFile_Multi_Banked),
38    _nb_port_read      (param->_nb_port_read ),
39    _nb_port_write     (param->_nb_port_write),
40    _nb_word           (param->_nb_word      ), 
41    _size_word         (param->_size_word    ), 
42    _size_address      (param->_size_address ),
43    _have_port_address (param->_have_port_address)
44  {
45    log_printf(FUNC,RegisterFile,"Parameters","Begin");
46
47    _param_registerfile_monolithic   = NULL;
48    _param_registerfile_multi_banked = param;
49
50    test();
51
52    log_printf(FUNC,RegisterFile,"Parameters","End");
53  };
54 
55//   Parameters::Parameters (Parameters & param):
56//     _instance          (param._instance     ),
57//     _nb_port_read      (param._nb_port_read ),
58//     _nb_port_write     (param._nb_port_write),
59//     _nb_word           (param._nb_word      ),
60//     _size_word         (param._size_word    ),
61//     _size_address      (param._size_address ),
62//     _have_port_address (param._have_port_address)
63//   {
64//     log_printf(FUNC,RegisterFile,"Parameters (copy)","Begin");
65
66//     _param_registerfile_multi_banked = param._param_registerfile_multi_banked;
67//     _param_registerfile_monolithic   = param._param_registerfile_monolithic;
68//     test();
69//     log_printf(FUNC,RegisterFile,"Parameters (copy)","End");
70//   };
71
72  Parameters::~Parameters () 
73  {
74    log_printf(FUNC,RegisterFile,"~Parameters","Begin");
75    log_printf(FUNC,RegisterFile,"~Parameters","End");
76  };
77
78  void Parameters::copy (void) 
79  {
80    log_printf(FUNC,RegisterFile,"copy","Begin");
81
82    throw ERRORMORPHEO("RegisterFile::copy",_("Invalid copy"));
83
84//     if (_instance == instance_RegisterFile_Monolithic)
85//       COPY(_param_registerfile_monolithic);
86//     if (_instance == instance_RegisterFile_Multi_Banked)
87//       COPY(_param_registerfile_multi_banked);
88   
89    log_printf(FUNC,RegisterFile,"copy","End");
90  };
91
92}; // end namespace registerfile
93}; // end namespace generic
94
95}; // end namespace behavioural
96}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.