0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

eSPI接口通道功能解析

CHANBAEK 来源:吃面小哥 作者: Morgen 2023-11-18 15:33 次阅读

eSPI 接口是用于取代 LPC 接口的,因此它全面兼容 LPC 总线的功能。电气规范上,eSPI 复用了 SPI ,因此通讯频率最高提升到 66MHz。电压降到 1.8V,进一步降低了通讯功耗。但是二者协议层完全不一样,SPI 协议无法解码 eSPI 通讯。

eSPI 总线除了兼容 LPC 总线功能,同时还把 OOB(out of band)的 Smbus 和 SideBand 的 GPIO全部转换为 In Band Message,以减少 PCH 和 EC 连接的 pin。

eSPI 为了兼容 LPC 并且进一步囊括更多数据类型的通讯,以减少 PCH 和 EC 连接引脚。因此在eSPI 总线上,根据数据类型划分了 4个 Data Channel。

即 Peripheral Channel、Virtual Wire Channel、OOB Channel、Flash Access Channel。eSPI 启动过程需要配置这 4个 通讯 Channel,本文简单介绍了这 4个 Channel 的功能。

下图描述了 LPC_Master(PCH) 和 LPC_Slave(EC)的结构。

图中可以看出除了 LPC 接口外,还有 Smbus、GPIO 接口。

图片

下图描述了 eSPI-Master(PCH) 和 eSPI_Slave(EC)的结构。

图中可以看出,eSPI 总线兼容了 Smbus、GPIO。

图片

所谓 Channel,是 eSPI 规范定义的一个虚拟的、逻辑上的数据通道,以便在 eSPI 总线上传递 4类数据流,同时保证这 4类数据流之间相互独立互不干扰。

在协议层面,每个 Channel 有定义专用的 Command 和 Payload(即数据包格式)。

硬件层面,每个 Channel 都有独立的 data buffer,并且相应的 Tx/Rx Avail/Free 状态都呈现在 Status Register中。

图片

CPU 启动过程中,eSPI Channel Config 其实就是 eSPI-Master 读取并改写 eSPI-Slave 端的一些寄存器,以便 eSPI-Master 和 eSPI-Slave 就 Channel 的通讯能力达成一致。

因此,EC 作为 eSPI Slave,需要按照 eSPI 规范针对每个 Channel 实现了一组寄存器,用以描述并且接收 eSPI-Master配置 Channel 的一些通讯特性。

图片

General Capabilities and Configurations

eSPI 通用描述寄存器,Slave Register Start Address 是 0x08。

eSPI-Master 先通过 GET_CONFIGURATION 命令获取 eSPI-Slave 端支持的通讯参数

图片

紧接着 eSPI-Master 通过 SET_CONFIGURATION 命令配置 eSPI-Slave 端的通讯参数。

主要涉及 eSPI 的 IO-Mode、Speed、CRC-Check、Alert-Mode。下图可看出,配置了 66MHz、Quad-IO。

图片

Peripheral Channel

外设通道,Slave Register Start Address 是 0x10,32bit 寄存器配置了外设通道通讯的参数。外设通过主要传输 Memory request packet,

I/O request packet,Message request packet。

相较于 LPC 而言,承接了 IO Cycle,Memory Cycle 的通信以兼容 Legacy SIO Device。

