EasyManua.ls Logo

ARM Cortex-M3

ARM Cortex-M3
410 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Introduction
1-14 Copyright © 2005-2008 ARM Limited. All rights reserved. ARM DDI 0337G
Non-Confidential
Unrestricted Access
1.4 Prefetch Unit
The purpose of the Prefetch Unit (PFU) is to:
Fetch instructions in advance and forward PC relative branch instructions.
Fetches are speculative in the case of conditional branches
Detect Thumb 32-bit instructions and present these as a single instruction word.
Perform vector loads.
The PFU fetches instructions from the memory system that can supply one word each
cycle. The PFU buffers up to three word fetches in its FIFO, which means that it can
buffer up to three Thumb 32-bit instructions or six Thumb instructions.
The majority of branches that are generated as the ALU addition of PC plus immediate
are generated no later than the decode phase of the branch opcode. In the case of
conditionally executed branches, the address is speculatively presented (consuming a
fetch slot on the bus), and the forwarded result determines if the branch path flushes the
fetch queue or is preserved.
Short subroutine returns are optimized to take advantage of the forwarding behavior in
the case of BX LR.

Table of Contents

Related product manuals