Hi Korey, Thanks for replying. Yeah, I was also slightly skeptical to use the term "pipeline", but I could not come up with some thing appropriate :).
Yes, you are correct in some sense that I want to be able to monitor the activity in the actual instruction pipeline and do some post-processing on what I monitor. So, this will be kind of a parallel helper unit, which would monitor certain events in the instruction pipeline (but would not be tied to any stage/instruction itself) and should be able to do some independent processing on it. But this post-processing work cannot be done in a single cycle and so, I want it to be split into stages of work that can talk to each other (that's why termed it a pipeline). Finally, in my case, the helper unit's work will be used to aid in prefetching and hence I want it to be timed properly. Do I make sense? Also, I would want to use certain resources from the resource pool(if there are free slots) during these post processing steps in the helper unit. But I was unsure how could I do that given that current resources can be only used/issued by instructions. Thanks, Reena On Fri, Apr 29, 2011 at 8:18 AM, Korey Sewell <[email protected]> wrote: > "What I mean is that this parallel pipeline might be able to watch over the > main instruction pipeline, but would do not instruction processing. " > How is it a pipeline if no instructions are going through it? > > Sounds like you want to attach some type of monitoring unit. If so, you can > probably add something to the cpu->tick() function which calls tick() on all > the pipeline stages. You can either do some monitoring before each pipeline > stage is run or at the end of each cycle do some monitoring on the whole > pipeline. > > > -- > - Korey > > _______________________________________________ > m5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >
_______________________________________________ m5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
