intel电源管理技术中I2C和SVID
1.I2C总线架构图:

2.Gemini Lake平台所支持的PMIC 是哪种类型?
POR 是SVID PMIC, i2c PMIC 会影响性能。
3.SerialVID, 总共有三个信号线 时钟(clock) , 信号(data) Alert (报警) 组成的。 是一种串行同步接口。
4.VID(Voltage Identification,电压识别)是一种电压识别技术,装上不同的CPU,会产生不同的电压。
VID可分压PVID(并行VID)和SVID(串行VID)。
VID(Voltage Identification)是一种电压识别技术,可分为PVID(并行VID)和SVID(串行VID)。
在AMD早期和INTEL 5系列芯片组之前,都采用PVID,其基本原理就是在CPU上设置了4-8个VID 识别脚,并通过预设在这些识别脚上的高低电平值,形成一组VID识别信号,这些信号传输到CPU供电电路中的电源管理芯片后,电源管理芯片根据所得到的VID信号使CPU供电电路输出的电压与预设的VID所代表的值一致。
AMD从AM2+ CPU开始,CPU包含两部分电压,一是CPU的核心电压,另一是CPU内集成的北桥的电压。并行VID控制模块无法在同一时间内异步控制这两种电压,除非再提供一组并行VID控制CPU中的北桥电压,但这样会增加芯片的复杂度。于是AMD率先推出新一代电压调节模块规范,采用串行VID(SVID)模式来解决这一问题。串行VID是一种总线类型的协议。从硬件上来看,所需要的外部接口由以前的多个VIDXX引脚变成SVC(串行时钟)、SVD(串行数据)两个引脚,简单了很多。不过,串行VID的实现需要软件的配合。
传统便携式笔记本、一体机、台式机等一般都是采用intel的技术架构。其待机、休眠、高负载环境下的电压调节都有一套成熟的应用方案,英特尔从6系列平台开始,导入VR12(VoltageRegulator电压调节)规范,也就是SVID(SerialVoltageIdentification串联电压识别)模式,通过CPU自身SVID总线侦测CPU的电压,即CPU作为PMBUS(PowerManagementBus电源管理总线)的主设备,SVID模块通过DATA(数据)和CLK(时钟)总线向VRM(VoltageRegulatorModule电源管理模块)芯片发出呼叫,等待着VRM芯片来读取电压设置信息。当VRM芯片对CPU内SVID模块的呼叫做出应答,并读出电压设置信息,CPU主供电VCORE(VoltageCore核电压)产生,之后依据CPU电压来调控PWM(PulseWidthModulation脉宽调制)供电的相数。硬件电路和通信机制都已经形成一种固定机制,每一系列的CPU主板必须兼容相应的PWM控制器,由于CPU和VRM必须通过SVID总线进行通信,而SVID是一种总线工作模式,整个链路需要软件的配合,硬件成本较高。
VID调节CPU电压
VID(Voltage Identification,电压识别)是一种电压识别技术,装上不同的CPU,会产生不同的电压。VID可分压PVID(并行VID)和SVID(串行VID)。
在AMD早期和INTEL 5系列芯片组(HM55等)之前,都是属于PVID,其基本原理就是在CPU上设置了4-8个VID 识别脚,并通过预设在这些识别脚上的高低电平值,形成一组VID识别信号,当VID识别脚上为高电平时,则为二进制的1状态,当VID识别脚上为低电平时,则为二进制的0状态。根据这些1与0的组合,就形成了一组最基本的机器语言信号,并由CPU传输到CPU供电电路中的电源管理芯片,电源管理芯片根据所得到的VID信号,调整输出脉冲信号的占空比,迫使CPU供电电路输出的直流电压与预设的VID所代表的值一致。
INTEL公司为其不同时间生产的各款CPU制定了相应的电压调节模块(Voltage Regulation Model——VRM)设计规范,从Prescott核心微处理器开始,电压调节规范改用VRD(Voltage Regulation Down)来命名,在笔记本电脑中,使用的是移动电压配置IMVP(Intel Mobile Voltage Positioning),各版本供电设计规范中的VID位数、电压调节精度和电压调节范围都各不相同。
这种模式的VID,可以通过装入假负载把CPU电压”骗”出来:当装上假负载后,将VID0-VID7其中的一个或多个VID信号接地,此时电源IC的VID0-VID7引脚上就得到了新的电压组合,电源IC会根据这个不同的组合,控制发出相应的电压。也就是说,让CPU供电芯片误以为是真CPU装入。
由下表可以看出,伴随着VRM/VRD/IMVP标准的增高,VID位数在逐渐增加,电压调节精度变小,电压范围也随之变小。


