数字控制器IC利用黑盒工具和在线诊断大幅降低返修率

摘要 黑盒诊断利用先进的数字控制器提高了故障信息的准确 性并缩短了故障诊断的周转时间,从而为革新客户返修 故障分析提供了一个机会。

内容提要

  • 数字控制器IC利用黑盒工具和在线诊断大幅降低返修率
  • 黑盒内容
  • 数据检测和恢复
  • EEPROM寿命和数据保存期限

电源公司可以借用航空工业的概念,使用“黑匣子”监控系统 运行并存储运行数据,以便在发生故障后进行检查。该概念将 有助于对返修品进行故障分析。对电源公司及其客户而言,返 修可能会耗费相当多的时间和资金,而且诊断和出具全面故障 分析报告的时间压力可能会使供应商与客户之间的关系进一步 紧张。是否有适当的故障诊断工具来快速调试并解决问题, 在某种意义上决定了产品的成败。先进的PMBus™数字控制器ICADP1055 适用于隔离电源系统,您可以配置它来提供线路内黑盒 功能。

利用在线诊断和线路内黑盒,问题可得到缓解,而且从长期来 看,这些问题会使设计更加鲁棒并增进厂商对系统的了解。线 路内黑盒具有一个数据记录仪,用于记录关键事件或中断发生 之前电源的所有相关和重要的信息。除电源之外,很容易将这 个概念应用于其他系统。

黑盒工作原理

ADP1055的黑盒特性可将引起系统关断的故障相关重要数据记 录到EEPROM中。黑盒诊断工具有两个重要功能:第一,第一标 志ID特性记录故障的第一次发生,例如过流、过压和过温引起 的故障;第二,当控制器遇到此类故障时,获取遥测快照(如图1所示)。此信息被保存到嵌入式非易失性EEPROM,以后进行 诊断时可以读取。若有多个故障,黑盒会捕捉第一个引起系统 关断的故障标志ID以及所有遥测信息。

 

图1. GUI中的黑盒标志,显示VOUT OV FAST故障为第一个故障ID

 

由于数字控制电源会测量多个参数,ADP1055采用专用的(非多 路复用) Σ-Δ型ADC,针对每次电压、电流和温度等的测量取时间 平均值,以确保获取准确数据,并在关断时测得的数量记录至 黑盒中。

在测试和评估期间,黑盒特性对排除系统故障尤为有用。如果 召回某系统进行故障分析,那么可以从EEPROM中读取这些信息 来协助调查产生故障的根本原因。

针对黑盒记录提供了多种选项,包括:

  • 不记录,黑盒禁用
  • 仅记录最终关断前的遥测信息
  • 记录最终关断的遥测信息和所有间歇性重试尝试(若设备设为 关断和重试)
  • 使用CTRL引脚或OPERATION命令(参见PMBus说明)记录最终关 断、所有重试尝试和正常掉电操作的遥测信息

黑盒内容

EEPROM中有两页(Page A和Page B)专用于存储黑盒内容。总共可以存储16条记录,每页8条记录,每条64字节。两页组成循环缓冲器,用于记录黑盒信息,其中的数据每过16条记录就会被覆盖。

EEPROM是一种页面擦除存储器,这意味着写入页面前,必须先擦除整页内容。由于EEPROM的页面要求擦除,因此在写入任意页面的第8条记录后,下一页自动擦除,以便连续进行黑盒记录。

每次将一条记录写入黑盒时,器件便会递增记录编号。每次黑盒写操作都会记录图1和图2中列出的PMBus和制造商特定寄存器。

 

图2. GUI显示的黑盒读数

写入单条黑盒记录耗时大约1.2 ms。然而,必须考虑到有一段页面擦除时间,以便确保故障能被成功记录。在ADP1055器件中(参见侧边栏——关于ADP1055),每页可以写入8条记录,因此当记录数量为8n − 1 (n > 0)的倍数时,另一个页面就会发起页面擦除操作。擦除操作需要额外的32 ms时间。因此,每(8n − 1)次写操作都需要执行一次页面擦除,这使得总记录时间为33.2 ms。建议每次关断和重试周期之间的最短延迟时间大于最小黑盒编程时间(即1.2 ms),并且最差情况下可以延长至33.2 ms。

