英特尔8086芯片,有史以来最具影响力的芯片
扫描二维码
随时随地手机看文章
英特尔8086微处理器是在42年前推出的, 8086是有史以来最有影响力的芯片之一。它开创了x86体系结构,该体系结构如今仍占据着台式机和服务器计算的主导地位。8086处理器芯片的金属层,大部分遮住了其下的硅片层。在裸片的边缘,细细的绑定线提供了芯片上的焊盘和外部引脚之间的连接,该芯片包含29000个晶体管。
1、观察芯片内部
大多数集成电路都是用环氧树脂封装的,除去顶部,可以在中心看到硅芯片。芯片通过微小的绑定线连接到芯片的金属引脚。这是40针DIP封装,当时是微处理器的标准封装。请注意,硅芯片本身仅占芯片尺寸的一小部分。
在显微镜下,可以看到8086部件号以及版权日期。绑定线连接到焊盘和位于顶部的一部分微码ROM
管芯去除了金属和多晶硅层,显示了具有29,000个晶体管的底层硅。2 标签是根据我的逆向工程显示的主要功能块。芯片的左侧包含16位数据路径:芯片的寄存器和算术电路。加法器和高位寄存器构成与外部存储器通信的总线接口单元,而低位寄存器和ALU构成处理数据的执行单元。芯片的右侧具有控制电路和指令解码,以及控制每个指令的微码ROM。
在下面的芯片照片中,去掉了金属和多晶硅层,显示了底层的硅和29,000个晶体管。标签显示了主要的功能块。芯片的左侧包含16位数据通路:寄存器和算术电路。加法器和上层寄存器构成与外部存储器通信的总线接口单元,下层寄存器和ALU构成处理数据的执行单元。芯片的右侧有控制电路和指令解码,以及控制每条指令的微码ROM。
8086的一个特点是指令预取,它通过在需要指令之前从内存中获取指令来提高性能。这是由左上方的总线接口单元实现的,它可以访问外部存储器。高位寄存器包括8086的臭名昭著的段寄存器,它提供对比16位地址所允许的64 KB更大的地址空间的访问。对于每次存储器访问,都添加了段寄存器和存储器偏移量以形成最终的存储器地址。为了提高性能,8086有一个单独的加法器用于这些内存地址计算,而不是使用ALU。高位寄存器还包括六个字节的指令预取缓冲区和程序计数器。
芯片的左下角存放着执行单元,该单元用于执行数据操作。低位寄存器包括通用寄存器和堆栈指针等索引寄存器。16位ALU执行算术运算(加减法)、布尔逻辑运算和移位。ALU不执行乘法或除法,这些运算是通过一连串的移位和加/减法来完成的,所以速度相对较慢。
微码计算机设计中最困难的部分之一就是创建控制逻辑,该逻辑用来告知处理器的每个部分如何执行每条指令。1951年,莫里斯·威尔克斯(Maurice Wilkes)提出了微代码的想法:代替由复杂的逻辑门电路构建控制逻辑,可以用称为微代码的特殊代码代替控制逻辑。为了执行一条指令,计算机在内部执行一些更简单的微指令,这些指令由微码指定。使用微码,构建处理器的控制逻辑成为编程任务,而不是逻辑设计任务。
在显微镜下,可以看到微码ROM的内容,并且可以根据每个位置上是否存在晶体管来读取位。ROM由512条微指令组成,每条21位宽。每个微指令指定数据在源和目标之间的移动。它还指定了微操作,可以是跳转,ALU操作,内存操作,微代码子例程调用。微码非常有效;一个简单的指令(例如递增或递减)由两个微指令组成,而更复杂的字符串复制指令则由八个微指令实现。
2、8086的历史
通往8086的道路并不像你想象的那样直接和有计划。它最早的祖先是1970年的台式电脑/终端机Datapoint 2200。Datapoint 2200是在微处理器诞生之前,所以它使用的是由一块布满独立TTL集成电路的电路板构建的8位处理器。Datapoint咨询英特尔和德州仪器公司是否可以用一块芯片取代那块板子。复制Datapoint 2200的架构,德州仪器在1971年推出了TMX 1795处理器,而英特尔推出的是8008处理器(1972年)。然而,Datapoint拒绝了这些处理器,这是一个致命的决定。尽管德州仪器公司找不到TMX 1795处理器的客户而放弃了它,但英特尔还是决定将8008作为产品出售,就此开创了微处理器市场。英特尔在8008之后又推出了改进的8080(1974)和8085(1976)处理器。
由于iAPX 432进度落后,因此英特尔在1976年决定在iAPX 432就绪之前需要一个简单的,权宜之计的处理器来销售。英特尔迅速将8086设计成一个16位处理器,与1978年发布的8位80804有一定的兼容性。随着1981年IBM个人电脑(PC)的推出,8086有了很大的突破。到1983年,IBM PC成为最畅销的计算机,并成为个人计算机的标准。IBM PC中的处理器是8088,是8086的变种,采用8位总线。IBM PC的成功使8086体系结构成为仍然持续了42年的标准。
IBM PC为什么选择Intel 8088处理器?据最初的IBM PC工程师之一David Bradley博士说,关键因素是团队对Intel开发系统和处理器的熟悉程度
无论如何,使用8088处理器的决定巩固了x86系列的成功。IBM PC AT(1984)升级到兼容但功能更强大的80286处理器。1985年,x86系列产品的80386移植到32位,然后在2003年采用AMD Opteron架构的移植到 64位。x86体系结构仍在通过AVX-512 矢量操作(2016)等功能进行扩展 。但是即使进行了所有这些更改,x86体系结构仍保留了与原始8086的兼容性。
3、晶体管
8086芯片采用了一种叫做NMOS的晶体管。可以将晶体管视为开关,控制电流在称为源极和漏极的两个区域之间流动。这种晶体管是通过在硅基底的区域掺杂杂质来制造具有不同电性能的 "扩散 "区域。晶体管由栅极激活,栅极由一种特殊类型的硅制成,称为多晶硅,层叠在硅基板之上。晶体管通过上面的金属层连接在一起,构建了完整的集成电路。现代的处理器可能有十几层金属层,而8086的金属层只有一层。
硅显示了算术逻辑单元(ALU)的一些晶体管。掺杂的导电硅呈深紫色。白色条纹是多晶硅线穿过硅的地方,形成了晶体管的栅极。(23个晶体管形成7个门)晶体管的形状很复杂,以使布局尽可能高效。此外,晶体管有不同的尺寸,以便在需要的地方提供更高的功率。请注意,相邻的晶体管可以共享源极或漏极,从而使它们连接在一起。圆圈是硅层和金属布线之间的连接(称为过孔),而小方块是硅层和多晶硅之间的连接。
8086的本意是在英特尔发布他们的旗舰iAPX 432芯片之前,作为一个临时性的临时处理器,它是由一块满是TTL芯片的电路板构建的处理器的“后代”。从不起眼的开始,8086的架构(x86)意外地最终主导了桌面和服务器计算,直到现在。