Introduction to ARM-based processor series

Publisher:玉立风华Latest update time:2010-09-25 Keywords:ARM7  ARM9  ARM10  StrongARM  compiler Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1. Introduction

As a typical application of Soc (System On Chip), the market demand for products such as handheld phones, set-top boxes, digital cameras, GPS, personal digital assistants and Internet devices is increasing. At present, ARM-based processors have become the most popular processors in the above-mentioned products due to their high speed, low power consumption and many other excellent performances.

2. ARM core

ARM cores are divided into several categories such as ARM7, ARM9, ARM10 and StrongARM. Each category is divided into multiple structures according to the functional modules it contains. There are four functional modules in the ARM core that can be configured and produced by manufacturers according to the different requirements of different users. These four modules are represented by T, D, M and I respectively.

T: stands for Thumb. The core can be expanded from a 16-bit instruction set to a 32-bit ARM instruction set.

D: stands for Debug. The core is placed with a structure for debugging. It is usually a boundary scan JTAG, which can put the CPU into debug mode, so that breakpoints can be set and single-step debugging can be easily performed.

M: stands for Multiplier, which is an 8-bit multiplier.

I: EmbeddedICE Logic, which is used to implement the logic circuit part of breakpoint observation and variable observation. The TAP controller can be connected to the boundary scan chain.

ARM7

ARM7 adopts ARMV4T (Newman) structure, divided into three-level pipeline, unified space instruction and data cache, average power consumption of 0.6mW/MHz, clock speed of 66MHz, and average execution of 1.9 clock cycles per instruction. Among them, ARM710, ARM720 and ARM740 are ARM cores with built-in cache.

ARM9

ARM9 adopts ARMV4T (Harvard) structure, five-level pipeline processing and separate cache structure, with an average power consumption of 0.7mW/MHz. The clock speed is 120MHz-200MHz, and each instruction executes 1.5 clock cycles on average. Similar to the ARM7 series, ARM920, ARM940 and ARM9E are CPU cores with cache. The performance is 132MIPS (120MHz clock, 3.3V supply) or 220MIPS (200MHz clock).

ARM10

ARM10 adopts ARMV5T structure, six-stage pipeline processing, and a cache structure with separated instructions and data. The average power consumption is 1000mW, the clock speed is 300MHz, and each instruction is executed in an average of 1.2 cycles. Among them, ARM1020 is a version with cache.

ARM10TDMI: compatible with all ARM cores at the binary level, with high-speed 32X16MAC, and reserved DSP coprocessor interface. The VFP10 (vector floating point unit) is a seven-stage pipeline structure.

ARM1020T: ARM10TDMI+32KI&D Caches+MMU structure, 300MHz clock, power consumption is 1W (2.0V power supply) or 00mW (1.5V power supply). The instruction cache and data cache are 32K respectively, with a width of 64bits. It can run a variety of commercial operating systems. Suitable for the next generation of high-performance handheld Internet devices and digital consumer applications.

StrongARM

The StrongARM processor adopts the five-stage pipeline structure of ARMV4T. There are currently three versions: SA110, SA1100 and SA1110.

III. ARM7 series development tools and development environment

1. Software development tools

Green Hills Tools: Green Hills' ARM software toolkit can support ARM6, ARM7, ARM7M, ARM7TM, ARM7TDMI, ARM7500FE, ARM8, ARM9, ARM10 and StrongARM series processors. It consists of compilers, cross toolkits, integrated development environments and debugging interfaces.

Compiler: C/C++ compiler with high optimization performance.

Cross Tool Chain: Cross development tools. Including assembler (Assembler), linker (Linker), library functions and target code format converter.

MULTI: Integrated development environment. Green Hills' MULTI integrated environment integrates various tools used in the software development and debugging process, such as source-level debugger, project manager, version controller, text editor, performance analyzer, and graphical browser. Run error detector, ARM instruction set simulator and low-level debugging interface. Users can easily use the above tools to develop applications in the MULTI environment.

Servers: Low-level debugging interface. Green Hills' Servers provide two types of debugging interfaces for users to choose from. One type is used for Angel monitors, online simulators, and EPI's JEENI JTAFG simulators, etc.; the other type is used for commercial operating systems and operating systems written by users themselves.

ASDT2.5: SDT2.5 is a large set of development software packages provided by ARM, consisting of a C compiler, a connection locator, a C language debugger and an Angel monitor. It is widely used because of its moderate price. 2. Hardware development tools ARM's hardware development tools mainly include two types of simulators, one is the JTAG simulator and the other is the full-function online simulator. The former uses the function of the debugging module in the ARM processor to connect to the simulator through its JTAG boundary scan port. This type of simulator is cheaper and more convenient to connect. However, since it is debugged through only a dozen lines, its functions are limited. At present, the more popular JTAG emulators for ARM processors in the market are JEENI and MAJIC from EPI. The famous German company Lauterbach has a universal JTAG/BDM/ONCE emulator TRACE32-ICD that can also support ARM series processors well. For full-function online emulators, since their header completely replaces the CPU on the target board, they are very powerful. However, in order to be able to emulate processors with clock speeds higher than 100MHz at full speed, these emulators usually have to use extremely complex designs and processes, so they are relatively expensive. Lauterbach's TRACE32-Fire is a leader in this category. JEENI emulator: This is a relatively low-priced JTAG emulator. It can be well connected to the SDT2.5 tool. Users can use its compiler and debugging interface. MAJIC emulator: Compared with JEENI, MAJIC can be connected to the host via 100base-T Ethernet and supports multiple processors and low-voltage I/O. TRACE32-ICD: This is a general-purpose JTAG/BDM/ONCE emulator that can support Motorola series 68K, ColdFire, MPC5XX/8XX, MPC82XX, and ARM7 series CPU by replacing modules. It can also support SIEMENS ONCE mode, such as TriCore, C166, etc. In addition, TRACE32-ICD provides a unique RISC logic tracing function.