Platform Reset(PLTRST#) 信号拉低会复位 Peripheral Channel。

Virtual Wire Channel

虚拟线通道,Slave Register Start Address 是 0x20,32bit 寄存器配置了虚拟线通道通讯的参数。顾名思义,Virtual Wire Channel 就是把 PCH 的 Sideband pin 或者 GPIO 转换为 eSPI 的 in-band Message 传递的通道。

Sidebang pin 主要有 IRQ#、PME#、SCI#、SMI#、RCIN# 以及一些无意义的通用 GPIO。

Virtual Wire 还会传递一些针对 eSPI 扩展的虚拟状态信号,例如 SLAVE_BOOT_LOAD_DONE。

图片

OOB Channel

Out-of-bund 通道,Slave Register Start Address 是 0x30,32bit 寄存器配置了 OOB 通道通讯的参数。

OOB 通道的数据比较简单,就是负责传输 Out-of-bang Processor 和 EC/BMC 之间的 Smbus Message。

当然 eSPI 上传输的是把 Smbus Message 重新打包后的 OOB Message。

图片

Run-time Flash Access Channel

Flash 访问通道,Slave Register Start Address 是 0x40,32bit 寄存器配置了 Flash 通道通讯的参数。

Flash Channel 解决的是 eSPI-Master 和 eSPI-Slave 之间 SPI Flash 共享的问题,以减少设计 BOM。

图片

第一种,Flash 接在 PCH 上,EC 透过 eSPI 访问 Flash,称之为 MAFS。

图片

第二种,Flash 接在 EC 上,PCH 透过 eSPI 访问 Flash,专用于 Server 平台,称之为 SAFS。

图片

至此,eSPI 的四个数据通过就已简介完毕,通讯数据格式以及不同通道通讯专用命令,可参考 eSPI Spec。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1615

    浏览量

    89620
  • 通讯
    +关注

    关注

    9

    文章

    840

    浏览量

    34372
  • 总线
    +关注

    关注

    10

    文章

    2706

    浏览量

    87222
  • 光接口
    +关注

    关注

    0

    文章

    13

    浏览量

    9434
收藏 人收藏

    评论

    相关推荐

    eSPI协议抓包分析

    eSPI 协议在物理层是遵循 SPI 通讯规范的,但是协议层有差异,因此不能使用 SPI 协议去解析(没有 eSPI 协议分析仪的情况下,可以使用 SPI 协议分析仪去做单独 Byte 的初步
    的头像 发表于 11-18 15:29 1365次阅读
    <b class='flag-5'>eSPI</b>协议抓包分析

    常见eSPI通讯数据包的分析

    eSPI 通讯一般来说无需特别关注,因为通讯都是 PCH(eSPI_Master)和 EC(eSPI_Slave)硬件完成的,软件不参与。
    的头像 发表于 11-18 15:35 842次阅读
    常见<b class='flag-5'>eSPI</b>通讯数据包的分析

    LabVIEW运行性能解析视频教程

    LabVIEW运行性能解析视频教程认真学习,天天向上! [hide]LabVIEW运行性能之谜.rar[/hide]
    发表于 12-10 17:39

    回收罗德施瓦茨ESPI3进口接收机ESPI3

    型号的R&S ESPI都可以提供R&S FSP频谱仪的所有功能。这些功能使它们在能力和功能上远远超过传统意义上的预认证测试设备。R&S
    发表于 09-29 09:57

    STM32头文件功能解析

    头文件功能解析1 库文件组成内核文件:CMSIS文件夹,core_cm3.c/core_cm3.h,stm32f10x.h,system_stm32f10x.c/system_stm32f10x.h
    发表于 08-23 07:15

    按键部分功能解析备注

    @蓝桥杯第十届国赛部分功能解析TOC蓝桥杯第十届国赛 部分功能解析备注: 这是本人第一次发表的文章,内容有不足、有问题、有改进的地方请在评论区留言 本人将积极改进按键部分:下降沿代码
    发表于 02-16 06:17

    数控实习教学中比例缩放功能解析

    数控实习教学中比例缩放功能解析:数控实习教学时,数控铣(加工中心)的比例缩放功能是教学中的一个难点,教师难以讲解清楚,学生也很难理解透彻,往往到了这一章节就一笔
    发表于 10-22 21:32 35次下载

    IE8三大可靠性新功能解析

    IE8三大可靠性新功能解析 微软IE项目经理Andy Zeigler今天通过官方博客探讨了新版IE8的三个可靠性新功能:松散耦合式IE(LCIE)、自动崩溃恢复、
    发表于 08-02 09:09 565次阅读
    IE8三大可靠性新<b class='flag-5'>功能解析</b>

    HDMI音频功能解析

    HDMI音频功能解析 1.HDMI音频功能浅析    在HDMI没有出现之前,数字音频信号的传输的主要依靠两种途径:采用标准RCA接口的数字同轴电缆和SP
    发表于 10-20 15:16 6114次阅读

    数字调音台功能解析

    数字调音台功能解析 本刊在此以著名的美奇D8B为例,向大家悉数诸项数字调音台的代表性功能,以此作为同行深入探讨数字调音台使用的一块“砖
    发表于 01-14 16:08 4665次阅读

    E型铁心开关磁通电机的电磁性能解析计算_杨玉波

    E型铁心开关磁通电机的电磁性能解析计算_杨玉波
    发表于 01-08 13:15 1次下载

    智能小车有那些功能智能小车的五个功能解析包含程序

    本文档的的主要内容详细介绍的是智能小车有那些功能智能小车的五个功能解析包含程序主要内容包括了:1超声波自动驾驶模式,2 贴墙模式,3 跟随模式,4 红外自动驾驶模式,5循迹模式
    发表于 11-27 08:00 51次下载
    智能小车有那些<b class='flag-5'>功能</b>智能小车的五个<b class='flag-5'>功能解析</b>包含程序

    LabVIEW的GPIB的总线标准接口功能解析

    GPIB系统中设备与总线的交互作用定义为接口功能。GPIB标准共定义了10种接口功能,包括5种基本接口
    发表于 07-23 16:48 3618次阅读

    tft_espi和nodemcu连接

    1、 下载tft_espi库https://github.com/Bodmer/TFT_eSPI2、 解压后导入arduino根目录下的libraries中3、 打开User_Setup.h这个文件
    发表于 10-25 19:51 9次下载
    tft_<b class='flag-5'>espi</b>和nodemcu连接

    蓝桥杯单片机第十届国赛 部分功能解析

    @蓝桥杯第十届国赛部分功能解析TOC蓝桥杯第十届国赛 部分功能解析备注: 这是本人第一次发表的文章,内容有不足、有问题、有改进的地方请在评论区留言 本人将积极改进按键部分:下降沿代码
    发表于 12-17 18:35 3次下载
    蓝桥杯单片机第十届国赛 部分<b class='flag-5'>功能解析</b>