[原创] CPU讲解
Henry这回来说下CPU吧,就好比我们"小时候玩的四驱车一样,买来的基本都是要组装的...每个组件从板子上剪下来至少我们要知道它是干嘛的,我相信很少有人愿意买组装好了的...因为...组装的时候乐也在其中吧??但是我们是不需要知道它们都是用什么材质加工出来的...",所以呢,对于电脑的CPU我们不用深究,我们只需要了解下大致的一些基本概念以及它的作用就可以了...(什么具体分频啊,脉冲信号如何形成的...这些问题已经超出了我们普通用户的研究范围...),本文是结合了Henry认知的一些内容与网上整理出来的(所以在此声明无任何侵权之意)---:)
CPU概述
CPU:中央处理器(英语:Central Processing Unit,缩写:CPU),是电子计算机的主要设备之一.其功能主要是解释计算机指令以及处理计算机软件中的数据.计算机的可编程性主要是指对中央处理器的编程.中央处理器,内部存储器,输入/输出设备是现代电脑的三大核心部件.实际上,处理器的作用和大脑更相似,因为它负责处理,运算计算机内部的所有数据,而主板芯片组则更像是心脏,它控制着数据的交换.CPU的种类决定了你使用的操作系统和相应的软件,CPU的速度决定了你的计算机有多强大,当然越快,越新的CPU会花掉你更多的钱.
CPU是如何生产出来:CPU是在特别纯净的硅材料上制造的.一个CPU芯片包含上百万个精巧的晶体管.人们在一块指甲盖大小的硅片上,用化学的方法蚀刻或光刻出晶体管.因此,从这个意义上说,CPU正是由晶体管组合而成的.简单而言,晶体管就是微型电子开关,它们是构建CPU的基石,你可以把一个晶体管当作一个电灯开关,它们有个操作位,分别代表两种状态:ON(开)和OFF(关).这一开一关就相当于晶体管的连通与断开,而这两种状态正好与二进制中的基础状态"0"和"1"对应!这样,计算机就具备了处理信息的能力.但你不要以为,只有简单的"0"和"1"两种状态的晶体管的原理很简单,其实它们的发展是经过科学家们多年的辛苦研究得来的.在晶体管之前,计算机依靠速度缓慢,低效率的真空电子管和机械开关来处理信息.后来,科研人员把两个晶体管放置到一个硅晶体中,这样便创作出第一个集成电路,再后来才有了微处理器.看到这里,你一定想知道,晶体管是如何利用"0"和"1"这两种电子信号来执行指令和处理数据的呢?其实,所有电子设备都有自己的电路和开关,电子在电路中流动或断开,完全由开关来控制,如果你将开关设置为OFF,电子将停止流动,如果你再将其设置为ON,电子又会继续流动.晶体管的这种ON与OFF的切换只由电子信号控制,我们可以将晶体管称之为二进制设备.这样,晶体管的ON状态用"1"来表示,而OFF状态则用"0"来表示,就可以组成最简单的二进制数.众多晶体管产生的多个"1"与"0"的特殊次序和模式能代表不同的情况,将其定义为字母,数字,颜色和图形.举个例子,十进位中的1在二进位模式时也是"1",2在二进位模式时是"10",3是"11",4是"100",5是"101",6是"110"等等,依此类推,这就组成了计算机工作采用的二进制语言和数据.成组的晶体管联合起来可以存储数值,也可以进行逻辑运算和数字运算.加上石英时钟的控制,晶体管组就像一部复杂的机器那样同步地执行它们的功能.
CPU内部结构:
算术逻辑单元 ALU(Arithmetic Logic Unit):ALU是运算器的核心.它是以全加器为基础,辅之以移位寄存器及相应控制逻辑组合而成的电路,在控制信号的作用下可完成加,减,乘,除四则运算和各种逻辑运算.就像刚才提到的,这里就相当于工厂中的生产线,负责运算数据.
寄存器组 RS(Register Set或Registers):RS实质上是CPU中暂时存放数据的地方,里面保存着那些等待处理的数据,或已经处理过的数据,CPU访问寄存器所用的时间要比访问内存的时间短.采用寄存器,可以减少CPU访问内存的次数,从而提高了CPU的工作速度.但因为受到芯片面积和集成度所限,寄存器组的容量不可能很大.寄存器组可分为专用寄存器和通用寄存器.专用寄存器的作用是固定的,分别寄存相应的数据.而通用寄存器用途广泛并可由程序员规定其用途.通用寄存器的数目因微处理器而异.
控制单元 (Control Unit):正如工厂的物流分配部门,控制单元是整个CPU的指挥控制中心,由指令寄存器IR(Instruction Register),指令译码器ID(Instruction Decoder)和操作控制器OC(Operation Controller)三个部件组成,对协调整个电脑有序工作极为重要.它根据用户预先编好的程序,依次从存储器中取出各条指令,放在指令寄存器IR中,通过指令译码(分析)确定应该进行什么操作,然后通过操作控制器OC,按确定的时序,向相应的部件发出微操作控制信号.操作控制器OC中主要包括节拍脉冲发生器,控制矩阵,时钟脉冲发生器,复位电路和启停电路等控制逻辑.
总线 (Bus):就像工厂中各部位之间的联系渠道,总线实际上是一组导线,是各种公共信号线的集合,用于作为电脑中所有各组成部分传输信息共同使用的"公路".直接和CPU相连的总线可称为局部总线.其中包括:数据总线DB(Data Bus),地址总线AB(Address Bus),控制总线CB(Control Bus).其中,数据总线用来传输数据信息;地址总线用于传送CPU发出的地址信息;控制总线用来传送控制信号,时序信号和状态信息等.
工作流程:
控制流程:首先,CPU的内部结构可以分为控制单元,逻辑运算单元和存储单元(包括内部总线及缓冲器)三大部分.CPU的工作原理就像一个工厂对产品的加工过程:进入工厂的原料(程序指令),经过物资分配部门(控制单元)的调度分配,被送往生产线(逻辑运算单元),生产出成品(处理后的数据)后,再存储在仓库(存储单元)中,最后等着拿到市场上去卖(交由应用程序使用).在这个过程中,我们注意到从控制单元开始,CPU就开始了正式的工作,中间的过程是通过逻辑运算单元来进行运算处理,交到存储单元代表工作的结束.
运行流程:我们知道,数据从输入设备流经内存,等待CPU的处理,这些将要处理的信息是按字节存储的,也就是以8位二进制数或8比特为1个单元存储,这些信息可以是数据或指令.数据可以是二进制表示的字符,数字或颜色等等.而指令告诉CPU对数据执行哪些操作,比如完成加法,减法或移位运算.当CPU要读取一个数据时,首先会从缓存(Cache)中查找,如果找到就立即读取并送给CPU处理;如果没有找到,就用相对慢的速度从内存中读取并送给CPU处理,同时把这个数据所在的数据块调入缓存中,可以使得以后对整块数据的读取都从缓存中进行,不必再调用内存.如果没有在缓存中找到,指令指针(Instruction Pointer)会通知CPU将要执行指令在内存中的存储位置.因为内存中的每个存储单元都有编号(称为地址),可以根据这些地址把数据取出,通过地址总线送到控制单元中,指令译码器从指令寄存器IR中拿来指令,翻译成CPU可以执行的形式,然后决定完成该指令需要哪些必要的操作,它将告诉算术逻辑单元(ALU)什么时候计算,告诉指令读取器什么时候获取数值,告诉指令译码器什么时候翻译指令等等.假如数据被送往算术逻辑单元,数据将会执行指令中规定的算术运算和其他各种运算.当数据处理完毕后,将回到寄存器中,通过不同的指令将数据继续运行或者通过DB总线送到缓存中.基本上,CPU就是这样去执行读出数据,处理数据和往内存写数据三项基本工作的.但在通常情况下,一条指令可以包含按明确顺序执行的许多操作,CPU的工作就是执行这些指令,完成一条指令后,CPU的控制单元又将告诉指令读取器从内存中读取下一条指令来执行.这个过程不断快速地重复,快速地执行一条又一条指令,产生你在显示器上所看到的结果.我们很容易想到,在处理这么多指令和数据的同时,由于数据转移时差和CPU处理时差,肯定会出现混乱处理的情况.为了保证每个操作准时发生,CPU需要一个时钟,时钟控制着CPU所执行的每一个动作.时钟就像一个节拍器,它不停地发出脉冲,决定CPU的步调和处理时间,这就是我们所熟悉的CPU的标称速度,也称为主频.主频数值越高,表明CPU的工作速度越快.到了这里我们不得不明确下主频,倍频,外频,缓存的概念了.
频率:频率用f表示,基本单位为"1次/秒",记做Hz(赫兹).1Hz就是每秒一次,10Hz是每秒10次.不过,Hz这个单位在电脑里面太小了,因此通常以KHz,MHz或GHz来表示信号频率.随着频率的攀升,若干年以后恐怕需要使用THz作为频率的单位了.
频率表示法:
单位 |
KHz |
MHz |
GHz |
THz |
换算 |
1000Hz |
1000KHz |
1000MHz |
1000GHz |
英文名称 |
Kilo Hz |
Mega Hz |
Giga Hz |
Tera Hz |
中文名称 |
千赫兹 |
兆赫兹 |
吉赫兹 |
太赫兹 |
周期:基本单位为时间单位.事情的发展或运动遵循连续重复的规律,连续的两次出现所耗费的时间就是一个周期.
周期表示法:
单位 |
s |
ms |
μs |
ns |
ps |
fs |
换算 |
1S |
10-3S |
10-6S |
10-9S |
10-12S |
10-15S |
英文名称 |
Second |
Milli second |
Micro second |
Nano second |
Pico second |
Femto second |
中文名称 |
秒 |
毫秒 |
微妙 |
纳秒 |
皮秒 |
飞秒 |
周期与频率:在电脑技术中,与频率相对应的一个常用术语是周期.周期是频率的倒数,频率越高,周期越短.譬如时钟频率为1GHz时,其时钟周期为1纳秒.
频率与周期对照表:
时钟频率 |
时钟周期 |
时钟频率 |
时钟周期 |
5MHz |
200ns |
133MHz |
7.5ns |
10MHz |
100ns |
166MHz |
6.0ns |
20MHz |
50ns |
200MHz |
5.0ns |
25MHz |
40ns |
250MHz |
4.0ns |
33MHz |
30ns |
300MHz |
3.3ns |
40MHz |
25ns |
333MHz |
3.0ns |
50MHz |
20ns |
400MHz |
2.5ns |
66MHz |
15ns |
500MHz |
2.0ns |
80MHz |
12ns |
800MHz |
1.2ns |
100MHz |
10ns |
1GHz |
1.0ns |
120MHz |
8.3ns |
4GHz |
0.25ns |
振荡源-晶体振荡器:我们可以将作为频率源的时钟信号发生器看作电脑的心脏.只有心脏跳动起来,电脑才能工作.芯片本身通常并不具备时钟信号源,因此须由专门的时钟电路提供时钟信号,石英晶体振荡器(Quartz Crystal OSC)就是一种最常用的时钟信号振荡源.石英晶体就是纯净的二氧化硅,是二氧化硅的单晶体,即我们常说的水晶.石英晶体有天然(Crude)晶体和人工合成(Synthetic)晶体两种.天然石英晶体的杂质含量和形态等大多并不统一,因此电子线路中的晶体振荡器多使用人造石英晶体.从一块晶体上按一定的方位角切下薄片(称为"晶片"),在晶片的两个表面上涂覆一层薄薄的银层后接上一对金属板,焊接引脚,并用金属外壳封装,就构成了石英晶体振荡器.石英晶片之所以能当为振荡器使用,是基于它的压电效应:在晶片的两个极上加一电场,会使晶体产生机械变形;在石英晶片上加上交变电压,晶体就会产生机械振动,同时机械变形振动又会产生交变电场,虽然这种交变电场的电压极其微弱,但其振动频率是十分稳定的.当外加交变电压的频率与晶片的固有频率(由晶片的尺寸和形状决定)相等时,机械振动的幅度将急剧增加,这种现象称为"压电谐振".压电谐振状态的建立和维持都必须借助于振荡器电路才能实现.一个串联型振荡器,晶体管T1和T2构成的两级放大器,石英晶体XT与电容C2构成LC电路.在这个电路中,石英晶体相当于一个电感,C2为可变电容器,调节其容量即可使电路进入谐振状态.该振荡器供电电压为5V,输出波形为方波.
主频:即CPU内核工作的时钟频率(CPU Clock Speed).通常所说的某某CPU是多少GHz的,而这个多少GHz就是"CPU的主频".很多人认为CPU的主频就是其运行速度,其实不然.CPU的主频表示在CPU内数字脉冲信号震荡的速度,与CPU实际的运算能力并没有直接关系.主频和实际的运算速度存在一定的关系,但目前还没有一个确定的公式能够定量两者的数值关系,因为CPU的运算速度还要看CPU的流水线的各方面的性能指标(缓存,指令集,CPU的位数等等).由于主频并不直接代表运算速度,所以在一定情况下,很可能会出现主频较高的CPU实际运算速度较低的现象.主频仅是CPU性能表现的一个方面,而不代表CPU的整体性能.CPU的主频不代表CPU的速度,但提高主频对于提高CPU运算速度却是至关重要的.举个例子来说,假设某个CPU在一个时钟周期内执行一条运算指令,那么当CPU运行在100MHz主频时,将比它运行在50MHz主频时速度快一倍.因为100MHz的时钟周期比50MHz的时钟周期占用时间减少了一半,也就是工作在100MHz主频的CPU执行一条运算指令所需时间仅为10ns比工作在50MHz主频时的20ns缩短了一半,自然运算速度也就快了一倍.只不过电脑的整体运行速度不仅取决于CPU运算速度,还与其它各分系统的运行情况有关,只有在提高主频的同时,各分系统运行速度和各分系统之间的数据传输速度都能得到提高后,电脑整体的运行速度才能真正得到提高.提高CPU工作主频主要受到生产工艺的限制.由于CPU是在半导体硅片上制造的,在硅片上的元件之间需要导线进行联接,由于在高频状态下要求导线越细越短越好,这样才能减小导线分布电容等杂散干扰以保证CPU运算正确.因此制造工艺的限制,是CPU主频发展的最大障碍之一.
倍频:全称是倍频系数.CPU的核心工作频率与外频之间存在着一个比值关系,这个比值就是倍频系数,简称倍频.最初CPU主频和系统总线速度是一样的,但CPU的速度越来越快,倍频技术也就相应产生.它的作用是使系统总线工作在相对较低的频率上,而CPU速度可以通过倍频来提升.理论上倍频是从1.5一直到无限的,但需要注意的是,倍频是以0.5为一个间隔单位.一个CPU默认的倍频只有一个,主板必须能支持这个倍频.因此在选购主板和CPU时必须注意这点,如果两者不匹配,系统就无法工作.此外,现在CPU的倍频很多已经被锁定,无法修改.
外频:外频也叫基频,在计算机主板上,以CPU为主,内存和各种外围设备为辅,有许多设备要共同在一起工作.这些设备之间的联络,数据的交换,都必须正确无误,分秒不差.因此,它们必须要有一个固定的时钟来做时间上的校正,协调或者参考.这个时钟由主板上的时钟发生器产生,就是所谓的外频.通常为系统总线的工作频率(系统时钟频率).外频是CPU与主板之间同步运行的速度,而且目前的绝大部分电脑系统中外频,也是内存与主板之间的同步运行的速度,在这种方式下,可以理解为CPU的外频直接与内存相连通,实现两者间的同步运行状态.
CPU频率公式=>主频=外频*倍频
前端总线 FSB:总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线.通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息.人们常常以MHz表示的速度来描述总线频率.总线的种类很多,前端总线的英文名字是Front Side Bus,通常用FSB表示,是将CPU连接到北桥芯片的总线.计算机的前端总线频率是由CPU和北桥芯片共同决定的.曾几何时,FSB也和外频混为一谈,这是因为在早期,前端总线与外频在频率上是相等的,因此往往直接称前端总线为外频.随着技术的发展,前端总线频率与外频已经可以不相同了,所以我们要把两个概念区分开.
带宽公式=>带宽(数据传输速度)=时钟频率*(数据宽度/8)
例如:P2350使用100MHz的前端总线,所以其数据交换峰值带宽为800MB/s=(100*(64/8).由此可见前端总线速率将影响电脑运行时CPU与内存,二级缓存(L2Cache)之间的数据交换速度,实际也就影响了电脑的整体运行速度.
前端总线FSB与外频区别:前端总线的速度指的是CPU和北桥芯片间总线的速度,更实质性的表示了CPU和外界数据传输的速度.而外频的概念是建立在数字脉冲信号震荡速度基础之上的,也就是说,100MHz外频特指数字脉冲信号在每秒钟震荡一万万次,它更多的影响了PCI及其他总线的频率.用直白的话说前端总线侧重数据传输速度,外频侧重频率.
缓存:用于存储数据的缓存部分通常被称为RAM,掉电以后其中的信息就会消失.RAM又分两种,其中一种是静态RAM(SRAM);另外一种是动态RAM(DRAM).前者的存储速度要比后者快得多,我们现在使用的内存一般都是动态RAM.缓存是指临时文件交换区,电脑把最常用的文件从存储器里提出来临时放在缓存里,就像把工具和材料搬上工作台一样,这样会比用时现去仓库取更方便.因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在忙完后还是会把文件送到硬盘等存储器里永久存储.电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给GPU用的缓存,硬盘上也有16M或者32M的缓存.千万不能把缓存理解成一个东西,它是一种处理方式的统称!
CPU缓存:通过优化的的读取机制,可以使CPU读取缓存的命中率非常高(大多数CPU可达90%左右),也就是说CPU下一次要读取的数据90%都在缓存中,只有大约10%需要从内存读取.这大大节省了CPU直接读取内存的时间,也使CPU读取数据时基本无需等待.总的来说,CPU读取数据的顺序是先缓存后内存.早期的CPU缓存容量很小,并且功能单一,Intel从Pentium时代后把缓存进行了分类,当时集成在CPU内核中的缓存已不足以满足CPU的需求,而制造工艺上的限制又不能大幅度提高缓存的容量.因此出现了集成在与CPU同一块电路板上和主板上的缓存等不同类型,于是当时便把CPU内核集成的缓存称为一级缓存(L1 cache),而外部的称为二级缓存(L2 Cache);后来随着生产技术的不断提高,最终二级缓存也被挪进了CPU当中.通常一级缓存中还分数据缓存(Data Cache, D-Cache)和指令缓存(Instruction Cache, I-Cache).二者分别用来存放数据和执行这些数据的指令,而且两者可以同时被CPU访问,减少了争用Cache所造成的冲突,提高了CPU效能.此外,Intel在Pentium4 CPU中还增加了一种一级追踪缓存,容量为12KB.对于现在多核的CPU,每个核有自己的Cache(一级缓存),芯片还有一个面向每个核的Cache(二级缓存),于是片外的就叫做三级缓存了.理论上讲,完全可以把那个二级缓存拿到片外来(有的CPU设计就是这样的),甚至把L1,L2,L3级缓存都拿到片外来也是可以的,只是性能不好没人采用而已.
CPU的一级缓存通常都是静态RAM,速度非常的快,但是静态RAM集成度低(存储相同的数据,静态RAM的体积是动态RAM的6倍),而且价格也相对较为昂贵(同容量的静态RAM是动态RAM的四倍).扩大静态RAM作为缓存是一个不太合算的做法,但是为了提高系统的性能和速度又必须要扩大缓存,这就有了一个折中的方法:在不扩大原来的静态RAM缓存容量的情况下,仅仅增加一些高速动态RAM做为L2级缓存.高速动态RAM速度要比常规动态RAM快,但比原来的静态RAM缓存慢,而且成本也较为适中.一级缓存和二级缓存中的内容都是内存中访问频率高的数据的复制品(映射),它们的存在都是为了减少高速CPU对慢速内存的访问.
二级缓存是CPU性能表现的关键之一,在CPU核心不变化的情况下,增加二级缓存容量能使性能大幅度提高.而同一核心的CPU高低端之分往往也是在二级缓存上存在差异,由此可见二级缓存对CPU的重要性.CPU在缓存中找到有用的数据被称为命中,当缓存中没有CPU所需的数据时(这时称为未命中),CPU才访问内存.从理论上讲,在一颗拥有二级缓存的CPU中,读取一级缓存的命中率为80%.也就是说CPU一级缓存中找到的有用数据占数据总量的80%,剩下的20%从二级缓存中读取.由于不能准确预测将要执行的数据,读取二级缓存的命中率也在80%左右(从二级缓存读到有用的数据占总数据的16%).那么还有的数据就不得不从内存调用,但这已经是一个相当小的比例了.目前的较高端CPU中,还会带有三级缓存,它是为读取二级缓存后未命中的数据设计的—种缓存,在拥有三级缓存的CPU中,只有约5%的数据需要从内存中调用,这进一步提高了CPU的效率,从某种意义上说,预取效率的提高,大大降低了生产成本却提供了非常接近理想状态的性能.除非某天生产技术变得非常强,否则内存仍会存在,缓存的性能递增特性也仍会保留.
CPU缓存与内存的关系:既然CPU缓存能够在很大程度上提高CPU的性能,那么,有些朋友可能会问,是不是将来有可能,目前的系统内存将会被CPU取代呢?答案应该是否定的,首先,尽管CPU缓存的传输速率确实很高,但要完全取代内存的地位仍不可行,这主要是因为缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况(因为这些数据没有从内存复制到缓存中去),这时CPU还是会到内存中去找数据,与此同时系统的速度就慢了下来,不过CPU会把这些数据复制到缓存中去,以便下一次不用再到内存中去取.也即是说,随着缓存增大到一定程度,其对CPU性能的影响将越来越小,在性能比上来说,越来越不合算.就目前缓存容量,成本以及功耗表现来看,还远远无法与内存抗衡,另外从某种意义上来说,内存也是CPU缓存的一种表现形式,只不过在速率上慢很多,然而却在容量,功耗以及成本方面拥有巨大优势.如果内存在将来可以做到足够强的话,反而很有取代CPU缓存的可能.
缓存的读写算法同样重要:即便CPU内部集成的缓存数据交换能力非常强,也仍需要对调取数据做一定的筛选.这是因为随着时间的变化,被访问得最频繁的数据不是一成不变的,也就是说,刚才还不频繁的数据,此时已经需要被频繁的访问,刚才还是最频繁的数据,现在又不频繁了,所以说缓存中的数据要经常按照一定的算法来更换,这样才能保证缓存中的数据经常是被访问最频繁的.命中率算法中较常用的"最近最少使用算法"(LRU算法),它是将最近一段时间内最少被访问过的行淘汰出局.因此需要为每行设置一个计数器,LRU算法是把命中行的计数器清零,其他各行计数器加1.当需要替换时淘汰行计数器计数值最大的数据行出局.这是一种高效,科学的算法,其计数器清零过程可以把一些频繁调用后再不需要的数据淘汰出缓存,提高缓存的利用率.
CPU代表性简史
CPU |
位数 |
描述 |
Intel 4004 |
4位 |
1971年1月,Intel公司的霍夫(MarcianE.Hoff)研制成功世界上第一枚4位微处理器芯片Intel 4004,标志着第一代微处理器问世,微处理器和微机时代从此开始.因发明微处理器,霍夫被英国《经济学家》杂志列为"二战以来最有影响力的7位科学家"之一. |
Intel 8008 |
8位 |
1973年8月,霍夫等人研制出8位微处理器Intel 8080,以N沟道MOS电路取代了P沟道,第二代微处理器就此诞生.主频2MHz的8080芯片运算速度比8008快10倍,可存取64KB存储器,使用了基于6微米技术的6000个晶体管,处理速度为0.64MIPS. |
Intel 8086 |
16位 |
1978年6月,Intel推出4.77MHz的8086微处理器,标志着第三代微处理器问世.它采用16位寄存器,16位数据总线和29000个3微米技术的晶体管,售价360美元. |
Intel 8088 |
16位 |
1979年6月1日,Intel推出4.77MHz的准16位微处理器8088,它是8086的廉价版本,价格为大众所接受. |
Intel 80186,80188 |
16位 |
1981年,80186和80188发布.这两款微处理器内部均以16位工作,在外部输入输出上80186采用16位,而80188和8088一样均是采用8位工作. |
Intel 80286 |
16位 |
1982年2月1日,在80186发布后的几周,80286就发布了.80286处理器集成了大约13.4万个晶体管,最大主频为20MHz,采用16位资料总线和24位位址总线.与8086相比,80186/80188增强了部分软硬件功能80286增加了实存(24位地址)和虚拟存储器管理,可以在两种不同的模式下工作,一种叫实模式,另一种叫保护方式.80286开始正式采用一种被称为PGA的正方形包装. |
Intel 80386 |
32位 |
1985年10月,Intel推出16MHz80386DX微处理器(最高33MHz主频),可以直接访问4G字节的内存,并具有异常处理机制;虚拟86模式可以同时模拟多个8086处理器来加强多任务处理能力.80386的广泛应用,将PC机从16位时代带入了32位时代.1988年6月16日,80386SX发布,它是80386DX的廉价版本,只有16-bit总线宽度. |
Intel 80486 |
32位 |
1989年4月,Intel推出25MHz486微处理器.1989年5月10日,我们大家耳熟能详的80486芯片由英特尔推出.这款经过四年开发和3亿美元资金投入的芯片的伟大之处在于它首次实破了100万个晶体管的界限,集成了120万个晶体管,使用1微米的制造工艺.其实486就是80386+80387协处理器+8KB一级缓存,是超级版本的386. |
Intel IA64 |
64位 |
Intel早在1990年代就与惠普合作提出了一种用在安腾系列处理器中的独立的64位架构. |
Intel Pentium(80586) |
32位 |
1993年3月22日,全面超越486的新一代586CPU问世,Pentium本应命名为80586或i586,为了摆脱486时代微处理器名称混乱的困扰,英特尔公司把自己的新一代产品命名为Pentium(奔腾)以区别AMD和Cyrix的产品.(通常认为"pentium"是希腊文"五(penta)"加拉丁文中代表名词的接尾语"ium"的造词). |
Intel PentimuPro |
32位 |
初步占据了一部分CPU市场的INTEL并没有停下自己的脚步,在其他公司还在不断追赶自己的奔腾之际,又在1996年推出了最新一代的第六代X86系列CPU枣P6.P6只是它的研究代号,上市之后P6有了一个非常响亮的名字:PentimuPro. |
Intel Pentium II |
32位 |
英特尔于1997年5月7日推出的微处理器.它基于PentiumPro使用的P6架构,但加强了16位元的效能,以及加入MMX指令集. |
Intel Pentium III |
32位 |
英特尔的x86(更准确地说是i686)架构之微处理器,于1999年2月26日推出.刚推出的版本与早期的PentiumII非常相似,最值得注意的不同是SSE指令的扩充,以及在每个芯片制造的过程加入了有争议的序号. |
Intel Pentium III |
32位 |
是英特尔的x86(更准确地说是i686)架构之微处理器,于1999年2月26日推出.刚推出的版本与早期的Pentium II非常相似,最值得注意的不同是SSE指令的扩充,以及在每个芯片制造的过程加入了有争议的序号. |
Intel Pentium4 |
32位 |
Intel生产的第7代x86微处理器,并且是继1995年出品的PentiumPro之后的第一款重新设计过的处理器,这一新的架构称做NetBurst. |
Opteron 处理器 |
64位 |
2003年AMD对于这个架构发展了64位的扩充,推出了Opteron处理器家族,开创了x86的64位时代. |
32位:计算机中的位数指的是CPU一次能处理的最大位数.32位计算机的CPU一次最多能处理32位数据,例如它的EAX寄存器就是32位的,当然32位计算机通常也可以处理16位和8位数据.在Intel由16位的286升级到386的时候,为了和16位系统兼容,它先推出的是386SX,这种CPU内部预算为32位,外部数据传输为16位.直到386DX以后,所有的CPU在内部和外部都是32位的了,32位处理器每次处理4Byte(32bit).
64位:这里的64位技术是相对于32位而言的,这个位数指的是CPU GPRs(General-PurposeRegisters,通用寄存器)的数据宽度为64位,64位指令集就是运行64位数据的指令,也就是说处理器一次可以运行64位数据.同理,64位处理器每次处理8Byte(64bit).
数据大小对照表:
单位 |
Bit |
Byte |
Kbyte |
Mbyte |
Gbyte |
Tbyte |
Char |
换算 |
1Bit |
8Bit |
1024Byte |
1024Kbyte |
1024Gbyte |
1024Gbyte |
2Byte |
英文名称 |
Bit |
Byte |
Kilo Byte |
Mega Byte |
Giga Byte |
Trillion Byte |
Character |
中文名称 |
比特 |
字节 |
千字节 |
兆字节 |
吉字节 |
太字节 |
字符 |
x86 (IA32),x86-64 (x64,AMD64),IA64:
x86 (IA-32):是一个Intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合,x与处理器没有任何关系,它是一个对所有*86系统的简单的通配符定义,例如:i386,586,奔腾(Pentium).由于早期intel的CPU编号都是如8086,80286来编号,这整个系列的CPU都是指令兼容的,所以都用X86来标识所使用的指令集合.如今的Pentium,P2,P4,赛扬系列都是支持x86指令系统的,所以都属于x86家族.为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用x86指令集,所以它的CPU仍属于x86系列.另外除Intel公司之外,AMD和Cyrix等厂家也相继生产出能使用x86指令集的CPU,由于这些CPU能运行所有的为Intel CPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品.由于Intel x86系列及其兼容CPU都使用x86指令集,所以就形成了今天庞大的x86系列及兼容CPU阵容.当然在目前的台式,便携式.电脑中并不都是使用x86系列CPU,部分服务器和苹果(Macintosh)机中还使用美国DIGITAL(数字)公司的Alpha 61164和Power PC604e系列CPU.
x86-64 (x64,AMD64):有时会简称为"x64",是64位微处理器架构及其相应指令集的一种,也是Intel x86架构的延伸产品.x64最先由AMD设计,推出时被称为"AMD64",其后也为英特尔所采用,现时英特尔称之为"Intel 64",在之前曾使用过Clackamas Technology(CT),IA-32e及EM64T.外界多使用"x86-64"或"x64"去称呼此64位架构,从而保持中立,不偏袒任何厂商.
IA-64:值得注意的是Intel早在1990年代就与惠普合作提出了一种用在安腾系列处理器中的独立的64位架构,这种架构被称为IA-64.IA-64是一种崭新的系统,和x86架构完全没有相似性;不应该把它与AMD64或x86-64弄混.
类型划分:
i386 |
i586 |
i686 |
80386,80486 |
Pentium |
PentiumPro,PentiumII,PentiumIII,PentiumIV |
系统与软件分类:Intel80x86简称ix86,比如i386,i586,i686等等,指的是适用于Intel i386,i586,i686兼容指令集的微处理器.一般来说,等级愈高的机器可接受较低等级的文件.x86体系结构虽然指令都一样,但是不同时代的具体实现,在编译优化上还是有自己的特点,而且后一代往往会多出一些指令,所以编译时,可以针对不同的体系结构作不同的编译选项优化.一般而言,所有x86处理器都能执行386的指令集,80486处理器当然需要486的优化.64bit的CPU可以装载最低底线的i386与x64的软件,但32bit的CPU只能装载最低底线位i386的软件,x64的软件是无法装载的.所以判断不出电脑的CPU是哪种的话,建议用i386的操作系统与i386的软件.
总结到这里应该差不多了...Thank u 4 reading...
As a new comer... If I help you, I will be very happy...