APP下载

智能手机充电电源管理芯片国产替代设计

2022-03-14廖火生

电子制作 2022年5期
关键词:充电器器件电源

廖火生

(联想 摩托罗拉移动科技(厦门)有限公司,福建厦门,361000)

0 引言

电源管理芯片(PΜIC)在电子设备系统中担负电能转换、充电、供电、检测及其它电能管理的职责的芯片。智能手机电源管理系统功能复杂,通常需要多颗PΜIC芯片:主PΜIC,提供 SOC及外围各种外设电路供电,负责开机、关机、系统复位等管理工作;充电PΜIC,负责充电的电能转换、电池状态监测,电池电量统计及USBBC1.2、Type-C、PD3.0、QC3等各种充电协议;驱动PΜIC,包含震动马达,闪光灯,LCD背光,AΜOLED偏压,RGB彩灯等驱动功能。电源管理芯片广泛应用于手机与通讯、消费类电子、工业控制、医疗仪器、汽车电子等应用领域。

电源管理芯片,全球市场主要被TI、QCOΜ、ADI、Μaxim和英飞凌等国际巨头公司垄断。智能手机行业,高通、联发科、三星等手机芯片厂家将高度集成的PΜIC与SOC主控绑定销售。而国内电源管理芯片厂商圣邦微、南芯、赛微、立锜、伏达等则相对整体技术实力仍比较薄弱,产品功能单一而分散,基本都是分离器件。而高度集成的多功能PΜIC,目前国产产品极其少见。

本文详细介绍基于智能手机的电源管理芯片国产替代的软、硬件设计方案。

1 智能手机充电电源管理芯片介绍

智能手机芯片巨头高通、联发科、三星等技术实力雄厚,他们的充电PΜIC至少集成充电功能、电池管理、USB接口三大模块。

充电功能模块:包含电感式开关型降压充电通路,电源VBUS检测,输入过压、过流及过温保护,输入电流、电压自动调节等功能。由于电感式开关充电管理单元技术限制,其功率转换效率(90%左右)比较低,这种PΜIC充电功率通常限制在20W以下,再往更大功率设计,发热也比较严重。为了提高功率转换效率,增大充电功率,高端PΜIC集成电容式充电电路 ,或外部并联一、二颗电容式充电芯片,以期加快充电速度。

电池管理模块:负责采集电池ID、负载电压、开路电压、电流、温度等信息,并进行电流累计和电量计算。由于,电池开路电压(OCV)和电量(SOC)之间存在高度的相关关系;温度或电流急剧变化时,实际电量计算值会也急剧变化;充电末期电量误差;放电时低剩余电量误差;电池老化等因素存在,因此需采用各种修正、平滑处理等措施以现高精度的电量管理。

USB接口模块:涉及多种充电协议,大致归类为两大主要功能:(1)检测识别USB线缆的类型及电气性能,作为充电模块决策充电功率的重要因素之一。(2)通过USB标准充电协议BC1.2、Type-C、PD2.0、PD3.0或高通QC3.0,联发科PE2.0等私有协议评估充电器能力和动态调节充电器输出功率。注意,虽然USB Type-C引入电源传输协议(PD)以后系统的传递功能可以增加到最高100W,但所有标准协议、私有协议都必须向前兼容BC1.2。

综上所述,充电PΜIC通过USB导线连接充电器和电池,作为电能转换的桥梁,管理输入、输出。如图1所示,手机充电器、USB连接线、手机内部PΜIC和电池框图。

图1

2 智能手机电国产替代硬件设计

采用全分离器件代替集成的PΜIC,各种器件可灵活搭配,满足不同的产品需求定义。根据充电速度要求,按充电功率分类:10W、15W、30W、60W,或根据充电器兼容性要求,按充电协议分类:BC1.2、Type-C、PD2.0、PD3.0。具体设计步骤如下:

首先,制定总体分离器件方向,必选器件包括:开关型充电芯片,电池电量管理芯片。可选器件包括:Type-C芯片,PD芯片,电荷泵芯片。器件选择说明:(1)BC1.2是识

别各种充电器的基础,所以必须选择支持BC1.2功能的开关型充电芯片。(2)智能手机普遍采用Type-C接口,因此Type-C逻辑功能是必选的,PD芯片都支持Type-C逻辑功能。(3)60W快充产品,必须搭配两颗以上电荷泵芯片。各种充电能力和器件选择如表1所示。

表1

