您当前的位置:五五电子网电子知识维修资料IT数码引起电脑主板重启(RESET)的原因分析 正文
引起电脑主板重启(RESET)的原因分析

引起电脑主板重启(RESET)的原因分析

点击数:7555 次   录入时间:03-04 11:44:39   整理:http://www.55dianzi.com   IT数码

  引起电脑主板重启主要有三个方面的原因:

  (1)系统在S0和S3、S4、S5状态相互转换的过程中会引发PCIRST#

  (2)通过机箱RESET按键和操作系统中的RESET功能可引发PCIRST#

  (3)BIOS自发的SOFtReset会引发PCIRST#

  下面我们分别讨论这三种情况:

  (1)、系统在S0和S3、S4、S5状态相互转换的过程中引发PCIRST#

  我们可以参考主板的电路图来讨论,这种情况主要指的是系统开关机、STR、STD引发PCIRST#的情况。

  我们以开机过程为例,POWERSW-是按下机箱的开机按钮时产生的开机信号,POWERSW-输入到SuperI/O的内部开机逻辑后使系统上电,当主机电源的+5V(或+3.3V)稳定后大约1-5ms,主机电源的PWR-GD、SuperI/O的PWR-OK、VRM的VRMPWRPG都上升为高电平并达到稳定,它们经过“与”运算后分别输入给CPU(POWERGOOD)和ICH(PWROK),PWROK信号上升并稳定在高电平至少1ms后,ICH向各设备发出PCIRST#,系统开始初始化和自检。相关电路如下图所示。

4263

425663

  上图中T1为POWERSW-有效到VCC3.3(Vcc5)达到稳定的时间,包括内部逻辑执行时间至少为2个RTCCLK周期(62us)、外部逻辑执行时间取决于主机电源的Vcc3.3(Vcc5)的上升时间;T2为Vcc3.3(Vcc5)达到稳定到PWROK上升并稳定为高电平所需的时间,规格要求T2至少为1ms;T3为PWROK稳定到PCIRST#上升并稳定所需的时间,规格要求T3不得少于1ms,不得大于1.16ms。

  上面是开机过程中产生PCIRST#的情况,事实上系统在S0和S3、S4、S5之间切换的过程中都会产生PCIRST#。可以以S0和S5之间的切换为例来说明问题,下图五所示的就是S0-S5-S0之间切换时关键信号的波形和时序:

2652

  (2)通过机箱RESET按键和操作系统中的RESET功能引发PCIRST#

  除了在S0和S3、S4、S5之间切换的过程之外,通过机箱上的RESET按键或通过操作系统执行的RESET操作也会引发PCIRST#。

  通过机箱上的RESET按键执行RESET:这个操作和开关机操作的情况不同,一个区别是RESET操作不涉及主机电源的开关动作,因此在RESET过程中Vcc3.3(Vcc5)一直是稳定的,不存在Vcc3.3(Vcc5)的上升时间方面的问题。另外RESET按键引起的RESET是通过控制PWROK信号来实现的,BIOSRST信号被连接到机箱的RESET按键上,按下RESET按键实际上就相当于将BIOSRST接地,通过分析出BIOSRST为低电平后,PWROK随即也变为低电平,PWROK被拉低后,PCIRST#也被拉低。当放开机箱RESET按键后BIOSRST恢复为高电平,PWROK随即恢复,导致PCIRST#又恢复为高电平,引起系统初始化和自检,这就是通过机箱按键的RESET过程。可以看出,这一过程并不涉及SLP-S3、SLP-S5信号的变化。

42563

  上图中T为PCIRST#的活动时间(处于低电平的时间),规格要求T不能少于1ms。

  T3为PWROK稳定到PCIRST#上升并稳定所需的时间,规格要求T3不得少于1ms,不得大于1.16ms。

  通过操作系统中的RESET功能执行RESET:这种情况是通过操作系统的RESET功能来实现的,比如通过WIN98的启始菜单执行的RESET动作就属于这种情况。通过操作系统执行的RESET动作和通过机箱RESET按键执行的RESET操作又是不同的。通过机箱RESET按键执行的RESET操作是通过控制PWROK信号来间接控制PCIRST#;而通过操作系统执行的RESET是直接控制PCIRST#,并不是通过控制PWROK来实现的,也就是说这一操作并不通过主板上的RESET逻辑。通过测量波形知道,执行这一操作时PCIRST#被拉低1.2ms,随即又恢复。而这一操作并不涉及PWROK、SLP-S3、SLP-S5等信号。

  (3)BIOS自发的SoftReset引发PCIRST#

  上面我们讨论的都是人为引发PCIRST#的过程,也就是正常情况下的RESET动作。现在我们继续讨论非正常的RESET动作,那就是在系统处于某种非正常状态下,由BIOS自发的SoftReset引发PCIRST#的过程(BIOS是引发SoftReset还是采取其它动作是可通过对寄存器编程来决定的)。

  BIOS为什么会自发引起PCIRST#呢?原因主要有以下两个方面:

  TIMEOUT:ICH内置了一个可编程的TCOTIMER(TotalCostofOwnershipofSystem)用于探测系统是否锁定,第一次Timeout后TCOTIMER产生一个SMI#信号给CPU,目的为了使CPU从锁定状态恢复,如果CPU从锁定状态恢复则TCOTIMER就不再动作;如果CPU仍不能脱离锁定状态,则在第二次Timeout后TCOTIMER将引发系统RESET。即TCOTIMER的第二次Timeout将会引发PCIRST#,使系统SoftReset(Timeout的时间可由BIOS设定,从CPU锁定时开始计时,超出所设置的时间后TCOTIMER即引发SMI#或PCIRST#)。这是一种非正常RESET的情况,这种情况通常是由于操作系统或应用软件在非正常状态下引起CPU锁定而造成的,通常的故障现象是系统先死机(或因为繁忙)而不响应任何消息,随后发生重新启动现象。

  ECCERRORREPORTING:当有ECC错误发生后,主控制器(ICH或北桥)向ICH或南桥发出信号,指示ICH或南桥产生SMI#或Timeout后的PCIRST#等信号。这种情况下也能引起系统重启,但很难人为判断是否为ECCERROR引起的。




本文关键字:电脑  IT数码维修资料 - IT数码