ARM技术william hill官网
直播中

jjll652

8年用户 1382经验值
私信 关注
[问答]

小白求助怎样去使用ARM协处理器呢

ARM通过增加硬件协处理器来支持对其指令集的通用扩展,通过未定义指令陷阱支持这些协处理器的软件仿真。简单的ARM核提供板级协处理器接口,因此协处理器可作为一个独立的元件接入。高速时钟使得板级接口非常困难,因此高性能的ARM协处理器接口仅限于片上使用。

最常使用的协处理器是用于控制片上功能的系统协处理器,例如控制ARM720上的高速缓存Cache和存储器管理单元MMU等。

ARM也开发了浮点协处理器,也可支持其他片上协处理器。ARM体系结构支持通过增加协处理器来扩展指令集的机制。

1. 协处理器的体系结构

协处理器的体系结构最重要的特征如下:

支持多达16个逻辑协处理器

每个协处理器可使用的专用寄存器多达16个,其大小不限于32位,可以是任何合理的位数。

协处理器使用Load/Store体系结构,有对内部寄存器操作的命令,有从寄存器读取数据装入寄存器和将寄存器数据存入存储器的指令,以及与ARM寄存器传送数据的指令。

2. 协处理器

ARM协处理器具有自己的寄存器组,它们的状态是由控制ARM寄存器指令的镜像指令来控制的。控制流指令由ARM负责处理,所以协处理器指令只与数据处理和数据传送有关。按照RISC的Load/Store体系原则,这些指令类别是清楚区分的。指令的格式反映了这种情况。

3. 协处理器数据操作

协处理器数据操作完全是协处理器内部的操作,它完成协处理器寄存器状态的改变。一个例子是浮点加法,在浮点处理器中两个寄存器相加,结果放在第三个寄存器。

4. 协处理器数据存取

协处理器数据传送指令从存储器读取数据,然后装入协处理器寄存器,或将协处理器寄存器的数据存入存储器。因为协处理器可支持它自己的数据类型,所以每个寄存器传送的字数与协处理器有关。ARM产生的存储器地址,但协处理器控制传送的字数。协处理器可能执行一些类型转换作为传送的一部分。例如,浮点协处理器将读取的值转换成它的80位内部表示形式。

5.  协处理器寄存器传送

除了以上情况,在ARM和协处理器寄存器之间传送数据有时是有用的。再以使用浮点协处理器为例,FIX指令从协处理器寄存器取得浮点数据,将它转换为整数,并将整数传送到ARM寄存器中。经常需要用浮点比较产生的结果来影响控制流,因此比较的结果必须传送到ARM的CPSR。这些指令合起来即可支持ARM指令集的扩展,以支持专用的数据类型和功能。

更多回帖

发帖
×
20
完善资料,
赚取积分