协处理器指令详解doc

协处理器指令详解doc

ID:14185830

大小:41.00 KB

页数:14页

时间:2018-07-26

协处理器指令详解doc_第1页
协处理器指令详解doc_第2页
协处理器指令详解doc_第3页
协处理器指令详解doc_第4页
协处理器指令详解doc_第5页
资源描述:

《协处理器指令详解doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、协处理器指令详解doc自己收藏的觉得很有用故上传到百度与大家一起分享!ARM指令集-协处理器指令详解ARM可支持多达16个协处理器主要的作用:ARM处理器初始化ARM与协处理器的数据处理操作ARM的寄存器与协处理器的寄存器之间传送数据以及ARM协处理器的寄存器和存储器之间传送数据共有5条:-CDP协处理器数据操作指令-LDC协处理器数据加载指令-STC协处理器数据存储指令-MCRARM的寄存器到协处理器的寄存器的数据传送-MRC协处理器的寄存器到ARM的寄存器的数据传送1、CDP指令CDP指令的格式为:CDP{条件}协处理器编码协处理器操作码1目的寄存器源寄存器1源寄存器2协处理器操作码2CD

2、P指令用于ARM处理器通知ARM协处理器执行特定的操作,若协处理器不能成功完成特定的操作则产生未定义指令异常其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作目的寄存器和源寄存器均为协处理器的寄存器指令不涉及ARM处理器的寄存器和存储器指令示例:CDPP32C12C10C34;该指令完成协处理器P3的初始化2、LDC指令LDC指令的格式为:LDC{条件}{L}协处理器编码,目的寄存器[源寄存器]LDC指令用于将源寄存器所指向的存储器中的字数据传送到目的寄存器中若协处理器不能成功完成传送操作则产生未定义指令异常其中{L}选项表示指令为长读取操作如用于双精度数据的传输指令示例:LDCP

3、3C4[R0];将ARM处理器的寄存器R0所指向的存储器中的字数据传送到协处理器P3的寄存器C4中3、STC指令STC指令的格式为:STC{条件}{L}协处理器编码,源寄存器[目的寄存器]STC指令用于将源寄存器中的字数据传送到目的寄存器所指向的存储器中若协处理器不能成功完成传送操作则产生未定义指令异常其中{L}选项表示指令为长读取操作如用于双精度数据的传输指令示例:STCP3C4[R0];将协处理器P3的寄存器C4中的字数据传送到ARM处理器的寄存器R0所指向的存储器中4、MCR指令MCR指令的格式为:MCR{条件}协处理器编码协处理器操作码1源寄存器目的寄存器1目的寄存器2协处理器操作码2

4、MCR指令用于将ARM处理器寄存器中的数据传送到协处理器寄存器中,若协处理器不能成功完成操作则产生未定义指令异常其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作源寄存器为ARM处理器的寄存器目的寄存器1和目的寄存器2均为协处理器的寄存器指令示例:MCRP33R0C4C56;该指令将ARM处理器寄存器R0中的数据传送到协处理器P3的寄存器C4和C5中5、MRC指令MRC指令的格式为:MRC{条件}协处理器编码协处理器操作码1目的寄存器源寄存器1源寄存器2协处理器操作码2MRC指令用于将协处理器寄存器中的数据传送到ARM处理器寄存器中,若协处理器不能成功完成操作则产生未定义指令异常其

5、中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作目的寄存器为ARM处理器的寄存器源寄存器1和源寄存器2均为协处理器的寄存器指令示例:MRCP33R0C4C56;该指令将协处理器P3的寄存器中的数据传送到ARM处理器寄存器中.ARM920T有两个具体协处理器1.CP14调试通信通道协处理器调试通信通道协处理器DCC(theDebugCommunicationsChannel)提供了两个32bits寄存器用于传送数据还提供了6bits通信数据控制寄存器控制寄存器中的两个位提供目标和主机调试器之间的同步握手此控制寄存器中的两个位提供目标和主机调试器之间的同步握手:位1(W位)从目标的角度

6、表示通信数据写入寄存器是否空闲:W=0目标应用程序可以写入新数据W=1主机调试器可以从写入寄存器中扫描出新数据位0(R位)从目标的角度表示通信数据读取寄存器中是否有新数据:R=1有新数据目标应用程序可以读取R=0主机调试器可以将新数据扫描到读取寄存器中注意调试器不能利用协处理器14直接访问调试通信通道因为这对调试器无意义但调试器可使用扫描链读写DCC寄存器DCC数据和控制寄存器可映射到EmbeddedICE逻辑单元中的地址若要查看EmbeddedICE逻辑寄存器请参阅您的调试器和调试目标的相关文档通信数据读取寄存器用于接收来自调试器的数据的32位宽寄存器以下指令在Rd中返回读取寄存器的值:MR

7、Cp14,0,Rd,c1,c0通信数据写入寄存器用于向调试器发送数据的32位宽寄存器以下指令将Rn中的值写到写入寄存器中:MCRp14,0,Rn,c1,c0注意有关访问ARM10和ARM11内核DCC寄存器的信息请参阅相应的技术参考手册ARM9之后的各处理器中所用指令、状态位位置以及对状态位的解释都有所不同目标到调试器的通信这是运行于ARM内核上的应用程序与运行于主机上的调试器之间的通信事件顺序:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。