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

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

3天内不再提示

开发板设计中CMOS输入可能发生的耗电问题

5RJg_mcuworld 来源:互联网 作者:佚名 2018-03-22 09:09 次阅读

记得有一次,客户拿着处理器板走进我的办公室,说它的功耗太大,耗尽了电池电量。由于我们曾骄傲地宣称该处理器属于超低功耗器件,因此举证责任在我们这边。我准备按照惯例,一个一个地切断电路板上不同器件的电源,直至找到真正肇事者,这时我想起不久之前的一个类似案例,那个案例的“元凶”是一个独自挂在供电轨和地之间的LED,没有限流电阻与之为伍。LED最终失效是因为过流,还是纯粹因为它觉得无聊了,我不能完全肯定,不过这是题外话,我们暂且不谈。从经验出发,我做的第一件事是检查电路板上有无闪闪发光的LED。但遗憾的是,这次没有类似的、昭示问题的希望曙光。另外,我发现处理器是板上的唯一器件,没有其他器件可以让我归咎责任。客户接下来抛出的一条信息让我的心情更加低落:通过实验室测试,他发现功耗和电池寿命处于预期水平,但把系统部署到现场之后,电池电量快速耗尽。此类问题是最难解决的问题,因为这些问题非常难以再现“第一案发现场”。这就给数字世界的问题增加了模拟性的无法预测性和挑战,而数字世界通常只是可预测的、简单的1和0的世界。

在最简单意义上,处理器功耗主要有两方面:内核和I/O。当涉及到抑制内核功耗时,我会检查诸如以下的事情:PLL配置/时钟速度、内核供电轨、内核的运算量。有多种办法可以使内核功耗降低,例如:降低内核时钟速度,或执行某些指令迫使内核停止运行或进入睡眠/休眠状态。如果怀疑I/O吞噬了所有功耗,我会关注I/O电源、I/O开关频率及其驱动的负载。

我能探究的只有这两个方面。结果是,问题同内核方面没有任何关系,因此必然与I/O有关。这时,客户表示他使用该处理器纯粹是为了计算,I/O活动极少。事实上,器件上的大部分可用I/O接口都没有得到使用。

“等等!有些I/O您没有使用。您的意思是这些I/O引脚未使用。您是如何连接它们的?”

“理所当然,我没有把它们连接到任何地方!”

“原来如此!”

这是一个令人狂喜的时刻,我终于找到了问题所在。虽然没有沿路尖叫,但我着实花了一会工夫才按捺住兴奋之情,然后坐下来向他解释。

典型CMOS数字输入类似下图:

图1.典型CMOS输入电路(左)和CMOS电平逻辑(右)

当以推荐的高(1)或低(0)电平驱动该输入时,PMOS和NMOS FET一次导通一个,绝不会同时导通。输入驱动电压有一个不确定区,称为“阈值区域”,其中PMOS和NMOS可能同时部分导通,从而在供电轨和地之间产生一个泄漏路径。当输入浮空并遇到杂散噪声时,可能会发生这种情况。这既解释了客户电路板上功耗很高的事实,又解释了高功耗为什么是随机发生的。

图2.PMOS和NMOS均部分导通,在电源和地之间产生一个泄漏路径

某些情况下,这可能引起闩锁之类的状况,即器件持续汲取过大电流,最终烧毁。可以说,这个问题较容易发现和解决,因为眼前的器件正在冒烟,证据确凿。我的客户报告的问题则更难对付,因为当您在实验室的凉爽环境下进行测试时,它没什么问题,但送到现场时,就会引起很大麻烦。

现在我们知道了问题的根源,显而易见的解决办法是将所有未使用输入驱动到有效逻辑电平(高或低)。然而,有一些细微事项需要注意。我们再看几个CMOS输入处理不当引起麻烦的情形。我们需要扩大范围,不仅考虑彻底断开/浮空的输入,而且要考虑似乎连接到适当逻辑电平的输入。

