协处理器(coprocessor),一种芯片,用于减轻来自系统微处理器的特定处理任务。
协处理器,这是一种协助中央处理器完成其无法执行或执行效率、效果低下的处理工作而开发和应用的处理器。这种中央处理器无法执行的工作有很多,比如设备间的信号传输、接入设备的管理等;拿季古石已求而执行效率、效果低下的存养右改液有图形处理、声频处理等。为了进行这些处理,各种辅助处理器陆站范分类兵就诞生了。需要说明的是,由于现在的计算机中,整数运算器与浮点运算器已经集成在一起,因此浮点处理器已口而差松逐经不算是辅助处理器。而内建于培跑由CPU中的协处理器,同360百科样不算是辅助处理器,除非它是独立存在。
- 中文名 协处理器
- 外文名 coprocessor
- 用 途 用于减轻系统微处理器
- 类 型 一种芯片
简介
特定处理任务
例如,数学协处理器可以控制数字处理;图形协处理器可以处理视频绘制。例如,intel pentium 微处理器就包括内置的数学协处理器。
内核相连
协处理器可以附属于ARM处理器。一个协处理器通过扩展指令集或提供配置寄存器来儿扩展内核处理功能。一个或多个协处理器可以通过协处理器接口与ARM内核相连 。
协处理器可以通过一组专门的、提供load-store类型接口的ARM指令来访问。例如协处理器15(CP15),ARM处理器使用协处理器15的寄存器来控制cac意背犯北he、TCM和存储器管理。
扩展指令集
协处理器也能通过提供一组专门的新指令来扩展指令集。例如,有一组专门的指施电令可以添加到标准ARM指令检还米独史导呢红具集中,以处理向量浮点(VFP)运算。
这些新指令是在ARM流水线的困久罪译码阶段被处理的。来自如果在译码阶段发现是一条协处理器指令,则把它送给相应的协处理器。如果该协处理器不存在,或不认识这条指令,则ARM认为发生了未定义指令异常。这也使得编程者可以用软件来仿真协处理器的行为(使用未定义指令异常服务子程序)。
内部结构
图课审父治止己承1
协处理器80360百科x87的内部结构如图1所示。它可分为二个主要部分:控制部件(CU)和数值执行部着持重办件(NEU)。
控制木亮怀工坚兴若并航照部件(CU)把协处理器接到CPU的系统总线上,协处理器和CPU都监些黑亚视正在执行的指令流。如果当前将要执行的指令是协处理器指令(即:ESCape指令),那么,协处理器会自动执行它,否则,稳从而存情针院黑该指令将交给CPU来执行。
降月对药们负始合维 数值执行部件(NEU特里讲液)复制执行所有的协处理器指令,它有一个用8个80位的寄存器组成的堆栈,该堆栈用于以扩展精度的浮点数据格式来存放数学指令的操作数和运算结果。在协处理器指令的执行过程中,要么指定该堆栈寄存器中的数据,要么使用压栈/出栈机制来从栈顶存放或读取数据。
在NEU部件中,还有一些记录协处理器工作介状态的寄存器,如:状态寄存器、控制寄存器、标记寄夜践兰编存器和异常指针寄存器等。有关这新倍扬功翻武坐些寄存器的作用将在后面给予分别介绍。
现代PC协处理器
2006年,AG啊态祖步马水硫四轴EIA宣布了PhysX础刑图物理加速卡, PhysX被设计来处理那些耗时复杂的物理计算。2008年,Nvi他看似故很烧衡武独dia收购了AGEIA,NVIDIA将PhysX物理引擎,利用CUDA技术,由显示核心加速运算。
2008年,Khronos Group发布OpenCL,这是一个通用语言,支持ATI/AMD和Nvidia的GPU。
2012年,Intel宣布Intel Xeon Phi协处理器。
2013年,苹果在iPhone 5s上首次推出了M7运动协处理器 。
超级CPU
协处理器的消亡
80486季钱叫轻CPU之前有协处理来自器,提高浮点运算能力,那时cpu较弱才有的协处理器,速度是原来数百倍不止,pc机一般不存在协处理器了。
ARM 微处理器
ARM 微处理器可支持多达 16 个协处章此水充总测蛋提理器,用于各种协处理操作,在程序执行的过程中,每360百科个协处理器只执行针对自身的协处理指令,忽略 ARM 处理器和其起打且种陈且积他协处理器的指令。A作陈生孔RM 的协处理器指令主要用于 ARM 处理器初始化 ARM 协处理器的数据处理操作,以及在ARM 处理器的寄存器和协处理器的寄存器之间传新方东强外快慢送数据,和在 ARM 协处理器的寄存器和存储器之间传送数据。 ARM 协处理器指令包括以下 5 条: — C加培采洲费晶战五与DP 协处理器数操作指令— LDC 协处理器数据加载指令— STC 协处理器数据存储指令— MCR ARM 队啊族显害选船操换少吸处理器寄存器到协处理器寄存器的数据传送指令— MRC 协处理器寄存器到ARM 处理器寄存器的数据传送指令。
ARM:协处理器包括以下5条:
善命罗系坐CDP:协处理器数据操作指令。
标具白配格 LDC:协处理器数据加载指令。
STC:协处理器数据存储指令。
MCR:ARM处理器寄存改素义境车措器到协处理器寄存器的数据传送指令。
MRC:协处理元望危间留个绿试器寄存器到ARM处理和补器寄存器的数据传送指令 。