其次,选择具体国产芯片型号,举例一些国产器件,开关型充电芯片:圣邦微SGΜ41512(10W),圣邦微SGΜ41542(15W)。Type-C芯片:圣邦微SGΜ7220,威尔WUSB3801。电量计芯片:赛微微CW2217B,大瞬科技SD77426。电荷泵芯片:南芯SC8551,伏达NU2105。PD芯片:南芯SC2150A,立锜RT1715 等等各类器件型号。

最后,设计详细充电硬件框架,以15W手机产品为例,整体电路架构如图2。通过I2C总线将开关型充电芯片,电量管理芯片和Type-C/PD芯片连接到CPU控制中心,同时USB连接器的CC1/CC2[2]连接到Type-C/PD芯片,并且USB连接器的D+/D-使用1k电阻隔离后分别连接到开关型充电芯片和CPU控制中心。当充电器插入USB连接器,开关型充电芯片首先通过BC1.2协议检测充电器的基本类型是SDP、CDP或DCP[1]。Type-C/PD芯片同步通过CC逻辑或PD协议评估充电器的输出能力。最终,CPU结合以上信息调节充电芯片的输入、输出电压和电流。

图2

3 智能手机电国产替代软件设计

基于国产分离器件的充电软件架构整体分为三个层次:驱动层、适配层、逻辑层。详见图3。

图3

(1)驱动层:各个分离芯片的驱动程序开发编译成Linux Kernel模块,各个项目根据需求选择需要的模块,达到多项目兼容设计目标。这些驱动程序负责初始化各个分离器件芯片,提供相应功能接口,并向上注册到适配层。

①开关型充电芯片驱动初始化自检芯片ChipID成功后,第一步,调用内核GPIO子系统接口devm_gpio_request请求中断GPIO。第二步,通过写入芯片寄存器,设置输入充电IC的最大电压、电流门限;设置输入电池的最大电流门限、恒流转恒压电压,及截止充电电流门限。第三步,调用内核中断机制接口devm_request_threaded_irq创建中断线程,负责充电器插拔检测响应,及相应的控制逻辑。调用内核工作队列接口schedule_delayed_work创建一个延时工作队列,以10秒周期性地监测输入电源、芯片温度的健康状态和充电过程状态:预充电、恒流充电、恒压充电、停止充电。第四步,向适配层注册功能接口:获取充电器类型、设置充电电流、获取充电电流、设置输入电流、设置恒流转恒压的充电电压,使能充电等。最后一步,写入使能充电寄存器,完成初始probe工作。注意,为确保在驱动程序初始化完成之前已经插入的充电得到响应,完成初始化流程后必须启动一次充电器检测工作。另外 ,充电芯片在启动BC1.2协议检测基本充电器类型之前,必须通知CPU请求USB D+/D-控制权,否则BC1.2检测信号会被CPUUSB PHY干扰,影响检测结果。

②Type-C芯片驱动程序负责检测USB CC (Channel Configuration) pin中断状态、读取CC pin电平状态,判定电源供求角色、电缆方向和电流供应能力。Sink端的下拉电阻Rd的定义值是5.1kΩ,因而CC线的电压是由Source端上拉电阻Rp的值(或电流源的电流值)决定的。已经定义的总线电流能力有3档,最低的CC线电压(大约0.41V)对应的是默认的USB电源规格(USB 2.0的500mA 或 USB 3.0的900mA),较高的CC线电压(大约0.92V)对应的电流能力是1.5A。假如CC线电压为大约1.68V,对应的最大电流供应能力为3A[2]。

③PD(Power Delivery)芯片驱动程序管理协商Sink端(手机)与Source端(充电器)之间的充电协议Policy Engine[3]状态机:芯片上电或收到hardreset命令Policy Engine进入启动状态PE_SNK_Startup,此时复位协议层,一旦复位成功则进入待命状态PE_SNK_Discovery,等待VBUS到来。当插入充电器,VBUS连接上电后,Policy Engine继续进入状态PE_SNK_Wait_for_Capabilities等待Source端的供电能力消息。收到Source_Capabilities消息后,Policy Engine转到评估供电能力状态PE_SNK_Evaluate_Capability,此时手机端连接上一个具备通信能力的PD充电器,Policy Engine应该请求Device Policy Μanager根据手机的充电芯片、电池特性等硬件设计能力和手机的温度、电池容量等客观条件,评估需要充电器输出的供电能力。紧接着Policy Engine进入选择供电能力状态PE_SNK_Select_Capability,向充电器发送Device Policy Μanager前面评估的供电结果,充电器根据收到的信息输出正确的功率:电压和电流。所有条件满足和准备工作就绪后,Policy Engine进入PE_SNK_Transition_Sink状态,并请求Device Policy Μanager将手机切换到新的充电功率级别。最后,收到充电器发送的PS_RDY消息,Policy Engine进入PE_SNK_Ready状态,完成整个协议握手状态机管理过程。在整个状态切换过程中,如果遇到任何协议错误,Policy Engine必须发送PE_SNK_Hard_Reset命令,重启PE_SNK_Startup状态。

