4a5
> * Copyright (c) 2010-2013 Advanced Micro Devices, Inc.
28c29
< * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.”
---
> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35,37d35
< #include "XML_Parse.h"
< #include "parameter.h"
< //#include "io.h"
39,41d36
< //#include "Undifferentiated_Core_Area.h"
< #include <vector>
<
42a38,39
> #include "cachearray.h"
> #include "parameter.h"
44,45c41,42
< class MCBackend : public Component {
< public:
---
> class MCBackend : public McPATComponent {
> public:
48,51c45,46
< enum MemoryCtrl_type mc_type;
< MCParam mcp;
< statsDef tdp_stats;
< statsDef rtp_stats;
---
> MCParameters mcp;
> MCStatistics mcs;
53,58c48,53
< powerDef power_t;
< MCBackend(InputParameter* interface_ip_, const MCParam & mcp_, enum MemoryCtrl_type mc_type_);
< void compute();
< void computeEnergy(bool is_tdp=true);
< void displayEnergy(uint32_t indent = 0,int plevel = 100, bool is_tdp=true);
< ~MCBackend(){};
---
>
> MCBackend(XMLNode* _xml_data, InputParameter* interface_ip_,
> const MCParameters & mcp_, const MCStatistics & mcs_);
> void computeArea();
> void computeEnergy();
> ~MCBackend() {};
61,62c56,57
< class MCPHY : public Component {
< public:
---
> class MCPHY : public McPATComponent {
> public:
65,75c60,68
< enum MemoryCtrl_type mc_type;
< MCParam mcp;
< statsDef tdp_stats;
< statsDef rtp_stats;
< statsDef stats_t;
< powerDef power_t;
< MCPHY(InputParameter* interface_ip_, const MCParam & mcp_, enum MemoryCtrl_type mc_type_);
< void compute();
< void computeEnergy(bool is_tdp=true);
< void displayEnergy(uint32_t indent = 0,int plevel = 100, bool is_tdp=true);
< ~MCPHY(){};
---
> MCParameters mcp;
> MCStatistics mcs;
> statsDef stats_t;
>
> MCPHY(XMLNode* _xml_data, InputParameter* interface_ip_,
> const MCParameters & mcp_, const MCStatistics & mcs_);
> void computeArea();
> void computeEnergy();
> ~MCPHY() {};
78,87c71,76
< class MCFrontEnd : public Component {
< public:
< ParseXML *XML;
< InputParameter interface_ip;
< enum MemoryCtrl_type mc_type;
< MCParam mcp;
< selection_logic * MC_arb;
< ArrayST * frontendBuffer;
< ArrayST * readBuffer;
< ArrayST * writeBuffer;
---
> class MCFrontEnd : public McPATComponent {
> public:
> CacheArray* frontendBuffer;
> CacheArray* readBuffer;
> CacheArray* writeBuffer;
> selection_logic* MC_arb;
89,91c78,84
< MCFrontEnd(ParseXML *XML_interface,InputParameter* interface_ip_, const MCParam & mcp_, enum MemoryCtrl_type mc_type_);
< void computeEnergy(bool is_tdp=true);
< void displayEnergy(uint32_t indent = 0,int plevel = 100, bool is_tdp=true);
---
> InputParameter interface_ip;
> MCParameters mcp;
> MCStatistics mcs;
>
> MCFrontEnd(XMLNode* _xml_data,
> InputParameter* interface_ip_, const MCParameters & mcp_,
> const MCStatistics & mcs_);
95,104c88,92
< class MemoryController : public Component {
< public:
< ParseXML *XML;
< InputParameter interface_ip;
< enum MemoryCtrl_type mc_type;
< MCParam mcp;
< MCFrontEnd * frontend;
< MCBackend * transecEngine;
< MCPHY * PHY;
< Pipeline * pipeLogic;
---
> class MemoryController : public McPATComponent {
> public:
> InputParameter interface_ip;
> MCParameters mcp;
> MCStatistics mcs;
106,107c94,95
< //clock_network clockNetwork;
< MemoryController(ParseXML *XML_interface,InputParameter* interface_ip_, enum MemoryCtrl_type mc_type_);
---
> MemoryController(XMLNode* _xml_data, InputParameter* interface_ip_);
> void initialize_params();
109,110d96
< void computeEnergy(bool is_tdp=true);
< void displayEnergy(uint32_t indent = 0,int plevel = 100, bool is_tdp=true);
112a99
>