I3C的技术概述

电子说

1.2w人已加入

描述

  电子传感器市场不断扩大,同比增长率达到两位数。推动这一增长的主要因素是物联网设备、移动设备(智能手机和平板电脑)和可穿戴设备中引入的大量传感器。由于采用了传感器融合技术,前所未有的应用场景现在成为可能,通过该技术将从多个传感器获取的信息组合以获得单个传感器无法获得的高级聚合信息。最常用于与这些传感器进行通信和控制的接口是内部集成电路 (I2C),其规格由飞利浦半导体(现为 NXP)于 1982 年推出。另一种常见接口是 SPI。至于SPI,它需要四根线,并且有许多不同的实现,因为没有明确定义的标准。

  这种在短时间内变得非常流行的接口的主要优点是只需要两个信号(一个用于数据,一个用于时钟),可以在同一总线上连接多个设备,并且能够支持不同的传输速率。然而,I2C 接口有一些重要的限制,包括连接到总线的从设备无法发起通信,需要使用上拉电阻(这会导致功率吸收增加和上升时间缓慢),以及限制性能的通信协议。

  当今与传感器的接口对设计人员来说是一项艰巨的挑战,请记住市场上有多种接口(I2C、SPI、UART 等),而拥有一个一致且通用的协议(a一种通用接口)与各种传感器进行通信。在本文中,我们将看到一个能够响应这些需求、结合 I2C 和 SPI 的优势并添加新功能的接口如何存在:I3C 接口,其正式名称为 MIPI 联盟改进的内部集成电路.

  I3C接口的目的

  在保持向后兼容性的原始 I2C 标准的基础上,由 MIPI 联盟标准化的新 I3C接口增加了改进和重要的附加功能,例如多点操作机制。这种创新接口的主要目的是引入一个通用标准来管理与不同类型传感器的通信,同时确保高性能、低功耗和减少接口引脚数量。图1展示了界面的应用图,在其中我们可以立即看到:

  •   只有两条线(SDA 和 SCL)的通信总线,与传统 I2C 完全一样
  •   多种速度通信模式,允许高达 30.3Mbps 的数据数据
  •   带内中断和热连接机制
  •   在同一总线上连接多个主节点的可能性
  •   能够连接 I3C 和 I2C 从设备(向后兼容)

SDA

图 1:I3C 总线应用图

  I3C 接口中引入的新功能之一是,连接到总线的每个从设备都可以利用用于通信协议的相同 SDA 和 CLK 线生成中断信号。在这方面,我们称之为“带内”中断 (IBI),这意味着不需要额外的线路或信号,从而节省成本并简化连接。以完全类似的方式,可以管理带内命令代码。其他显着特性包括 7 位动态寻址,仅适用于 I3C 设备(仍保留传统 I2C 接口的静态寻址)、多主机操作以及对总线上“热插拔”设备的支持(热连接功能) . I3C 接口还支持低功耗操作并显着提高传输数据速率,

  I3C:技术概述

  从电气的角度来看,I3C 接口与 I2C 标准有一些相似之处(例如只有两条线,SDA 和 SCL),但也有一些显着差异。首先,数据信号 (SDA) 具有开漏配置(例如,可以使用集电极开路输出来实现),允许从设备控制总线并发送中断。时钟信号 (SCL) 可以切换到推挽配置,这允许主设备生成基本频率为 12.5 MHz 的时钟信号。更准确地说,I3C 具有四种数据传输模式:SDR 模式下的 12.5 Mbps(默认)和 HDR 模式下的 25、27.5 和 39.5 Mbps。不包括链接到每个事务的控制字节,可实现的实际比特率分别为 11.1、20、23.5 和 33.3 Mbps。

  在左侧的图 2 中,我们看到了 I3C(在其不同操作模式下)与传统 I2C 接口的功耗 (mJ/Mb) 之间的比较。蓝色条形图表示 3.3V 总线电源电压,而红色条形图表示 1.8V 电源电压。在图 2 的右侧,比较了分别使用 I3C 和 I2C 可获得的原始比特率。对这些图表的检查表明,即使在兼容的 I2C 模式下,新的 I3C 接口如何比传统 I2C 更节能,并且支持超过 33 Mbps 的有效传输速度。

SDA

SDA

SDA

