![Infineon Technologies XC2200 User Manual Download Page 144](http://html1.mh-extra.com/html/infineon-technologies/xc2200/xc2200_user-manual_2055439144.webp)
XC2200 Derivatives
System Units (Vol. 1 of 2)
Central Processing Unit (CPU)
User’s Manual
4-6
V2.1, 2008-08
CPUSV2_X, V2.2
Figure 4-2
IFU Block Diagram
On the Fetch Stage, the prefetched instructions are stored in the instruction FIFO. The
Branch Folding Unit (BFU) allows processing of branch instructions in parallel with
preceding instructions. To achieve this the BFU preprocesses and reformats the branch
instruction. First, the BFU defines (calculates) the absolute target address. This address
— after being combined with branch condition and branch attribute bits — is stored in
the same FIFO step as the preceding instruction. The target address is also used to
prefetch the next instructions.
For the Processing Pipeline, both instructions are fetched from the FIFO again and are
executed in parallel. If the instruction flow was predicted incorrectly (or FIFO is empty),
the two stages of the IFU can be bypassed.
Note: Pipeline behavior in case of a incorrectly predicted instruction flow is described in
the following sections.
MCA05501
Branch Detection and Prediction Logic
64-bit
Data
Instruction Buffer (up to 3 Instr.)
Instruction
FIFO
Branch Folding
Unit
Prefetch
Stage
By
pas
s Fe
tc
h t
o De
co
d
e
By
pas
s Pr
ef
e
tc
h
t
o Dec
od
e
Fetch
Stage
Decode
Stage
Instruction Buffer (up to 1 Instr.)
Injection and Exception
Handler
TFR
VECSEG
Control Registers
CPUCON2
Return Stack
CPUCON1
24-bit
Address
IFU Control
IFU Pipeline
CSP
IP
+/-
Instruction Buffer (up to 6 Instr.)