我查找了一下:
在逻辑上arm可以扩展16个协处理器,每个协处理器可能有16个寄存器:如下表:
协处理器号 功能
15 系统控制
14 调试控制器
13-8 保留
7-4 用户
3-0 保留
例如 mmu 和保护单元的系统控制都采用cp15协处理器,jtag调试中的协处理器为cp14,即通信通道dcc(debuge communication channel)
协处理器也采用load/store结构,用指令来执行寄存器的内部操作,从存储器取数据至寄存器或把寄存器的数据保存到存储器中,以实现arm处理器内核中寄存器之间的数据传送,而这些指令都由协处理器完成!!
其接口有以下四类:
时钟和时钟控制信号:mclk.nwait,nreset
流水线跟随信号:nmreq,seq.,ntrans,nopc,tbit;
应答信号:ncpi,cpa,cpb;
数据信号:d[31:0],din[31:0],dout[31:0];
协处理器也采用流水线结构,为了保证arm处理器内核中的流水线同步,在每个协处理器内需要1个流水线跟随器来跟踪arm处理器内核流水线的指令,由于arm的thumb指令集无协处理器指令,协处理器还必须监视TBIT信号的状态,以确保不把thumb指令误解为arm指令;
协处理器的应答信号:
nCPI :为arm处理器至协处理器信号,该信号低电压有效表示“协处理器指令”
,表示arm处理器内核标示了一条协处理器指令,希望协处理器去执行它
CPA: 表示协处理器不存在,无力执行
CPB : 表示协处理器忙,,:
哎呀,终于敲完了,希望对大家有用!!!!!!!!!!!!!!!!
我查找了一下:
在逻辑上arm可以扩展16个协处理器,每个协处理器可能有16个寄存器:如下表:
协处理器号 功能
15 系统控制
14 调试控制器
13-8 保留
7-4 用户
3-0 保留
例如 mmu 和保护单元的系统控制都采用cp15协处理器,jtag调试中的协处理器为cp14,即通信通道dcc(debuge communication channel)
协处理器也采用load/store结构,用指令来执行寄存器的内部操作,从存储器取数据至寄存器或把寄存器的数据保存到存储器中,以实现arm处理器内核中寄存器之间的数据传送,而这些指令都由协处理器完成!!
其接口有以下四类:
时钟和时钟控制信号:mclk.nwait,nreset
流水线跟随信号:nmreq,seq.,ntrans,nopc,tbit;
应答信号:ncpi,cpa,cpb;
数据信号:d[31:0],din[31:0],dout[31:0];
协处理器也采用流水线结构,为了保证arm处理器内核中的流水线同步,在每个协处理器内需要1个流水线跟随器来跟踪arm处理器内核流水线的指令,由于arm的thumb指令集无协处理器指令,协处理器还必须监视TBIT信号的状态,以确保不把thumb指令误解为arm指令;
协处理器的应答信号:
nCPI :为arm处理器至协处理器信号,该信号低电压有效表示“协处理器指令”
,表示arm处理器内核标示了一条协处理器指令,希望协处理器去执行它
CPA: 表示协处理器不存在,无力执行
CPB : 表示协处理器忙,,:
哎呀,终于敲完了,希望对大家有用!!!!!!!!!!!!!!!!
举报