0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何拆焊Flash芯片以及制作PCB的两种不同方法

STM32嵌入式开发 来源:FreeBuf.COM 作者:S2ealea 2021-09-27 17:14 次阅读

本文将介绍如何拆焊Flash芯片,设计及制作相应的分线板。了解对嵌入式设备的非易失性存储的简单有效攻击手段。这些攻击包括:

读取存储芯片内容

修改芯片内容

监视对存储芯片的读取操作并远程修改(中间人攻击)

想想,当你拆开一个嵌入式产品,却被挡在Flash之外,好奇的你一定想对它一探究竟。

那么,下面我们就开始。

拆焊Flash芯片

为了读取Flash芯片的内容,有以下两个基本途径:

直接将导线连接到芯片的引脚

把芯片拆下来,插到另一块板子上

下面介绍的Flash为BGA(球形栅格阵列)封装——无外露引脚。因此,只能选择拆焊的方法。

拆焊法的优点:

可避免对电路板上其他器件造成影响;

可以很容易看到芯片底部的布线;

可用其他芯片或微控制器代替原芯片。

一些不便之处:

电路在缺少完整器件的情况下无法运行;

在拆卸过程中,一些邻近器件可能被损坏;

如果操作不恰当,Flash本身可能毁坏。

OK,拆焊是吧?你看,下图所示的热风枪简直就是神器。只要将芯片周围加热,便可以很容易地拿下芯片

这种办法简单、快速只是可能伤及无辜——焊掉邻近的元件,所以,务必小心翼翼。

下图显示芯片拆下后PCB的布线。观察图片,猜想底部的两列引脚为空引脚,因为他们压根就没接入电路。

3438c480-136b-11ec-8fb8-12bb97331649.jpg

图:拆焊下来后

KiCAD定制分线板

现在该做什么?BGA封装简直就是一团糟,依然无法外接导线。

一种可行的方法是制作分线板。通常,分线板是将芯片的所有针脚的位置“镜像”下来,这样就能将芯片的引脚引接出来。

为此,我们首先要搜集芯片的相关信息。大多数情况下,芯片的型号都印制在芯片上,这样我们就很容易识别。如上图,芯片上第一行为MXIC代表Macronix International公司,第二行为芯片的具体型号MX25L3255EXCI datasheet 。以下为datasheet资料

3446460a-136b-11ec-8fb8-12bb97331649.jpg

图:针脚排布

PCB的设计可由KiCAD ,常用的EDA软件实现。

分线板的设计过程与其他PCB板一样:

新建电路板,画出电路简图,标明元器件的具体型号

确定芯片的具体尺寸

根据之前datasheet的资料。我们添加1个4×6的网格作为整个芯片的BGA封装,2个1×4的网格作为连接芯片8个有效引脚的接线柱。最后一步是,用线路将这些器件连接起来:

3452ce52-136b-11ec-8fb8-12bb97331649.jpg

图:step2

转接板的设计到此为止,接下来是如何把设计转化成的PCB。

PCB制作

PCB就像是由两层铜和一层基板压制成的三明治,导线分布在铜上面。

根据制作流程,分为:

蚀刻法

数控铣法

以下为两种方法的具体步骤。

蚀刻法

蚀刻,即是用化学药品逐步除去铜的过程。我们先用油墨保护覆铜板上的线路及要保留下来的铜。

1.首先,用热转印法制作PCB。PCB电路图用激光打印机打印在亮光纸上。然后,把亮光纸紧贴在覆铜板上,加热和施以压力,使亮光纸上的电路图转印到覆铜板上。通常,这个过程用熨衣服的熨斗即可完成,但是专用的压制器会使加热及受力更加均匀,更容易成功。

2.接下来是蚀刻,将整块PCB板浸没在腐蚀液,以此来去除多余的铜。

蚀刻后的分线板,转印的墨粉还附着在上面:

34649a7e-136b-11ec-8fb8-12bb97331649.jpg

图:step3

除去墨粉后:

3473141e-136b-11ec-8fb8-12bb97331649.jpg

图:step4

现在可以准备手工焊接了。微型焊接与正常焊接一样,只是器件的尺寸极小,因此需要借助显微镜。