如果只是通过电阻将引脚连接到供电轨或地,应注意所用上拉或下拉电阻的大小。它与引脚的拉/灌电流一起,可能使引脚的实际电压偏移到非期望电平。换言之,您需要确保上拉或下拉电阻足够强。

如果选择以有源方式驱动引脚,务必确保驱动强度对所用的CMOS负载足够好。若非如此,电路周围的噪声可能强到足以超过驱动信号,迫使引脚进入非预期的状态。

我们来研究几种情形:

  1. 在实验室正常工作的处理器,在现场可能莫名重启,因为噪声耦合到没有足够强上拉电阻的RESET(复位)线中。

图3.噪声耦合到带弱上拉电阻的RESET)引脚中,可能引起处理器重启

2.想象CMOS输入属于一个栅极驱动器的情况,该栅极驱动器控制一个高功率MOSFET/IGBT,后者在应当断开的时候意外导通!简直糟糕透了。

图4.噪声过驱一个弱驱动的CMOS输入栅极驱动器,引起高压总线短路

另一种相关但不那么明显的问题情形是当驱动信号的上升/下降非常慢时。这种情况下,输入可能会在中间电平停留一定的时间,进而引起各种问题。

图5.CMOS输入的上升/下降很慢,导致过渡期间暂时短路

我们已经在一般意义上讨论了CMOS输入可能发生的一些问题,值得注意的是,就设计而言,有些器件比其他器件更擅长处理这些问题。例如,采用施密特触发器输入的器件能够更好地处理具有高噪声或慢边沿的信号。

我们的一些最新处理器也注意到这种问题,并在设计中采取了特殊预防措施,或发布了明确的指南,以确保运行顺利。例如,ADSP-SC58x/ADSP-2158x数据手册清楚说明了有些管脚具有内部端接电阻或其他逻辑电路以确保这些管脚不会浮空。

最后,正如大家常说的,正确完成所有收尾工作很重要,尤其是CMOS数字输入。

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

    关注

    58

    文章

    5723

    浏览量

    235652
  • 嵌入式
    +关注

    关注

    5086

    文章

    19140

    浏览量

    305892
  • 栅极驱动器
    +关注

    关注

    8

    文章

    746

    浏览量

    39003

原文标题:为什么我的处理器这么耗电?

