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

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

3天内不再提示

我的eMMC启动不正常,问题到底在哪里?

edadoc 来源:edadoc 作者:edadoc 2024-07-29 17:56 次阅读

今天我们要分享的这个案例是关于eMMC启动不正常的问题,感谢热心网友“晒不”提供的案例素材,也谢谢他的分享。

上篇文章我们提到希望大家一起来分享硬件调试中发现的一些低级错误,果然就有我们的铁杆粉丝之一“晒不”发来了他初步整理的案例素材,大家一起来学习一下吧,也谢谢他的分享!

这个项目的主芯片瑞芯微的RV1126(位号U10),分别拖了一个金士顿的eMMC芯片(位号U40)和镁光的NAND Flash芯片(位号U41),在Layout的时候做了兼容设计,也就是通过选焊电阻的方式,让主芯片来选通其中一个芯片,使用的时候二选一,eMMC和NAND Flash芯片不会一起工作,大致的拓扑图如下所示。

wKgaomanZzGAcwcuAAAo19eETfA890.jpg

从Layout设计文件可以看到,几个芯片都是放在Top面,eMMC和NAND Flash基本是放在同一个中心位置,所以贴片的时候只能选择贴其中的一个,两个芯片是没法同时贴上的,所以需要做兼容设计。两个分支电阻在垂直空间上重叠放置在Top面和Bottom面,这样如果只焊接其中一个电阻的时候,确实是可以做选通操作,看起来Layout设计没什么问题,对应的走线如下图所示。

wKgZomanZzGAAXkRAAD9wab-yk4979.jpg

设计上没发现什么问题,然后就制板贴片开始调试。硬件在调试板子时发现,有时候上电,系统会有卡死的情况,同样的固件在开发板上是OK的,软件做了几轮修改都会有类似软件报错的情况,显示出跑到eMMC操作时就卡住了,最后只能怀疑是硬件或者PCB Layout的问题。

wKgaomanZzKAPKUxAAA6rXNoqrM685.jpg

但硬件有排除不是自己问题的理由:“最小系统模块(包含eMMC)的原理是直接复制开发板的,所有的器件贴装也和开发板一样,同样的代码在之前开发板上没有问题,而现在新设计的板子有问题,那肯定是PCB Layout出了问题”。

不可否认,硬件的话确实有一定的道理,硬件原理之前是验证过的,这样压力一下子就给到了PCB设计工程师。无奈,PCB工程师只能想办法自证清白,在没有专职SI工程师的情况下,PCB设计工程师只能通过再次查板,进行粗略的估算和评估一些影响,检查的方向如下:

1、阻抗不匹配方向:所有信号走线没有跨分割平面,走线线宽和阻抗计算也没有错误,同时也不存在较长的走线Stub,所以这一条不会影响。

2、时序方向:因为需要跑200MHz的信号,等长也是比较关键的,但因为没有做仿真,只能按照芯片的手册要求来做好等长约束,检查了等长表,每根信号走线长度也是都可以满足芯片要求,所以时序这块的影响也是可以初步排除。

3、电源方向:按照经验简单算了电源平面载流能力是可以满足需求的,相应的电源Pin脚也有足够的滤波电容,硬件测试电压和电源噪声都是可以满足要求,所以电源的影响也可以排除。

同时也和开发版本的设计进行了对比,硬件人员觉得是因为时钟信号走线和开发板不一致导致的。如下图是开发板的走线情况。

wKgZomanZzSAAjqyAACRFII5YfM230.jpg

开发板上eMMC和NAND Flash也是同面同中心放置,原理是一样的,也是通过两个电阻做了选通,只是走线上的分支更短,而新改板后的分支相对来说长了很多。所以硬件人员有理由觉得是PCB改版带来的问题,所有的原理和贴片器件都是一样,PCB设计改了就出问题了,这个大概率是PCB设计不一样而带来的问题。

而PCB设计工程师也有自己的主张:“CLK信号是由RV1126源端发出的,开发板的串联阻抗匹配电阻放在了终端,靠近eMMC和NAND Flash是不对的,应该把串联匹配电阻靠近源端,所以本次改版设计的电阻就往源端放了,这样确实会导致分支变长,但由于是选焊的,如果一次只焊接其中一路的情况下,另一路是没有导通的,这样相当于没有分支的影响,原理上来说信号质量会更好。如果连串联匹配电阻放在源端也被怀疑有问题的话,那就是怀疑信号完整性的理论有问题了。”PCB设计工程师的话也是说得在理,无可挑剔,由于没有SI人员支持,于是双方各执一词,谁也说服不了谁。

wKgaomanZzWAJGWLAACy6Vm2S1c107.jpg

经过几天的“沟通”,压力还是在PCB工程师这。就在PCB工程师拿着PCBA研究的时候,无意中发现虽然U41没有焊接,但是R41却焊接了器件。这个发现仿佛一道佛光,拯救了“背锅侠”。在PCB工程师的反馈下,硬件拆除了R41,系统终于可以正常启动了。

这个时候硬件人员就有疑问了,为什么开发板上的R41没有拆除可以正常工作,改版后的R41焊上就有问题了呢?大家可以帮忙回答一下哈!

同时也欢迎大家继续提供类似这种调试过程中的低级错误案例素材,谢谢!