此外,传统的焊接用的是线状的焊锡丝,而BGA微型焊接用的是锡球。

接下来,开始重整锡球:

将一个新的锡球放置在凹槽上,加热,熔化锡球;

校准芯片和板子;

回流。

锡球重整完成:

34baaaea-136b-11ec-8fb8-12bb97331649.jpg

图:step7

芯片焊接完成后的最终结果:

34c9bd00-136b-11ec-8fb8-12bb97331649.jpg

图:step8

数控铣

作为替代方法,数控铣仅是将需要的线路和剩余的铜隔离开来而已。

(1)5X5的BGA通常用于制作 PCB,而4X6的常用于分线板。我们设计5X5的是为了该分线板可以直接插接在通用EEPROM 编程器的ZIF插槽里,电路简图如下:

34de3cd0-136b-11ec-8fb8-12bb97331649.jpg

图:step9

(2)芯片的尺寸与前面设计的4X6的一样,只是网格变成5X5,板上的布线也稍显复杂:

34ea0cae-136b-11ec-8fb8-12bb97331649.jpg

图:step10

(3)由于KiCAD无法直接生成与数控铣兼容的目标文件,因此,我们用Flatcam接收Gerber文件并确定数控铣隔离的导线的路径:

3500158a-136b-11ec-8fb8-12bb97331649.jpg

图:step11

(4)接下来将生成的STL文件导入bCNC——数控铣的终端控制程序,如下图所示:

3522448e-136b-11ec-8fb8-12bb97331649.jpg

图:step13

雕刻过程中:

352ed4e2-136b-11ec-8fb8-12bb97331649.jpg

图:step14

(5)板子雕刻完成:

3545fa64-136b-11ec-8fb8-12bb97331649.jpg

step:15

最终结果:

355a2d22-136b-11ec-8fb8-12bb97331649.jpg

图:step16

(6)下一步,涂覆阻焊层,保护铜不被氧化,并用紫外灯固化:

3567453e-136b-11ec-8fb8-12bb97331649.jpg

图:step17

3574821c-136b-11ec-8fb8-12bb97331649.jpg

图:step18

(7)阻焊层覆盖了BGA的铜片及1X4的接线柱,我们得刮掉这个薄层,使铜片露出来:

3591f89c-136b-11ec-8fb8-12bb97331649.jpg

图:step19

(8)给各个节点焊锡:

359d55c0-136b-11ec-8fb8-12bb97331649.jpg

图:step20

35ace79c-136b-11ec-8fb8-12bb97331649.jpg

图:step21

(9)回到数控铣,打孔,切削PCB的边缘:

35bbb45c-136b-11ec-8fb8-12bb97331649.jpg

图:step22

35c9a49a-136b-11ec-8fb8-12bb97331649.jpg

图:step23

(10)最终成品,BGA焊接在板子上,准备插到EEPROM编程器上:

35d874c0-136b-11ec-8fb8-12bb97331649.jpg

图:step24

结论

了解了如何拆焊Flash芯片和如何设计PCB,以及制作PCB的两种不同方法。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6785

    浏览量

    147561
  • 嵌入式
    +关注

    关注

    4975

    文章

    18235

    浏览量

    287808
  • 电路板
    +关注

    关注

    140

    文章

    4599

    浏览量

    92113
  • BGA
    BGA
    +关注

    关注

    4

    文章

    501

    浏览量

    45994
  • 存储芯片
    +关注

    关注

    11

    文章

    791

    浏览量

    42417

