CPU发展简史

InteL 4004(1971年11月)

英特尔公司推出了世界上第一款CPU Inter 4004。这是第一个可用于微型计算机的四位微处理器。此时MOS LSI(大规模集成)技术的可用性,刚刚开始在计算器业务从机电到电子的根本变化。Busicom是一家日本电子计算器制造商,抱着把计算元件减少到6个的想法的委托Inter设计和生产 141-PF计算器的计算核心。4004的出现宣布了电子一体化的新时代,开始为PC机的出现铺路。

时钟频率 类型 晶体管 工艺
740kHz 4bit 单核 2300 10微米

但当时的Inter作为一个小厂难以达到IBM 1620在1960的算力水平。

Inter在1972年生产了Inter 8008,打算用作终端控制器,与Inter 4040类似,是第一个8bit处理器

时钟频率 类型 晶体管 工艺
200-800KHz 8bit单核 3500 10微米

TMS 1000 (1974)

德州仪器(TI)生产,这是第一个包含足够RAM和足够用于程序ROM的空间以及在单个芯片上具有I / O支持的微处理器。从而使其无需多个芯片即可运行外部支持芯片,使其成为第一个微控制器。它还具有一项创新功能,可以向CPU添加自定义指令。

不足:内存不是连续的,内存都是内部的。所有硬连线都是单周期的,不允许中断。

Intel 8080(1974年4月)

是8008的后续产品,是第一个成功的PC机Altair的处理器。

14位的PC和寻址功能,16位地址总线和8位数据总线,七个8位寄存器。

时钟频率 类型 晶体管 工艺
2MHz 8bit单核 4500 6微米

有IO端口,可以连接256个IO设备。因此可以连接I / O设备而不会占用或干扰寻址空间,还有一个信号引脚,该信号引脚可使堆栈占用单独的内存

Zilog Z-80(1976年7月)

改进了Inter的8080。可以执行所以的8080操作码,包括80多条指令。

寄存器集增加了一倍,可以在两组数据寄存器之间切换。允许快速操作系统或中断上下文切换。添加两个引索寄存器和两种可重定位矢量中断。可以产生CPU自己的RAM刷新信号,易于设计系统从而降低成本。

不足:有许多无说明的指令,使用边缘的区域添加指令会导致很高的故障率。

650x(1975)

摩托罗拉曾推出6800,650x系列包括6501和6502。作为6800的变体通过IO端口和地址总线的减少来降低成本。减少了寄存器,使用更多寻址模式,用快速零页模式(fast zero-page mode)用8位地址访问了0到255的内存地址,加速了操作速度。

在广大友商的支持和改进下6502非常受欢迎。

Advanced Micro Devices Am2901

模块化处理器,是4位片处理器,它具有16个4位寄存器和4位ALU,以及操作信号以允许进位/借位或移位操作,并且可以在任意数量的其他2901上进行操作。地址定序器(例如2910)可以使用ROM中的自定义微代码来提供控制信号 。

Microchip Technology PIC 16x / 17x(1975)

RISC设计

16x非常简单,类似于RISC。33条指令,产生紧密的代码,在嵌入式应用程序中很重要。

少量流水化,单周期执行。

17x具有更多寻址模式,更多指令和寄存器

Intel 8086(1978)

最成功的x86架构

总线接口单元通过一个6字节的预取队列将指令流馈送到执行单元,因此,获取和执行是并发的-流水线的一种原始形式。

数据寄存器通常被指令隐式使用,使临时值的寄存器分配变得复杂。它具有64K 8位I / O(或32K 16位)端口和固定向量中断。还可以通过索引寄存器设置四个段寄存器

时钟频率 类型 晶体管 工艺
5MHz 16bit单核 29000 3微米

不足:与大多数分段处理器一样,8086不仅提供缺失的字节,还将分段寄存器(X 16或左移4位)添加到地址中。由于不增加地址位的情况下扩展地址空间而进行尝试的奇怪结果,有可能使两个具有相同值的指针指向两个不同的存储位置,或者使两个具有不同值的指针指向同一位置,并且受到限制典型的数据结构小于64K。但在高级语言中却引起了持续的混乱(例如近/远指针)。更糟糕的是,这使得将地址空间扩展到1 MB以上变得困难。

