1. 项目概述与核心价值
在嵌入式系统,尤其是汽车电子和工业控制这类对可靠性要求极高的领域,电源设计从来都不是一件简单的事。一个典型的SoC(片上系统)往往需要十几路甚至几十路不同电压、不同电流、不同时序要求的电源轨。如果每一路都用独立的分立电源芯片去搭建,不仅会占用巨大的PCB面积,更会带来时序控制、监控管理、故障诊断等一系列复杂问题。因此,一个高度集成的电源管理单元(PMU)或电源管理集成电路(PMIC)就成了这类设计的必然选择。
今天要深入拆解的,是德州仪器(TI)为自家DRA7xx和TDA2x/TDA2Ex系列高性能处理器量身定制的PMIC——TPS65917-Q1。这颗芯片的“Q1”后缀意味着它通过了汽车级的AEC-Q100认证,天生就是为了应对严苛的车规环境。它的核心价值,远不止是“把多个LDO和DC-DC封装在一起”那么简单。它真正解决的是系统级电源的“确定性”问题:如何确保在冷启动、热复位、休眠唤醒等复杂场景下,各路电源的上电、下电顺序毫秒不差?如何让处理器内核、DDR内存、各类PHY接口的供电既满足动态性能需求,又能在低功耗模式下极致省电?TPS65917-Q1通过其内部固化的OTP(一次性可编程)配置和精密的嵌入式电源控制器(EPC),提供了一套近乎“开箱即用”的完整电源解决方案。
对于硬件工程师而言,理解并正确配置这颗PMIC,是让整个处理器平台稳定运行的基石。它省去了你设计复杂复位电路、用CPLD或MCU编写电源时序代码的麻烦,但同时也要求你对它的工作机制、配置选项有透彻的理解。否则,一个配置不当就可能导致处理器无法启动、DDR数据丢失,或是系统在特定条件下意外复位。接下来,我将结合官方指南和实际项目经验,带你从连接、配置到时序,彻底吃透TPS65917-Q1的集成要点。
2. 器件选型与平台连接解析
2.1 理解四种OTP版本的区别
拿到TPS65917-Q1,第一件事是确认你手上的具体型号。TI提供了四种预编程的OTP版本,对应不同的订货型号和内部软件版本号(SW_REVISION)。它们的主要区别集中在两个关键维度:供电能力和GPIO_6的功能复用。
| 订货型号 | SW_REVISION | 最大供电能力 (DSPEVE+GPU+IVA) | GPIO_6 默认功能 | 适用场景 |
|---|---|---|---|---|
| O917A130TRGZRQ1 | 0x30 | < 2.55 A | POWERGOOD | DRA72x/TDA2Ex EVM标准配置,或DRA74x/75x/TDA2x的轻载场景 |
| O917A131TRGZRQ1 | 0x31 | < 2.55 A | NSLEEP | 同上,但GPIO_6用于睡眠控制信号 |
| O917A132TRGZRQ1 | 0x32 | < 3.0 A | POWERGOOD | 为DRA74x/75x/TDA2x的高性能核心提供更强供电 |
| O917A133TRGZRQ1 | 0x33 | < 3.0 A | NSLEEP | 同上,但GPIO_6用于睡眠控制信号 |
供电能力差异的实质:这2.55A和3.0A的界限,主要体现在SMPS2和SMPS3的分配映射上。0x30和0x31版本中,SMPS2(3.5A)负责VDD_CORE,SMPS3(3A)负责DSPEVE/GPU/IVA。而在0x32和0x33版本中,SMPS2和SMPS3的供电对象进行了对调:SMPS2(3.5A)去负责DSPEVE/GPU/IVA,SMPS3(3A)去负责VDD_CORE。这样,对于计算密集型任务更重的DRA74x/75x,其核心域就获得了更大的电流余量。
实操心得:选型时,不要只看处理器型号,一定要评估你应用场景下DSPEVE、GPU和IVA这几个计算核心的峰值电流。如果跑满性能时需求接近2.5A,那么强烈建议选择0x32或0x33版本,预留足够的裕量。TI建议有15%的负载电流裕度,这个建议非常中肯,能有效避免负载瞬变时电压跌落导致系统不稳定。
2.2 核心电源网络连接图解读
官方指南给出了两种主要的连接图,分别对应上述两种供电配置。我们以更通用的0x30/0x31配置(即DRA72x EVM配置)为例,拆解其连接逻辑:
输入与预稳压:通常由一个12V的汽车电池或电源适配器供电。TPS65917-Q1内部集成了5个开关稳压器(SMPS1-5)和5个线性稳压器(LDO1-5, 含LDOVRTC)。SMPS效率高,用于大电流核心供电;LDO噪声低,用于对噪声敏感或小电流的模拟/接口供电。
处理器核心供电:
- SMPS1:输出1.15V,供给VDD_MPU(微处理器单元)。这是主控核心,需要干净稳定的电源。
- SMPS2:输出1.06V,供给VDD_CORE(系统互联、外设等)。电压略低,有助于降低整体功耗。
- SMPS3:输出1.15V,供给VDD_DSPEVE, VDD_GPU, VDD_IVAHD。这三个是高性能计算域,共享一路电源,设计时需注意总电流不能超过SMPS3的限值。
- AVS(自适应电压调节):图中标注了AVS连接,这意味着处理器可以通过I2C总线动态调整SMPS1/2/3的输出电压,实现性能与功耗的最佳平衡。这是现代高性能SoC电源管理的关键特性。
内存与I/O供电:
- SMPS5:输出1.35V或1.5V(由BOOT引脚电平决定),供给VDD_DDR。这是DDR内存的核心电源,其电压必须与所选用的DDR类型(如DDR3L-1.35V)严格匹配。
- TPS51200-Q1:这是一颗专用的DDR终端稳压器,由SMPS5供电,产生DDR所需的VTT(终端电压)和VREF(参考电压)。它必须紧靠DDR颗粒放置。
- SMPS4:输出1.8V,供给处理器的VDDSHV8(1.8V I/O)、VDDA_USB3V3(通过负载开关)以及PMIC自身的VIO_IN(数字I/O电源)。注意,VIO_IN也可以在特定时序下由外部提供。
模拟与始终电供电:
- LDO1:默认处于旁路(Bypass)模式,即输出等于输入。它通常连接到一个外部3.3V电源(如另一颗负载开关的输出),为处理器的3.3V模拟域供电。
- LDO2 & LDO3:均输出1.8V,为各类PHY(USB, SATA, HDMI, PCIe, CSI2等)的模拟部分(VDDA_*)供电。具体哪个PHY接哪个LDO,需要严格按照数据手册的映射表(即原文中的Table 2)来分配,主要考虑各PHY的功耗和隔离需求。
- LDO4:输出3.3V,专供USB VBUS。
- LDO5:输出1.8V,可能用于板级其他1.8V器件。
- LDOVRTC:输出一个始终有效的电压(通常0.75V或0.675V),供给处理器的VDD_RTC和VDDA_RTC,保证实时时钟和唤醒逻辑在系统深度休眠或断电时依然工作。
使能与复位网络:这是确保系统正确启动和复位的“神经中枢”。
- PWRON/POWERHOLD:系统的总使能信号。可以使用机械按键(接PWRON)或处理器GPIO(接GPIO_5配置为POWERHOLD)来触发上电。
- nRESWARM:处理器的热复位输入,连接PMIC的GPIO_1。PMIC可以在执行特定复位序列时拉低此信号。
- RESET_OUT/RESETn:PMIC输出的全局复位信号,连接到处理器的复位引脚和板上其他需要同步复位的器件。
- GPIO_0 (REGEN1)和GPIO_4 (REGEN2):这两个信号通常用于控制外部负载开关,例如在特定时序下开启3.3V或5V的预稳压电源,给LDO1或外围器件供电。
关键注意事项:关于VIO_IN的供电时序。VIO_IN是PMIC内部数字逻辑和I/O引脚的上拉电源。如果系统使用了DDR自刷新模式(一种深度睡眠状态,DDR数据由自身维持,但控制器断电),则VIO_IN必须在GPIO_4使能(即打开外部负载开关)之前就存在,但又必须在VCC(PMIC主电源)稳定之后才上电。这个时序非常微妙,通常需要将VIO_IN连接到一个独立的、更早开启的电源(如SMPS4)或外部始终电。如果不用DDR自刷新,则VIO_IN可以直接由GPIO_4控制的负载开关输出供电,简化设计。
3. 静态平台设置详解
所谓“静态平台设置”,是指烧录在PMIC OTP中的、上电后的默认硬件配置。这些配置定义了各电源的默认电压、GPIO的默认功能、中断的使能状态等,是系统运行的基线。
3.1 系统电压监控与状态机
TPS65917-Q1内部有一个精密的电源状态机,其状态转换由几个关键的电压比较器阈值控制:
- POR(上电复位):当VCCA引脚电压低于此阈值(典型值约1.0V),PMIC处于“无供电”状态,完全关闭。
- VSYS_LO:当VCCA电压高于POR但低于VSYS_LO(OTP可设,默认2.75V),PMIC进入“备份”状态,仅维持RTC等最基础功能。当电压从高降至VSYS_LO以下,系统也会退回备份状态。
- VSYS_MON (VSYS_HI):这是启动门限。在OFF状态下,只有当VCC_SENSE引脚电压(通常接VCCA)超过VSYS_HI阈值(OTP默认3.1V)时,PMIC才会响应ON请求,开始执行OFF2ACT上电序列。这个设计确保了主输入电压足够稳定,避免在电压爬升过程中反复启动。
配置要点:
VSYS_MON比较器在启动后,其阈值可以通过I2C寄存器动态修改,用于监控输入电压是否跌落到危险值。而VSYS_LO和VSYS_HI的OTP值需要根据你的实际输入电源特性来评估。例如,如果你的系统是12V输入,经过前端DC-DC降到5V给PMIC,那么3.1V的VSYS_HI是合理的。但如果你的输入直接就是3.3V,那么这个阈值就可能太高,导致无法启动,需要联系TI支持定制OTP。
3.2 开关电源与线性稳压器默认配置
SMPS和LDO的默认输出电压是OTP设定的,这决定了处理器上电瞬间看到的电压。
| 电源轨 | 寄存器位 | 0x30/0x31 默认值 | 0x32/0x33 默认值 | 说明 |
|---|---|---|---|---|
| SMPS1 | SMPS1_VOLTAGE | 1.15 V | 1.15 V | MPU核心电压 |
| SMPS2 | SMPS2_VOLTAGE | 1.15 V | 1.06 V | 注意:两版本映射不同 |
| SMPS3 | SMPS3_VOLTAGE | 1.06 V | 1.15 V | 注意:两版本映射不同 |
| SMPS4 | SMPS4_VOLTAGE | 1.8 V | 1.8 V | 1.8V系统/I/O电源 |
| SMPS5 | SMPS5_VOLTAGE | 1.35V (BOOT=0) / 1.5V (BOOT=1) | 1.35V (BOOT=0) / 1.5V (BOOT=1) | DDR电源,BOOT引脚选择电压 |
| LDO1 | LDO1_VOLTAGE | BYPASS | BYPASS | 旁路模式,输出跟随输入 |
| LDO2 | LDO2_VOLTAGE | 1.8 V | 1.8 V | PHY电源 |
| LDO3 | LDO3_VOLTAGE | 1.8 V | 1.8 V | PHY电源 |
| LDO4 | LDO4_VOLTAGE | 3.3 V | 3.3 V | USB VBUS电源 |
| LDO5 | LDO5_VOLTAGE | 1.8 V | 1.8 V | 通用1.8V电源 |
关于SMPS5和BOOT引脚:这是一个重要的硬件配置点。DDR3L标准电压是1.35V,而DDR3是1.5V。通过将PMIC的BOOT引脚接地(0V)或上拉到1.8V(通过电阻),可以在不修改OTP的情况下,硬选择SMPS5的默认输出电压。这为同一硬件设计兼容不同内存提供了灵活性。
关于LDO1和LDO2的输入:数据手册中明确强调,LDO1和LDO2共享同一个输入引脚LDO12_IN。这意味着它们必须由同一个外部电源供电。通常这个电源是3.3V。如果错误地将它们接到不同电压,会导致无法预料的行为。
3.3 中断与GPIO默认配置
中断和GPIO的默认配置,决定了系统初始的监控和通信行为。
中断配置:PMIC将中断分为四组(INT1-INT4)。默认情况下,大多数中断是关闭的,只有少数关键中断开启,例如:
HOTDIE(过温预警)和SHORT(输出短路)在INT1/INT2中默认使能。这是安全设计,让处理器能在PMIC因过热或短路关闭前,有机会保存状态或降低负载。GPADC_AUTO_0/1(通用ADC自动转换)中断默认使能,可用于监控某路电源电压。- 所有GPIO引脚的中断默认都是禁用的。
GPIO配置:这是连接PMIC与处理器、外部电路的关键。默认配置如下:
- GPIO_0: 配置为
REGEN1,开漏输出。特别注意:官方强烈建议不要将其上拉到常电(如VCCA)。因为在上电初期OTP加载前,该引脚默认为输入模式,常电上拉会导致一个毛刺脉冲,可能误触发外部负载开关。正确的做法是上拉到一个时序受控的电源,如SMPS3(1.8V)或LDO4(3.3V)的输出。 - GPIO_1: 配置为
NRESWARM(热复位输出),连接至处理器的nRESWARM引脚。 - GPIO_2: 配置为通用
GPIO_2,内部上拉使能。在PWRON配置中,它可被软件控制,用于在需要温复位时保持POWERHOLD为高。 - GPIO_3: 配置为
SYNCDCDC,用于同步多个PMIC的开关频率,减少噪声。 - GPIO_4: 配置为
REGEN2,用于控制另一个外部负载开关。 - GPIO_5: 配置为
POWERHOLD。当使用处理器GPIO控制上电时,将此引脚拉高即可启动PMIC。 - GPIO_6: 根据版本不同,配置为
POWERGOOD(指示所有电源稳定)或NSLEEP(睡眠控制输入)。
4. 电源序列:系统状态的精确舞蹈
这是TPS65917-Q1最核心、也最体现其价值的部分。电源序列是PMIC内部嵌入式电源控制器(EPC)执行的一系列预编程的寄存器操作,用于在OFF、ACTIVE、SLEEP等状态之间切换时,自动控制所有电源轨、使能信号和复位信号的时序。
4.1 OFF2ACT上电序列解析
当系统从完全断电(OFF)状态接收到一个ON请求(如按下PWRON按键)时,PMIC会执行OFF2ACT序列。我们以0x30/0x31版本的序列图为例,解读其精妙之处:
第一阶段:基础与内存供电建立(约0-550µs)
- SMPS4首先开启,输出1.8V。这路电源非常关键,它不仅是处理器的1.8V I/O电,同时也是PMIC自身数字逻辑的电源
VIO。只有VIO稳定后,PMIC的内部逻辑才能可靠工作。 - LDO5紧随SMPS4开启,提供另一路1.8V。
- 紧接着,SMPS5开启,为DDR内存提供核心电源(1.35V/1.5V)。DDR电源需要尽早稳定,因为后续处理器的启动代码可能存放在DDR中。
- SMPS4首先开启,输出1.8V。这路电源非常关键,它不仅是处理器的1.8V I/O电,同时也是PMIC自身数字逻辑的电源
第二阶段:核心与模拟供电建立(约550µs - 2.5ms)
- GPIO_4 (REGEN2)被拉高。这个信号通常用于开启一个外部负载开关,为板上的3.3V模拟电路(如时钟、PHY的模拟部分)供电。这个动作发生在核心供电之前,确保模拟环境先就绪。
- SMPS2(VDD_CORE, 1.06V)和SMPS1(VDD_MPU, 1.15V)依次开启。这是处理器的主数字逻辑供电。
- SMPS3(DSPEVE/GPU/IVA, 1.15V)开启,高性能计算域上电。
- LDO2和LDO3(均为1.8V)开启,为各个PHY的模拟部分供电。
- GPIO_0 (REGEN1)被拉高,通常用于开启另一个外部负载开关,提供5V或其他电源。
第三阶段:接口与复位释放(约2.5ms后)
- LDO4(USB 3.3V)和LDO1(旁路模式,输出3.3V)最后开启。USB等外设电源通常在系统核心稳定后再建立。
- 在所有电源轨都稳定达到目标值后,经过一个预设的延迟,PMIC会释放RESET_OUT信号(从低变高)。这个复位信号的释放,标志着“上电复位”阶段结束,处理器可以开始从复位向量执行启动代码。
整个序列耗时约几毫秒,每一步的延迟(如550µs)是OTP预设的,用于确保前一路电源完全稳定后再开启下一路。这种严格的时序控制,避免了因电源竞争或浪涌电流导致的启动失败。
4.2 ACT2OFF与睡眠序列
ACT2OFF(关机)序列基本上是OFF2ACT的逆过程,但顺序并非完全对称。它会先关闭外围电源(LDO1, LDO4),然后关闭核心电源,最后关闭基础电源(SMPS4, LDO5)和DDR电源(SMPS5)。RESET_OUT信号会在电源开始关闭前就被拉低,确保处理器在掉电前已处于复位状态��
ACT2SLP(进入睡眠)和SLP2ACT(退出睡眠)序列则更为精细。睡眠模式下,系统需要关闭大部分电源以省电,但必须保持DDR内存的供电和自刷新状态,以及实时时钟(RTC)域供电。因此,序列中会关闭SMPS1/2/3(核心供电)和部分LDO,但保持SMPS5(DDR)、LDOVRTC(RTC)和必要的1.8V/3.3V电源(以维持I/O电平和小部分唤醒逻辑)。GPIO_6若配置为NSLEEP,则在此序列中扮演触发角色。
4.3 复位与看门狗行为配置
在SWOFF_HWRST和Shutdown_ColdReset寄存器组中,可以配置各种触发事件(如看门狗超时、复位按键、温度保护)导致的行为是硬件复位(HWRST)还是开关复位(SWORST),以及是直接关机(Shutdown)还是执行冷复位(Cold Reset)。
- HWRST vs SWORST:硬件复位会重置PMIC几乎所有的寄存器到OTP默认值,相当于一次深度重启。开关复位则只重置“SWO寄存器域”(主要是电源控制相关寄存器),PMIC的配置状态部分得以保留,复位速度更快。
- Shutdown vs Cold Reset:关机意味着PMIC执行关机序列后进入OFF状态,等待下一次手动上电。冷复位则是在执行关机序列后,立即自动重新执行上电序列(如果使能条件满足),实现系统的自动重启。
关键配置示例:看门狗(WDT)超时。在汽车电子中,看门狗用于监控软件是否跑飞。通常我们会这样配置:
SWOFF_HWRST.WTD = 1:看门狗超时触发硬件复位。SWOFF_COLDRST.WTD = 1:看门狗超时触发冷复位。 这样,当软件故障时,看门狗超时会触发一次完整的系统冷重启,而不是关机,从而最大限度地提高系统的自恢复能力。而像PWRDOWN按键这种用户主动关机行为,则通常配置为触发关机(SWOFF_COLDRST.PWRDOWN = 0)。
5. 软件初始化与调试实战指南
硬件连接和OTP配置是基础,但要让系统真正跑起来,离不开正确的软件初始化。PMIC通过I2C接口与主处理器通信,软件需要在上电后对其进行配置和监控。
5.1 启动后的首要操作
- 读取器件ID与版本:首先通过I2C读取
SW_REVISION寄存器(地址0x1F),确认PMIC的OTP版本(0x30, 0x31, 0x32, 0x33),这与你的硬件设计和供电能力预期是否一致。 - 配置电压与AVS:虽然OTP已经设置了默认电压,但处理器在启动后,通常会根据运行频率和温度,通过AVS动态调整SMPS1/2/3的电压。你需要根据处理器的电源管理框架(如Linux的CPUFreq、TI的SysConfig工具生成的代码)来配置相应的I2C命令。
- 使能必要的中断:根据系统需求,使能关键中断,如
HOTDIE(过温预警)、VSYS_MON(输入电压跌落)等,并在处理器的中断服务程序中编写响应代码。 - 配置GPIO:如果某些GPIO的默认功能不满足需求(例如,你想将某个配置为NSLEEP的GPIO改为通用输出),可以在软件中重新配置GPIO的模式寄存器。
5.2 常见问题排查实录
在实际项目中,集成TPS65917-Q1时可能会遇到以下典型问题:
问题1:处理器无法启动,或启动后随机死机。
- 排查思路:
- 测量时序:使用示波器多通道同时测量SMPS5(DDR)、SMPS1(MPU)、SMPS2/3(CORE/DSP)以及RESET_OUT的波形。严格对照数据手册中的OFF2ACT序列时序图,检查每一路电源是否在指定时间内达到稳定电压,以及RESET_OUT是否在所有电源稳定后才释放。常见的错误是DDR电源(SMPS5)不稳定或时序过晚。
- 检查AVS配置:确认处理器通过I2C对PMIC的AVS电压调整命令是否正确。错误的电压值会导致处理器无法运行在高频,甚至逻辑错误。可以先尝试禁用AVS,将电压固定为OTP默认值测试。
- 检查负载电流:用电流探头或检流电阻测量各核心电源(特别是SMPS3)的电流是否接近或超过PMIC该路的最大输出能力(考虑OTP版本)。过载会导致电压跌落。
- 检查复位网络:确认nRESWARM、RESETn等复位信号连接正确,没有虚焊或短路。检查POWERHOLD/PWRON信号是否稳定。
问题2:系统无法进入睡眠或从睡眠唤醒。
- 排查思路:
- 确认睡眠触发信号:如果使用GPIO_6作为NSLEEP,确认处理器发出的睡眠请求信号电平、时序是否符合PMIC要求(参考时序图)。
- 检查睡眠序列电源:使用示波器捕获ACT2SLP序列。确认在睡眠状态下,应该关闭的电源(如SMPS1/2/3)确实关闭了,而应该保持的电源(SMPS5, LDOVRTC)依然稳定。DDR电源在睡眠期间必须保持,否则数据会丢失。
- 检查唤醒源:PMIC可以从睡眠中被多种事件唤醒(如GPIO中断、VBUS插入等)。检查你期望的唤醒源是否已在相应的中断掩码寄存器中使能。
问题3:I2C通信失败。
- 排查思路:
- 检查VIO电平:PMIC的I2C接口电平由VIO_IN引脚决定(通常为1.8V或3.3V)。确保VIO_IN电压稳定,且与处理器的I2C引脚电平兼容。如果不匹配,需要电平转换器。
- 确认I2C地址:读取PMU_CONFIG寄存器,确认I2C地址配置。默认是0x12(7位地址)。检查处理器端I2C主控的配置地址是否正确。
- 检查上拉电阻:I2C总线的SCL和SDA线必须有合适的上拉电阻(通常4.7kΩ)拉到VIO电压。电阻值过大会导致上升沿太慢,通信失败。
问题4:温复位(Warm Reset)功能异常。
- 排查思路:温复位要求PMIC在执行复位序列时不能断电。这需要POWERHOLD信号在整个复位过程中保持高电平。参考文档中提到的方案:将GPIO_5(POWERHOLD)通过一个10k电阻上拉到VIO,同时与GPIO_2连接。上电后,软件先将GPIO_2设为高电平输出,这样POWERHOLD就被锁在高电平。当需要关机时,再将GPIO_2拉低。这样,在触发温复位事件(如看门狗)时,即使复位逻辑动作,GPIO_5/2的连接也能保证POWERHOLD维持高电平,避免掉电。
5.3 电源完整性设计要点
除了逻辑和时序,PCB布局布线对PMIC系统的稳定性至关重要:
- 大电流路径:SMPS1/2/3/5的输入电容、功率电感和输出电容必须尽可能靠近PMIC的相应引脚放置。使用宽而短的走线,减少寄生电感和电阻,这对开关噪声和负载瞬态响应至关重要。
- 反馈网络:每个SMPS和LDO的电压反馈分压电阻(FB引脚连接)必须靠近PMIC放置,反馈走线应远离噪声源(如开关节点、时钟线)。
- 地平面:需要一个完整、低阻抗的地平面。PMIC的PowerPAD(底部散热焊盘)必须良好接地,并通过多个过孔连接到PCB内部或底层的地平面,这既是散热通道,也是噪声回流路径。
- 去耦电容:为每一路电源,特别是处理器核心电源(SMPS1/2/3)和DDR电源(SMPS5),在靠近处理器电源引脚处放置足够数量、不同容值(如10uF, 1uF, 0.1uF)的陶瓷电容,以应对高频瞬态电流。
集成TPS65917-Q1这样的高性能PMIC,是一个融合了硬件设计、电源时序理解和软件配置的系统工程。它就像整个处理器平台的“能源心脏”和“神经中枢”,其稳定工作是所有高级功能得以实现的前提。希望这篇从原理到实操的深度解析,能帮助你在下一个基于DRA7xx/TDA2x的项目中,绕开我当年踩过的那些坑,一次性成功点亮系统。记住,电源设计,细节决定成败,耐心和细致的测量是你最好的朋友。