User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 65
UG585 (v1.11) September 27, 2016
Chapter 3: Application Processing Unit
Pipeline
The pipeline implemented in the Cortex-A9 CPU employs advanced fetching of instructions and
branch prediction that decouples the branch resolution from potential memory latency-induced
instruction stalls. In the Cortex-A9 CPU, up to four instruction-cache lines are pre-fetched to reduce
the impact of memory latency on the instruction throughput. The CPU fetch unit can continuously
forward two to four instructions per cycle to the instruction decode buffer to ensure efficient
superscalar pipeline utilization. The CPU implements a superscalar decoder capable of decoding two
full instructions per cycle, and any of the four CPU pipelines can select instructions from the issue
queue. The parallel pipelines support concurrent execution across full dual arithmetic units,
load-store unit, plus resolution of any branch each cycle.
The Cortex-A9 CPU employs speculative execution of instructions enabled by dynamic renaming of
physical registers into an available pool of virtual registers. The CPU employs this virtual register
renaming to eliminate dependencies across registers without jeopardizing the correct execution of
programs. This feature allows code acceleration through an effective hardware based unrolling of
X-Ref Target - Figure 3-3
Figure 3-3: Cortex-A9 Architecture
CoreSight Debug
Access Port
Coresight
Debug
Cortex A9 Processor
Profiling Monitor
Block
Dual Instruction
Decode Stage
Instruction
Queue
Prediction
Queue
Fast Loop Mode
Instruction
Cache
Instruction Pre-fetch Stage
Branch Prediction
Global History Buffer
Branch Target
Address Cache
(BTAC)
Return Stack
Register Rename Stage
Virtual to Physical
Register Pool
Auto
Pre-fetcher
Data
Cache
Load-Store Unit
Store Buffer
Program Trace Unit
MemorySystem
µTLB
MMU
Instruction
Queue
&
Dispatch
3 + 1 Dispatch Stage
Out of Order
Multi-issue
with Speculation
ALU/MUL
ALU
FPU/NEON
Address
Out of Order
Write-back
Stage
Coresight
Trace
Branches
Instruction
Interface
Data
Interface
UG585_c3_04_030712