TRACE32Fire: This is a full-featured ICE that provides powerful debugging and troubleshooting functions.

4. RTOS supporting ARM7 and its system development

At present, ARM7 is widely used in China, and the use of ARM9 and ARM10 has not yet begun. In this introduction, we use the application of ARM7 as an example to illustrate the composition of the ARM7 system and the application of its OS.

There are many manufacturers of ARM7 processors, and they only need to purchase the license of the ARM7 core from ARM to produce. Currently, the commonly used ARM7 chips include AT91M40400 from tmel, CL-PS7500FE/EP7211 from Cirrus Logic, GMS30C7201 from Hyundai, L
7200 from Linkup, KS32C4100/50100 from Samsung, etc. In addition, TI, LSI Logic, NS, NEC and Philips also produce corresponding ARM7 chips. Although many manufacturers provide a variety of processors, except for some external functional modules, their kernels are the same, so they are the same in software programming and debugging.

Among the various commercial RTOS (real-time multi-tasking operating systems), Nucleus PLUS real-time multi-tasking operating system is an OS with source code, which is very popular at present. It also has a large number of practical applications in China. Nucleus is one of the earliest operating systems that supports ARM series CPUs. It provides complete solutions such as kernel, graphics interface module, communication protocol module, file system and embedded online browser. Many well-known domestic companies have chosen Nucleus to implement PDA, STB, DVD, POS, GPS, mobile phones and smart terminals on the ARM platform.

V. PDA solution based on ARM7

ARM7 series chips have the characteristics of high speed, low power consumption and high integration, which are very suitable for the development of PDA devices. Here we introduce a PDA solution based on the GMS30C7201 chip provided by Hyundai Electronics of South Korea.

* Operating system: NUCLEUS PLUS;
* Compiler: ARM SDT / GREEN HILL;
* Simulator: JENNI / TRACE32-ICD.

On this platform, we chose ATI's NUCLEUS operating system and the corresponding file system, graphics software package, network module and browser to implement the various functions of the PDA. Now most of the software porting work has been completed: the MUCLEUS kernel, file system, graphics software package, TCP/IP network module (using PPP dial-up Internet access) and the drivers of various on-chip devices, and the browser porting is also about to be completed.

Keywords:ARM7  ARM9  ARM10  StrongARM  compiler Reference address:Introduction to ARM-based processor series

Previous article:Dynamic Configuration of Interrupt Vector Table in ARM Embedded System
Next article:Design of high-resolution infrared touch screen based on ARM7 and VC platform

Recommended ReadingLatest update time:2024-11-16 16:33

Design and implementation of free swing plate control system based on ARM9
The focus of this design is to collect the angle information of each joint through the acceleration sensor MMA7455, and control the operation of the stepper motor according to the obtained angle value and task requirements, complete the adjustment of the flat plate posture at the end of the free swing arm, and complet
[Microcontroller]
Design and implementation of free swing plate control system based on ARM9
I2C communication between multiple ARM/DSP machines based on embedded Linux
Introduction In many embedded control systems, the system must complete a large amount of information collection and complex algorithms, and also realize precise control functions. The ARM9 microcontroller running the embedded Linux operating system is used to complete signal collection and implement the upper-level
[Microcontroller]
I2C communication between multiple ARM/DSP machines based on embedded Linux
How to set the interrupt register of ARM7
Taking the setting of external interrupt 2 (EINT2) as an example, the setting of the ARM7 interrupt register and the writing of its corresponding interrupt program are as follows: //Set the interrupt type rEXTINT = 0x22221122; //EINT2 high level triggers interrupt  //Given the interrupt service routine entry pISR_
[Microcontroller]
Design of shipborne monitoring system based on ARM9
0 Preface The coastal zone is the most sensitive part of the ocean to human activities, and human activities will have a serious impact on the structure and function of its ecosystem. This makes the coastal zone a vulnerable area of ​​marine ecological environment. Therefore, the safety and management of the coastal
[Microcontroller]
Design of shipborne monitoring system based on ARM9
Design and implementation of SOC based on FPGA
  In order to reduce the area cost in the printed circuit board (PCB) design, a field programmable gate array (FPGA) device with Flash structure is introduced, and then a design method of building a system on chip (SOC) circuit based on advanced reduced instruction set machine (ARM) by using this device is introduced.
[Microcontroller]
Design and implementation of SOC based on FPGA
Comparison and Optimization of ARM9 and ARM7
      Currently, more and more embedded system designs are beginning to use ARM9 processors. Understanding the differences between ARM9 and ARM7, and how to optimize the system for ARM9 has become a topic of concern. This article introduces the characteristics of the ARM9 processor and some effective methods for system
[Microcontroller]
Comparison and Optimization of ARM9 and ARM7
Design and implementation of SD card file system based on ARM9 and μC/OS-II
With the continuous development of embedded technology, ARM processors have been widely used due to their high performance, low cost and low energy consumption. This paper mainly focuses on the demand for access to a large amount of real-time load data in the dynamic weighing system of trucks. Based on the ARM9 embe
[Microcontroller]
Design and implementation of SD card file system based on ARM9 and μC/OS-II
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号