×
嵌入式 > 技术百科 > 详情

微处理器上电复位与相关监控功能的剖析

发布时间:2024-05-17 发布时间:
|

叶云燕 本文对微处理器上电复位与相关监控功能及改进作详细剖析,并指出微处理器监控电路的选择与应用。微处理器电压的监视和控制 多年以来,监控电路始终担负着确保微处理器和微控制器正确工作的任务。尽管电路设计者们已经习惯于使用最为流行的监控功能,即上电复位,但对于如何选择和应用监控电路的理解常常并不全面或准确。此外,对于该监控电路的改进仍然在继续。本文将讨论上电复位及其相关监控功能(例如电压排序、电压跟踪、手动复位和电源失效和欠压信号等)并对促使它正确工作的一些细节加以说明。 众所周知,上电复位(POR)的任务之一是确保电源刚被打开时,处理器从一个已知的地址开始运行。为此,POR逻辑输出在处理器电源刚被打开时将处理器锁定在复位态;POR的第二个任务是,在以下三件事情完成以前,阻止处理器从已知地址开始运行:系统电源已稳定在适当的水平;处理器的时钟已经建立;以及内部寄存器已经正确装载。 POR完成这第二个任务的方法是片上定时器,它继续在一个预定的时间间隔内保持处理器处于复位态。这个定时器在处理器电源到达规定的电压门限后触发,设定时间走完后,定时器终止,并促使POR输出变为无效,处理器脱离复位态并开始运行(见图1)。处理器的数据手册会给出所需要的定时器延迟间隔。顺便提一下,这个定时器正是POR和一般电压监测器的区别所在,后者也能以一定的电压门限监视电压,但不具备定时功能。

