解剖 CPU
http://www.ruanyifeng.com/blog/2010/11/cpu_autopsy.html
有一个瑞典 Lund 大学物理学博士生,就真的这么干了,还把照片放到网上。我们知道,CPU里面是几千万到几亿个晶体管,他的目标就是看到这些晶体管。
1.
他先找到一块 Intel Pentium III Coppermine 芯片,主频 800MHZ,生产于 2000 年。(我查了一下,网上的报价现在是 15~30 元人民币/块。)
下图是该 CPU 的正面。你可以看到它分成两部分,周围是一圈绿色的电路板,中间那块蓝色的就是芯片。
2.
CPU 背面是密密麻麻的针脚,用来从主板取电和通信。
3.
为了把芯片从电路板取出,动用了电锯。
4.
切断电路板,就可以取出芯片了。
5.
去掉上面的金属保护盖,芯片的庐山真面目显现了,上面有很多闪光的小点。
6.
把这块芯片放到光学显微镜下,看到那些小点都是一个个金属垫(metal pad),用来连接芯片内部与外面的电路板。
7.
拉近距离,可以看到金属垫中间的小洞里面有一些特殊结构。
8.
那里原来是一层层的导线,好像三明治叠在一起。
9.
调整显微镜,依次把焦点对准不同的导线,先是上层。
10.
然后,焦点对准中间的那层导线。
11.
最后是下层导线。
12.
导线的下面就是硅片层(晶圆),也就是晶体管的位置。但是这时,光学显微镜已经到放大的极限了,只好改用电子扫描显微镜(scanning electron microscope)。
因为没有办法去掉导线层,所以先把芯片一切二,观察横截面。
13.
可以看到芯片的底部,也就是金属层底部有一些线条。
14.
把底部放大。
15.
肉眼看到大概有六层,全部都是金属导线,估计就是刚才光学显微镜里看到的导线层。
16.
换一个更好的角度。
17.
这台电子扫描显微镜的极限是 250 纳米,而奔三的制造工艺是 180 纳米(根据 wikipedia),所以没法看见更细的导线层,更不要说下面的晶体管了。
18.
换一个角度,从上往下看,依然是一层层叠加的导线。由于暂时没办法把这些导线去掉,所以晶体管层还是看不见。
参考
[1] 解剖 CPU(另)
解剖 CPU的更多相关文章
- 解剖 CPU(另)
http://itbbs.pconline.com.cn/notebook/11026377.html 话不多说,这个处理器,就是今天我们要厮杀的对象! 1. 案板上的她,静静等等手术的进行! 2. ...
- 浅谈FPGA
浅谈FPGA 前言 生活中永远都不会缺少「 为什么 」,于最近就被合胜学长了,问了一个看似简单却又极具意义的问题,为什么需要FPGA?FPGA与单片机的区别是什么?瞬间刷新了我入门三天FPGA的冲击感 ...
- 解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions(译)
解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions (译) http://improve.dk/avoiding-regressions-in-orcamdf-b ...
- 8天玩转并行开发——第八天 用VS性能向导解剖你的程序
原文 8天玩转并行开发——第八天 用VS性能向导解剖你的程序 最后一篇,我们来说说vs的“性能向导",通常我们调试程序的性能一般会使用Stopwatch,如果希望更加系统的了解程序,我们就需 ...
- 解剖 Elasticsearch 集群 - 之二
解剖 Elasticsearch 集群 - 之二 本篇文章是一系列涵盖 Elasticsearch 底层架构和原型示例的其中一篇.在本篇文章中,我们会讨论 Elasticsearch 是如何处理 3C ...
- 剖析CPU温度监控技术【转】
转自:http://blog.csdn.net/hunanchenxingyu/article/details/46476545 迄今为止还没有一种cpu散热系统能保证永不失效.失去了散热系统保护伞的 ...
- 剖析CPU温度监控技术
转载 :剖析CPU温度监控技术 标签: CPU 温度控制技术 1805 具体温度检测调整代码(转载) 迄今为止还没有一种cpu散热系统能保证永不失效.失去了散热系统保护伞的“芯”,往 ...
- C语言深度解剖读书笔记
开始本节学习笔记之前,先说几句题外话.其实对于C语言深度解剖这本书来说,看完了有一段时间了,一直没有时间来写这篇博客.正巧还刚刚看完了国嵌唐老师的C语言视频,觉得两者是异曲同工,所以就把两者一起记录下 ...
- LAMP网站架构方案解剖
LAMP网站架构方案解剖 2011-03-18 10:46 月光 网络转载 字号:T | T 网站架构是比较考研技术的一件事,所以要对一种好用的工具,那么网站架构就会事半功倍,LAMP具有通用.跨平台 ...
随机推荐
- C#基于SMTP协议和SOCKET通信,实现邮件内容和附件的发送,并可隐藏收件人
经过几天的努力,从完全不懂SMTP到折腾出个可以发送邮件内容和附件的DEMO.话少说,直接上代码. using System; using System.Collections.Generic; us ...
- chrome ui源码剖析-Accelerator(快捷键)
好久没有自己写东西了,chrome有着取之不尽的技术精华供学习,记录一下. 源码目录: http://src.chromium.org/viewvc/chrome/trunk/src/ui/bas ...
- WebLogic使用总结(七)——WebLogic部署Web应用并绑定域名
一.在WebLogic中创建一个虚拟主机 找到虚拟主机面板,如下图所示:
- windows操作系统查看占用端口的进程
在开发中有时我们需要确定哪个占用了8080端口,在windows命令行窗口下执行: netstat -aon|findstr 命令执行后打印出来的结果如下所示:
- 解决ubuntu上在androidstudio中启动emulator闪退的问题(2)
平台 Ubuntu14.04 64 现象 在AndrodStudio中点击模拟器的启动按钮后,模拟器界面弹出后,又立刻闪退. 解决 一.查看模拟器的信息 从上面可以看到模拟器的存放路径以及名称: 路径 ...
- android 中theme.xml与style.xml的区别
from://http://liangoogle.iteye.com/blog/1848448 android 中theme.xml与style.xml的区别: 相同点: 两者的定义相同. <r ...
- jquery.timers使用说明
jQuery Timers提供了三个函式 1. everyTime(时间间隔, [定时器名称], 函式名称, [次数限制], [等待函式程序完成])2. oneTime(时间间隔, [定时器名称], ...
- Java 集合细节(二):asList 的缺陷
在实际开发过程中我们经常使用 asList 讲数组转换为 List,这个方法使用起来非常方便,但是 asList 方法存在几个缺陷: 一.避免使用基本数据类型数组转换为列表 使用 8 个基本类型数组转 ...
- serializeArray()与 serialize()
serialize()序列表表格内容为字符串,用于 Ajax 请求. serializeArray()序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据. .s ...
- BMap:WEB 服务API
ylbtech-Map-Baidu: WEB 服务API 百度地图Web服务API为开发者提供http/https接口,即开发者通过http/https形式发起检索请求,获取返回json或xml格式的 ...