System Practice Learning ARMv8 Assembly – Course 2

System Practice Learning ARMv8 Assembly - Course 2

Course 2: Stage 1 – Basic Preparation (Week 2) Topic: Detailed Explanation of ARMv8 Registers and Instruction Set, Bare-Metal Programming Practice 2.1 In-Depth Analysis of Registers Classification of ARMv8 Registers: General Purpose Registers (31): <span>X0</span>: Function Argument 1 / Return Value. <span>X1-X7</span>: Function Arguments 2-8. <span>X8</span>: System Call Number. <span>X29</span>: Frame Pointer (FP). <span>X30</span>: Link … Read more

System Practice Learning ARMv8 Assembly – Course 5

System Practice Learning ARMv8 Assembly - Course 5

Course 5: Phase 2 – Core Instructions and Programming Topic: Memory Operations and Complex Data Structures, Bare-Metal Programming Practice 5.1 Advanced Memory Operations Multi-Byte Memory Operations <span>LDP</span>/<span>STP</span>: Load/Store two registers at once (supports 64-bit and 32-bit modes). stp x0, x1, [sp, #-16]! // Push x0 and x1 onto the stack, SP -= 16 ldp x2, … Read more

System Practice Learning ARMv8 Assembly – Outline

System Practice Learning ARMv8 Assembly - Outline

Let’s set a learning plan for ARMv8 assembly language. After learning, aim to master ARMv8 assembly knowledge and be able to write some simple assembly code. Phase 1: Basic Preparation (1-2 weeks) Goals: Understand computer architecture and core concepts of the ARMv8 architecture. Set up the development environment. Write the first assembly program. Learning Content: … Read more

System Practice Learning ARMv8 Assembly – Course 3

System Practice Learning ARMv8 Assembly - Course 3

Course 3: Stage 2 – Core Instructions and Programming Topic:Function Calls and Stack Operations, ARMv8 Calling Conventions, Bare-Metal Programming Practice 3.1 Basics of Function Calls Core Concepts: BL Instruction: <span>BL label</span>:Jump to<span>label</span> to execute, while saving the return address (the address of the next instruction) to<span>LR</span> (X30). After the function call, return using<span>RET</span> (<span>RET</span> is … Read more

System Practice Learning ARMv8 Assembly – Course 1

System Practice Learning ARMv8 Assembly - Course 1

Course 1: Stage 1 – Basic Preparation (Week 1) Topic: Bare-metal program development, PL011 UART communication, ARMv8 boot process 1.1 Basics of Bare-metal Programming Core Concepts: Bare-metal Program: Runs directly on hardware without operating system support. Boot Process: The CPU starts executing instructions from the reset address (usually <span>0x0</span> or <span>0x8000</span>). Hardware (such as memory … Read more

Asynchronous Exception Types, Routing, and Masking in Armv8/Armv9

Asynchronous Exception Types, Routing, and Masking in Armv8/Armv9

Click the blue "Arm Selected" in the upper left corner and select "Set as Favorite" Types of Asynchronous Exceptions What asynchronous exceptions (interrupts) exist in the system? Official documentation states:<span><span>In the Armv8-A architecture, asynchronous exceptions that are taken to AArch64 state are also known as interrupts.</span></span> Anyone who says interrupts are: FIQ, IRQ is a … Read more

Time is Running Out for 32-bit Android Applications in China

Time is Running Out for 32-bit Android Applications in China

As we all know, the competition in the smartphone market has become increasingly fierce in recent years. On one hand, this has directly led manufacturers to actively develop their own proprietary technology systems, competing for top positions in areas such as imaging, display, and fast charging; on the other hand, the proactive attitude of smartphone … Read more

Running VxWorks on Arm Cortex-R82

Running VxWorks on Arm Cortex-R82

Arm Cortex-R82 represents a revolution in real-time processing, combining high-performance 64-bit computing with the deterministic behavior required in embedded systems. Launched by Arm in 2020, it is the first processor in the Cortex-R series to support a full Memory Management Unit (MMU), enabling it to run rich operating systems like Linux while maintaining the low … Read more

AI Based on This Architecture is Ubiquitous

AI Based on This Architecture is Ubiquitous

The technological wave triggered by generative AI has brought multidimensional and large-scale demands to the cloud computing industry chain and data centers. However, AI is not limited to data centers; many practitioners are embedding AI capabilities into edge devices and terminals. In the near future, AI will permeate billions of devices worldwide, benefiting every consumer’s … Read more

How to Enable DWT for Counting in STM32 Based on Arm®v7-M Architecture

How to Enable DWT for Counting in STM32 Based on Arm®v7-M Architecture

Keywords: DWT, DEMCR Table of Contents 1. Introduction 2. Research 3. Enabling DWT for Counting 4. Conclusion 01 Introduction When using the STM32H7, the customer wants to utilize DWT counting to measure code execution time and evaluate execution efficiency. The customer found that after power cycling or resetting, they could not enable DWT for counting. … Read more