2.1 介绍

  

  ARM核心的基本结构指ARM架构显示处理器中处理的数据大小、指令架构、寄存器等的结构和运行原理

  ARM核心是利用ARM架构的基本原理实现的处理器核心部分。

  ARM的主要架构如下:

  

  

  ARM架构和ARM核心,以及架构所包含的硬件特性间的关系如下:

  

  

2.1.1 处理器命名规则

  

  

  

2.2 处理器内部结构

  ARM处理器的内部结构如图:

  

  

  • 执行的指令和数据通过地址总线和数据总线输入核心。
  • 冯*诺依曼体系结构体:将地址总线和数据总线并用的形态
  • 哈佛体系结构:将地址总线和数据总线分用的形态  

  

  ARM指令由2个源寄存器和1个结果寄存器组成,连接到ALU(算术逻辑单元)的两侧总线相当于从2个源寄存器进行的输入。

  柱式位移器在输入ALU之前执行数据的预处理任务。

  ALU会读取输入的值,执行运算并输出结果。

  数据处理指令在寄存器中存储运算结果,负载存储指令读取地址寄存器中的地址,并将其送到地址总线。

2.3 处理器模式

  

  

  

  

  

  CPSR显示程序执行时的状态,用于保存条件位,各位将保存算数及逻辑运算结果,从而表示条件分支指令。

  CPSR由标志(FLAG)、状态(STATUS)、扩展(EXTENSION)、控制(CONTROL)组成,各8位。状态域和扩展域是为以后使用而保留的部分。

  

  

2.4 处理器异常

  

  

  

2.5 硬件扩展功能

2.5.1 缓存  

  

  

2.5.2 内存管理装置

  

2.5.3 协处理器

  

  

  使用MRC或MCR等指令从协处理器内部各寄存器向ARM寄存器执行读写。

2.6 环境

2.6.1 ctags

  对内核生成 tags 标签。

  确认 tags.sh 文件是否存在。

  ls -al ./scripts/tags.sh

  确认后,执行 make 命令生成 ARM 标签。

  make tags ARCH=arm

  

  

  tags 文件域的意义

  

  ctags 命令

  

2.6.2 cscope

  安装cscope: sudo apt-get install cscope

  构建cscope数据库。 make cscope ARCH=arm .会生成四各文件,如下

  

  

  

  

2.6.3 联动tags 和cscope

  需要Souce explorer 插件:srcexpl.vim

  cs find s 函数名

  

