Hardware Reference
In-Depth Information
JTAG
interface
ETM
interface
Coprocessor
interface
VIC
interface
Vector floating
point coprocessor
Instruction
cache
Data
cache
Prefetch
unit
Load store
unit
Integer
core
Instruction
TCM
Data
TCM
L1 data side
controller
L1 instruction
side controller
Memory
management unit
(MMU)
System
metrics
L2 data
interface
Peripheral
port
L2 DMA
interface
L2 instruction
interface
Power
control
Figure 1-2. The block diagram of the ARM1176JZF-S core
The ARM11 core is built around the ARMv6 architecture: it brings advancements in the processor's pipeline,
caching, and multimedia aspects of the core.
Let's talk about the ARM11 core in some detail now. It is built around an integer core that has three main
instruction sets.
The ARM instruction set is the main instruction set, and it is where most of your code will
execute.
The 16-bit thumb instruction set is a subset of the most common instructions from the main
ARM instruction set. The thumb instruction set will be of most use to embedded devices
but won't be of much use to the projects in this topic.
The last set is the Java byte code instruction set that supports hardware and software execution
of variable-length Java byte codes.
In addition to the three main instruction sets, the ARM has two subsets of instructions called media and digital
signal processing (DSP) instructions, which help speed up multimedia functions, especially the Single Instruction
Mutable Data (SIMD) instruction. The SIMD speeds up MPEG-4 and digital audio by a factor of two. This makes
all the difference in the world if you were listening to your MP3 collection. To play an average MP3 file you would
need twice as much CPU power without SIMD instructions to play the exact same song. More power used on the
CPU would mean more battery power used on your portable MP3 player. No one would like an MP3 player with
only 15 minutes of runtime.
 
Search WWH ::




Custom Search