使用PVID的芯片,引脚上必然有VID*信号,如下图ISL6262芯片中37-43脚:

AMD从AM2+ CPU开始,CPU包含着两部分电压(AMD称之为Dual-Plane),一个是CPU的核心电压,一个是CPU内集成的北桥的电压,一组并行VID控制模块无法在同一时间内异步控制这两种电压,除非再提供一组并行VID控制CPU中的北桥电压,但这样会显得比较复杂。于是AMD率先推出新一代电压调节模块规范,采用串行VID(SVID)模式来解决这一问题。串行VID是一种总线类型的协议。从硬件上来看,所需要的外部接口由以前的VID0~VID5共6个变成SVC(串行时钟)、SVD(串行数据)两个,可以说是简单了很多。不过,由于串行VID是一种总线工作模式,所以需要软件的配合,但同时也意味着后期调整的可操作性会更强。前期大部分AMD主板为了兼容AM2/AM2+/AM3,采用了PVI/SVI兼容的PWM控制器。
英特尔在5系列平台搭配的Core i3/i5/i7 CPU集成了显示核心,为了更好地控制这两组电源,因此提供了两组PVID接口以分别控制CPU的核心电压和显示核心电压,这两组电压都符合英特尔 VRD11.1的规范,这显然是稍显复杂了一些。
英特尔从6系列平台开始,导入VRD12规范,也就是串行VID模式,和AMD SVID模式如出一辙。INTEL平台的SVID有三根线:SVD(串行VID数据),(SVC串行VID时钟),ALERT#(警示信号)。采用SVID的电源管理芯片,引脚上必须有这几个信号。如下图芯片4-6脚:

下图为INTEL平台SVID信号波形截图,黄色线为SVC信号,蓝色线为SVD信号。

根据INTEL 6系列芯片组收据手册得知,CPU是在获得了PROCPWRGD后,才发出SVID信号,INTEL 6系列标准时序图截图:

所以,新的6系列及以后的主板,如果出现没有CPU供电的情况,应使用示波器抓取CPU是否发出SVID信号给电源管理芯片。
如果没有波形,则应按照时序图先查CPU是否获得PROCPWRGD这个高电平信号,若PROCPWRGD不正常,需要追查PCH的相关PG信号,以及PCH是否追查读取BIOS等。
另外,CPU内集成显卡的供电是在CPU核心供电出来之后才产生。同样是由SVID控制。
intel电源管理技术中I2C和SVID的更多相关文章
- linux驱动程序之电源管理之新版linux系统设备架构中关于电源管理方式的变更
新版linux系统设备架构中关于电源管理方式的变更 based on linux-2.6.32 一.设备模型各数据结构中电源管理的部分 linux的设备模型通过诸多结构体来联合描述,如struct d ...
- FPGA设计中的电源管理(转载)
过去,FPGA设计者主要关心时序和面积使用率问题.但随着FPGA不断取代ASSP和ASIC器件,设计者们现正期望能够开发低功耗设计,在设计流程早期就能对功耗进行正确估算,以及管理和对与FPGA相关的各 ...
- ALSA声卡驱动中的DAPM详解之二:widget-具备路径和电源管理信息的kcontrol
上一篇文章中,我们介绍了音频驱动中对基本控制单元的封装:kcontrol.利用kcontrol,我们可以完成对音频系统中的mixer,mux,音量控制,音效控制,以及各种开关量的控制,通过对各种kco ...
- exynos 4412 电源管理芯片PMIC 的配置及使用方法
/** ****************************************************************************** * @author Maox ...
- [专业名词·硬件] 2、DC\DC、LDO电源稳压基本常识(包含基本原理、高效率模块设计、常见问题、基于nRF51822电源管理模块分析等)·长文
综述先看这里 第一节的1.1简单介绍了DC/DC是什么: 第二节是关于DC/DC的常见的疑问答疑,非常实用: 第三节是针对nRF51822这款芯片电源管理部分的DC/DC.LDO.1.8的详细分析,对 ...
- 【转】Intel RealSense(实感技术)概览
Intel RealSense(实感技术)概览 1 Reply 版权声明:本文系本站作者自己翻译整理,欢迎转载,但转载请以超链接形式注明文章来源(planckscale.info).作者信息和本声明, ...
- linux电源管理系列(一)
本系列将逐步介绍linux电源管理相关的知识,涉及到常见电源管理机制.linux电源管理机制.linux驱动中有关电源管理的相关接口.内核文档中关于Linux电源管理架构文档的分析.以下将以此来介绍相 ...
- Oracle内存管理技术
1.Oracle内存管理技术 2.配置自动内存管理(AMM) 3.监视自动内存管理(AMM) 4.配置自动共享内存管理(ASMM) 5.配置自动PGA内存管理 Reference 1.Oracle内存 ...
- iOS开发ARC内存管理技术要点
本文来源于我个人的ARC学习笔记,旨在通过简明扼要的方式总结出iOS开发中ARC(Automatic Reference Counting,自动引用计数)内存管理技术的要点,所以不会涉及全部细节.这篇 ...
随机推荐
- 洛谷P1908 逆序对
P1908 逆序对 2.2K通过 4.4K提交 题目提供者该用户不存在 标签云端 难度普及/提高- 时空限制1s / 128MB 提交 讨论 题解 最新讨论更多讨论 归并排序党注意了!数组要开… ...
- 【CCF】URL映射 模拟
#include<iostream> #include<cstdio> #include<cstring> #include<string> #incl ...
- 【08】Vue 之 vue-cli
8.1. 前置知识学习 npm 学习 官方文档 推荐资料 npm入门 npm介绍 需要了解的知识点 package.json 文件相关配置选项 npm 本地安装.全局安装.本地开发安装等区别及相关命令 ...
- [bzoj 3048] [Usaco2013 Jan]Cow Lineup
[bzoj 3048] [Usaco2013 Jan]Cow Lineup Description 给你一个长度为n(1<=n<=100,000)的自然数数列,其中每一个数都小于等于10亿 ...
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---34
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- linux解决无法打开资源管理器
前两天升级系统,使用命令pacman -Syyu,大概是使用的是testing缘故,今天发现dolphin无法打开了,使用命令行打开,提示ldmp.so有问题. 解决方法如下: 一,使用命令:pacm ...
- linux 实现共享内存同步
本文主要对实现共享内存同步的四种方法进行了介绍. 共享内存是一种最为高效的进程间通信方式,进程可以直接读写内存,而不需要任何数据的拷贝.它是IPC对象的一种. 为了在多个进程间交换信息,内核专门留出了 ...
- 启动tomcat服务器自动执行一个方法
第一步:配置web.xml文件 添加如下代码 <servlet> <servlet-name>Timer</servlet-name> <servlet-cl ...
- Facebook为什么使用PHP编程语言?
当日本计算机科学家松本行弘决定创造一种名叫 Ruby (这种技术支撑了 Twitter.Hulu以及其他许多现代 Web 流行网站) 的程序语言时,他是从 1966 年一部名为 Babel-17 的科 ...
- Codeforces 915F Imbalance Value of a Tree(并查集)
题目链接 Imbalance Value of a Tree 题意 给定一棵树.求树上所有简单路径中的最大权值与最小权值的差值的和. 首先考虑求所有简单路径中的最大权值和. 对所有点按照权值大小升 ...