qwy.jpg

纯硬件方案模拟手动开关机解决国产CPU断电间隔短无法启动问题:硬件模拟大师

小编 06-30 31 0条评论

一、 摘要

很多国产基于ARM内核的厂商都是从平板起家,对于工控的应用场合还是处于刚起步的阶段,在国产化的潮流下,很多芯片的bug也只能与供应商一起解决硬件模拟大师。本案例中的一个问题可能是很多国产芯片的通病,可以提供一种解决思路。

二、 问题描述

我们的产品使用了国内某知名芯片厂商提供的方案硬件模拟大师,该芯片是其第一款用于工业产品的主CPU,综合贸易战和性价比的考虑,我们第一次尝试国产的主芯片替代TI的,在实际使用过程中,出现以下的现象:

1、我们设置为开机自动启动硬件模拟大师,无需人工按下开关机,这是工控的正常需求;

2、在冷启动(关机30mim后再启动)硬件模拟大师,设备启动正常;

3、热启动(关机后20min内启动),设备后很大概率不能启动,间隔时间越短,启动失败的概率越大硬件模拟大师。

三、 原因分析

经过多次的排查分析,我们找到了失败的规律,使用示波器挂载在主芯片的VDD3.3V端,如果设备启动时,芯片的VDD3.3V的电压大于2V,则启动100%失败,如果VDD3.3V的电压小于1V,则启动100%成功硬件模拟大师。说明该主芯片启动时,芯片的VDD不能有过高的电压。

但是由于我们是工控产品,工控产品为了应对浪涌以及电压跌落,内置的电容都较多,VDD3.3V上的总电容超过了500uF,当产品掉电以后,负载变轻,电容的放电时间更长硬件模拟大师。最初我们有考虑过增加放电电阻加快放电时间,但是带来2个问题:(1)、产品的功耗增加,(2)、功率增加影响掉电保存。

经过厂家的连续攻关一个多月,问题依然无解;厂家也认可是他们的问题,无耐技术能力有限,不过厂商提供了一个思路,该主芯片是基于平板电脑开发的,平板电脑上有一个开机按键power-on(对地短路),设备在关机时,长按超过1S,设备则开机,此时无需关注VDD电压是否有电压;在开机状态时,长按超过6S,则设备强行关机硬件模拟大师。

四、 解决方案

经过厂家的指引硬件模拟大师,我们只要设计一个电路,模拟人工开关机动作即可,要求如下:

1、在开机时,强制将Power-on引脚对地短路1S以上,无论是冷启动还是热启动,为了留足余量,该时间设置为2S,设备启动后2S后,将该引脚与地断开,避免设备强行关机硬件模拟大师。

2、正常工作时,该引脚与地断开,避免设备强行关机硬件模拟大师。

3、本次关机与下一次开机之间,超过1S(考虑人操作很少在1s内开关机两次),需要能正常启动硬件模拟大师。

4、为了保证可靠性硬件模拟大师,不能用软件实现;

经过内部的讨论以及仿真硬件模拟大师,决定采用如下的方案:

S1模拟用户的开关机,C点为控制芯片的开关机,D点模拟芯片的内部的VDD电源硬件模拟大师。

(1)、用户开机时,电流通过S1、R1、C1、R1,开机瞬间,电容相当于短路,因此电容的下端即B点电压为高电平,此高电平只要大于3.6V,即可以将mos管Q1打开,将C点进行对地短路,实现开机时进行对地短路的需求硬件模拟大师。

(2)、R1、R2构成一个分压电路,上电瞬间,C1的两端电压相等,都是12V,随着C1被充电,C1的上端电压被抬高,下端电压被降低硬件模拟大师。

(3)当C1 的下端电压降低到小于3.6V时,mos管关闭,C点电压为高电平,即模拟按键开关断开硬件模拟大师。

(4)当VCC24V掉电时,即S1连接到地,C1上的电容通过D2、D1进行放电,瞬间即可以将C1的电放完,避免下次上电时,由于C1上有过高的电压,导致充电的时间较短硬件模拟大师。

纯硬件方案模拟手动开关机解决国产CPU断电间隔短无法启动问题:硬件模拟大师

图1:仿真图

理论计算过程:

电容的充电计算公式可以适用以下公式:t = RC*Ln[(V1-V0)/(V1-Vt)],其中的含义如下图所示,经过计算,按照上图1中的参数计算,理论的第一次上电的延迟短路的时间为2.38S硬件模拟大师。实际仿真上电延迟短路的时间为2.5S,理论是仿真数据相当。值得注意的是,第一次断电时间1S后马上上电,上电的延迟时间只有1.7S,比第一上电快很多,原因是第一次断电后电容还有电,再次充电的时间不是从0开始,导致充电的时间变短,因此实际设计过程,应该需要定义后两次开关机的最快时间,本次最快设计为1S。

纯硬件方案模拟手动开关机解决国产CPU断电间隔短无法启动问题:硬件模拟大师

图2:参数选择

纯硬件方案模拟手动开关机解决国产CPU断电间隔短无法启动问题:硬件模拟大师

图3:两次开关机的上下电波形硬件模拟大师。

五、 总结

本次纯硬件的方案模拟人工开关机硬件模拟大师,主要利用了RC充放电、MOS管开启电压约3.5V,二极管单向导通的功能,读者在复用过程,还需要注意以下3点:

1、仿真没有考虑二极管的漏电流,二极管的漏电流可达10uA,如果电阻R1、R2的值太大,二极管的漏电流不得不考虑,否则会严重影响理论计算和仿真硬件模拟大师。

2、Mos管是电压导通型,对干扰很敏感硬件模拟大师。实际使用过程中,来自VCC24V的电取自电源端口,干扰非常大,因此最好经过π型的高阻抗滤波,例如使用1500Ω以上的磁珠构成π型滤波。

3、规格中必须定义两次开关机的最短时间,时间太短的话,由于电容没有放完电,会严重影响下次的充电时间硬件模拟大师。

发表评论

快捷回复:

评论列表 (暂无评论,31人围观)参与讨论

还没有评论,来说两句吧...