漫谈X86协处理器
- 格式:doc
- 大小:1.10 MB
- 文档页数:17
arm x86 计算差异ARM和x86是两种不同的计算机架构,它们在处理器设计和指令集上存在一些差异。
本文将对ARM和x86的差异进行详细介绍。
ARM和x86都是广泛应用于个人电脑、服务器和移动设备等领域的计算机架构。
ARM架构主要用于低功耗设备,如智能手机和平板电脑,而x86架构则主要用于高性能计算机和服务器。
一、指令集差异ARM和x86的指令集存在一些差异。
ARM使用的是精简指令集(RISC)指令集,指令长度固定为32位。
而x86使用的是复杂指令集(CISC)指令集,指令长度可变,有16位和32位两种指令。
由于指令集的不同,ARM和x86在执行相同的任务时可能会有一些差异。
ARM的指令集设计更加简单,执行速度较快,适合用于低功耗设备。
而x86的指令集设计更加复杂,执行速度相对较慢,但可以处理更复杂的任务。
二、寄存器差异ARM和x86在寄存器的数量和用途上也存在一些差异。
ARM架构通常具有较少的通用寄存器,一般为16个。
而x86架构通常具有更多的通用寄存器,一般为8个。
ARM和x86在浮点寄存器和向量寄存器的设计上也存在一些差异。
ARM架构通常具有较多的浮点寄存器和向量寄存器,可以更高效地进行浮点运算和向量计算。
而x86架构通常使用协处理器来处理浮点运算。
三、内存管理差异ARM和x86在内存管理方面也存在一些差异。
ARM架构使用了一种称为页表的数据结构来管理内存,以实现虚拟内存和内存保护。
而x86架构使用了一种称为分段机制的方式来管理内存。
在虚拟内存方面,ARM和x86的实现方式略有不同。
ARM使用了一种称为TLB(Translation Lookaside Buffer)的高速缓存来加速地址转换,而x86使用了一种称为页表缓冲器(Translation Lookaside Buffer)的高速缓存。
四、操作系统支持差异由于ARM和x86在指令集和寄存器等方面存在一些差异,因此它们对操作系统的支持也有所不同。
x86架构指令集
x86架构指令集是一种计算机处理器的指令系统,最初由英特尔公司开发,现在已成为广泛使用的指令集架构之一。
x86架构指令集包括大量的指令,用于执行各种计算和数据处理任务。
这些指令可以在绝大多数PC和服务器处理器上运行,包括Intel、AMD、VIA等品牌的处理器。
x86架构指令集的指令分为多种类型,包括算术指令、逻辑指令、数据传输指令等。
这些指令可以进行加减乘除、位运算、移位操作、存储数据等操作。
除了基本指令外,x86还提供了一些特殊的指令,如浮点指令和协处理器指令,用于执行浮点数计算和高级运算。
随着计算机技术的不断发展,x86架构指令集也不断更新和升级。
近年来,Intel推出了一系列新一代的x86处理器架构,如Sandy Bridge、Ivy Bridge、Haswell等,这些处理器采用了更加先进的微架构设计和指令集扩展,提高了性能和能效。
总的来说,x86架构指令集是计算机领域中极为重要的指令集之一,它的广泛应用使得大多数人的计算机使用体验得以显著提升。
- 1 -。
X86机的原理构造及技术详解X86架构是计算机体系结构的一种,广泛应用于个人电脑和服务器领域。
它包含了一系列的指令集和硬件设计,为计算机的运行提供了基本框架。
下面将详细解析X86机的原理构造及技术。
1.指令集:X86的指令集是其最重要的特征之一、它包括基本的算术运算、逻辑运算、数据传输等指令,并提供了各种操作数的寻址方式。
X86提供了多种寻址方式,例如寄存器寻址、立即数寻址、直接寻址、间接寻址等。
这些指令和寻址方式的组合可以满足各种计算需求。
2.处理器架构:X86处理器架构通常由运算单元、控制单元、寄存器、数据通路、总线等组成。
运算单元负责执行指令中的算术和逻辑运算,控制单元负责指令的解码和控制流程的管理,寄存器用于存储数据和地址,数据通路用于连接各个功能模块,总线用于传输数据和控制信号。
3.寄存器:X86处理器拥有多个寄存器,包括通用寄存器、控制寄存器、段寄存器等。
通用寄存器用于存储一般性数据,控制寄存器用于存储控制信息,段寄存器用于存储段选择子,以实现分段机制。
通用寄存器的个数和位数因处理器型号不同而有所差异。
4.数据通路:X86处理器的数据通路通常包括运算器、存储器和数据寄存器。
运算器用于执行算术和逻辑运算,存储器用于存储指令和数据,数据寄存器用于暂存数据。
数据通路可以根据指令中的操作数和寻址方式进行数据的读取和写入。
5.缓存:X86处理器通常会配置多级缓存,以提高数据访问速度。
缓存分为指令缓存和数据缓存,它们分别用于存储指令和数据,减少访问主存的时间。
缓存的大小和结构会因处理器型号而有所不同,更高级别的缓存一般会更大,但也更贵和更慢。
6.执行流程:X86处理器的执行流程通常包括取指令、解码、执行、访存和写回等阶段。
取指令阶段从存储器中获取指令,解码阶段将指令转换为可执行的微操作序列,执行阶段根据微操作序列执行计算和数据操作,访存阶段读取或写入数据,写回阶段将结果写回到相应的寄存器或存储器。
一个好汉三个帮——协处理器技术剖析毫无疑问,多核是今后CPU发展的主旋律。
不过,随着技术的成熟,多核处理器的架构也将发生一个显著的变化,那就是从通用的对等设计转移到“主核心+协处理器”的新型架构,即处理器中只有一个或数个通用核心承担任务指派功能,而浮点运算、HDTV视频解码、Java语言执行等功能都由专门的DSP硬件核心来完成,以实现处理器执行效率和性能的最大化。
继往开来——协处理器的发展历程所谓协处理器,就是一颗能与CPU协同工作,帮助CPU完成特定任务的专用处理芯片。
由于协处理器往往是针对某些特定应用(如浮点运算)而设计,所以设计时不必考虑太多的通用性,协处理器往往拥有很高的性能,完成特定任务时可以把现有CPU远远抛在后面。
举个例子,ClearSpeed公司就发布了一款基于协处理器的PCI Express板卡,该卡的浮点性能高达50Gflops(Giga FLoating point Operations per Second,每秒十亿次浮点运算),比当前桌面PC强10倍。
要知道,就算Intel面向高端服务器的4路Montecito(双内核)系统也仅获得45GFlops的浮点性能!协处理器的威力可见一斑!ClearSpeed的协处理器板卡外观事实上,协处理器很早就在PC市场大展身手了。
8087就是Intel设计的第一个数学辅助处理器,它与Intel的8088和8086微处理器成对工作,可以加速应用程序的浮点运算速度,针对不同的特定应用,速度提升从20%到500%不等。
真正让电脑用户对协处理器印象深刻的当数80387芯片了,当时它被很多386主机搭载,主频与CPU速度匹配。
当CPU发展到486时代,协处理器就从人们的视线中消失了。
事实上,这种情况的出现主要得益于半导体制造工艺的进步。
以往由于技术的限制,一个芯片内不能同时封装ALU(Arithmetic Logic Unit,算术逻辑单元)和FPU(Float Point Unit,浮点运算单元)两个单元,而80486使用了1微米制造工艺,首次实破了芯片内100万个晶体管的限制,FPU从此就在CPU内部“安家”了。
它能做什么五核心异构x86 SoC英特尔Lakefield技术解析英特尔Lakefield是一种创新的SoC(系统芯片),它拥有五核心异构的设计,集成了x86架构处理器以及协处理器,能够为用户提供强大的计算性能和出色的功耗控制。
本文将对Lakefield技术进行深度解析,从其五核心异构设计、性能表现、能耗控制、应用场景以及未来发展前景等方面进行分析,帮助读者更加全面地了解这一新型芯片。
一、五核心异构设计Lakefield芯片拥有一个Sunny Cove核心和四个Tremont核心。
Sunny Cove核心采用了英特尔最新的10纳米制程工艺,拥有强大的计算能力和高效的性能表现。
而Tremont核心是一种低功耗、高效能的核心,可以为系统提供良好的功耗控制和节能表现。
通过这种异构设计,Lakefield在保证了高性能的也能够实现出色的功耗控制,为移动设备带来了更长的续航时间和更好的用户体验。
除了处理器核心,Lakefield还集成了英特尔的图形处理器以及专门用于加速人工智能计算的协处理器。
这种多核心异构设计使得Lakefield能够更好地适应不同的应用场景,同时也为其提供了更多的扩展性和灵活性。
二、性能表现在性能方面,Lakefield拥有出色的计算能力和多任务处理能力。
Sunny Cove核心能够提供强大的单线程性能,适用于高性能计算任务和对处理器性能要求较高的应用。
而Tremont核心则可以提供稳定的多任务处理能力,适用于日常办公、网页浏览等轻办公场景。
Lakefield还配备了英特尔的集成图形处理器,能够提供流畅的图形表现和良好的游戏体验。
而协处理器则可以加速人工智能计算,为用户提供更快速、更智能的应用体验。
Lakefield在性能表现上有着出色的表现,能够满足不同用户的多样化需求,同时也为移动设备带来了更多的创新可能性。
三、能耗控制Lakefield还具备智能功耗管理功能,能够根据不同的使用场景自动调整功耗模式,实现更加精准的功耗控制。
x86 架构是过时的,还是依旧领先?【破布的回答(109票)】:1. x86阵营的处理器在技术上完全没有落后。
你要问的问题应该是x86是否仍然能够保持领先。
2. 处理器微结构乃至更底层的实现,跟是否x86、是否MIPS,是否ARM,基本没有关系。
我所知道的微结构技术,除了跟内存模型,谓词化、调用约定等地方有关的可能不能泛用以外,基本上都已经是跨微结构通用,比如著名的gshare分支预测器,可以同时用在x86、ARM以及任何一种面向CPU的指令集上,没有什么障碍。
我至今没有看到什么x86独占或者是ARM独占的处理器设计技术,并且将来也很可能不会有。
3. CISC和RISC之争早就结束了。
(自荐拙作一篇RISC诞生与发展的缩影)现在的处理器速度是快是慢跟指令集架构基本没有关系,HPCA 2013上登了WISC-Madison的一篇文章,有人分析对比了Cortex-A8/A9和Intel i7/Atom,得出了指令集架构的影响力早已被处理器微结构乃至更底层的设计实现给抹平了的结论。
结果这个结论还引发一些学者不满,不满的原因不是这个结论错误,而是这个结论早已经是大家公认的共识,居然也发了一篇HPCA论文!4. 微结构仍然拼。
但是说实话没有多少好改的了。
微结构这个领域已经发展了差不多半个世纪,第一个乱序执行CPU 是上世纪六十年代出来的,到现在,潜力已经被挖的差不多了,很难再有大的突破,大家都只能一点一点儿地做incremental change,好一点儿是一点儿。
更底层的情况我不太清楚。
【知乎用户的回答(2票)】:诚如破布所说,现在指令集对于芯片性能的影响已经微乎其微了。
事实上从技术上看,x86/arm并无绝对的优劣之分。
要说落后先进,最多只能说某个指令集下的生态系统的影响力是减弱还是增强了。
其实现在几种指令集的竞争也是主要集中在生态系统的竞争上,而生态系统的优劣又和厂商的规模、经营策略等息息相关。
比如arm的成功就主要依赖于苹果和谷歌两大厂商的推动,一如当年x86的成功与intel和微软的联合密不可分一样。
x86体系结构的基本特点x86体系结构是一种常见的计算机处理器架构,也是目前个人电脑和服务器中最为广泛使用的体系结构之一。
x86体系结构最初由英特尔公司开发,后来由AMD等公司进行扩展和改进。
本文将从基本特点和中心扩展两个方面来解释x86体系结构。
一、x86体系结构的基本特点1. CISC指令集:x86体系结构采用复杂指令集计算机(CISC)的指令集。
CISC指令集包含了大量的指令,每条指令可以执行多个操作,包括内存访问、算术运算、逻辑运算等。
这种指令集的设计可以提高编程的灵活性和效率,但也增加了处理器的复杂性和设计难度。
2. 变长指令格式:x86体系结构的指令格式是变长的,指令长度可以是1个字节到15个字节不等。
这种变长指令格式可以减少指令的存储空间,提高指令的编码效率。
3. 分段式内存管理:x86体系结构采用了分段式内存管理机制。
内存地址由段基址和段内偏移地址组成,通过段选择子和段描述符来访问内存。
这种分段式内存管理可以提供更大的内存空间,但也增加了内存管理的复杂性和访问延迟。
4. 物理地址扩展:x86体系结构最初采用的16位地址总线只能寻址64KB的内存空间,后来通过物理地址扩展技术扩展到32位和64位,可以寻址4GB和16EB的内存空间。
物理地址扩展可以满足不同应用场景下的内存需求,提高系统的可扩展性和性能。
5. 指令流水线:x86体系结构中的处理器通常采用多级流水线结构,将指令的执行分为多个阶段,每个阶段独立执行。
这种指令流水线可以提高指令的执行效率,但也会增加流水线的延迟和冲突。
二、x86体系结构的中心扩展描述1. 64位架构:x86体系结构在2003年推出了64位扩展,即x86-64或x64。
64位架构可以寻址更大的内存空间,提供更高的计算能力,适用于大规模数据处理和科学计算等应用场景。
2. SIMD指令集:x86体系结构支持多媒体指令集(SIMD),如SSE (Streaming SIMD Extensions)和AVX(Advanced Vector Extensions)。
漫谈X86协处理器1.前言。
FPU( floating point unit)直译为浮点运算单元,在很多地方也被称为“数学协处理器”(Math coproce ssors)“数字处理器”(Numeric Processor),这类以数学运算为主的器件统一归入“协处理器”(Co-processo rs)中,FPU,故名思义,它的主要功能是用来进行浮点运算以及高精度的科学运算。
从基于X86的CPU技术发展来看,在486时代以前的时代,多数用户被Intel或相关厂商认为“普通用户”,使用协处理器的机率不高,那时一般只有CAD/CAM领域FPU才是必须要用到的,Intel认为:如果将FPU单元集成到CPU中,不仅技术上实现成本较高,而且这部份不常用的功能将造成所谓的“资源浪费”。
所以,自8086开始,FPU一直作为单独的封装产品对外发布,成为可选件,FPU由主要的几个CP U制造商(Intel,Cyrix等)制造,同时也吸引到一些专门的IC制造公司加入到这个行列中来,比如IIT/ULSI 等,Cyrix公司抓住了这一特定的历史发展机遇期,通过FPU的制造逐渐掌握了CPU的制造技术,并过渡到主流的CPU供应商的行列中来。
随着技术的进步以及CPU应用领域的拓展,特别是多媒体以及3D应用要求使用到大量的浮点运算单元,为了提升CPU的整体性能,独立的FPU单元逐渐被整合到单一的CPU内部,所以Pentium及之后就完全看不到独立的FPU协处理器了,因为是特定时代的产物,所以FPU类芯片在处理器收藏中具有独特的地位。
协处理器发展到今天,已呈现多样化趋势,虽然FPU单元大多数已被并入到CPU中,但一些特定用途的协处理器方兴未艾,比如“IP协处理器”、“指纹协处理器”、以及各类嵌入式平台的协处理器。
限于篇幅,本文将讨论藏友最关心的基于X86技术的FPU协处理器。
2. X86协处理器概览。
下表是笔者整理了所有已知协处理器之后得出的一览表。
制造商种类备注Intel80878088/8086/80186/80188 的协处理器80C18780C186 的协处理器80287-1, -2, -3, -4, -XL 以及-XLT 版本387DX, SX 和SL 版本RapidCAD-2RapidCAD-1(本质上是486DX的CPU但采用了386的针脚输入)的协处理器487SX 本质上是一个486DX33的CPU,但未经Intel官方证实AMD80C287286 协处理器Cyrix82S87 /287XL286 协处理器83D87/83S87386 协处理器, 83S87 是SX版本EMC87是83D87中的特殊类型,与WEITEK的3167针脚兼容.ULSI83C87386协处理器83S87386SX协处理器IIT2C87286 协处理器3C87386 coprocessor, 3S87对应SX版本4C87486DLC 的协处理器Weitek 10671167286 协处理器3167的预发布版本3167386 协处理器4167486 协处理器Chips38700DX/SX CHIPS386的协处理器。
NexGen Nx587早期Nx586的协处理器。
505083C87386的协处理器Symphony SL83C87386的协处理器Xtend83C87386的协处理器LC Green Math 4C87DX386的协处理器KENWOOD4C87未知PHI3C87未知3.各类X86协处理器鉴赏。
3.1 8086/8088时代的各型FPUIntel可谓是研发FPU产品的开山鼻袓,其8087系列是业界第一种X86的FPU。
下图为笔者所收藏的C8 087实物:IBM那时也在自已的PC-XT机上采用到的FPU上做上自已的标记(注册藏友X11west提供):连Microsoft在当年也推出了一种极为奇怪的8087FPU,它可能是我记忆中的Microsoft唯一的一种IC产品。
但从外观上看,它应该是在P8087的基础上采用了二次封装技术做成了这样子的(注册藏友Xi11wes t提供)。
8087FPU主要应用于提升8086、8088 CPU的浮点运算能力,但80186、80188等工控CPU同样会用到它,这就是为什么电子市场上依然还可以找到大量的8087库存的原因,下图为笔者所收藏的C8087-3 + R80186的CPU工控版:此主题相关图片如下:8087就封装类型来说,有C、D、P等封装类型、就频率来说,常见的有-1 -2 -3 -4 -6等。
一般来说C 类封装的购买价格总是会高于D类的封装,JS们总是有一句口头禅挂在嘴上“它可是能洗金的IC,上次有人给我XXX元我都没有卖啊!”。
笔者必须要认真的提醒一下众位藏友,如果你有幸能找到P8087,绝对要恭喜你!虽然它是P(塑料)封装,但那绝对是少见的东西,笔者还没有在国内外的网站上见到到P8087的实物,但据Intel资料显示,它的确是存在的!就笔者的观点而言,8087类FPU是藏家必须的藏品,但要将各类封装以及各类频率的收齐,实现难度太大,打个比方说,就C类的8087就有几类的非常难找的,其中MC8087(军品级)、TC8087(工业级)、QC8087等绝对是国外收藏家眼中的逸品,就更徨论P8087了。
下图为工业级TC8087:此主题相关图片如下:关于80C187,笔者的观点是187是8087的加强版本,主要用于一类特殊的CPU :80C186/80C188上面,它比8087更稀有,故80C187也是不可多得的藏品,只是它在电子市场的价格实在要用一个“高”字来形容。
此主题相关图片如下:3.2 80286时代的各型FPU80286时代的FPU是80287,共计Intel、AMD、Cyrix,IIT,WEITEK等五家公司提供同型产品,不过WEITEK的1067FPU笔者目前还没有看到过实物,287的FPU同样有C、D、P类封装以及-3到-12的各类频率,还有普通版本以及XL版本之区分,IIT公司甚至还提供了-20的频率,在那个年代已经难能可贵了。
下图为笔者收藏的Intel 80287XL版本.下图为IIT公司的287笔者感觉到,在林林总总的287产品中,Cyrix公司生产的287一直是国外藏家所追捧的对象。
下图为CPU-CN注册藏友Xi11west所收藏的一款Cyrix 287的精品:3.3 异彩分呈的387386时代,PC对于社会的重要性日愈凸显,CAD、CAM、科学计算、3D方面的应用越来越普及,记得在1995年,笔者为了更好地运行当时的三维动画设计软件,3DS V2.0版,忍痛掏了400大元为我的3 86DX-33机器添置了一块387协处理器,因为3DS软件在运行时必须要检查FPU才让通行。
387系列FPU主要有DX、SX、SL等种类,频率主要有16、20、25、33、40。
其封装也呈现多样性,更加多的制造商纷纷加入到FPU制造行列中来,387FPU产品可谓异彩分呈!下图为386SX、387SL,无Logo版本的Intel的80387、军品MG80387,CPU-CN注册藏友台湾魏先生提供:此主题相关图片如下:那个时期的ULSI公司也是出产387FPU的大户,出货量仅次于Intel,Cyrix, 令人奇怪的是,AMD公司居然没有出品任何一种386FPU,看来他们将精力放在全力发展CPU上面了。
此主题相关图片如下:因为387FPU的种类远远多于287,所以我们有选择性地重点介绍几类非常很少见387的FPU。
精品之一:Intel公司的RapidCAD-2 FPU产品,主要用于与RapidCAD-1的CPU配套使用,RapidCA D的CPU主要用于CAD设计领域,据称它的内部其实是486的核心,只是以386的针脚输出,但它们还是被归为386级别的CPU/FPU,据资料称:RapidCAD的CPU/FPU组合运行效能比普通的DX33的CP U/FPU组合要高出30%以上。
(Xi11west提供)精品之二:IIT的金顶387,IIT公司在287年代就显示了自已的FPU产品,她的387FPU非常容易识别。
因为它具有一个漂亮的金顶,下图是笔者收藏的IIT的387金顶FPU,高达40Mhz的频率简直让人咋舌不已!精品之三:WEITEK的386级别的FPU-3167,3167是386的FPU多少有点让人意外,感觉上WEITEK 这家公司的专长不是做X86系列的CPU以及FPU,但在历史上,他们的确生产过387系列的FPU, 可能国内的藏家对这种FPU非常生疏,因为它的命名也不是按X87来进行的。
(注册藏友X11west提供):其实之前我也不能确信3167能用在386的主板上,因为3167的针脚定义与Intel387是不兼容的,但我在网上偶然看到一个它与CHIPS386共同工作的照片:此主题相关图片如下:精品之四:CHIPS公司的FPU ,不用多说,CHIPS386/387均是藏家追求的稀有藏品,下图为笔者的藏品:J38700DX此主题相关图片如下:精品之五:LC Technology公司的387极别的FPU,其中4C87SLC对应的应该是486SLC类别(386级别)的FPU,国内同样难得一见,下图为Xi11west藏品。
精品之六:极为少见的Symphony公司的SL83C87协处理器,下图为台湾藏友Peter提供的图片,竟然还是一只工程样品(注:此FPU可能并没有真正上市)!此主题相关图片如下:精品之七:Xtend的83C87,FPU中的极品。
此主题相关图片如下:精品之八:5050的387FPU的确是一种非常有趣的FPU,同时也是FPU中的极品!此主题相关图片如下:精品之九:Cyrix387FPU中的一些精品,图片来自CPU-WORLD。
此主题相关图片如下:欣赏完上面这些极品FPU之后,不知大家有如何感想?笔者再提供一张很奇怪的FPU的图片供大家欣赏,也请您思考下面这块板上为何要同时上两只不同厂家的FPU??此主题相关图片如下:3.4 Intel A80487的真象按Intel的官方说法,80487是用来给80486SX系列的CPU配套使用的,也就是说,在一些486SX的主板上还留有一个提供给487的插座,当487插入已后,它将接管486SX的控制权,但按照这几年来各方藏友的测试结果,主流的意见是:487并不是一只FPU,它本质上是一只486DX-33的CPU,而且是Int el用来欺骗消费者的鬼把戏。
而笔者的观点更倾向于它是一只用于486SX升级的Overdriver即ODP,但不管怎么说,拥有一只80487是藏友们值得骄傲的事,它是名符其实的收藏上品:下图是笔者收藏的Intel的A80487SX,取自IBM原装486SX主板上:必须要指出的是,真正的与486配套FPU目前只有唯一的一种,它是由WEITEK提供的4167协处理器:请参看如下图片,但4167到底是如何与Intel的486SX配合的工作的?在2007年6月11日,笔者用手头的一块4167以及有4167插座主板做过一次测试,这块主板能成功识别到WEITEK的协处理器,但遗憾的是,我手头有没有任何一种软件,能测出加插4167FPU之后,在浮点运算方面的改善度,据官方网站显示,4167虽然是X86的FPU,但内部架构、浮点运算指令集与普通X86的FPU是完全不同的,包括针脚也是无法兼容的。