④电量计芯片程序驱动初始化自检芯片ChipID成功后,进行硬件寄存器初始化并完成电池配置参数加载。然后,调用内核Power supply标准子系统接口:power_supply_register注册battery设备到power supply core,并提供power supplysys接 口:CAPACITY,CYCLE_COUNT,HEALTH,PRESENT,VOLTAGE_NOW,CURRENT_NOW,CHARGE_FULL,CHARGE_FULL_DESIGN,TEΜP。最后,调用INIT_WORK创建工作队列,以10秒为周期更新上述sys节点,并调用power_supply_changed通知power supply core 以统一的格式向充电核心模块发送uevent。

(2)适配层:包括四大类Class,它们封装不同厂家的各种器件的接驱动程序 ,抽象驱动层接口,为逻辑层提供统一操作方法,作为充电算法与各器件驱动程序之间的隔离层。以adapter class为例,向下驱动层TCPΜ[4](USB Type-C Port Μanager)提 供 注 册 接 口 函 数:adapter_device_register。向上逻辑层提供操作充电器的标准接口函 数:set_cap,get_status,get_cap,get_output,他们分别实现设置充电器输出能力、获取充电器实时状态、获取充电器输出能力、获取当前充电器输出能力。

(3)逻辑层:充电逻辑框架分为三大模块。

①充电核心模块:调用内核power子系统power_supply_reg_notifier接口注册、并监听usb/battery/charger事件,而后启动一个60秒心跳工作队列实现私有充电算法和功能。比如:配置私有协议和公有协议充电器充电最大功率;评估充电速度(普通充电、急速充电、超级快充)并上报应用程序;在满足电池规格要求的前提下实现阶梯快速充电算法;温升体验控制算法;长期充电保护电池的自适应充电算法;展厅充电演示模式功能;运营商的独特充电需求等。另外还包含充电系统调试IPC log,工厂测试系统等需求。

②主充策略模块:开关型充电芯片通过内核通知链(notifier chain)将VBUS插入通知给主充策略模块,后者主动调用适配层接口读取充电器基本类型,另外TCPΜ主动将CC和PD检测到的快充充电器类型通过内核IIO子系统主动发送给主充策略模块。主充策略模块启动一个工作队列,它结合充电器类型、电池电量、电池电压、电池温度等信息,配置充电器的输出电压、电流能力;配置充电芯片的输入电压、电流限制;配置电池的输入电压、电流限制。通过以上方法控制、管理普通充电过程。主充策略模块还担负另一重要任务,当电池电量、温度、健康信息或充电器插入、拔出,充电状态有更新时,通过调用power_supply_changed接口向上通知应用程序。

③快充策略模块:负责评估USB导线和充电器能力和获取其它信息,并通过PDPPS实时调整充电器的输出能力和电荷泵的输入限制完成快速充电过程。

4 充电测试数据分析

图4是该分离器方案,配合15W充电器,电池电量为从0%到100%完整充电实测过程。

图4

因为电池未深度放电,跳过预充电过程,直接快速进入恒流充电状态。在这种模式下,充电速率较快,充电芯片和电池温度较高,thermal engine机制启动,充电电流有波动现象。当电池电压达到电池额定电压的时候,充电器就要从恒流(CC)模式切入恒压(CV)模式,电池电压恒定,充电电流逐渐下降,直到充电电流降到电池规格允许值。一旦如此,充电过程就被终止。整个充电过程对电压、电流进行精确的控制,避免锂电池安全问题,并在2.5小时左右充满5000mAh电池,达到了集成充电PΜIC的相同设计规格。

5 总结

电源管理芯片分离器件国产化替代有利于中国半导体技术进步发展,虽然整体方案设计难度非常大,但是软硬件设计灵活性更性,采购供需弹性更大,产品成本也更可控。

猜你喜欢

充电器器件电源
专注生活美学的充电器设计
Finding the Extraterrestrial
充电器混用伤手机吗
Cool Invention炫酷发明
等效电源法的应用
悬浮转动的充电器
Elan R X2充电器
新电源
运用等效电源巧解题
通用贴片式器件及应用电路(四)电压变换器ICL7660及ICL7662