ARM汇编协处理器指令

发布者:CaptivatingGaze最新更新时间:2016-07-12 来源: eefocus关键字:ARM  汇编  协处理器指令 手机看文章 扫描二维码
随时随地手机看文章
协处理器(coprocessor),一种芯片,用于减轻系统微处理器的特定处理任务。

ARM 微处理器可支持多达 16 个协处理器用于各种协处理操作。

在程序执行的过程中,每个协处理器只执行针对自身的协处理指令,忽略 ARM 处理器和其他协处理器的指令。

ARM 的协处理器指令主要用于 ARM 处理器初始化 ARM 协处理器的数据处理操作,以及在ARM 处理器的寄存器和协处理器的寄存器之间传送数据,和在 ARM 协处理器的寄存器和存储器之间传送数据。

 

ARM协处理器包括以下5条:  

CDP:协处理器数操作指令。  

LDC:协处理器数据加载指令。  

STC:协处理器存储指令。  

MCR:ARM处理器寄存器到协处理器寄存器的数据传送指令。(ARM->协)  

MRC:协处理器寄存器到ARM处理器寄存器的数据传送指令。(协->ARM)

 

 

1、CDP指令

CDP指令的格式为:

CDP{条件} 协处理器编码,协处理器操作码1,目的寄存器,源寄存器1,源寄存器2,协处理器操作码2。

CDP指令用于ARM处理器通知ARM协处理器执行特定的操作,若协处理器不能成功完成特定的操作,则产生未定义指令异常。其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作,目的寄存器和源寄存器均为协处理器的寄存器,指令不涉及ARM处理器的寄存器和存储器。

指令示例:

  CDP   P3,2,C12,C10,C3,4   ;该指令完成协处理器P3的初始化

2、LDC指令

LDC指令的格式为:

LDC{条件}{L} 协处理器编码,目的寄存器,[源寄存器]

LDC指令用于将源寄存器所指向的存储器中的字数据传送到目的寄存器中,若协处理器不能成功完成传送操作,则产生未定义指令异常。其中,{L}选项表示指令为长读取操作,如用于双精度数据的传输。

指令示例:

   LDC   P3,C4,[R0]                ;将ARM处理器的寄存器R0所指向的存储器中的字数据传送到协处理器P3的寄存器C4中。

3、STC指令

STC指令的格式为:

STC{条件}{L} 协处理器编码,源寄存器,[目的寄存器]

STC指令用于将源寄存器中的字数据传送到目的寄存器所指向的存储器中,若协处理器不能成功完成传送操作,则产生未定义指令异常。其中,{L}选项表示指令为长读取操作,如用于双精度数据的传输。

指令示例:

STC   P3,C4,[R0]              ;将协处理器P3的寄存器C4中的字数据传送到ARM处理器的寄存器R0所指向的存储器中。

4、MCR指令

MCR指令的格式为:

MCR{条件} 协处理器编码,协处理器操作码1,源寄存器,目的寄存器1,目的寄存器2,协处理器操作码2。

MCR指令用于将ARM处理器寄存器中的数据传送到协处理器寄存器中,若协处理器不能成功完成操作,则产生未定义指令异常。其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作,源寄存器为ARM处理器的寄存器,目的寄存器1和目的寄存器2均为协处理器的寄存器。

指令示例:

   MCR   P3,3,R0,C4,C5,6       ;该指令将ARM处理器寄存器R0中的数据传送到协处理器P3的寄存器C4和C5中。

5、MRC指令

MRC指令的格式为:

MRC{条件} 协处理器编码,协处理器操作码1,目的寄存器,源寄存器1,源寄存器2,协处理器操作码2。

MRC指令用于将协处理器寄存器中的数据传送到ARM处理器寄存器中,若协处理器不能成功完成操作,则产生未定义指令异常。其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作,目的寄存器为ARM处理器的寄存器,源寄存器1和源寄存器2均为协处理器的寄存器。

指令示例:

  MRC   P3,3,R0,C4,C5,6        ;该指令将协处理器P3的寄存器中的数据传

关键字:ARM  汇编  协处理器指令 引用地址:ARM汇编协处理器指令

上一篇:ARM指令集协处理器指令
下一篇:ARM指令集杂项指令

推荐阅读最新更新时间:2024-03-16 14:59