图3所示为写操作的时序。黑盒成功记录的另一个考虑因素是IC失去电源电压或VDD。ADP1055正常工作和黑盒操作要求恒定的3.3 V VDD。通常在隔离式DC-DC转换器中,辅助或常通电源为控制器供电。在其他情况下,可以通过VDD引脚上的保持电容来将电压维持在UVLO阈值以上。

 

图3. 黑盒写操作

 

黑盒回读

有两个专用制造商特定命令可用来回读EEPROM中存储的黑盒数据内容。块读取命令READ_BLACKBOX_CURR返回当前记录N (最后 保存的记录)及所有相关数据,参见“黑盒内容”部分所述。块读取命令READ_BLACKBOX_PREV返回前一记录N − 1 (最后保存记录的前一条)的数据。这些命令都是块读取命令,收到的第一字节称为BYTE_COUNT,告知PMBus主机还有多少字节需要读取。

建议通过ADP1055 GUI查看黑盒数据,因为它能以便于阅读、用户可访问的格式显示所有黑盒内容。

ADP1055的黑盒特性使用分组差错校验(PEC)来保证数据的有效性。每条黑盒记录最后的PEC字节为各条记录所特有,使用循环冗余校验(CRC) 8多项式计算。写入EEPROM时,PEC字节附加到数据上,作为该条记录的最后有效字节。读取EEPROM时,每条记录的头块用于计算预期PEC码,然后将此内部计算的PEC码与接收的PEC字节相比较。如果比较失败,则STATUS_CML寄存器中的PEC_ERR位置位并舍弃该条记录,因为数据有效性受损。

数据检测和恢复

黑盒算法依靠足够的时间来保存黑盒数据和/或执行页面擦除操作,以便为黑盒记录做准备。若VDD在最短编程所需时间之前崩溃,则有可能导致EEPROM中的数据受损。此外,如果VDD在EEPROM擦除操作期间崩溃,那么黑盒中的数据同样有可能受损。

这种情况下,黑盒算法可以检测是否发生了数据受损,并尝试进行纠正,以便恢复正确的黑盒记录。注意,黑盒不会试图纠正受损数据,而是舍弃受损记录,并通过在不同记录位置进行记录而恢复数据。下文描述了此种情形。

VDD上电期间,读取两页EEPROM上所有记录的头块,然后确定记录是否有效。如果记录能通过下列测试,则为有效:

  1. 头块和PEC字节必须不全为1,因为那是页面擦除后每条记录的初始数据。
  2. 计算PEC码(使用头块数据)必须匹配接收PEC字节。
  3. 记录号必须位于有效记录范围内,即号码必须大于当前记录号,小于最大记录号。

如果某条记录未能通过上述任一项测试,则该条记录无效,会被舍弃。如果记录通过了全部测试,那么指向最后有效记录号的指针将更新。下文显示两种VDD崩溃可能导致数据受损的情况,以及恢复过程。

情况1

若 VDD 在记录完成前崩溃,则PEC字节(写入的最后字节)很有可能也会被破坏。在VDD 上电扫描过程中,此记录将通不过测试2,会被舍弃。

在上电扫描过程中,如果Page A上的某条记录未能通过测试2,则将擦除Page B,而下一条记录指针将成为Page B的第一条记录。例如:

Page A有:

0.有效Rec_No_0
1. 有效Rec_No_1
2. 有效Rec_No_2
3. 有效Rec_No_3
4. 有效Rec_No_4
5. 有效Rec_No_5
6. 有效Rec_No_6
7. 有效Rec_No_7

Page B有:

8. 有效Rec_No_8
9. 有效Rec_No_9
10. 有效Rec_No_10
11. 有效Rec_No_11
12. 无效Rec_No_12(由于丢失VDD; 而受损;
上电时会通不过测试2))
13. 空
14. 空
15. 空

扫描过程结束时,

  • 最后有效记录是Page B的Rec_No_11
  • 舍弃Page B的无效Rec_No_12,PEC_ERR置位
  • 擦除Page A,存储的下一条记录是Page A的Rec_No_16
  • READ_BLACKBOX_CURR返回Rec_No_11
  • READ_BLACKBOX_PREV返回Rec_No_10

