--- Mike Marty <mikem@xxxxxxxxxxx> wrote:
> > If I understand correctly, when Simics encounters
> a
> > data or instruction access, it stalls and passes
> the
> > request to Ruby. Then, Ruby handles the request
> > (SimicsDriver, SimicsProcessor, Sequencer,
> Coherence
> > Protocol) and returns some number of cycles. When
> > Simics receives the number of cycles, it waits
> until
> > that many cycles pass and continues simulation.
> Please
> > correct me if I'm wrong.
> >
>
> The model is that Ruby will stall a Simics processor
> indefinitely until a
> request finishes. Then it unstalls Simics and
> Simics will "replay" the
> stalled instruction. It doesn't actually return the
> # of cycles stalled
> to Simics.
Thanks for your prompt reply, Mike. Could you please
tell me where Ruby stalls and unstalls Simics? Is it
possible to stall Simics indefinitely and unstall it
in a magic callback, for example?
Thanks,
Dave
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
|