从MOV PC,PC;看ARM的三级流水线过程
乍看这个指令好像是NOP;实际上远远不是,他实现的功能是跳转到当前指令下面第二条指令处执行: 原因是PC寄存器中存储的是当前指令的地址+8,当人为改变PC寄存器的值之后,程序会跳转执行,这样,这条命令之后,假设这条命令的地址为X,那么PC在执行这条命令之后为X+8, 之后周期开始fetch X+8, 下一个周期开始decode X+8同时fetch X+12, 再一个周期开始excute X+8,同时decode X+12,同时fetch X+16, 这时候PC的值已经变成X+16, 也就是正在执行的X+8再加上8,如此继续。。。 实现同样目的的还有 ADD PC,PC,#0;当然B PC也可以,但是没有前者来的快速。
[单片机]
从MOV PC,PC;看<font color='red'>ARM</font>的三级流水线过程
基于ARM的机载电台检测控制器的设计应用
机载电台担负着空空和地空之间通信,为保证电台性能,需要对其进行定检。基于单片机的检测仪存在测量速度慢、可扩展性差的问题;而基于PXI仪器或VXI仪器的检测仪存在着功耗大、体积大、价格高等缺点。为解决上述问题,利用基于ARM处理器来实现电台检测控制器成为重要的发展方向,ARM是一种高性能、低功耗的RISC结构处理器,由于其出色的性能被广泛应用于工业控制、无线通讯、成像和安全、网络应用等方面,采用基于ARM的电台检测控制器具有可移植性强、可扩展性好、抗干扰能力强等优点。 1 硬件设计 良好的硬件设计是是解决基于单片机、PXI、VXI等系统的电台检测仪问题的关键。为实现硬件结构的模块化设计,硬件主要分为两大部分:主控制器电路和调理电
[单片机]
基于<font color='red'>ARM</font>的机载电台检测控制器的设计应用
基于ARM7+μC/OSII的数据采集系统设计
摘 要:介绍了一种用ARM7+μC/OSII设计的数据采集系统。给出了系统原理框图,实现了将嵌入式操作系统植入该系统中,列出了软件设计的要点。   关键词:ARM7;μC/OSII;嵌入式操作系统   在一些工业现场中,设备长时间运行容易出现故障,为了监控这些设备,通常利用数据采集装置采集他们运行时的数据并送给PC机,通过运行在PC机上的特定软件对这些数据进行分析,以此判断当前运行设备的状况,进而采取相应措施。当前常用的数据采集装置,在其系统软件设计中,多采用单任务顺序机制。这样就存在系统安全性差的问题。这对于稳定性、实时性要求很高的数据采集装置来说是不允许的,因此有必要引入嵌入式操作系统。笔者以μC/OSII为操作系统平台,基于
[嵌入式]
51单片机汇编语言实验(六)-----8255键盘与显示设计
一、实验目的:    掌握8255外接键盘与数码管显示的设计 二、实验设备:    PC计算机一台,Dais-52PRO+实验系统一套。 三、实验内容:    8255键盘与显示设计 四、 8255键盘与显示设计    1、实验原理:    本实验使用8255的PA7到PA0控制数码管字形口、PB5到PB0控制数码管字位口,同时PB4到PB0作为键盘扫描口、PC3~PC0作为键盘读入口。利用CPU控制8255,对4×5键盘进行扫描和键值读取,将键值显示到6位数码管上。本文介绍的是简化版的实验,不控制最后一列键盘,数码管位选端不接线,直接点亮。    2、实验步骤:   ① 按下图拆除14芯扁平电缆;   ②将8
[单片机]
51单片机<font color='red'>汇编</font>语言实验(六)-----8255键盘与显示设计
ARM11以后值得关注的Cortex产品系列
ARM在经典处理器ARM11以后的产品改用Cortex命名,并分成A、R和M三类,旨在为各种不同的市场提供服务。Cortex系列属于ARMv7架构,这是到2010年为止ARM公司最新的指令集架构。ARMv7架构定义了三大分工明确的系列:A系列面向尖端的基于虚拟内存的操作系统和用户应用;R系列针对实时系统;M系列对微控制器。由于应用领域不同,基于v7架构的Cortex处理器系列所采用的技术也不相同,基于v7A的称为Cortex-A系列,基于v7R的称为Cortex-R系列,基于v7M的称为Cortex-M系列。 今天就带大家来看看ARM11以后的Cortex产品系列: ARM推出ARMv8架构ARM Cortex-A50处理
[单片机]
<font color='red'>ARM</font>11以后值得关注的Cortex产品系列
ADS1.2使用jlink调试程序(调试芯片s3c2440 arm9)
一、软件安装 ADS1.2下载: http://down.drv5.cn/www.drv5.cn/arm ads1.2.rar jlink驱动下载: http://fastsoft.onlinedown.net/down/JLink_Windows_V630d.exe S3C2440led裸机程序(GT2440开发板的): https://download.csdn.net/download/u012577474/11249524 下载,安装上面的3个软件。 二、CodeWarrior编辑arm程序 ADS安装后,会安装以下这些工具。 这里先打开CodeWarrior,导入我们的led裸机程序。 程序目录: 导入程
[单片机]
ADS1.2使用jlink调试程序(调试芯片s3c2440 <font color='red'>arm</font>9)
基于ARM平台的RFID系统设计与实现
  1. 引 言    近年来,RFID(无线射频)技术是正在兴起的一项新兴的自动识别技术。RFID 利用射频方式进行非接触双向通信,从而实现对物体的识别,并将采集到的相关信息数据通过无线技术远程进行传输。相较目前广泛采用的条型码技术,RFID 具有读取距离远(几米至几十米)、穿透能力强(可透过包装箱直接读取信息)、抗污染、效率高(可同时处理多个标签)、信息量大的特点。它的出现给物流和生产方面的工业应用带来了革命性的影响 。    正是由于上述原因,本文提出了一种基于ARM 平台的RFID 系统设计与实现方案,以满足人们在嵌入式领域对RFID 技术的开发与应用。    2. 系统介绍    2.1 系统硬件设计    
[单片机]
基于<font color='red'>ARM</font>平台的RFID系统设计与实现
基于AMR语音编解码算法的VoIP系统
本文提出了一种基于AMR语音编解码算法的新VoIP系统,该系统可以根据网络信道质量的好坏来自适应地选择一种最佳的传输速率,从而使得合成后的语音质量有了更加良好的QoS保障。通过NS-2平台下的仿真,实验结果表明:新VoIP系统在网络延时和数据包丢失率方面均要明显优于采用G.729算法的传统VoIP系统。 1 NS-2和AMR相关技术 1.1 NS-2网络模拟器 NS-2(Network Simulator,version 2)是由加州大学伯克利分校开发的面向对象的、离散事件驱动的网络模拟器,主要用于解决网络研究方面的问题,目前NS-2可以用于模拟各种不同的通信网络。它功能强大,模块丰富,已经实现的主要模块有:网络传输
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved