![](/images/backgrounds/120559/120559-377232x1.png)
User’s Manual
IBM PowerPC 750GX and 750GL RISC Microprocessor
2.In clock cycle 1, instructions 2 and 3 enter the dispatch entries in the IQ. Instruction 4 (a second bc instruction) and 5 are fetched. The second bc instruction is predicted as taken. It can be folded, but it cannot be resolved until instruction 3 writes back.
3.In clock cycle 2, instruction 4 has been folded and instruction 5 has been flushed from the IQ. The two target instructions, T0 and T1, are both in the BTIC, so they are fetched in this cycle. Note that, even though the first bc instruction might not have resolved by this point (we can assume it has), the 750GX allows fetching from a second predicted branch stream. However, these instructions could not be dis- patched until the previous branch has resolved.
4.In clock cycle 3, target instructions
5.In clock cycle 4, instruction 3, on which the second branch instruction depended, writes back, and the branch prediction is proven incorrect. Even though T0 is in CQ1, from which it could be written back, it is not written back because the branch prediction was incorrect. All target instructions are flushed from their positions in the pipeline at the end of this clock cycle, as are any results in the Rename Registers.
After one clock cycle required to refetch the original instruction stream, instruction 5, the same instruction that was fetched in clock cycle 1, is brought back into the IQ from the instruction cache, along with three others (not all of which are shown).
6.4.2 Integer Unit Execution TimingThe 750GX has two integer units. The IU1 can execute all integer instructions; the IU2 can execute all integer instructions except multiply and divide instructions. As shown in Figure
The
•Floating Divide Single (fdivs)
•Floating Divide (fdiv)
•
•
•
•
•
Thus, they inhibit the dispatch of additional
For the fastest and most predictable
Instruction Timing | gx_06.fm.(1.2) |
Page 232 of 377 | March 27, 2006 |