ARM学习笔记

ARM系列芯片

  1. Cortex - A
    特点:Cortex-A核是ARM架构中的应用处理器核。它通常用于高性能计算和通用操作系统的执行,如Android、Linux等。Cortex-A核具有多级流水线、超标量执行、乱序执行等高级特性,使其能够高效处理多线程和多任务。
    应用场景:Cortex-A核广泛应用于智能手机、平板电脑、服务器、网络设备、物联网网关等需要高性能和通用计算的领域
  2. Cortex - R
    特点:Cortex-R核是ARM架构中的嵌入式实时处理器核。它专注于实时性能和可预测性,适用于处理实时控制任务,如汽车电子、工业控制、嵌入式系统等。Cortex-R核具有低延迟、高吞吐量和硬实时性能。
    应用场景:Cortex-R核广泛用于汽车电子控制器、工业自动化、无线通信基站、嵌入式控制系统等需要实时响应和可靠性的领域。
  3. Cortex - M
    特点:Cortex-M核是ARM架构中的微控制器处理器核。它专注于低功耗、紧凑尺寸和实时控制,适用于小型嵌入式系统。Cortex-M核通常具有单一周期执行、中断处理能力和低功耗模式。
    应用场景:Cortex-M核广泛应用于微控制器(MCU)、传感器节点、物联网设备、嵌入式传感器、医疗设备等需要低功耗和实时控制的领域。

异同点: - 性能差异:Cortex-A核具有最高的性能,适合处理复杂的计算任务。Cortex-R核次之,专注于实时性能。Cortex-M核性能最低,专注于低功耗。 - 架构特性:Cortex-A核通常具有高级特性,如乱序执行,用于通用计算。Cortex-R核和Cortex-M核注重实时性能和可预测性,通常采用顺序执行。 - 功耗特性:Cortex-A核通常功耗较高,适用于设备拥有足够电源和散热能力的场景。Cortex-R核和Cortex-M核注重功耗效率,适用于电池供电或低功耗要求的设备。 - 应用领域:Cortex-A核适用于高性能计算、通用操作系统和复杂应用。Cortex-R核适用于实时控制领域。Cortex-M核适用于小型嵌入式系统和低功耗设备。

Core-A 内核体系

  1. 指令集 -> 编译
  2. 寄存器
  3. ARM汇编
  4. cache
  5. mmo 片外内存
  6. 链接协议

ARM 内容大纲 www.arm.com

  1. ARM架构和处理器
  2. 工具、操作系统和开发板
  3. ARM寄存器、数据类型、模式和指令集
  4. ARM汇编语言
  5. SIMD和NEON
  6. ARM缓存(Caches)架构
  7. 内存管理单元
  8. 中断处理(Interrupt Handling)
  9. 异常处理(Exception Handling)
  10. 启动代码
  11. 多处理器结构

哈弗结构和普林顿结构

  1. 冯诺依曼结构
    冯诺依曼结构也称为普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。其特点包括:
    (1)一般用于PC处理器。
    (2)指令与数据存储器合并在一起。
    (3)指令与数据都通过相同的数据总线传输。
  2. 哈佛结构
    哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址、独立访问。其特点包括:
    (1)一般用于嵌入式系统处理器(DSP)。
    (2)指令与数据分开存储,可以并行读取,有较高数据的吞吐率。
    (3)有4条总线,包括指令和数据的数据总线和地址总线。

工具

  1. QEMU
    QEMU是一套由法布里斯·贝拉(Fabrice Bellard)所编写的以GPL许可证分发源码的模拟处理器软件,在GNU/Linux平台上使用广泛。Bochs,PearPC等与其类似,但不具备其许多特性,比如高速度及跨平台的特性,通过KQEMU这个闭源的加速器,QEMU能模拟至接近真实电脑的速度。

  2. BusyBox
    BusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Linux 系统的自带的shell。

  3. Scratchbox

  4. U-Boot
    Das U-Boot 是一个主要用于嵌入式系统的引导加载程序,可以支持多种不同的计算机系统结构,包括PPC、ARM、AVR32、MIPS、x86、68k、Nios与MicroBlaze。这也是一套在GNU通用公共许可证之自由软件。下发布的Das U-Boot可以在x86计算机上建构,但这部x86计算机必须安装有可支持特定平台结构的交互发展GNU工具链,例如crosstool、Embedded Linux Development Kit (ELDK)或OSELAS.Toolchain。

  5. UEFI and Tianocore
    统一可扩展固件接口(英语:Unified Extensible Firmware Interface,缩写UEFI)是一种个人电脑系统规格,用来定义操作系统与系统固件之间的软件界面,作为BIOS的替代方案。可扩展固件接口负责加电自检(POST)、联系操作系统以及提供连接操作系统与硬件的接口。

ARM工具链

在这里插入图片描述

编译过程

1、编译&#x

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值