Re: [Gems-users] Instruction Flow


Date: Thu, 8 Sep 2005 13:30:57 -0500 (CDT)
From: Mike Marty <mikem@xxxxxxxxxxx>
Subject: Re: [Gems-users] Instruction Flow
>    If I understand your question, you are asking about how Opal can
> simulate executing speculatively without the use of MAI.
>
>    Opal can do this because it is also a functional simulator that
> is mostly correct in functional execution.  Opal fetches instructions from Simics through an
> API call, which allows it to obtain an instruction given a PC value.  The
> PC value can be updated speculatively through branch prediction (thus
> affecting control flow).
> Because Opal simulates an  OoO speculative processor it can still fetch
> and execute (but of course not retire) instructions in speculative mode.
>
>    Since every instruction is checked on retirement this allows Opal to
> model the timing of an OoO processor but maintain the
> functional correctness of the in-order Simics processor it is checking with.
>

And to state the obvious, Opal is able to step Simics ahead several
instructions in a single cycle which, in attaining a higher IPC, is
ultimately the goal of an aggressive OoO processor.
[← Prev in Thread] Current Thread [Next in Thread→]