
ˇ˛˘ʓʴ˅ˀʓʴ˥˖˛˜˧˘˖˧˨˥˘ʓ ʓ ˆ˘ˡ˚ʓʿ˜ˡʓˆ˛˘˘ʓ ʓ ˇˇˇˇ ˛˨˨˨˨ ˥˥˥˥ ˦˦˦˦ ˗˗˗˗ ˔˔˔˔ ˬˬˬˬ ʟʟʟʟ ʓʥʥʥʥ ʣʣʣʣ ʓˀˀˀˀ ˔˔˔˔ ˬˬˬˬ ʓʥʥʥʥ ʣʣʣʣ ʣʣʣʣ ʧʧʧʧ ʓ ʓ ʶˢˡ˧˘ˡ˧˦ ABSTRACT............................................................................................................................................ 2 1 INTRODUCTION ........................................................................................................................ 2 1.1 HISTORY ................................................................................................................................ 2 1.2 ARM LIMITED ....................................................................................................................... 2 1.3 LICENSING ISSUES ................................................................................................................. 3 2 THE ARM ARCHITECTURE.................................................................................................... 5 2.1 ARCHITECTURE DEFINITION................................................................................................... 5 2.2 ARCHITECTURE VARIANTS .................................................................................................... 5 2.3 GENERAL ISA FEATURES ....................................................................................................... 7 2.3.1 Programmer’s Model ....................................................................................................... 8 2.3.2 The ARM coprocessor interface ....................................................................................... 8 2.3.3 Conditional Execution...................................................................................................... 9 2.3.4 Multiple Register Transfer Operation.............................................................................. 9 2.3.5 Fold shifts/ rotates into ALU operation.......................................................................... 10 2.4 OPERATING SYSTEM SUPPORT.............................................................................................. 10 2.4.1 Coprocessor Number 15................................................................................................. 10 2.4.2 MMU architecture.......................................................................................................... 10 2.4.3 Synchronization.............................................................................................................. 10 2.4.4 Context switching ........................................................................................................... 11 2.5 AMBA INTERFACE .............................................................................................................. 11 2.6 ARMV4 ............................................................................................................................... 11 2.6.1 Thumb Instruction Set .................................................................................................... 11 2.7 ARMV5 ............................................................................................................................... 13 2.7.1 ARM DSP Extensions..................................................................................................... 13 2.7.2 Jazelle............................................................................................................................. 13 2.8 ARMV6 ............................................................................................................................... 15 2.8.1 Media Instructions.......................................................................................................... 15 2.8.2 Thumb2........................................................................................................................... 16 2.9 SUMMARY............................................................................................................................ 16 3 ARM IMPLEMENTATIONS ................................................................................................... 17 3.1 ARM7TDMI ....................................................................................................................... 17 3.2 ARM9TDMI ....................................................................................................................... 18 3.3 ARM11 ............................................................................................................................... 19 3.4 XSCALE ............................................................................................................................... 21 3.5 AMULET............................................................................................................................ 23 3.5.1 AMULET3 ...................................................................................................................... 23 4 CONCLUSION ........................................................................................................................... 25 5 REFERENCES ........................................................................................................................... 25 1 Abstract The ARM processor is a Reduced Instruction Set Computer (RISC), a type of microprocessor that recognizes a relatively limited number of instructions. One advantage of RISC processors is that they can execute instructions very fast because the instructions are so simple. Another important advantage is that RISC chips require fewer transistors, which makes them cheaper to design and produce. This architecture is deferent from most major microprocessors such as the SPARC and Itanium processors as it is mainly designed for embedded systems. ARM processors are generally processors that implement the ARM architecture specifications. In this report, the ARM architecture, the interesting features, architectural extensions, ARM architectural implementations and some historical notes will be discussed. 1 Introduction 1.1 History The ARM processor originated from a small company named Acorn Computers Limited in England between the years 1983 and 1985. At that time, Acorn developed computers for BBC (British Broadcasting Corporation). Due to the BBC popularity, the computer which was built around the 8-bit 6502 microprocessor became the dominant machine in British schools. It also flourished in the hobbyist market and was also used in research laboratories and higher education establishments. In order to create a successor to the BBC microcomputer, Acorn needed a new microprocessor which is better than the 6502 microprocessor. At the time, most 16-it CISC microprocessors were slower than standard memory parts. BBC was reluctant in adopting such slow performance because the 6502 has actually better interrupt response. When Acorn was refused access to the Intel 80286 microprocessor, Acorn decided to create its own processor from scratch. By developing its own microprocessor, Acorn had to develop the whole platform and produced it as a complete product. Acorn thus developed the microprocessor, system board as well as the software (operating system) to run the system. With only just over 400 employees in total, Acorn could not invest in a development of a complex microprocessor. The company does not have the relevant experience to make a commercial microprocessor. Thus, it was decided that Acorn had to produce a better design with a fraction of the design effort. Fortunately, Acorn stumbled upon some papers published by a group of students which developed the Berkeley RISC 1 processor. The processor design was simple, with no complex instructions to ruin the interrupt latency. It was suggested that this design was the way to the future. An engineering team at Acorn, led by Roger Wilson and Steve Furber, started development of the ARM, which stood for Acorn RISC Machine. This microprocessor later became known as ARM 1, a prototype microprocessor which was not made commercial to the public yet. 1.2 ARM Limited The ARM1 processor was completed by 1985, and the first "real" production systems was launched as ARM2 the following year. The ARM2 featured a 32-bit data bus and 26-bit address bus, with 16 registers. The ARM2 was the simplest useful processor in the world, with only 30,000 transistors (compare with the four-year older Motorola 68000's 68,000). Much of this simplicity comes from not having microcode (which represents about 1/4 to 1/3 2 the size of the 68000) and not including any cache. This simplicity leads to its excellent low- power needs, and yet it performed better than the 286. Soon after that, Acorn started working with Apple Computer on newer versions of the ARM core. The work was so important that Acorn spun off the design team in 1990, and is now a separate company named Advanced RISC Machines (still maintaining the ARM acronym). The first CPU produced by Advanced RISC Machines was the ARM6, This time, the ARM6 design is a true 32-bit CPU, while otherwise remaining similar to earlier models. This CPU utilizes a 32-bit addressing. The first models were released in 1991, and Apple used the ARM6-based ARM 610 as the basis for their Apple Newton PDA. Today, the company is just named ARM Limited but continues to be the leader in embedded RISC microprocessor technology. In 2002, ARM Limited was the leading provider of 32-bit embedded RISC microprocessors with 75% of the market. ARM’s success was due to • Common architecture • High performance • Low power consumption
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages25 Page
-
File Size-