POR良好的抗噪声干扰能力在监视处理器时也是必需的,这也是它和电压监视器的不同之处。当有一个小而快的干扰出现在电源上时POR不应发出复位,因为这种干扰并不会影响处理器的工作。但是,比较长的小干扰和短的或长的大幅度干扰都会给处理器造成问题。因此,最好的方法是采用一种POR,它可以同时监视进入电源电压的干扰的幅度和持续时间,并以此来决定是否发出复位。最终目标是真实反映处理器自身的行为,只在需要的时候发出复位,而在处理器正常工作的时候不应该去复位它。MAX6381/MAX6382在监视到电源电压低于规定门限100mV的持续时间至少到10us才会触发复位。 一旦电源电压回到门限以上,POR定时器只在一个预定的间隔之后才会撤消复位信号。 有些处理器提供双向复位引脚——不仅可以通过该引脚接收复位信号,并且还可以通过它发送复位。粗看起来,一个具有开漏输出的POR似乎可以满足这种条件。然而,还有其他问题,因为处理器必须确定是它自己,还是外部器件发出的复位。有必要采用一个专为此条件配置的POR(参见MAX6314数据手册)。 确定POR门限电压——单电源微处理器 如何确定正确的POR门限电平以及对于该电平精度的要求,对此,往住并不能有一个正确的认识。为了使设计者对于这项任务的细节有一个更清晰的了解,我们以一个处理器为例来说明这个问题,假定该处理器保证正确工作于3.3V±0.3V电源——更明确地讲,也就是从3.00V到3.60V。在选择电压门限时,设计者应遵循下面两种策略之一。 策略之一是确保3.3V电源有足够的准确度,以便可以选择一个POR,它的门限加容差完全位于±0.3V范围以内。在此情况下,POR门限位于电源范围的低端和处理器允许电压范围的低端之间图2A)。基于此策略,POR在电源电压处于容差以内的时候不会发出复位。但是,当电源电压跌落到容差以下,而仍然维持在处理器保证正确工作的范围以内时,POR就会发出复位信号。这样可以确保在处理器发生错误操作之前(因电压跌落到保证工作范围以下)发出复位。 根据这个策略,合适的POR选择之一是MAX6381中的一个型号,这个型号在整个温度范围内具有3.00V至3.15V的门限范围(图2A)。 采用了这种POR,一旦电源跌落到其规定电压范围以下,处理器就会复位,而此时的电源尚未跌落到处理器的规定电压范围以下。另外, 由于门限范围的上限为3.15V,当电源位于其允许范围以内时不会发生复位。然而,将电源接人处理器时,由于连接器和电路板走线上的电压降,可能会使处理器上的电压降到3.15V以下。这种情况下,尽管电源电压仍在规定范围以内,复位仍有可能发生。这时,就有必要选用容差更小的电源或容差更小的POR门限,或两者兼之。这种设计方法对于电源上的干扰或噪声更为敏感,因为电源电压可能会非常接近于POR门限(取决于POR门限和电源电压分别位于它们的容差范围内的位置)。因此,该方法适用于干扰和噪声很小,且电源容差小的系统。 有些设计者在选择POR门限时会采纳第二种不同的策略。他们采用门限低于处理器保证工作电压(本例中为3.00V)的POR。这就允许处理器工作于允许范围以内的任何电压下,而不会遭遇复位。它还允许更宽松的电源容差。这些设计者轻松地假定,在上电期间,电源会连续地上升到POR门限以上,并稳定在规定范围内的电压上(本例中为3.20V至3.40V)。并且预期这些会在POR定时器远未计满之前就早早发生。很多时候,设计者利用有些电源提供的power-OK信号来确定电源是否工作于规定范围以内。这些设计者没有考虑电网欠压情况的影响。如果发生电网欠压,处理器可能会工作在一个低于其最低保证工作电压的电源下,但暂时仍然在POR门限以上(低于它POR就会发出复位)。当在这样的电源电压范围内工作时,处理器可能会发生错误操作。 不同于在处理器允许的电源电压范围内选择的门限,第二种方法更适合于那些可能存在较大干扰和噪声的系统。因为POR门限和电源电压分开的比较远。正如前面已提到的,这种方法也允许更宽的电源容差。 MAX6381中整个温度范围内门限范围在2.85V至3.0V的型号可用于此种设计,因为门限低于处理器允许电压范围的底线(图2B)。此时还可以使用一个比图2A、2B中容差更宽的电源。 有时候,设计者会将电源的额定电压设置在靠近处理器允许范围的底线处,目的是降低功率消耗。这种做法很有效,因为功率消耗正比于电源电压的平方。假定处理器允许电压范围为3.0V至3.6V,3.15V±2%的电源是可取的,如果在连接电源到处理器的通路上,在连接器和导线上没有显著的电压降的话。如果噪声电平足够低,不会引起错误触发的话,门限电压在2.85V至3.0V范围的MAX6381 POR是一个合适的选择。确定POR门限电压——双电源微处理器 除了3.3V电源,如果处理器还需要另一路电源(例如一个1.8V核电源),这种设计可能就需要能够监视两路电压的POR了。这种类型的POR只有在两路电源都超过了POR的两个对应的门限,并且规定的延时周期已经过去以后才会撤消复位。可同时监视两路、三路和四路电压的POR都可找到。 同样的选择方法适用于多电源或单电源的监视。对于双电源的情况(例如3.3V和1.8V),设计者可以选择POR的两个门限都高于或低于处理器的最低保证工作电压。同样,设计者也可以使监视3.3V I/O电源的门限低于保证工作电压,而使用于1.8V核电源的另一个门限在保证工作电压之上。很多设计者优选后一种策略,因为很多时候处理器内核比起I/O来,对于电源电压低落所造成的问题更为敏感。 内核电源电压始终在随着时间的推移而降低,因此降低POR门限电压成为必须。MAX6736系列中的器件无需外接电阻可提供低至788mV的门限,加上外接电阻还可低至488mV。这种门限电压足以监视最先进的内核电源。 对于低成本系统,很多电路设计者选择只监视3.3V电源,如果1.8V电源是由它得到的话。他们认为如果3.3V电源到达正常电压的话,1.8V电源也会到达正常。对于要求较高可靠性的系统,设计者通常是选择监视两路电源。 手动复位 有时候,当电源电压仍在容差以内,用手动方式去触发一次复位也很有用。这项功能不仅被用于调试和最终测试,当处理器锁定时这个功能也很有用——它使处理器重新启动,而不必关掉电源。这种功能对于那些处理器永不掉电的产品尤其有用。它还被通用于那些不关掉处理器电源,只是唤醒/挂起处理器的ON/OFF开关中。 尽管来自于I/O线的逻辑信号、看门狗定时器或电源失效输出常被用于触发手动复位,按钮开关经常也被用来触发手动复位。被按下时,这种类型的开关通常会有反弹,打开、闭合很多次方可稳定下来。所以,大多数手动复位输人都包含有去抖动电路,对按钮开关引起的振铃不响应。 分立的POR和微处理器内置的POR 使用由电阻和电容构成的分立式POR(图3A)是一种比较危险的做法。这种POR输出缓慢的上升和下降时间会给许多处理器带来问题,尤其是那些复位输人中没有包含施密特触发器以及具有双向复位引脚的处理器。增加一个施密特触发器对于前一种情况有效,但也带来了成本、空间和启动问题。 当电源上电时,如果上升时间相对于POR时间常数比较缓慢时,此时采用分立式POR会产生另一个问题。处理器可能会在电源没有稳定之前就脱离复位态。为防止出现这个问题,R/C电路的时间常数需要增加。另外,有些具有内置POR的处理器制造商也建议,如果上电速度缓慢,要在复位输人端增加一个R/C(再加一个二极管,如下所述)。 如果电源在上电后遭遇一次干扰,R/C电路会将这个干扰滤掉,这样就阻止了复位的发生。而且,如果电源下跌,处理器复位引脚上的电压仍会高于其VIH,使复位无法产生。这种情况甚至有可能发生在电源跌至处理器最低保证工作电压以下的时候。这是因为复位引脚的VIH通常低于处理器的最低保证工作电压。如果电源被关掉然后又迅速打开又会引发另外一个问题,即再次上电之前电容器可能没有足够的时间放电。 增加一个二极管(图3B),R/C电路有可能响应干扰,一旦有干扰出现,二极管会迅速对电容放电。干扰必须足够大才可将复位引脚上的电压拉低到 VIL(最小)。此外,前面所提到的不含二极管的R/C电路的问题仍会困扰该电路。不过,很多时候,二极管的确能够解决电源迅速关断—打开所产生的问题。 采用集成的POR在多数设备中能够解决多数问题,这种器件不会产生前面所述的那些问题。 使用处理器集成的POR也会产生一些困难。这种POR经常会遭遇精度差和较低电压下出现的一些问题。而且,许多内部POR被设定为只在上电时提供复位,而在电网欠压期间,电源电压的轻微跌落不会引发复位。有些制造商建议增加分立电路来适应这种情况。 最后,对于内部POR,在多组电源供电的系统中还会有另外的问题。例如,你可能会遭遇这样的问题,内部POR的延时适合于自身的处理器,但却不能适应上电更慢的外部电路(例如存储器)。这种情况下,解决方案之一是,采用一个同时监视处理器和外部电路电源,并具有更长延迟时间的外部POR。电源失效和欠压信号 包含电源失效或欠压信号的监控电路可警告处理器,即将发生电网欠压或电源失效。当这些信号中的任意一个中断处理器时,处理器进人一个掉电子程序。在这个子程序中,处理器中止当前的活动,并在POR复位处理器之前备份重要的数据。 为产生电源失效信号,监控器的电源失效比较器监视未稳压的直流电压(或某些上游的稳定电压)。这个电压被送人调节器,并用来产生为处理器和监控电路供电的电源。未稳定电压会在调节器输出电压之前跌落,因为调节器的输出电容会维持其输出电压(图4)。因此,未稳定电压的跌落预示着调节器电压可能会发生跌落。检测这个跌落并中断处理器,使处理器在被复位之前进入掉电子程序,如果电源电压的跌幅足够大的话。 如果无法检测未稳定电压(或一个上游的稳定电压),处理器仍有可能收到一个电源即将失效的告警。提供欠压信号输出的监控器可以提供这个信号,当被监视电源电压跌落至某个略高于复位门限的电平时(例如高150mV)这个信号变为有效。因此,欠压信号可用来警告处理器,电源电压将有可能跌落到使POR产生复位的电平。此时,和电源失效比较器发出信号时一样,预见到POR将发出复位(由于电网欠压或电源失效),处理器备份重要数据。电压排序和电压跟踪 大多数双电源供电的处理器在数据手册中规定了加电顺序。有些器件象MAX6819/MAX6820能够以正确的顺序对电源进行排序。如果处理器加电顺序不正确,处理器可能会锁定、错误地初始化或长期运行的可靠性下降。有时,多种不同的电源电压并不是在本地产生(例如,它们可能来自于主系统总线,一个外购的银盒式电源,或者一个不包含使能和power-OK引脚等便于排序的信号的电源)。这种情况下,上电和断电顺序将难于控制或预知, 因此,有必要采用电压排序IC。当不同的阻性和容性负载影响到不同电源的开启和关闭时间时,会使电源的上电和掉电顺序无法预知,此时也有必要采用这种IC。 MAX6741/MAX6744提供了一种独特的方法对两组电源进行排序。这些器件的工作原理是,首先让其中一路电源上电。然后,经过一定延迟后,发出power-OK信号使第二组电源脱离关断模式并开始上电。两组电源均完成上电并经历了另外一段时间延迟后,MAX6741/MAX6744撤销复位信号。 有些处理器要求两组电源在上电过程中彼此跟踪。 对于这种要求,MAX5039/MAX5040能够将两组电压钳制在一起,从而实现跟踪,直到较低电压的一组电源到达其最终电压。然后,电压较高的电源继续上升到其最终电压。复位顺序 当一个电路中包含两个处理器时,常常需要其中一个处理器先于另一个脱离复位状态。原先,设计者采用将两个POR连接在一起的方式满足此要求。第一个POR的输出同时控制着第一个处理器的复位和第二个的手动复位输入。第二个POR的输出复位第二个处理器(或者,有些情况下是存储器)。现在,用于此任务的、具有时间交错的复位输出的双POR已经面市(图5)。

