ESPI协议信号

ESPI,增强型串行外设接口,是为了替代LPC而设计,工作频率可达66M,1.8V电压。

信号定义:CLK,DATA,CS,ALERT,RESET。

ESPI_CLK:时钟由主机发出,从机接收。

ESPI_0/1/2/3:数据引脚,双向通讯。

ESPI_CS:片选信号,主机发出,通讯时拉低。

ESPI_ALERT0:从机发给主机的警告信号。

ESPI_RESET:复位信号,主机发出,从机接收。

实测图,上方为CLK,下方为CS。

三种数据传输模式(带宽扩展)

eSPI 通过激活不同数量的 IO 线,在功耗与带宽间动态切换。

1. Single Mode(单线模式,基础配置)
  • 信号:CLK、CS#、IO0、IO1(+ 可选 Alert#/Reset#)
  • 带宽:66MHz × 1bit = 66Mbps(全双工)
  • 适用:低速外设、低功耗场景
2. Dual Mode(双线模式)
  • 信号:CLK、CS#、IO0、IO1(IO0/IO1 均双向)
  • 带宽:66MHz × 2bit = 132Mbps
  • 适用:中等带宽需求(如 EC 通信)
3. Quad Mode(四线模式,最高性能)
  • 信号:CLK、CS#、IO0~IO3(四线全双向)
  • 带宽:66MHz × 4bit = 264Mbps
  • 适用:Flash 高速访问、BMC 带外管理

信号时序与协议层关键特性

  1. 时钟与采样

    • CLK 由主机产生,数据在CLK 上升沿 发送、下降沿采样(SPI Mode 0)。
    • 支持 CRC 校验,提升传输可靠性。
  2. Alert# 异步事件机制

    • 从机拉低 Alert#,向主机发起中断请求(如 SCI/SMI、PME、唤醒)。
    • 主机响应后读取从机状态寄存器,处理事件。
  3. **多通道复用(逻辑层)**同一物理链路通过协议帧区分 4 个逻辑通道,实现功能隔离:

    • Peripheral Channel:替代 LPC,支持 I/O、Memory 访问。
    • Virtual Wire Channel:传输虚拟中断、侧带信号(如 SERIRQ)。
    • OOB Channel:带外管理通道,用于 BMC 远程控制。
    • Flash Channel:共享 BIOS Flash,支持 PCH / 从机同时访问。

与传统 SPI/LPC 的核心区别

  • vs SPI :eSPI 增加Alert# 异步中断、CRC 校验、多通道复用、Flash 共享,更适合系统级互联。
  • vs LPC :eSPI 引脚从17 + 根 降至4~7 根,速率从 33MHz 提升至 66MHz,带宽翻倍且支持错误检测。

典型应用场景

  • PC / 笔记本:PCH ↔ EC(电源管理、键盘控制)。
  • 服务器:PCH ↔ BMC(带外管理、固件更新)。
  • 嵌入式:替代 LPC 连接 Super I/O、TPM 等低速外设。