Intel 80286(1982)

80286芯片,该芯片比8006和8088都有了飞跃的发展,时钟频率由最初的6MHz逐渐提高到20MHz。其内部和外部数据总线皆为16位,地址总线24位,可寻址16MB内存。采用PGA的正方形包装

时钟频率 类型 晶体管 工艺
6MHz 16bit 单核 134000 1.5微米

从80286开始,CPU的工作方式也演变成两种:实模式和保护模式。

实模式:微处理器可以访问内存限制在1MB

保护模式:保护操作系统,遇到异常使用时系统不会停机

不足:仅通过添加新模式将设计扩展到32位。进行切换返回时需要使用原始80286中被保留了下来的bug进行切换。所有内存访问都仍然限于64K段。

Intel 80386(1985)

具有几种处理器模式(包括单独的分页和分段模式),添加了MMU,安全模式

英特尔为80386设计了高速缓存(Cache),采取预读内存的方法来缓解这个速度瓶颈,从此以后,Cache就和CPU成为了如影随形的东西。

英特尔借此机会修复了以前设计中剩余的一些最受欢迎的功能。转向x86-64,AMD决定进一步改进设计,增加了更简洁的64位模式

时钟频率 类型 晶体管 工艺
16MHz 32bit 单核 275000 1.5微米

不足: 64位功能被设计为32位附加组件,并且在低端版本中被禁用。启用后,扩展的32位流水线将比主流水线晚1/2个时钟周期。

Intel 80486(1989)

将80386和数学协微处理器80387以及一个8KB的高速缓存集成在一个芯片内。

添加了完整的流水线,单片8K缓存,片上FPU和时钟加倍版本(例如Z-280)。

内部缓存缩短了微处理器与慢速DRAM的等待时间。

在80×86系列中首次采用了RISC(精简指令集)技术,可以在一个时钟周期内执行一条指令。它还采用了突发总线方式,大大提高了与内存的数据交换速度。

时钟频率 类型 晶体管 工艺
25MHz 32bit 单核 1.2M 1微米

不足:CPU的频率越来越快,而PC机外部设备受工艺限制,能够承受的工作频率有限,这就阻碍了CPU主频的进一步提高。

在486的基础上,发展出了Intel 80486 DX/SX/DX2/DX4/SL CPU;Inter486 OverDrive,TI 486Dx,Cyrix 486DLC,Cyrix5x86,AMD 5×86

Intel Pentium(1993)

它也是第一个超标量Intel x86处理器(Intel公司把这种同时执行两条指令的能力称为超标量技术)。它具有双Integer流水线和单个浮点单元,允许它每个时钟发出并完成多个指令。

从PENTIUM开始,我们大家有了超频这样一个用尝试少的钱换取尝试多的性能的好方法

从Pentium开始,CPU封装开始出现扇热盖的设计,CPU的发热问题已经突显。

时钟频率 类型 晶体管 工艺
60, 66MHz 32bit 单核 3.1M 0.8微米

不足:i586程序(这个程序还有一些其他的名字,比如Linux用户就把它称为f00f程序)是一种越界攻击手段,处理器芯片会因为无法执行这个程序发来的非法指令而出现死机现象。

这个程序似乎并没有利用奔腾CPU里浮点运算的弱点,它直接向CPU送去错误的指令。这种死机现象除了手动重置计算机外没有其他好的解决办法。

Intel Pentium Pro(1995)

为工作站和服务器设计,超算ASCI Red(第一台达到每秒万亿次浮点运算的计算机)。

Pentium临的是在Pentium Pro的一个封装中除Pentium Pro芯片外还包括一个256KB的二级缓存芯片,两个芯片之间用高频宽的奔腾Pro200MHZ CPU的L2 CACHE即正在运行在200MHZ上,内部通讯总线互连,处理器与高速缓存的连接线路也被安置在该封装中,这样就使高速缓存能更容易地运行在更高的频率上。

时钟频率 类型 晶体管 工艺
200MHz 32bit 单核 5.5M 0.35微米

不足:但是肇因于0.35微米制程发热功率甚大,故其时脉不曾高于233 MHz(正式版不能超频)。此外,由于指令队列的问题,Pentium Pro的16bit指令执行能力低于Pentium,造成Windows3.X和Windows9X与DOS系统下Pentium Pro性能低下。