审核编辑 黄宇

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

    关注

    16

    文章

    1671

    浏览量

    135946
  • Nand flash
    +关注

    关注

    6

    文章

    241

    浏览量

    39746
  • emmc
    +关注

    关注

    7

    文章

    198

    浏览量

    52556
收藏 人收藏

    评论

    相关推荐

    LM4780桥接功放静态电流达到190mA,芯片非常烫,到底不正常

    LM4780桥接功放静态电流达到190mA,双34V供电的情况下,是每一路电源都是190mA,的静态电流,芯片非常烫,到底不正常???同样的PCB,前一批的芯片能正常使用,但是后面的芯片却不一样,一装好就发烫严重,但是能工
    发表于 11-06 08:27

    为什么AIC23刚上电时,工作不正常

    为什么AIC23刚上电时,工作不正常(声音极小),用镊子将CLKOUT 管脚和BCLK管脚短接再断开后,就会转入正常状态(声音正常),而且也不是每次短接断开都可行,有时候短接再断开也会出现杂乱声音
    发表于 10-21 07:50

    使用LM48511SQ功放升压电路工作不正常哪里出了问题?

    的原理图是按照参考电路来做的,现在遇到的问题是升压电路工作不正常,7.几V的电压升起来一下子就又跌下去了,查看发现软启动脚的波形也是这样,功放此时输出的功率很小,只有不到1W,所以不是带载太大的原因。电池电压是3.7V供电。
    发表于 10-21 07:11

    LM358用tssop封装不正常工作的原因?

    LM358用t电路8脚用的13v4脚 -5v用sop8没问题 但是用tssop封装就不正常工作,甚至连同相放大器和电压跟随器都不正常,但是把sop8的引脚强行焊到上面就是正常的。看了手册引脚是一样的,不知是
    发表于 08-16 13:16

    ADS1675采样不正常是哪些原因引起的?

    ADS1675采样率在125K,250K,500K,1M 的时候采样正常,2M,4M的采样不正常。下面是采样设置,请问还需要设置哪里。测试数据如附件
    发表于 08-09 08:23

    LOG114 VLogout输出不正常的原因?

    你好,这是的电路图,目前的问题是VLogout的输出不正常,不服从VLogout=0.375*log(I1/I2)+2.5V。 之前使用log114芯片的时候,背部的exposed
    发表于 08-02 08:02

    eMMC启动不正常,问题到底在哪里

    今天我们要分享的这个案例是关于eMMC启动不正常的问题,感谢热心网友“晒不”提供的案例素材,也谢谢他的分享。 上篇文章我们提到希望大家一起来分享硬件调试中发现的一些低级错误,果然就有我们的铁杆粉丝
    发表于 07-29 17:58

    AD7190在STM32运行正常,ESP32不正常,为什么?

    在STM32运行正常,ESP32不正常
    发表于 06-03 08:28

    如何维修安捷伦N8946电源输出不正常

    。其电压输出范围为0至200V,电流输出范围为0至140A,最大输出功率为10000W。同时,该电源支持340–440 VAC的交流输入电压范围。 维修安捷伦N8946电源输出不正常 安捷伦N8946电源输出不正常时,可以尝试以下步骤进行维修: 检查电源输入:首先确认电源
    的头像 发表于 04-23 18:07 672次阅读
    如何维修安捷伦N8946电源输出<b class='flag-5'>不正常</b>

    stm32H747在M4内核使用AXI SRAM不正常的原因?

    用stm32H747,在M4内核使用AXI SRAM开辟了一个38400字节的数组,一切正常。但是当我把这个数组换成大的容量221184字节的时候,不正常了。必须要M7的程序重新烧录一遍才可以
    发表于 03-28 09:20

    aducm360 ADC采样率提高到100HZ,为什么读取的数值就不正常了?

    原本ADC的配置如下图所示,用示波器测出来的采样率为3HZ左右。此时ADC读取的数值是正常的(假设测的ADC为200左右) 然后,采样率提高到100HZ,这是读取的数值就
    发表于 01-11 07:57

    AD5422芯片上电配置后不正常发热怎么解决?

    不正常发热,此时输出维持1.2V-1.3V的之间,不论往数据寄存器中写入什么值都是这个输出,FAULT引脚维持高电平不报错,读配置寄存器发现也确实配置进去了,请问我哪里出错了,到值输出不正常
    发表于 12-20 07:43

    AD421负载超过300欧母时间输出电流就不正常,问题出在哪里

    上面是的原理图 AD421可以通过不同的跳线设置成两线和三线两种方式,现在有个问题问题是,当工作在两线的情况下,的负载超过300欧母的时间输出电流就不正常,小于300欧母时4-20MA就
    发表于 12-15 06:52

    TVS管与稳压二极管,区别到底在哪里

    TVS管与稳压二极管,区别到底在哪里
    的头像 发表于 12-05 14:49 755次阅读
    TVS管与稳压二极管,区别<b class='flag-5'>到底在哪里</b>!

    AD8237输出不正常怎么解决?

    现输出不正常,空载的时候出现3.8v电压,认为是自激出现。理论上应该输出1.25v的基准电压,但是把0.47uf电容换成0欧姆电阻不会出现自激现象。 但是我们的信号必须要通过电容进行隔直处理。上次
    发表于 11-16 08:25