947 views|2 replies

152

Posts

0

Resources
The OP
 

What are the basic principles of embedded ARM? [Copy link]

ARM Basics

Difference Between RISC Microprocessor and CISC Microprocessor

RISC (Reduced Instruction Set Computer) is a reduced instruction set computer.

Focus: How to make the computer structure simpler and how to make the computer processing speed faster;

Features: small number of instructions, simple instructions, fixed instruction length, reduced instruction format and addressing mode, no or less microcode control, low energy consumption;

Applications: embedded processors, various mobile terminals.

CISC is Complex Instruction Set Computer.

Focus: Functionality of hardware executing instructions;

Features: large number of instructions, complex design, and high energy consumption;

Application: Intel processor (computer).

ARM microprocessor architecture
ARM core adopts RISC architecture. The main features of ARM architecture are as follows:
1. A large number of registers;
2. Load/Store architecture;
3. Each instruction is conditionally executed;
4. Load/Store instructions for multiple registers;
5. Ability to complete a common shift operation and a common ALU operation in a single instruction executed in a single clock cycle;
6. Extending the ARM instruction set through the coprocessor instruction set, including adding new registers and data types in the programming mode;
7. If the Thumb instruction set is also considered as part of the ARM architecture, it can also be added that the instruction set is represented in a high-density 16-bit compressed form in the Thumb architecture.

Basic data types
The ARM core uses a 32-bit architecture. There are four basic data types:
1. Byte: byte, 8 bits;
2. HalfWord: half word, 16 bits;
3. Word: word, 32 bits;
4. DoubleWord (supported by Cortex-A): double word, 64 bits.

ARM memory organization

Working Mode

ARM920T processor working mode
Except for the user mode, the other 6 modes are called non-user mode or privileged mode; the 5 modes other than the user mode and system mode are called exception modes. The operating mode of the ARM processor can be changed by software or by external interrupt or exception handling.

Storage system
1. Provides various types of storage devices, such as Flash, ROM, SRAM, etc.;
2. Cache technology;
3. Write buffer technology (Write Buffer);
4. Virtual memory and I/O address mapping technology.

Pipeline
The processor executes each instruction in a series of steps, the typical steps are as follows:
1. Read the instruction from the memory (fetch);
2. Decode to identify which instruction it belongs to (decode);
3. Extract the operands of the instruction from the instruction (these operands are often in registers) (reg);
4. Combine the operands to get the result or memory address (ALU);
5. If necessary, access the memory to store data (mem);
6. Write the result back to the register group (res).
Pipeline classification: 3-stage, 5-stage, 6-stage pipeline.

Execution process of 3-stage pipeline instructions

Execution process of 5-stage pipeline instructions

6-stage pipeline instruction execution process

Register structure

The ARM Cortex-A8 processor has a total of 40 registers (32 bits), which are divided into several groups (BANK). These registers include:

(1) 32 general-purpose registers;

(2) 1 program counter (PC pointer);

(3) 7 status registers: 1 CPSR current program status register and 6 SPSR backup program status registers.

This post is from Embedded System

Latest reply

Embedded ARM Basic Principles covers the following key concepts and knowledge points: ARM architecture: Understand the basic principles and design ideas of ARM architecture, including instruction set, registers, memory management unit, etc. Processor mode: Familiar with different processor modes, such as user mode, privileged mode and interrupt mode, as well as the permissions and functions in different modes. Registers: Master the register structure and function of ARM processor, including general registers, program counter (PC), stack pointer (SP), etc. Instruction set and programming: Understand the ARM instruction set architecture (such as ARMv7, ARMv8, etc.) and the basic syntax and instruction encoding rules of assembly language, and be able to write and understand simple assembly code. Memory and memory management: Familiar with the interface principle between ARM processor and external memory (such as flash memory, RAM, etc.), and understand the basic concepts of memory mapping and memory management unit (MMU). Interrupt and exception handling: Understand the interrupt and exception handling mechanism of ARM processor, including interrupt vector table, interrupt controller, interrupt handler, etc., and be able to write interrupt handler and exception handler. Performance optimization and power management: Study the performance optimization technology of ARM processor, such as pipeline, branch prediction, cache optimization, etc., as well as the methods and strategies of power management. Bus and peripheral interface: Understand the communication interface and bus standards between ARM processor and external devices, such as APB (Advanced Peripheral Bus), AHB (Advanced High-Performance Bus), etc. These are some key aspects of the basic principles of embedded ARM. In-depth study of these knowledge will help understand and design ARM processors in embedded systems. At the same time, it is also very important to master the combination of hardware and software and be able to carry out embedded software development, driver writing and system debugging.  Details Published on 2023-7-3 21:38

4817

Posts

4

Resources
2
 

RISC microprocessors emphasize simplicity and efficiency, and improve execution speed by reducing the instruction set, while CISC microprocessors emphasize rich and flexible instruction functions, and provide a higher level of programming abstraction capabilities through complex instruction sets.

This post is from Embedded System
 
 

23

Posts

0

Resources
3
 
Embedded ARM Basic Principles covers the following key concepts and knowledge points: ARM architecture: Understand the basic principles and design ideas of ARM architecture, including instruction set, registers, memory management unit, etc. Processor mode: Familiar with different processor modes, such as user mode, privileged mode and interrupt mode, as well as the permissions and functions in different modes. Registers: Master the register structure and function of ARM processor, including general registers, program counter (PC), stack pointer (SP), etc. Instruction set and programming: Understand the ARM instruction set architecture (such as ARMv7, ARMv8, etc.) and the basic syntax and instruction encoding rules of assembly language, and be able to write and understand simple assembly code. Memory and memory management: Familiar with the interface principle between ARM processor and external memory (such as flash memory, RAM, etc.), and understand the basic concepts of memory mapping and memory management unit (MMU). Interrupt and exception handling: Understand the interrupt and exception handling mechanism of ARM processor, including interrupt vector table, interrupt controller, interrupt handler, etc., and be able to write interrupt handler and exception handler. Performance optimization and power management: Study the performance optimization technology of ARM processor, such as pipeline, branch prediction, cache optimization, etc., as well as the methods and strategies of power management. Bus and peripheral interface: Understand the communication interface and bus standards between ARM processor and external devices, such as APB (Advanced Peripheral Bus), AHB (Advanced High-Performance Bus), etc. These are some key aspects of the basic principles of embedded ARM. In-depth study of these knowledge will help understand and design ARM processors in embedded systems. At the same time, it is also very important to master the combination of hardware and software and be able to carry out embedded software development, driver writing and system debugging.
This post is from Embedded System
 
 
 

Guess Your Favourite
Just looking around
Find a datasheet?

EEWorld Datasheet Technical Support

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
快速回复 返回顶部 Return list