Intel平台不可忽略的接口eSPI

1,046 阅读1分钟

PCH EC

eSPI就是SPI升级版?

根据这名字就感觉eSPI就是SPI的升级版,这样说没错。 但是如果你思想上认为只是提高了点速度之类,那你就小看了。

从双向通讯信号上讲,LPC/SPI/eSPI,大同小异、 参考书公开的Intel pdf文档Enhanced Serial Peripherial Interface Base Sepcification

当我们谈eSPI,其实主要是为了把LPC接口比下去的

eSPI vs. LPC side band信号数量减少

EC/Super I/O芯片和PCH的连接如果用LPC,那么side band信号会多不少,尤其是各种中断信号。因为引入了虚拟中断通讯。#SMI,#SCI,#RCIN这些以前是中断pin脚的,都可以省下来了

eSPI虚拟中断

既然是虚拟中断,就是没有多出来引脚的。无非就是用通讯协议+数据包串行通讯来模拟。yes你猜对了

ChomeBook也是笔记本,里面的EC代码是开源的

chromium.googlesource.com/chromiumos/…

这里面你会明显看到虚拟中断的定义,VW(Virtual Wire)

eSPI用于连接EC

最直截了当的告诉你eSPI就是为了EC而设计的。

chromium.googlesource.com/chromiumos/…

host/
ish/
it83xx/
max32660/
mchp/
mec1322/
mt_scp/
npcx/
stm32/

这里列举了EC的芯片供应商。懂了吧,这就是读代码知硬件。

EC和MCU的不同就是ACPI

ACPI手册是给了EC一席之地的。也就是说当今PC不可缺少的一部分。 PCH给EC发ACPI命令的处理

chromium.googlesource.com/chromiumos/…

EC和PCH通讯

由于有串行通讯数据流,所以需要一个框架来管理eSPI数据流 chromium.googlesource.com/chromiumos/…

延展材料

国内BIOS大佬老狼,在Intel干过的写的文章 zhuanlan.zhihu.com/p/349467926 Microchip这篇也不错 www.microchip.com/en-us/solut…