Intel Pentium II(1997)

应用于严苛业务要求的服务器和工作站。

Pentium II微处理器采用了双重独立总线结构,即其中一条总线连通二级缓存,另一条负责主要内存。Pentium II虽采用了与Pentium Pro的相同的核心结构,但它加快了段寄存器写操作的速度,并增加了MMX指令集,以加速16位操作系统的执行速度。

时钟频率 类型 晶体管 工艺
300MHz 32bit 单核 7.5M 0.25微米

不足:使用250纳米制程,而且温度亦有效降低。为了降低成本,放弃了Pentium Pro里面的高速缓存方案

Intel Celeron(1998)

英特尔为进一步抢占低端市场,于1998年4月推出了一款廉价的CPU—Celeron(中文名叫赛扬)。最初推出的Celeron有266MHz、300MHz两个版本,且都采用Covington核心,0.35微米工艺制造,内部集成1900万个晶体管和32KB一级缓存,工作电压为2.0V,外频66MHz。

时钟频率 类型 晶体管 工艺
266MHz 32bit 单核 7.5M 0.25微米

Celeron与Pentium II相比,去掉了片上的L2 Cache,此举虽然大大降低了成本

不足:因为没有二级缓存,该微处理器在性能上大打折扣,其整数性能甚至不如Pentium MMX。

为弥补缺乏二级缓存的Celeron微处理器性能上的不足,进一步在低端市场上打击竞争对手,英特尔在Celeron266、300推出后不久,又发布了采用Mendocino核心的新Celeron微处理器—Celeron300A、333、366。与旧Celeron不同的是,新Celeron采用0.25微米工艺制造,同时它采用Slot 1架构及SEPP封装形式,内建32KB L1 Cache、128KB L2 Cache,且以CPU相同的核心频率工作,从而大大提高了L2 Cache的工作效率。

Pentium III(1998)

SSE指令集的确可以使它的性能有脱胎换骨的提升。最初该技术曾被称为“ KNI”,但最终还是变成了流式SIMD扩展(StreamingSIMDExtension)的简称。它总共包含70条指令,其中50条SIMD(单指令多数据)浮点指令,12条全新MMX指令和8条系统内存数据流传送优化指令。它通过8个全新的128位单精度寄存器,能同时处理4个单精度浮点 变量,提供了全新的“处理器分离模式”,这是自十年前的386模式之后,对系统首次进行构架模块化的变动。

时钟频率 类型 晶体管 工艺
500MHz 32bit 单核 9.5M 0.25微米

Intel Xeon(2001)

主要供非消费级服务站,服务器和嵌入式系统使用。

基于英特尔的NetBurst架构,有更高级的网络功能,及更复杂更的3D图形性能,另一方面,支持至强的芯片组也在并行运算、支持高性能I/O子系统(如SCSI磁盘阵列、千兆网络接口)、支持PCI总线分段等方面更好地支持服务器端的运算。

时钟频率 类型 晶体管 工艺
1.7GHz 32bit 单核 42M 180nm

Pentium Solo & Duo(2006)

双核移动处理器,初代Mac的处理器

时钟频率 类型 晶体管 工艺
1.06-2.33GHz 单核,双核 151M 65nm

Core 2(2009)

第一款微架构处理器,取代由2000年起大多数英特尔处理器采用的NetBurst架构。

提升缓冲存储器效率、核心数量等作出优化。这些新处理器的功耗比以往的Pentium 4/D处理器低很多。

时钟频率 类型 晶体管 工艺
1.06GHz~3.33GHz 64bit,1,2,4核 291M 65nm

不足:Core 2处理器的主板售价较高,导致组装成本大幅增加所致

Intel Atom(2008)

是Intel的一个超低电压处理器系列。低能耗处理器,上网本,平板和移动网络设备。

时钟频率 类型 晶体管 工艺
1.86GHz 32bit,1-8核 27M 45nm

Intel i3/5/7/9(2008~2017)

参考来源:

Wikipedia

Evolution of Intel | History of Intel ( 1971-2018 )

Great Microprocessors of the Past and Present

微处理器(CPU)的发展演变历程

CPU简史 |改革发展简史