I3C总线HDR模式研读

基本的I3C并不支持HDR模式,但是为了兼容I3C V1.x设备,基本的I3C设备必须能够检测到HDR进入、退出以及重启, I3C V1.x的设备可以在相同的总线频率上传输更多的数据。

注意:I3C总线通常初始化并配置为SDR模式,永远不会配置为HDR模式。

I3C V1.x HDR模式,意味着整个I3C总线可以进入给定的HDR模式,一旦进入,则HDR模式在传输结束前一直有效。

一个HDR周期包括五个步骤:

  1. I3C v1.x主机广播一个进入HDR模式的CCC,指明将要进入哪个HDR模式。
  2. 总线上的I3C v1.x 设备转换到HDR模式。
  3. I3C v1.x主机发出一个HDR命令,然后由I3C v1.x主机或I3C v1.x从设备发送HDR数据。
  4. 发送一个HDR重启模式或HDR退出模式,若发送HDR重启模式,则发送一个新的HDR命令。
  5. I3C停止,以总线空闲状态结束。

进入HDR模式后,HDR 退出模式用来退出HDR模式并重新进入SDR模式。相同的HDR退出模式用于退出所有HDR协议; 该模式不会出现在任何HDR协议的常规数据或命令流中。所有的I3C从设备都要检测并回应HDR退出模式,不管从设备是否支持任何特殊的HDR模式。

除了HDR退出模式,也可以选择HDR重启模式。重启模式可以在不强制进入SDR模式的情况下,在HDR模式下发送多个信息。也就是说,当I3C总线处于给定的HDR模式时,可以将HDR命令发送给从机,或由从机发出,然后可以使用HDR重启模式立即发送另一个HDR命令给该从机(或不同的从机),在HDR命令期间不需要退出当前的HDR模式。从机在任何HDR模式下都要检测并相应HDR重启模式。和HDR退出模式不同,HDR重启模式仅仅被支持当前HDR模式的从机识别。

HDR退出模式定义如下:

SDA起始高电平,SCL起始低电平

SDA从高电平向低电平转换四次,同时SCL保持低电平

每个SDA转换之间的间隔至少为Tdig_h

HDR退出模式的最后,SCL拉高然后SDA拉高,常规的I3C停止条件。

HDR重启模式是HDR退出模式的一个子集,定义如下:

  SDA起始高电平,SCL起始低电平

      SDA翻转四次(下降,上升,下降,上升)

下一边缘是SCL上升。SDA可能会随着SCL上升而改变,但SCL保持上升。

所有的I3C从机应该包含HDR退出模式检测器。该检测器只有在进入HDR模式后才可以使能,退出HDR模式后将禁止使能。HDR退出模式检测器可以由数字逻辑实现,也可以由软件实现。

对于数字逻辑实现,基本的逻辑模型中SCL位于低电平,所以将SCL拉高将复位检测器。仅使用SDA下降沿,将SDA当作时钟。原理如下图:

检测器使用SDA的反相版本作为时钟(因此为上升沿逻辑,但可以使用下降沿逻辑),并在SCL为高电平或模块不在HDR模式时复位。 复位的异步特性保证了安全性。 如图28所示。由于在HDR模式下SCL与SDA的特性同时发生变化,因此在SDA之后和下一个SDA之前,总线从机可能会看到SCL发生变化。如果HDR退出模式检测器只使用时钟逻辑,则它根本看不到任何变化(在此示例中,SDA上升沿时将始终看到SCL为低电平)。 因为检测器在SCL上使用异步复位,所以即使在上述情况(b)中,SCL的更改也会影响计数器。 请注意,每次更改之间SCL和SDA仍将保持约50ns。 因此,如图所示,如果SCL随时升高,则应重置HDR退出模式检测器,因此不会错误地发出错误的退出信号。

HDR重启和退出模式检测器

所有至少支持一种HDR模式的I3C从机设备都应该包含HDR重启模式检测。虽然此功能可以轻松地集成到所需的HDR退出模式检测器中,或者可以是HDR模式支持的一部分,但规范并不要求特定的设计(即取决于制造商)。 HDR重新启动模式检测器可以用数字逻辑或软件实现。

在基本的逻辑模型中,SCL保持低电平(0),当SCL拉高时会复位主检测器。同时利用SDA的下降沿,将SDA当作时钟。仅当出现两个下降沿的时候会检测到HDR重新启动,并先验证上升沿,然后验证HDR重新启动所需的SCL更改。

这个检测器以HDR退出模式检测器为基础建立,两个SDA下降沿出现之后,伴随着一个上升沿,HDR重启模式检查SCL的上升沿。无需考虑相同时刻SDA是否变为低电平;关键点在SCL的拉高。因为即使SDA变为低电平(因此触发退出模式检测器中的下一个触发器),由于尚未看到SDA的上升沿,因此左上触发器仍将保持1。

 

猜你喜欢

转载自blog.csdn.net/yinuoheqian123/article/details/108335287