Hi,
1) fetchToDecodeDelay is used by Decode to pick instructions that were fetched
fetchToDecodeDelay cycles ago, so really, it increases the pipe latency.
Same for the others, although if you increase issueToExecute delay beyond 1, I
believe that you will forbid two instructions to execute back-to-back. So it's
safer to increase the other delays if you want a longer pipeline but not one
with low IPC accross the board.
In addition, and although it seems to have been fixed (may be wrong), you may
want to check that queuing happens correctly in the frontend so that you don't
get higher than necessary restart penalties when the pipeline stalls because of
resource contention (e.g., full ROB).
2) Instructions are added to the unified instruction queue at Dispatch
(iew_impl.hh) and scheduled in scheduleReadyInsts() in inst_queue_impl.hh.
Cheers,
Arthur Perais.
----- Mail original -----
> De: "Virendra Kumar Pathak" <kumarvir.pat...@gmail.com>
> À: gem5-users@gem5.org
> Envoyé: Dimanche 1 Novembre 2015 16:25:39
> Objet: Re: [gem5-users] CPU Configuration
> Hi,
> I have similar doubt regarding extending the number of pipeline stages in
> gem5.
> I am trying to extend default 7-stage o3 cpu pipeline to 15-stage.
> Any guidance on below questions will be highly appreciated.
> 1) How the delay parameters like decodeToFetchDelay & fetchToDecodeDelay are
> used in modeling the pipeline stages?
> Look like fetchToDecodeDelay & fetchWidth are used in calculating
> skidBufferMax. And decodeToFetchDelay is linked with timeBuffer.
> Below is the snippet code from cpu/o3/fetch_impl.hh
> line 77: skidBufferMax = (fetchToDecodeDelay + 1) * params->fetchWidth;
> line 187: fromFetch = fetchQueue->getWire(-fetchToDecodeDelay);
> But I am confused how they increase the number of pipeline stages.
> 2) In gem5, At which stage Unified scheduler or reservation station is
> implemented ? Is it implemented by instruction queue itself ?
> Thanks in advance for your time.
> with regards,
> Virendra Kumar Pathak
> _______________________________________________
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users