Works fine with the include!!

I was going crazy trying to figure out what the python parser was doing and it was such a silly problem... Thanks a million to both of you!!

Lluc

On Fri, 08 Mar 2013 11:17:12 -0500, Tao Zhang wrote:
Hi Lluc,

you may include #include "params/MyMemory.hh" in my_mem.hh.

-Tao

On 03/08/2013 11:02 AM, Lluc Alvarez Marti wrote:
Hi!

I'm trying to create a MyMemory class that is a subclass of the SimpleMemory class in order to have a new kind of memory with additional features. Unfortunately, I'm having some troubles, I hope someone can help me. This is basically what I've done:

1) I've added a my_mem.hh in src/mem that declares the class as follows:

     #include "mem/simple_mem.hh"
     class MyMemory : public SimpleMemory
     {
       public:
         MyMemory(const MyMemoryParams *p);
         virtual ~MyMemory() {}
         int extension;
     }

2) I've added the corresponding my_mem.cc in src/mem that contains the following:

    #include "mem/my_mem.hh"
MyMemory::MyMemory(cont MyMemoryParams *p) : SimpleMemory(p) { extension = 1; } MyMemory* MyMemoryParams::create() { return new MyMemory(this); }

3) I've added a MyMemory.py in src/mem that contains the following:

    from m5.params import *
    from SimpleMemory import *
    class MyMemory(SimpleMemory):
        type = 'MyMemory'
        cxx_header = "mem/my_mem.hh"
        port = SlavePort("Slave ports")
latency = Param.Latency('30ns', "Request to response latency") latency_var = Param.Latency('0ns', "Request to response latency variance") bandwidth = Param.MemoryBandwidth('12.8GB/s',"Combined read and write bandwidth")

4) I've added the following lines in src/mem/SConscript:

    SimObject('MyMemory.py')
    Source('my_mem.cc')

5) I've tried to use it modifying the configs/examples/se.py, changing the following:

  -   physmem = SimpleMemory(range=AddrRange("512MB"))
  +   physmem = MyMemory(range=AddrRange("512MB"))


The problem I'm having is that, when I compile, I get an error saying that MyMemoryParams does not exist:

build/X86/mem/my_mem.hh:66:23: error: 'MyMemoryParams' does not name a type.

Can anybody help me on trying to figure out what is happening? I'm basically trying to mimic the way the SimpleMemory class is declared to declare the MyMemory class, am I doing something wrong? I've been unable to find anything related to the declaration of the SimpleMemoryParams, I guess it's the python system that generates it by itself, but fore some reason it's not doing it for the MyMemoryParams...

Any kind help is appreciated.

Thanks in advance,

Lluc

WARNING / LEGAL TEXT: This message is intended only for the use of the
individual or entity to which it is addressed and may contain
information which is privileged, confidential, proprietary, or exempt
from disclosure under applicable law. If you are not the intended
recipient or the person responsible for delivering the message to the
intended recipient, you are strictly prohibited from disclosing,
distributing, copying, or in any way using this message. If you have
received this communication in error, please notify the sender and
destroy and delete any copies you may have received.

http://www.bsc.es/disclaimer
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


WARNING / LEGAL TEXT: This message is intended only for the use of the
individual or entity to which it is addressed and may contain
information which is privileged, confidential, proprietary, or exempt
from disclosure under applicable law. If you are not the intended
recipient or the person responsible for delivering the message to the
intended recipient, you are strictly prohibited from disclosing,
distributing, copying, or in any way using this message. If you have
received this communication in error, please notify the sender and
destroy and delete any copies you may have received.

http://www.bsc.es/disclaimer
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to