先秀一张解剖照,放大裁剪,小米1S微距拍摄,800万像素摄像头很给力!

今天等待被拆的是5个单片机芯片:
(1)凌阳16位单片机SPCE061A ,这是我接触的第一个单片机,最高主频49MHz,32KB的FLASH,2KB的RAM,最大的特点就是集成了音频处功能,可以播放音频文件,带语音识别功能。
(2)TI的16位低功耗单片机MSP430F149,非常好用的一款单片机,最高主频8MHz,指令为单周期,60KB FLASH,2KB RAM,特点是超低功耗,官方公布的休眠功耗是2uA,本人实测单片机最小系统板的功耗是2.2uA,TI的数据果然实在。据说PIC纳瓦技术的单片机可以挑战MSP430的低功耗,从数据看能够到nA级别,没有实测,不做评论。
(3)51兼容机AT89S52,与AT89C52的区别是带ISP下载功能,不用插到烧录器上也可以烧写程序。8KB的FLASH,256B的RAM。
(4)Atmega16,属于AVR单片机中比较高档的系列,8位单片机,16代表集成了16KB的FLASH,同时还带有512B的EEPROM,1KB RAM。
(5)PIC的PIC16F877A,同样也是8位单片机,这款单片机没有用过,了解的不多。
ok,上这5位将要被脱去外衣的单片机的照片!

先睹为快,先看看拆完之后的效果!

拼图的时候调着玩,发现照亮边缘之后的效果很有意思~

使用浓硫酸溶解的方法给芯片脱壳,这种塑料封装的芯片,其外壳能在加热的浓硫酸中溶解,下面是DIP封装的芯片结构示意图

除了塑料外壳之外,芯片管脚和铜基板也能在加热的浓硫酸中溶解。
这是加热时候用的炉子

使用称量瓶来盛放芯片和浓硫酸,注意,这是违规操作!包括称量瓶在内的绝大多数量具不能高温操作,更不能用来加热。一是高温导致量具变形,影响精度;二是加热不均匀容易导致量具破裂!
手头没有烧杯,就先拿称量瓶来代替。因为是使用加热炉来加热,称量瓶受热比较均匀,再加上严格控制加热的温度,称量瓶还是经受的住的,至少我试过的几次没有出现问题。但是如果在器具比较齐全的情况下,为了安全考虑,大家还是不要跟我学啊!

倒入浓硫酸,好紧张。。。注意安全防护

放到炉子上开始加热,一定要控制好温度,我是把手指放到炉子上去试的,毕竟实测的数据才可信嘛

很快芯片就开始溶解了。。。

没一会,芯片就化作一缕青烟和一堆残渣。。。

等溶液冷却之后,倒掉残渣,将裸片放到清水中清洗一下

这就是刚才溶液里剩下的裸片,裸片周围是金线

那么大的封装里面,裸片只有这么一点点



经过几次重复的操作,5个单片机全被我脱光啦!耗时2个多小时。

OK,小米的摄像头又派上用场啦,微距效果很棒!

注意,这就是用小米的摄像头拍的,没加显微镜!



只是拍微距,还不过瘾,我们再来看看显微照片,先修一下我的袖珍显微镜,只有手掌大小,很像玩具,放大倍数从160到200倍可调

用胶带将旋钮粘上,固定在200倍

先从凌阳61开始




Bonding出来的金线清晰可见


左边那片乱糟糟的是数字电路单元。因为在IC设计过程中,数字电路部分的自动化程度很高,基本上都是EDA软件自动布局布线,而模拟电路部分的LAYOUT基本都是手工画的,很整齐

拆的时候被压弯的金线

那第二个呢,我们看看大名鼎鼎的MSP430,这个硅片相比其它单片机比较薄

这张照片很有意思,大家可以看到,TI 在画LAYOUT的时候在芯片上做了标记,如果仔细看能看出来是MSP430F149,后面两个字符不知道是什么
下面这张图可以很明显的区分出来模拟电路部分和数字电路部分



仍然是被压弯的金线。。。

接下来是51的兼容机,AT89S52,方方正正,很漂亮!






大家注意到,这个芯片PAD上的金线没了,是因为在清洗芯片上的残渣的时候不小心把金线也全都弄掉了。。。

我觉得最漂亮的就是AVR的这个单片机了

怎么样,像不像从卫星上拍摄地面上的村庄的感觉啊,内容很丰富

金线依然是在清洗的时候被弄掉了。。。真可惜

前面的是村庄,这里还有农田!!!

像不像一大片麦田?


最后呢,是PIC单片机

这个弄的比较失败,用浓硫酸溶解的时候没弄干净,有一小块塑料还粘在裸片表面,懒得再重新弄一遍了,就想把塑料刮下去,结果就刮成这个惨样了。。。



OK,5种单片机的显微照片就传这么多了,拍了将近300张照片,从中找了几十张比较清晰的
拍完之后把裸片裹成“粽子”保护起来,


