0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

了解ARM内核中的处理器和注册文件

嵌入式星球 2020-10-09 14:54 次阅读

了解ARM内核的微体系结构,包括寄存器文件的说明及其在处理器中的功能。
在本文中,我们将定义什么是微体系结构。我们还将说明什么是ARM寄存器文件以及它在处理器的微体系结构中的位置。
本文旨在为下一篇文章提供基础信息,在本文中,我们将介绍汇编的基础知识,并展示一些使用Raspberry Pi编写的32位ARM内核的基本汇编指令

什么是微架构?


微体系结构(有时写为“微体系结构”)是允许执行指令集的数字逻辑。它是寄存器,存储器,算术逻辑单元,多路复用器和任何其他数字逻辑块的组合实现。所有这些共同构成了处理器。

微体系结构与指令集体系结构(ISA)相结合,构成了系统的整体计算机体系结构。不同的微体系结构可以实现相同的ISA,但是需要在功率效率或执行速度等方面进行权衡。最基本的处理器将包括一个寄存器文件,一个ALU,系统存储器和一个控制单元,该控制单元使处理器可以根据其执行的指令来做出决定。


ARM寄存器文件


要对数据执行操作,需要有一个临时存储该数据的地方。这就是处理器的注册文件的用途。寄存器文件是一堆寄存器,用于存储临时值并对这些值执行操作。在寄存器之外,可以检索数据并将其存储在计算机的内存中。虽然这是一个较慢的操作,但是与可用的相对较少的寄存器相比,可以在内存中存储的内容更多。寄存器文件通常以SRAM的形式出现。

让我们以32位ARM内核为例。在这种情况下,我们将重点介绍32位ARMV7指令和32位寄存器。

32位或4字节的数量对应于ARM指令集中的一个字。ARM寄存器文件包含十六个用于执行指令的寄存器。还存在状态寄存器来存储有关操作结果的信息,并允许处理器根据该结果做出决定。


注册符号


寄存器用字母R和数字表示。

  • R0–R3用于存储临时值或变量,但在子例程调用中也起作用。

  • R4–R12是通用的。

  • R13或SP是堆栈指针。堆栈指针包含一个内存地址,程序可以在该内存中存储以后需要检索的信息。

  • R14是链接寄存器,与分支指令一起使用以返回程序中的上一个位置。

  • R15,称为PC为programÇounter,存储下一个指令的地址被执行。这给PC带来了巨大的责任,因为它可以控制处理器上执行的指令。在PC上输入错误的值,您的程序可能会突然停止运行;这通常称为崩溃。



注册标志

所述 current program status register (CPSR),前面提到的,包含大量的标记,可以是当集的指令执行的。

这些标志是N,Z,C和V标志:

  • N代表负数,并在指令结果为负数时使用。

  • Z,ZERO,当结果为零。

  • C代表carry并且在进位输出被设定的指令结果时。

  • V代表oveRFlow ,发生溢出时被设置。

为了检查这些标志,在编写汇编代码时,某些条件后缀(在后面的文章中讨论)会附加到指令中。


处理器的一部分:数据路径和控制单元


尽管我们不会详细介绍设计ARM处理器的细节(也许在以后的文章中),但最好能基本了解寄存器文件适合运行我们的指令的系统的位置。下面的图1是处理器的高度简化框图。

寄存器文件包含处理器的当前状态,并且ALU和内存与该状态交互。内存分为多个部分。其中包含正在执行的指令列表(汇编程序);另一个保存程序将使用的数据。所有这些组件以及绿色突出显示的行构成了处理器的数据路径。

数据路径包含执行正在实施的ISA中所有指令所需的所有内容。但是数据路径如何知道要执行哪个操作?


图1.高度简化的处理器


数据路径上方是控制单元。控制单元解释在每个指令中找到的操作码(操作码)和条件码,以打开或关闭数据路径内的路由。控制单元使处理器能够根据当前从内存中读取的指令执行不同的操作。控制单元和数据路径共同构成了CPU或中央处理单元。

添加允许CPU与其他组件交互的内存就形成了我们所谓的处理器。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9027

    浏览量

    366432
  • 微架构
    +关注

    关注

    0

    文章

    22

    浏览量

    7028