原文标题:如何读取、修改嵌入式产品Flash中内容?

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    设计制作PCB覆铜板的五种种常见方法

    的影响。在PCB设计制作过程中,覆铜层的设计是一个不可忽略的环节。接下来深圳PCBA厂家为大家介绍PCB覆铜设计的方法,帮助大家轻松理解并掌握PCB
    的头像 发表于 04-09 10:04 105次阅读
    设计<b class='flag-5'>制作</b><b class='flag-5'>PCB</b>覆铜板的五种种常见<b class='flag-5'>方法</b>

    OpenCV两种同方法实现粘连大米分割计数

    测试图如下,图中有个别米粒相互粘连,本文主要演示如何使用OpenCV用两种同方法将其分割并计数。
    的头像 发表于 01-22 14:55 661次阅读
    OpenCV<b class='flag-5'>两种</b>不<b class='flag-5'>同方法</b>实现粘连大米分割计数

    avr单片机两种烧写程序方式的区别?

    最近在做一个单片机程序,有点疑问,用avrstudio烧程序接的是avrdragon,用ISPUSB是另外一个软件,这两种烧程序有什么区别?者过程都是先写熔丝,写flash,写eeprom;我试着用ISPUSB连avrsrud
    发表于 11-10 07:41

    常见的ARM架构分为两种是M系列另外一是A系列,这两种有什么区别啊?

    现在市面上常见的ARM架构分为两种是M系列另外一是A系列,这两种有什么区别啊,用的时候他们一般分别用在什么地方啊。
    发表于 10-26 07:00

    有哪些pcb制作方法

    pcb制作涉及很多工序和步骤,也包含了许多种生产工艺,总之一块PCB电路板色生产需要多种设备、材料和人工的配合。今天捷多邦小编就和你谈谈pcb是用什么
    的头像 发表于 10-24 15:17 695次阅读

    pcb盲孔制作工艺有哪些方法

    PCB盲孔制作是一种常见的工艺,用于在PCB板上制作不贯穿整个板厚的孔洞。
    发表于 09-14 14:31 877次阅读

    通过STM32CubeMX制作外部Flash的烧写驱动

    覆盖的芯片型号较少,且无法前期 QSPI Flash 调试的问题。本文旨在提供一通过 stm32CubeMX
    发表于 09-07 07:22

    语音芯片的型号有哪些?为什么强烈推荐使用flash型可擦写的

    语音芯片的型号有哪些?为什么强烈推荐使用flash型可擦写的芯片。这里我们简单描述一下如下常见类容: 1、他们都有什么特点?以及发展的历程简介 2、常见的语音
    的头像 发表于 08-14 11:05 430次阅读
    语音<b class='flag-5'>芯片</b>的型号有哪些?为什么强烈推荐使用<b class='flag-5'>flash</b>型可擦写的

    BGA和QFP有什么区别?引脚设计有哪些方法

    越多、引脚的间距越小都会存在一定的可制造性问题。 引脚种类 Cpu芯片的元器件封装引脚一般采用的是BGA或者是QFP类型,BGA和QFP是两种不同的封装形式。 BGA(Ball Grid Array
    发表于 06-02 13:51

    含有CPU芯片PCB设计需要考虑的五个主要方面

    越多、引脚的间距越小都会存在一定的可制造性问题。 引脚种类 Cpu芯片的元器件封装引脚一般采用的是BGA或者是QFP类型,BGA和QFP是两种不同的封装形式。 BGA(Ball Grid Array
    发表于 06-02 11:43

    含CPU芯片PCB可制造性设计问题详解

    的,引脚越多、引脚的间距越小都会存在一定的可制造性问题。 一、引脚种类 Cpu芯片的元器件封装引脚一般采用的是BGA或者是QFP类型,BGA和QFP是两种不同的封装形式。 BGA(Ball Grid
    发表于 05-30 19:52

    PCB盘设计之问题详解

    位置十分准确,在回流后反而会出现元件位置偏移、吊桥等焊接缺陷。 PCB盘设计基本原则 根据各种元器件焊点结构分析,为了满足焊点的可靠性要求,PCB
    发表于 05-11 10:18

    在PADS中怎么放置两种不同孔径的过孔啊?

    在PADS中怎么放置两种不同孔径的过孔啊?
    发表于 04-28 16:45

    PCB Layout中盘和过孔的设计标准及工艺要求

      这两种图形的连线方法使得信号直接由盘与内层相连接。看起来这种图形连接方法简单,却直接受到加工 能力,制造成本与组装工艺等因素的制约。   上述讨论的导线与线距问题,并非所有制造
    发表于 04-25 18:13

    印制电路板PCB制作及检验

    的控制等突出优点,在印制电路板生产中得到了迅速地推广,目前生产中已作为首选蚀刻剂,取代了三氯化铁蚀刻剂。  氯化铜蚀刻剂根据印制板的制作方法不同,又分为酸性和碱性两种,酸性氯化铜蚀刻剂适用于丝网漏印
    发表于 04-20 15:25