注意,Page B的Rec_No 12-15丢失,但这对于恢复黑盒记录过程的正确操作而言是可以接受的。

情况2

若 VDD 在页面擦除完成之前崩溃,那么被擦除的整个页面都有可能出现数据受损。在VDD 上电扫描期间,此页面的全部记录都有可能通不过测试2,并同样可能通不过测试3,这种情况下舍弃这些记录。

Page A有:

0. 有效Rec_No_0
1. 有效Rec_No_1
2. 有效Rec_No_2
3. 有效Rec_No_3
4. 有效Rec_No_4
5. 有效Rec_No_5
6. 有效Rec_No_6
7. 有效Rec_No_7 (黑盒记录成功,但页面擦除由于丢失VDD而受损)

Page B有:

8. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
9. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
10. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
11. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
12. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
13. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
14. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损
7. 由于在Rec_No_7之后的页面擦除期间丢失VDD而受损

扫描过程结束时,

  • 最后有效记录是Page A的Rec_No
  • 舍弃Page B的无效Rec_No_8至Rec_No_15,PEC_ERR置位
  • 擦除Page B,存储的下一条记录是Page B的Rec_No_8
  • READ_BLACKBOX_CURR返回Rec_No_7
  • READ_BLACKBOX_PREV返回Rec_No_6

注意,在这种情形下,记录不会丢失,因为未完成的Page B擦除操作已在上电时重启。

EEPROM寿命和数据保存期限

ADP1055的EEPROM经过专门设计,确保电源可在现场长时间工 作。ADP1055的EEPROM在125°C时的数据保存期限长达15年。另 外,在电源寿命期间可多次写入EEPROM,这也是数据保存期 限的一个限制因素。为了改善EEPROM在大量擦除编程周期后 的数据可靠性,ADP1055将最大故障记录数量限制在158,000条 (ADP1055环境温度低于85°C时的建议值)或16,000条(ADP1055环境 温度低于125°C时的建议值)。

黑盒每次将记录存储到EEPROM之后,当前记录数就会递增。若 发生故障,且当前记录数大于上文提及的最大记录数,则不允 许继续进行黑盒记录,因为EEPROM已达到其最大擦除编程周 期,继续进行记录是不可靠的。STATUS_CML寄存器中的MEM_ ERR置位以指示这种情况。

图4显示了如何在典型应用中使用带有黑盒功能的高级数字 DC-DC控制器ADP1055。该器件适用于全桥、移相、有源钳位正 向等拓扑,并具有多项功能,比如冗余OVP、平均和峰值过流保 护、带微型FPGA的GPIO以及有源缓冲器。ADP1055也可用作多相 控制器。配置黑盒无需其他硬件。不涉及到固件,因为ADP1055 基于FSM(有限状态机),具有专用逻辑,易于使用,用户不必学 习任何新的编程语言。

 

图4. 使用ADP1055的隔离式DC-DC电源级总览图

 

黑盒功能还可在制造流程中有效进行部署,用以检测产品验 证阶段和试生产初级阶段的老化测试和压力测试故障。黑盒 将电源调试推进到更高的阶段,为复杂系统的故障排除提供 有针对性的指导信息。这样就可以经由排查黑盒记录仪发现 的设计问题而减少客户故障,改善可靠性指标,比如平均故 障间隔时间(MTBF)。

作者

Generic_Author_image

Subodh Madiwale

Subodh Madiwale是ADI公司(美国加州圣何塞)电源管理部的应用工程师。之前在PI公司担任现场应用工程师,负责设计电源。他的兴趣相当广泛,包括系统建模和架构、高频电源转换、使用混合信号SoC改进系统等。他拥有美国加州圣塔克拉拉大学电气工程硕士学位和加拿大湖首大学电气工程学士学位。

Generic_Author_image

Vuong Tran

Vuong Tran是ADI公司位于美国加州圣何塞的电源管理部门的IC设计工程师,专注于ADI数字电源系列产品。加入电源管理部门以前,Vuong隶属DSP部门开发团队,负责将Blackfin®处理器产品推向市场。Vuong拥有美国明尼苏达大学电气工程和土木工程双学士学位。