最后来一张毛爷爷的照片贿赂贿赂大家,祝大家赚好多好多的Money!

【转载】芯片级拆解51、AVR、MSP430、凌阳61、PIC,5种单片机,多张显微照片的更多相关文章

  1. 【阿里聚安全·安全周刊】Intel芯片级安全漏洞事件|macOS存在漏洞

    关键词:Intel漏洞丨mac OS漏洞丨三星漏洞丨安卓安全丨CPU漏洞丨phpMyAdmin漏洞丨iOS设备|安卓恶意软件检测|Burpsuite   本周资讯top3 [Intel漏洞]芯片级安全 ...

  2. 整体算力提升40% 芯片级安全防护 | 阿里云发布第七代ECS云服务器

    2 月 8 日,阿里云宣布推出第七代 ECS 云服务器产品家族,基于最新的神龙架构,相较于上一代整体算力提升 40%,容器部署密度最大可提升 6 倍,是最佳的云原生载体,此外全量搭载安全芯片,实现&q ...

  3. [转]Linux芯片级移植与底层驱动(基于3.7.4内核)

      1.   SoC Linux底层驱动的组成和现状 为了让Linux在一个全新的ARM SoC上运行,需要提供大量的底层支撑,如定时器节拍.中断控制器.SMP启动.CPU hotplug以及底层的G ...

  4. 转载:(Mac)在bash和zsh配置环境变量path的几种方法

    参考文献 老习惯,列出本文参考或引用或转载的文档和博客,致以崇高的敬意,感兴趣的可以去看看 1.http://postgresapp.com/ 2.http://postgresapp.com/doc ...

  5. 【ADO.NET-中级】百万级数据的批量插入的两种方法测试

    在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题.下面介绍SQL Server支持的两种批量 ...

  6. 【转载】SDL2.0在mfc窗口中显示yuv的一种方法

    DWORD ThreadFun(){    //用mfc窗口句柄创建一个sdl window    SDL_Window * pWindow = SDL_CreateWindowFrom( (void ...

  7. 【转载】Analysis Service Tabular Model #002 Analysis services 的结构:一种产品 两个模型

    Analysis Service 2012 Architecture – One Product, Two Models 在之前SQL Server 2008 R2 版本中的分析服务实际上只有一个版本 ...

  8. 【转载】java 监听文件或者文件夹变化的几种方式

    1.log4j的实现的文件内容变化监听 package com.jp.filemonitor; import org.apache.log4j.helpers.FileWatchdog; public ...

  9. 保姆级别的RabbitMQ教程!包括Java和Golang两种客户端

    目录 什么是AMQP 和 JMS? 常见的MQ产品 安装RabbitMQ 启动RabbitMQ 什么是Authentication(认证) 指定RabbitMQ的启动配置文件 如何让guest用户远程 ...

随机推荐

  1. phpStudy

    『软件简介』 该 程序包集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安装,无须配置即可使 ...

  2. div仿textarea

    CSS代码: .test_box { width: 400px; min-height: 120px; max-height: 300px; _height: 120px; margin-left: ...

  3. js浏览器检测

    1.判断浏览器类型 if navigator.userAgent.indexOf(”MSIE”)>0) {} //判断是否IE浏览器 if(isFirefox=navigator.userAge ...

  4. 修改oracle字符集

    >sqlplus /nolog >conn / as sysdba sql>shutdown immediate sql>startup mount sql>ALTER ...

  5. Redis 集群解决方案 Codis

    (来源:开源中国社区 http://www.oschina.net/p/codis) Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生 ...

  6. Linux学习 : 裸板调试 之 配置使用NAND FLASH

    关于NAND FLASH的结构是以页为单位写,以块为单位来擦除: 1Gb     为大页   page=2048Kb    BLOCK=128K 512Mb 为小页   page=512byte   ...

  7. Swift语言—常量、变量、类型赋值

    常量:常量在作用域内不能被赋值且不会发生改变,只读不写,每个常量都必须有唯一的名字和内存空间:关键字:let   变量:变量在作用区域内可以它的值可以被改变,可读可写可覆盖,每个常量都必须有唯一的名字 ...

  8. vim常用命令总结 (转)

    vim 选择文本,删除,复制,粘贴   文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下: v    从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束. V    从光标 ...

  9. linux信号处理时机

    信号号称所谓软中断,事实上,还是没有真正的硬件中断那样能随时改变cpu的执行流 硬件中断之所以能一发生就得到处理是因为处理器在每个指令周期的结尾都会去检查中断,这种粒度是很细的 但是信号的实现只是在进 ...

  10. 动手实现自己的 STL 容器《2》---- list

    1. 序: 本文参考了侯捷的 <STL 源码分析>一书,出于兴趣,自行实现了简单的 list 容器. 学习了 STL 的 list 容器的源代码,确实能够提高写链表代码的能力.其中的 so ...