Skip to content

Latest commit

 

History

History
59 lines (47 loc) · 1.88 KB

File metadata and controls

59 lines (47 loc) · 1.88 KB

ARM

ARM as a company make Architecture, sell the Architecture and companies like STM, TI uses these architectures to develop their own chips and release them into market.

ARM Architectures

  • A-Class
    • Application grade Arch
    • Used to run OS (linux, Mac), and also runs applications like chrome
    • Arch is simple (RISC based arch / load and store arch)
  • R-Class
    • Used in Real time systems (time-constrant applications)
  • M-Class
    • Used in microcontrollers, single targeted applications
    • Arch is simple (RISC based arch / load and store arch)

Architecture vs Micro-Architecture

  • Simple specification of what CPU should do or behave is called Architecture
  • Implementation of the Arch is called Micro-Architecture
flowchart RL
subgraph B[Memory]
	C[Instruction]
	D[Data]
end
A[CPU] -- Store --> D
D -- Load --> A
Loading

To learn/Master a CPU we need to understand below all models

flowchart TD
   A(CPU) --> B((Programmer's Model))
   A --> C((Exception Model))
   A --> D((Memory Model))
   A --> E((Debug Model))
Loading
  • Programmer's Model - Details out mode of operation of cpu & internal registers
  • Exception Model - Exception is internal to cpu
  • Memory Model - Imagination about how cpu interact with memory, talks about features
  • Debug Model - Here CPU is connected to external piece of hardware called debugger, and it's connected to OS where we can run GDB

CPU will do data processing by control unit

  • ARM Cortex-A CPU contains

    • GPR (General Purpose registers)
    • ALU (Arthematic logic unit)
    • CFRS (Configuration and Status registers)
  • CPU can be ON/OFF based on Status registers, Based on these on/off states CPUhas different Execution Levels

    • EL0
    • EL1
    • EL2
    • EL3
    • From EL0 to EL3 more hardware capabilites are activated (Less num less functionality high num high functionality)