这些POR只要发现主电源电压(图5中为3.3V)跌落至内部设定的门限以下即可发出两路复位输出(从POR的触发略微提前一点)。一旦电源恢复到门限以上,两路复位输出中的一路在其定时器计满后撤销(图5中的RESETl)。对于第二个POR,启动其定时器和撤销其输出需满足两个条件:RESETl必须被撤销;第二个POR所监视的从电源电压必须高于由外部电阻所设定的门限。如果两个处理器由同一电源供电,RSTIN 2可直接连到电源,不必再使用分压器。 对于图5中所示的MAX6392,第二个POR输出总是在第一个之后脱离复位。事实上,它脱离复位的时间,是由第一路复位输出撤销开始计算的。这样,图5电路迫使从处理器在主处理器已开始工作后才脱离复位。第二POR的延迟时间可通过增加电容来加以延长。 如果需要排序三个处理器,可以考虑DSl830。该器件内的三个POR分别工作于10ms、50ms和l00ms的最短复位时间(从电源电压越过POR门限计起)。通过单一逻辑引脚可将这些复位时间倍增二或五倍。结语 选择合适的微处理器监控器并使其正确地上作尽管看上去非常简单,但在实践中有许多方面的问 题需要周全的考虑。对于上电复位即是如此。为电源和POR门限选择正确的电压和容差需要仔细的考虑。还有,适应处理器需求的许多新器件非常值得考虑,例如多电压复位,复位排序,电源排序以及电压跟踪等。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Keil5(MDK5)在调试(debug)过程中遇到的问题