在阅读Buck充电IC datasheet时,通常能看到IRCOMP字样,以TI的BQ25890H举例如下图,这其实是一种工程实践上对充电时长的优化。

充电是基于具体的物理实体,而物理世界从来不是纯洁无瑕的,不可避免地存在各种寄生参数。比如走线,那就不可避免的存在阻抗。小电流充电时可能不需过多考虑,但在大功率充电场景下,便不可不察了。
为了优化走线阻抗对充电时长的影响,手机上的充电芯片上发展出了IR压降补偿功能。
背景
如下图,充电IC的输出到电芯的路径上横亘着各种各样的阻抗,像是公司里面擅长各种摸鱼的同事一般,包括但不限于:主板PCB走线电阻、电池连接器阻抗、电池FPC走线阻抗、电池保护板PCB走线阻抗、电池保护板上MOS的Rdson阻抗。

这些阻抗在大电流充电时能形成显著的压差,从而导致充电IC输出端检测到的电池电压不准确,会叠加一个偏差ΔV,即检测的电压为Vcell+ΔV,其中,Vcell为电芯电压,偏差ΔV = I_chg * R_total。
如下图所示,因为检测到的电压偏大,会导致充电IC提前进入CV模式,此时电芯电量虚满,CV模式充电电流又小,故导致满充时间加长。

方案一 - 基于压降的补偿
接下来便涉及到补偿,损耗多少,就补多少呗,这是最为常见的方案。
充电IC知道自己的输出电流I_chg,然后根据设定的总阻抗值R_total,计算出当前的ΔV电压降为:ΔV = I_chg × R_total。
然后将输出电压提高到Vout + ΔV,即补偿ΔV电压,加到目标输出电压上。
但这个方案的缺点是,需要准确评估R_total,如果不准确,则会导致补偿不足或过度补偿,补偿不足尚可接受,过度补偿则会带来过充,就像开车油门踩过头一样,危害性非同小可,充电充到爆炸,那就真成爆款了。
添加了IR补偿功能的充电曲线如下图所示,可见能够有效缩短满充充电时间。

方案二 - 基于远端采样
除了在寄存器中设定补偿值,业界还有种基于远端采样的方案,这种方案更精确、更可靠,常用于对电压精度要求极高的场合。
如下图,其本质原理与“开尔文走线”的概念相同,通过独立的“感应线”连接到电芯。
- VBAT_SNS_P,采样电芯的V+;
- VBAT_SNS_M,采样电芯的V-;

感应线上几乎不流过电流,因此其上不会产生显著的电压降,那么充电IC读取的便是电芯的素颜,即真实电压。
需要说明的是,对于电芯V-端的采样,还要涉及电池保护IC的配合。
如下图,以MITSUMI锂保IC为例,其内部有个开关,开关闭合后,手机主板端便可以sense电芯的V-,绕过了锂电池保护板上的MOS和PCB走线。

充电IC以此sense到电芯电压,进行CC/CV调整,从而优化充电时长,可谓YYDS。
这个方案与方案一相比,就像顺丰快递和普通快递的区别,准是准,但是得加钱!它就像铺设了一条VIP通道一样,引入了额外的走线、额外的Pin脚、可能还涉及额外的芯片定制等等,适合具有钞能力的土豪。