Hi all,
      I’m trying to implement a memory access scheduling algorism now. I will 
calculate latency for each packet, and invoke SimpleTimingPort::sendTiming() in 
my function. I want to add my function into class MemoryPort, but I find that 
when class PhysicalMemory is constructed, it implements three MemoryPort. Why 
does a PhysicalMemory need three ports? Is there only one port binding to CPU? 
Do these three port all have data accessing?
     I have added my code into src, and run some benchmarks. I find all these 
three ports have data access to memory at the same time. Multi- recvTiming() 
are invoked, and program runs wrongly. And when I run M5-2.0.3 originally, 
SimpleTimingPort::recvTiming() is invoked from only one port sequentially, and 
it even does not access MemoryPort, just from SimpleTimingPort. I don’t know 
what make this change. My codes are all added into class MemoryPort, and I want 
to know if it is right to add here.
      I will appreciate so much if you can tell me detailedly how it works when 
one access is sent from CPU to memory. And what is the function of these three 
ports individually?
      Thank you all so much!
 
      Lei Yang   
_______________________________________________
m5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to