ARM system-on-chip architecture (second edition © 2000 by Steve Furber - ADDISON-WESLEY)



contains the following data sheets :


1/ An Introduction to Processor Design - Processor Architecture and organization - Abstraction in hardware design - MU0 - a simple processor - instruction set design - Processor design trade-offs - The reduced Instruction Set Computer - Design for low power consumption - Examples and exercises 2/ The ARM Architecture - The Acorn RISC Machine - Architectural inheritance - The ARM's programmer's model - Examples and exercises 3/ ARM Assembly language Programming - Data processing instructions - Data transfer instructions - Control flow instructions - Writing simple assembly language programs - Examples and exercises 4/ Organization and Implementation - 3-stage pipeline ARM Organization - 5-stage pipeline organization - ARM instruction execution - ARM implementation - The ARM coprocessor interface - Examples and exercises 5/ The ARM Instruction Set - Introduction - Exceptions - Conditional execution - Branch and Branch with Link and eXchange (BX, BLX) - Software Interrupts (SWI) - Data processing instructions - Multiply instructions - Count leading zeros (CLZ - architecture v5T only) - Single word and unsigned byte data transfer instructions - Half-word and signed byte data transfer instructions - Multiple register transfer instructions (SWP) - Status register transfer instructions - Coprocessor instructions - Coprocessor data operations - Coprocessor data transfers - Coprocessor register transfers - Breakpoint instruction (BRK - architecture v5T only) - Unused instruction space - Memory faults - ARM architecture variants - Example and exercises 6/ Architectural Support for High-Level Languages - Abstraction in software design - data types - Floating-point data types - The ARM floating-point architecture - Expressions - Conditional statements - Loops - Functions and procedures - Use of memory - Run-time environment - Example and Exercises 7/ The Thumb Instruction Set - The Thumb bit in the CPSR - The Thumb programmer's model - Thumb branch instructions - Thumb software interrupt instructions - Thumb single register data transfer instructions - Thumb multiple register data transfer instructions - Thumb breakpoint instruction - Thumb implementation - Thumb applications - Example and exercises 8/ Architectural Support for System Development - The ARM memory interface - The Advanced Microcontroller Bus Architecture (AMBA) - The ARM reference peripheral specification - Hardware system prototyping tools - The ARMulator - The JTAG boundary scan test architecture - Embedded Trace - Signal processing support - Example and exercises 9/ ARM Processor Cores - ARM7TDMI - ARM8 - ARM9TDMI - ARM10TDMI - Discussion - Example and exercises 10/ Memory hierarchy - Memory size and speed - on-chip memory - Caches - Cache design - an example - Memory management - Example and exercises 11/ Architectural Support for Operating Systems - An introduction to operating systems - The ARM system control coprocessor - CP15 protection unit registers - ARM MMU architecture - Synchronization - Context switching - Input/Output - Example and exercises 12/ ARM CPU Cores - The ARM710T, ARM720T and ARM740T - The ARM810 - The StrongARM SA-110 - The ARM920T and ARM940T - The ARM946E-S and ARM966E-S - The ARM1020E - Discussions - Example and exercises 13/ Embedded ARM Applications - The VLSI Ruby II Advanced Communication Processor - The VLSI ISDN Subsriber Processor - The OneC(tm) VWS22100 GSM chip - The Ericsson-VLSI Bluetooth Baseband Controller - The ARM7500 and ARM7500FE - The ARM7100 - The SA-1100 - Examples and exercises 14/ The AMULET Asynchronous ARM Processors - Self-timed design - AMULET1 - AMULET2 - AMULET2e - AMULET3 - The DRACO telecommunications controller - A self-timed future? - Example and exercises Appendix Glossary Bibliography Index

back to index