当前位置: 首页 > news >正文

CPU上电时序详细分析

首先是RTC电源,这部分电力是永远不关闭的,除非电池(纽扣电池)没电并且没接任何外部电源(比如电池和电源适配器)。 RTC用以保持机器内部时钟的运转和保证CMOS配置信息在断电的情况下不丢失;其次,在你插上电池或者电源适配器,但还没按power键的时候 (S5),机器内部的开启的电称为ALWAYS电,主要用以保证EC的正常运行;再次,你开机以后,所有的电力都开启,这时候,我们称为MAIN电 (S0),以供整机的运行;在你进待机的时候(S3),机器内部的电成为SUS电,主要是DDR的电力供应,以保证RAM内部的资料不丢失;而休眠(S4)和关机(S5)的电是一样的,都是Always电。其中,上文中括号内的是表示计算机的状态(S0-开机,S3-待机,S4-休眠,S5-关机)。

根据前面的Power Status,我们来分析一下开机的过程。在插上电池或者电源的时候,机器内部的单片机EC 就Reset并开始工作,等待用户按下Power键。在此期间的时序是:ALWAYS电开启以后,EC Reset并开始运行,随后发给南桥一个称为‘RSMRST#’的信号(南桥就收到SUSPWROK信号<南桥复位>,32.768时钟开始 工作,此时处在待机状态)。这时候南桥的部分功能开始初始化并等待开机信号。这里要注意,这时候的南桥并没有打开全部电源,只有很少一部分的功能可用,比 如供检测开机信号的PWRBTN#信号。

在按下Power键的时候,EC检测到一个电平变化(一般时序是:高-低-高),然后发送一个开机信号(PWRBTN#)给南桥,南桥收到PWRBTN#信号后依次拉高SLP_S5#,SLP_S4#,SLP_S3#信号(他们的作用参看上页的图),开启了所有的外围电压,主要是+3V,+5V以及DDR1.8V等,VTT_PWRGD、+1_8VDIMM_PG、+1_5VRUN_PG相与并发送ALLSYSPG信号,这信号表明外围电源正常开启。

ALLSYSPG将作为一个使能信号发送到KBC ,延迟99ms之后,KBC会发出VR_ON到CPU电压芯片来开启VR _CORE(即CPU的核心电压)。至此,整个的电压部分已经全部开启。

IMVP_PWRGD正常发出,再用CHIP_PWRGD这个信号通知南桥VR_CORE成功开启后,南桥会发出PCI RST#信号到PCI总线,于是总线上的设备都被初始化(包括北桥),并同时发出H_PWRGD来通知CPU它的核心电压已经成功开启。然后北桥发H_CPURST#信号给CPU,CPU被RESET,并正式开始工作。

如需要进入待机模式(S3)的时候,系统的ACPI和windows同时运作,拉低SLP_S3#,并保持SLP_S4#和SLP_S5#被拉高,以关闭 了MAIN电,系统则进入待机模式;而在需要进入休眠或者关机模式时,同时拉低SLP_S3#、SLP_S4#和SLP_S5#,关闭除了RTC以外的电 源。当然,在这一系列的过程中,需要操作系统和BIOS的共同协作。

当电压加电稳定后,南桥就会收到一个CHIP_PWRGD的信号,南桥接到这个信号后,发出CPUPWRGD信号给CPU,CPU开始读取BIOS。之后会产生一个初始的PCIRST#信号,送出到复位的门电路,复位门电路收到这个信号后,通过逻辑转 换分为两或三个RST信号,一个是PCIRST1#,另一个是PCIRST2#。PCIRST1#是用来复位板载设备的,如IO,BIOS,网卡,北 桥,1394芯片等。PCIRST2#是用来复位PCI槽上的设备的。另外, D6 m# P s( ]8 L0 J另外另外CPURST#的产生流程。北桥的电压及时钟条件满足后,接到传送来的PCIRST#信号后,便通过内部的一个与门电路转换为CPURST#来 对CPU进行复位。

 

rtc

--

main电:

待机:ddr的电力,,sus电

 

休眠,关机:always电

Core,MEM。IO,SRAM, MVT,PLL等;

 

转载于:https://www.cnblogs.com/Ph-one/p/6391314.html

相关文章:

  • 下载模式
  • 以太网接口TCP/IP协议介绍,说的很容易懂了
  • 基于嵌入式Linux的千兆以太网卡驱动程序设计及测试
  • 数据结构基础知识(1)
  • 数据结构之队列
  • 数据结构基础知识(2)
  • 软考之操作系统(1)
  • 高效编程之互斥锁和自旋锁的一些知识
  • 信号量,互斥锁,自旋锁
  • 全双工和半双工
  • spi和I2c的速率
  • 以太网接口
  • 变量分类
  • C语言8大经典排序算法(1)
  • C语言8大经典排序算法(2)
  • 【刷算法】从上往下打印二叉树
  • Centos6.8 使用rpm安装mysql5.7
  • co模块的前端实现
  • echarts花样作死的坑
  • JS字符串转数字方法总结
  • nodejs实现webservice问题总结
  • python 装饰器(一)
  • Redis学习笔记 - pipline(流水线、管道)
  • 从tcpdump抓包看TCP/IP协议
  • 大整数乘法-表格法
  • 前端性能优化——回流与重绘
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 删除表内多余的重复数据
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 一天一个设计模式之JS实现——适配器模式
  • 鱼骨图 - 如何绘制?
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • gunicorn工作原理
  • hi-nginx-1.3.4编译安装
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #include
  • #stm32驱动外设模块总结w5500模块
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (五)Python 垃圾回收机制
  • (译)2019年前端性能优化清单 — 下篇
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • (转)Sublime Text3配置Lua运行环境
  • (转)Windows2003安全设置/维护
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .net 反编译_.net反编译的相关问题