收藏 人收藏

    评论

    相关推荐

    ARM处理器的寻址方式

    ARM处理器的寻址方式是处理器在执行指令时,根据指令给出的地址信息来寻找物理地址的方法。ARM处理器
    的头像 发表于 10-05 17:08 174次阅读

    ARM处理器和CPU有什么区别

    ARM处理器和CPU(中央处理器)之间的关系及区别,可以从多个维度进行深入探讨。首先,需要明确的是,ARM处理器并非一种独立的CPU类型,而
    的头像 发表于 09-10 11:24 832次阅读

    ARM处理器的工作模式和特点

    ARM处理器具有多种工作模式,这些模式根据处理器执行的任务和当前的状态进行划分。常见的ARM处理器工作模式包括用户模式(User Mode)
    的头像 发表于 09-10 11:22 743次阅读

    ARM处理器的指令集包括哪些

    ARM处理器的指令集是一个庞大而复杂的系统,它涵盖了多种类型的指令,用于实现数据处理、程序控制、内存访问等多种功能。
    的头像 发表于 09-10 11:15 382次阅读

    ARM处理器的寄存组织及功能

    ARM处理器的寄存组织是其核心架构的重要组成部分,对于理解ARM处理器的运行机制和性能特点具有重要意义。以下是对
    的头像 发表于 09-10 11:11 862次阅读

    ARM处理器和CISC处理器的区别

    ARM处理器和CISC(复杂指令集计算机)处理器在多个方面存在显著的区别。这些区别主要体现在架构原理、性能与功耗、设计目标、应用领域以及市场生态等方面。
    的头像 发表于 09-10 11:10 312次阅读

    ARM处理器的结构和特点

    ARM处理器,全称Advanced RISC Machines,是一种基于精简指令集(RISC)架构的微处理器。其结构和特点在嵌入式系统、移动设备、物联网等多个领域具有显著优势。以下将详细阐述
    的头像 发表于 09-10 11:09 482次阅读

    ARM处理器概述和发展历程

    ARM处理器是一种基于RISC(精简指令集计算机)架构的高性能微处理器,由英国公司ARM(Advanced RISC Machines)开发和授权。它以其低功耗、低成本和高性能的特点,
    的头像 发表于 09-10 11:07 450次阅读

    什么是ARM处理器?与x86的比较及其优缺点

    中央处理器(CPU)被用于我们每天使用的技术,从智能手机到笔记本电脑再到可穿戴设备。这些处理器允许这些设备执行指令和任务,以便其执行其指定的功能。虽然当今使用的设备中使用了不同类型的处理器
    的头像 发表于 06-26 16:49 664次阅读
    什么是<b class='flag-5'>ARM</b><b class='flag-5'>处理器</b>?与x86的比较及其优缺点

    dsp是嵌入式微处理器的一种设备吗 ARM嵌入式微处理器有何特点?

    的微处理器,它通常具有低功耗、小尺寸和低成本的特点。 ARM嵌入式微处理器是由ARM公司设计的一系列低功耗、高性能的嵌入式处理器架构。它具有
    的头像 发表于 04-21 09:37 871次阅读

    业界首款基于Arm Cortex-M85处理器的MCU

    所有RA8系列MCU均利用Arm Cortex-M85处理器Arm的Helium技术所带来的高性能,结合矢量/SIMD指令集扩展,能够在数字信号处理器(DSP)和机器学习(ML)的实
    发表于 03-05 14:14 584次阅读
    业界首款基于<b class='flag-5'>Arm</b> Cortex-M85<b class='flag-5'>处理器</b>的MCU

    鸿蒙轻内核源码分析:MMU 协处理器

    1、 ARM C15 协处理器ARM 嵌入式应用系统, 很多系统控制由 ARM CP15 协处理
    的头像 发表于 02-20 14:28 500次阅读
    鸿蒙轻<b class='flag-5'>内核</b>源码分析:MMU 协<b class='flag-5'>处理器</b>

    ARM处理器7种工作模式

    CPSR; 早期的ARM核有状态(ARM或Thumb)切换(通过BX等指令修改CPSR寄存(当前程序状态寄存,存放条件码标志,中断禁止位,当前
    发表于 12-15 10:15

    Arm最新处理器架构分析—X4、A720和A520

    上一篇文章我们介绍了Arm的Cortex-X1至Cortex-X3系列处理器,2023年的5月底,Arm如期发布了新一年的处理器架构
    的头像 发表于 11-29 11:47 4516次阅读
    <b class='flag-5'>Arm</b>最新<b class='flag-5'>处理器</b>架构分析—X4、A720和A520

    芝识课堂【TX03微控制】—强大的Arm® Cortex®-M3内核(上)

    是基于Arm Cortex -M3内核设计的MCU,让我们先来一起认识Arm Cortex -M3处理器的基本功能,方框图如
    的头像 发表于 11-28 17:45 1014次阅读
    芝识课堂【TX03微控制<b class='flag-5'>器</b>】—强大的<b class='flag-5'>Arm</b>® Cortex®-M3<b class='flag-5'>内核</b>(上)