图 2:I3C 和 I2C 在功率吸收和数据速率方面的比较

  带内中断

  由于 IBI 功能,I3C 标准克服了传统 I2C 接口的一个经典限制,即从节点无法在总线上自发地发起自己的事务。为此,传统 I2C 和 SPI 接口都需要专用线路,从而增加了成本和布线复杂性。另一方面,如果总线处于空闲状态,带内功能允许每个 I3C 从设备在它们认为必要时启动 START 事务。为此,如果总线可用,从节点将 SDA 线拉低并等待当前主节点将 SCL 线拉低,完成 START 阶段。通过在 SCL 线上向从机提供时钟信号,主机允许后者用自己的地址驱动 SDA 线。如果多个从设备同时尝试访问总线,仲裁电路会为地址最低的从设备分配优先级。此时,master 有三个选项可用:

  •   接受slave的请求,发送ACK并获取slave发送的数据字节。
  •   拒绝来自从设备的请求,但不禁用中断(被动 NACK),一旦总线可用,从站现在可以重试操作。
  •   通过禁用中断并发送 NACK 来拒绝来自从设备的请求。

  从设备使用带内中断机制将事件或状态变化通知主设备。通过这种机制自发发送信息的可能性允许 I3C 传感器仅在这些物理量发生显着变化时(例如,想想检测下降运动的加速度计),而不需要与传统 I2C 和 SPI 接口一样的专用中断线。

  热连接功能

  此功能允许 I3C 传感器在正确配置后连接到总线。在现代基于传感器的应用中,例如与物联网相关的多种场景,不仅要确保高性能,还要确保高效运行,从而最大限度地降低传感器(主要由电池供电)的功耗。由于具有热连接功能,传感器可以在不需要时保持关闭(或处于低功耗状态),并且仅在数据采集和传输的特定时期才连接到总线,与传统的“永远在线”解决方案。热连接请求只能由尚未分配动态地址的从站执行。为此,从站使用为此功能保留的物理地址;

  同样重要的是离线功能,它允许从节点变为非活动状态,然后在稍后恢复正常操作。有两种离线模式:

  •   从机完全不活动(相当于断电),只有在发生某些外部事件时才恢复活动;发生这种情况时,从设备热加入总线以获得新的动态地址。
  •   从设备部分处于非活动状态,从某种意义上说,它继续监视总线以检查是否向它发送了命令,例如从设备复位,根据这些命令,从设备将唤醒并返回操作。

  常用命令代码

  一个非常有用的功能是通用命令代码 (CCC),即主机用来与连接到总线(广播)的所有从机或特定从机进行通信的命令。CCC 命令包括标准操作,例如启用/禁用事件、处理特定 I3C 总线功能(例如,动态寻址和时序控制)或其他总线操作。所有与 CCC 命令相关的代码均由 MIPI 联盟定义,一些值保留用于未来扩展。

SDA

图 3:动态地址分配 ENTDAA CCC 总线模式

  主控请求

  此功能允许辅助主机在他们打算获取活动主机角色时发送主机身份请求 (MR)。如果当前船长接受该请求,则将船长从后者转移到次要船长。

  通讯方式

  I3C接口为用户提供了多种通信方式,可分为以下几类:

  •   单数据速率 (SDR) 是与传统 I2C 接口的消息交换兼容的模式,并提供高达 12.5 .MHz 的数据速率
  •   高数据速率 (HDR) 包括几种与 I2C 不兼容的消息交换模式。在 SDR 和 HDR 操作模式下,SDA 引脚用作双向数据信号。第二个引脚在 SDR 和 HDR-DDR 模式下用作时钟信号(SCL)或在 HDR-TSL 和 HDR-TSP 协议通信模式下用作双向数据信号。

  SDR 模式支持不同类型的消息,例如标准 I2C 消息、广播消息和 CCC 消息,这些消息允许主设备与总线上的所有设备通信并处理从设备转发的请求(例如,带内中断或请求假设主人的角色)。有两种主要的 HDR 模式:HDR-DDR(双倍数据速率)和 HDR-TSL/TSP(三进制符号),它们提供高于 33 Mbps 的比特率,并且比快速模式(400 kHz)下的标准 I2C 的吸收更低)。HDR-DDR 可用于与 MIPI I3C 从设备通信,允许传统 I2C 设备连接在同一总线上,这将忽略高速 MIPI I3C HDR 广播。HDR-DDR 模式使用 SCL 信号作为时钟,SCL 两侧的数据位同步。另一方面,HDR-TSL/TSP 模式允许三进制符号编码(即,三位数基本代码)用于 I3C (TSP) 和 I2C-legacy inclusive (TSL) MIPI 系统。HDR-TSL 同时使用 SCL 和 SDA 作为数据线,其中每个周期至少必须经过一条线。转换索引用于将二进制符号的传输编码为三进制,以实现以非常低的功率进行高速传输。

SDA

图 4:进入 HDR 模式 CCC 总线模式

文章来源:eeweb Stefano Lovati

编辑:ymf

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分