二、ARM处理器的更多相关文章

  1. 二、冯式结构与哈佛结构及ARM处理器状态和处理器模式

    2.1 冯式结构与哈佛结构 2.1.1 两者的区别 如果是独立的存储架构和信号通道那就是哈佛结构,否则就是冯式结构 结构与是否统一编址没有关系,也与 CPU 没有关系,与计算机的整体设计有关 CACH ...

  2. 基于ARM处理器的反汇编器软件简单设计及实现

    写在前面 2012年写的毕业设计,仅供参考 反汇编的目的 缺乏某些必要的说明资料的情况下, 想获得某些软件系统的源代码.设计思想及理念, 以便复制, 改造.移植和发展: 从源码上对软件的可靠性和安全性 ...

  3. 【嵌入式开发】ARM 芯片简介 (ARM芯片类型 | ARM处理器工作模式 | ARM 寄存器 | ARM 寻址)

    : 12MHz 晶振 对应 405 ~ 532 MHz 处理速度; -- : 16K 指令缓存, 16K 数据缓存; -- : 32KB 指令缓存, 32KB 数据缓存; (3) 内存接口对比 : 提 ...

  4. ARM处理器解析

    按图分析: ARM处理器有七种工作模式,为的是形成不同的使用级别,以防造成对系统的破坏.不同模式可以访问的寄存器不同,可以运行的指令不同. (1)user(10000):普通应用程序运行的模式(应用程 ...

  5. 热烈祝贺华清远见《ARM处理器开发详解》第2版正式出版

    2014年6月,由华清远见研发中心组织多名业 内顶尖讲师编写的<ARM处理器开发详解>一书正式出版.本书以S5PV210处理器为平台,详细介绍了嵌入式系统开发的各个主要环节,并注重实践,辅 ...

  6. ARM处理器的寄存器

    在ARM体系中通常有以下3种方式控制程序的执行流程: **在正常执行过程中,每执行一条ARM指令,程序计数器(PC)的值加4个字节:每执行一条Thumb指令,程序计数器寄存器(PC)加2个字节.整个过 ...

  7. ARM 处理器的几个相关术语

    生产ARM的厂商很多,自然ARM处理器的名字就五花八门.但是,它们有些共同点,那就是:架构和核心. 架构这个概念太宽不太懂,一般不同的架构会有不同的指令集,在不同的架构下面还可以有多种核心.核心就是指 ...

  8. ARM处理器模式

    ARM处理器模式 ARM处理器共有7种运行模式: l  用户模式(User,usr):正常程序执行的模式 l  快速中断模式(FIQ,fiq):用于高速数据传输和通道处理 l  外部中断模式(IRQ, ...

  9. ARM处理器的寄存器,ARM与Thumb状态,7中运行模式 【转】

    转自:http://blog.chinaunix.net/uid-28458801-id-3494646.html ARM处理器工作模式一共有 7 种 : USR  模式    正常用户模式,程序正常 ...

随机推荐

  1. 远程连接db2数据库

    在db2数据库中,需要理解catalog(编目)这个概念,理解前先说下db2数据库的体系结构:由系统(节点)也就是主机,下面是实例,实例下面是数据库,然后是表空间,再是数据库对象.现在假设你有一个数据 ...

  2. panda迭代

    1.注意 - 不要尝试在迭代时修改任何对象.迭代是用于读取,迭代器返回原始对象(视图)的副本,因此更改将不会反映在原始对象上. 2.itertuples()方法将为DataFrame中的每一行返回一个 ...

  3. 破解xlsm文件的VBA项目密码和xlsx的工作簿保护密码

    工具 待破解的xlsm文件.Excel2010.Hex Editor 步骤 1.修改.xlsm后缀为.zip 2.使用压缩软件打开,进入xl目录找到vbaProject.bin文件,解压出来 3.使用 ...

  4. sort和uniq的应用实例

    sort 排序 uniq 1.语法:sort [option]... [file]... 2.选项:-k key,关键子,指定以那个列来排序.如果不指定,默认将正行作为关键字排序-n 对数值排序.默认 ...

  5. gitlab搭建与配置说明

    1. 概述 Gitlab分为社区版和企业版,此次安装的是社区版(gitlab-ce). 2. 准备 本次使用系统为Ubuntu16.04. 3. 安装 添加GitLab仓库,并安装到服务器上(将git ...

  6. python 模块之-os

    python  os模块 import os os.getcwd()       # python脚本所在工作目录的路径 os.chdir(r'/tmp')        # 切换目录到tmp os. ...

  7. BZOJ1828[USACO 2010 Mar Gold 2.Barn Allocation]——贪心+线段树

    题目描述 输入 第1行:两个用空格隔开的整数:N和M * 第2行到N+1行:第i+1行表示一个整数C_i * 第N+2到N+M+1行: 第i+N+1行表示2个整数 A_i和B_i 输出 * 第一行: ...

  8. JSP 和 Servlet 的工作原理和生命周期

    JSP的英文名叫Java Server Pages,翻译为中文是Java服务器页面的意思,其底层就是一个简化的Servlet设计,是由sum公司主导参与建立的一种动态网页技术标准.Servlet 就是 ...

  9. android第二课:运行你的应用

    如果你按照前面课程创建了 Android 项目,它包含了可以立即运行的 "Hello World"源代码文件. 由两该条件来决定如何运行你的应用:你是否拥有运行着 Android ...

  10. 【BZOJ2426】[HAOI2010]工厂选址(贪心)

    [BZOJ2426][HAOI2010]工厂选址(贪心) 题面 BZOJ 洛谷 题解 首先看懂题目到底在做什么. 然而发现我们显然可以对于每个备选位置跑一遍费用流,然后并不够优秀. 不难发现所有的位置 ...