文章出处:【微信号:mcuworld,微信公众号:嵌入式资讯精选】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【迅为】瑞芯微RK3588开发板RK3568开发板区别及优势

    RK3568开发板
    的头像 发表于 11-18 14:19 443次阅读
    【迅为】瑞芯微RK3588<b class='flag-5'>开发板</b>RK3568<b class='flag-5'>开发板</b>区别及优势

    正点原子fpga开发板不同型号

    正点原子作为国内领先的FPGA开发板供应商,其产品线覆盖了从入门级到高端应用的各个领域。这些开发板不仅适用于学术研究,还广泛应用于工业控制、通信、图像处理等多个领域。 1. 入门级开发板 1.1
    的头像 发表于 11-13 09:30 823次阅读

    瑞芯微RK3566鸿蒙开发板Android11修改第三方输入法为默认输入

    本文适用于触觉智能所有支持Android11系统的开发板修改第三方输入法为默认输入法。本次使用的是触觉智能的Purple Pi OH鸿蒙开源主板,搭载了瑞芯微RK3566芯片,类树莓派设计,是Laval官方社区主荐的一款鸿蒙
    的头像 发表于 09-24 09:43 473次阅读
    瑞芯微RK3566鸿蒙<b class='flag-5'>开发板</b>Android11修改第三方<b class='flag-5'>输入</b>法为默认<b class='flag-5'>输入</b>法

    51开发板芯片资料

    51开发板芯片资料
    发表于 09-18 09:29 1次下载

    嵌入式linux开发板芯片的工作原理

    了处理器、存储器、输入/输出接口等硬件资源的嵌入式系统开发平台。它通常采用Linux操作系统作为底层软件平台,提供了丰富的开发工具和库函数,方便开发者进行嵌入式系统
    的头像 发表于 09-02 09:07 410次阅读

    linux开发板如何编译curl

    准备开发环境 确保你的开发板已经安装了编译 curl 所需的工具,包括 gcc 、 make 和可能的其他库。如果开发板是交叉编译环境(即你在一个平台上编译用于另一个平台的程序),你
    的头像 发表于 08-30 15:33 660次阅读

    米尔NXP i.MX 93开发板的Qt开发指南

    Qt应用开发,推荐使用QtCreator集成开发环境,可以在LinuxPC下开发Qt应用,自动化地交叉编译为开发板的ARM架构。本章使用Y
    的头像 发表于 06-07 08:01 1758次阅读
    米尔NXP i.MX 93<b class='flag-5'>开发板</b>的Qt<b class='flag-5'>开发</b>指南

    鸿蒙OpenHarmony开发板解析:【芯片解决方案】

    芯片解决方案是指基于某款开发板的完整解决方案,包含驱动、设备侧接口适配、开发板sdk等。
    的头像 发表于 05-10 15:42 1259次阅读
    鸿蒙OpenHarmony<b class='flag-5'>开发板</b>解析:【芯片解决方案】

    OpenHarmony鸿蒙南向开发案例:【智能猫眼(基于Hi3518开发板)】

    基于Hi3518开发板,使用开源OpenHarmony开发的RTSP协议流媒体应用。达到将Hi3518开发板摄像头获取的数据通过RTSP协议传输到手机并显示 。
    的头像 发表于 04-22 15:46 2048次阅读
    OpenHarmony鸿蒙南向<b class='flag-5'>开发</b>案例:【智能猫眼(基于Hi3518<b class='flag-5'>开发板</b>)】

    OpenHarmony鸿蒙南向开发案例:【智能猫眼(基于3516开发板)】

    基于Hi3516开发板,使用开源OpenHarmony开发的RTSP协议流媒体应用。达到将Hi3516开发板摄像头获取的数据通过RTSP协议传输到手机并显示 。
    的头像 发表于 04-19 22:01 613次阅读
    OpenHarmony鸿蒙南向<b class='flag-5'>开发</b>案例:【智能猫眼(基于3516<b class='flag-5'>开发板</b>)】

    fpga开发板是什么?fpga开发板有哪些?

    FPGA开发板是一种基于FPGA(现场可编程门阵列)技术的开发平台,它允许工程师通过编程来定义和配置FPGA芯片上的逻辑电路,以实现各种数字电路和逻辑功能。FPGA开发板通常包括FPGA芯片、时钟模块、电源模块、
    的头像 发表于 03-14 18:20 2053次阅读

    fpga开发板使用教程

    FPGA开发板的使用教程主要包括以下几个关键步骤。
    的头像 发表于 03-14 15:50 1158次阅读

    迅为RK3568开发板驱动开发指南-输入子系统

    迅为RK3568开发板驱动开发指南-输入子系统
    的头像 发表于 02-23 15:11 908次阅读
    迅为RK3568<b class='flag-5'>开发板</b>驱动<b class='flag-5'>开发</b>指南-<b class='flag-5'>输入</b>子系统

    fpga开发板与linux开发板区别

    FPGA开发板与Linux开发板是两种不同的硬件开发平台,各自具有不同的特点和应用场景。在以下的文章,我将详细介绍FPGA开发板和Linu
    的头像 发表于 02-01 17:09 2294次阅读

    51单片机开发板的主要功能 51单片机开发板能做什么

    具有多个通用输入输出引脚,可以连接各种外部设备和传感器,实现数据的输入和输出。 时钟管理:开发板通常会集成时钟电路,包括晶振、时钟发生器等,可以提供稳定的时钟信号给单片机使用。 存储器
    的头像 发表于 01-23 15:52 3845次阅读