Hi Steve,
Thank you very much for your soon answer! I am still confused with the use of sendTiming in SimpleTimingPort::recvTIming. I don't want to send the packet from the recvTiming(pkt) immediately, for example, I want to buffer a lot of packets, schedule them, then select one of them to send to implement out-of-order memory access. However, when I add some operation in SimpleTimingPort:recvTiming() to control the execution of sendTimng, I find that if sendTiming is not executed, then there is no new packet coming from bus. If that is true, how to implement the out-of-order scheduling? Another question is that I find the sendTiming function can only be called in the SimpleTimingPort::recvTiming other than a class devrived from SimpleTimingPort, such as MemoryPort. If it is called from a member function of MemoryPort, there is no new packet either and the simulation stops. Could you also explain that? Thank you very much! Jun Pang On 10/9/07, Steve Reinhardt <[EMAIL PROTECTED]> wrote: > > Hi Jun, > > Hard to know what's going wrong from your description. What happens if > you take your new code but keep the same fixed latency as the old code? In > that case the execution path should be identical. Check out the > util/tracediff script for a good way to track down differences between two > runs that should be doing the same thing but aren't (see the comments at the > top of the script for usage info). > > Also it might be easier to debug an SE-mode program first and make sure > that works before trying it under FS mode. You can use the regression tests > for example. > > Steve > > > On 10/8/07, Jun Pang <[EMAIL PROTECTED]> wrote: > > > Hi, > > > > > > > > I want to implement an out-of-order memory access scheduling with M5 > > simulator 2.0.3 edition. First, I will put some packets in a buffer and > > schedule it, then as soon as a latency of one packet is obtained through my > > algorithm, it will be sent by calling SimpleTimngPort::sendTiming. So, > > instead of called by SimpleTimingPort::recvTiming in the tport.cc, the > > sendTiming is called in my function and get a latency calculated by the > > function as an argument of sendTiming However, when I recompile the source > > and run the simulator in full system mode, the m5term cannot connect the > > host and shows information as follows: > > > > > > > > ==== m5 slave console: Console 0 ==== > > > > > > > > What causes m5 to stop here? What's wrong with my implementation? I > > wonder if I could put the sendTiming in somewhere else instead of its > > original SimpleTimingPort::recvTiming. Thank you very much! > > > > > > > > Jun Pang > > > > _______________________________________________ > > m5-users mailing list > > m5-users@m5sim.org > > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users > > > > > _______________________________________________ > m5-users mailing list > m5-users@m5sim.org > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >
_______________________________________________ m5-users mailing list m5-users@m5sim.org http://m5sim.org/cgi-bin/mailman/listinfo/m5-users