使用高性能MIPI I3C扩展传感器连接

作者:Sriram Balasubramanian, IP 研发高级经理;Hezi Saar, 产品营销经理,Synopsys公司

摘要
对于诸多应用,如移动电话、汽车、工业控制、以电池为动力的移动设备、互联网等,在传感器连接方面采用了I2C串行通信协议,原因在于其简单的两线接口体系结构。虽然也存在其他传感器接口,如串行外围接口(SPI)以及通用异步收发器(UART),但I2C的使用更为常见,原因在于其实施简单,引线数低。

然而,随着采用的传感器变多,在很多情形下,一台装置中有可能含有12个或更多的传感器,系统集成变得更加困难,这是因为不间断工作组件的低功耗和高性能要求。路由选择变得日渐困难,必须要支持一些可穿戴应用要求的最大数据率。标准I2C接口采用2线结构,可创建多种应用,这类应用需要额外的边带信号,来满足高优先级中断需求,这类信号为非标准性的且与具体实施相关。在图1中,给出了一个I2C体系结构示例。

图1:基于I2C的传感器系统示例(MIPI 联盟)

图1:基于I2C的传感器系统示例(MIPI 联盟)

MIPI®联盟正致力于开发名为I3C(或SenseWire)的新标准,它吸纳了I2C和SPI的关键特性,并将其统一起来。使用全面的低引线数、可扩展性、以及体系结构的支持性,MIPI I3C增强了每一方式的容量和性能。它支持移动设备、移动影响以及嵌入系统应用预计近期将需要的传感器接口结构。在本文中,介绍了MIPI I3C规范,以及从I2C无缝连接I3C的关键优点。

介绍
MIPI I3C规范的一项关键目标是,以I2C生态系统和概念为基础建立,同时保留2线串行接口结构。系统设计人能够在单个设备中连接大量传感器,同时将功耗最小化,并降低部件和实施成本。与此同时,通过利用单条I3C总线,制造商能够将来自不同供应商的多种传感器结合在一起,提供新的功能,同时支持更长的电池寿命和更为经济的系统。在图2中,给出了一个基于I3C的传感器系统示例。

图2:使用单条I3C总线的基于I3C的传感器系统示例(MIPI联盟)

图2:使用单条I3C总线的基于I3C的传感器系统示例(MIPI联盟)

MIPI I3C规范具有与I2C的反向兼容型,允许传统的I2C从设备在相同接口上与支持MIPI I3C规范的新设备共存。MIPI I3C规范在2线接口上允许带内中断,这样就能大幅度降低设备的引线数和信号路径,并能在设备中集成额外的传感器。与I2C相比,MIPI I3C提供了更高的数据吞吐率,同时还能保持较低的逻辑复杂度,采用标准的I/O,提供更具适应性的总线拓扑,使得向I3C的转移成为一项颇有吸引力的选择。

I3C总线
I3C包含2线总线:串行数据(SDA)对应与双向串行数据;串行时钟(SCL)对应于特定的串行时钟,可用于时钟引线,或是特定高数据速率(HDR)下的数据引线。I3C总线支持不同类型消息的混合,如I2C类单数据速率(SDR)消息,它采用12.5 MHz速率的SCL时钟,以及能够实现更高数据速率的HDR消息。另外,还支持向主设备发出的带内从触发中断请求,其中可以包含申请主设备功能的请求。在规范中,还给出了关于I3C从设备之间对等通信的规定。

I3C数据率
I3C总线支持的数据率取决于总线模式或总线上的设备类型,以及其性能。仅连接有I3C设备的总线称为纯I3C总线。纯I3C总线支持从8.8 Mbps到26.7 Mbps的速率。典型情况下,纯I3C总线中的SCL时钟频率为12.5 MHz。对于同时连接了I2C和I3C设备的总线,I3C主设备能够在快速模式下(FM)和快速模式+(FM+)速率下与I2C从设备进行通信,速率分别为400 Kbps或1 Mbps。在这类混合模式总线中,I3C主设备仍能在相同总线上以高至20.5 Mbps的较高速率与I3C从设备进行通信。换句话讲,当将I2C设备与I3C总线相连时,总线的最高工作速率会降至20.5 Mbps,而不是26.7 Mbps。

正如所见到的那样,纯I3C总线支持具有较高性能的HDR和双数据速率模式,与已有选项相比,能显著改善性能和能耗效率。I3C还支持多个主设备,动态寻址,命令码兼容,以及高级功耗管理的统一方法,如睡眠模式等。在表1中,给出了I3C系统支持的数据速率。

表1:I3C系统支持的数据速率<br />
**如果I2C从设备和I3C设备共存,则适用

表1:I3C系统支持的数据速率
**如果I2C从设备和I3C设备共存,则适用

数据传输发生在以“START”字段开始的帧内,随后跟着的是目标从设备地址、数据,最后是“STOP”字段。要想进入HDR模式,需向所有从设备发送专门的广播地址数据头,随后跟着的是高数据速率模式读/写命令和数据。高数据速率模式采用退出模式协议来结束。使用“START”后的数据头,可实现总线仲裁特性。命令码称为公用命令码(CCC),用于管理设备,并进入高数据速率模式。在任何时候,I3C仅允许一个主设备控制I3C总线。在规范中,给出了从一个设备切换至另一设备的主设备功能切换机制。

I3C总线配置和设备作用
I3C总线包含5种不同的设备特性:

  • 一级主设备:用于控制I3C总线和功能;包括总线所有权控制以及切换至二级主设备。
  • 二级主设备:获取对I3C总线的临时控制;需要来自一级主设备的许可;完成控制任务后,将控制交回到一级主设备。
  • 从设备:这类设备的行为相当于I3C主设备的从设备,与来自主设备的公用命令或单独命令对应。
  • 对等从设备:能够直接写入到另一从设备或从另一从设备读取数据的设备,无需与主设备的交互。
  • I2C从设备:I3C总线中的传统I2C设备;I3C主设备能够有条件地与这类传统设备进行通讯;对速度和容量存在限制。
  • 图3:I3C系统中的总线设备

    图3:I3C系统中的总线设备

    在MIPI I3C规范中,定义了适用于每一类型设备的不同特性,如管理SDA仲裁,动态地址分配,热接入特性,HDR主设备和从设备性能。

  • 管理SDA仲裁:当多个设备同时进行传输时,就需要用到仲裁,来解决总线的所有权问题。在仲裁过程中,I3C采用了SDA线,以及漏极开路方法。典型情况下,主设备负责SDA仲裁管理。
  • 动态地址分配:对于与I3C总线相连的每一设备,均需要用于后续事务的独特地址。该地址由I3C一级主设备分配,在总线的初始化过程中分配,或是当新设备连接至现有已配置I3C总线时分配。该过程称为动态地址分配。
  • 热接入特性:对于将在I3C首次加电时激活的所有从设备,并不需要该特性。这种特性出现在两种情形:1)在随后将部分从设备实际连接到总线中,或是这类设备已存在,但尚未激活;2)在总线处于活动状态后的一段时间后为这类设备加电。在总线中激活这类从设备的过程称为热接入。使用热接入特性,当从设备发出请求时,主设备能够将动态地址赋予从设备。
  • HDR主设备和从设备性能:主设备和从设备均支持高数据速率,如MIPI I3C规范中定义的16.84 Mbps和更高的速率,称为HDR主设备/从设备性能。
  • I3C使用案例示例
    图像传感器
    目前,很多系统采纳了流行的MIPI摄像机串行接口(CSI-2)协议,用于连接多种图像传感器,基于I2C协议的旁带控制通道用于摄像机控制接口(CCI)。按照预期,对于与SOC的连接,将采用I3C。采用这一新的配置,能够减少引线数,并简化系统实施,如图4所示。

    图4:将I3C和MIPI CSI-2协议用于摄像机控制接口

    图4:将I3C和MIPI CSI-2协议用于摄像机控制接口

    图像传感器能够利用I3C较高的性能来进行控制信息通信,并传输实际图像数据。这类使用与具体情形有关,按照预期,这类使用对于始终工作的图像感知应用来说十分有用,在所述应用中,需要低带宽像素分辨率。很可能的情况是,我们会见到支持I3C的图像传感器,其中,仅将其用作像素通信的数据路径。

    传感器子系统
    在图5中,显示了SOC总线子系统中的I3C主设备。IP子系统中的模型十分类似于在当前设计中使用I2C主设备的方式,能够以最小风险方便地迁移至I3C总线。

    图5:基于AMBA的I3C子系统

    图5:基于AMBA的I3C子系统

    典型情况下,这类子系统基于ARM® AMBA®总线系统,其中,I3C主设备与CPU相连。性能不同的多个传感器设备与I3C总线相连,I3C总线工作在不同模式和速度下。这类传感器的典型示例包括移动设备中的触摸板传感器,陀螺仪和摄像机接口,它们全都采用I3C总线与SOC中的CPU进行通信。

    传感器中枢
    图6显示了一个使用I3C传感器中枢的应用示例。在该情形下,I3C总线具有二级主设备,它与一级主设备分离,一级主设备与多个传感器相连。当作为I3C中枢工作时,二级主设备会获得I3C总线的所有权,并与传感器直接通信。一旦二级主设备在其I3C中线中获得相关的传感器数据,它会与一级主装置进行通信,一级主设备负责将数据传送至CPU。

    图6:I3C传感器中枢使用案例示例

    图6:I3C传感器中枢使用案例示例

    总结
    MIPI I3C规范结合了I2C和串行外围接口(SPI)的多种特性,提供了统一的标准和可扩展接口,能够将多个传感器与SoC相连。它提供了低的引线数和低功耗解决方案,可为集成了大量传感器的系统提供所需的吞吐率,从而降低成本。对于多种应用,如基于使用摄像记录控制接口(CCI)的MIPI CSI-2协议的图像传感器,已开始采用I3C来替代早先的I2C总线。

    MIPI传感器工作小组由众多主要的系统设计和ASIC供应商组成,它们协同工作,致力于确定I3C规范,更为重要的是,从一开始,很多如Synopsys一样的领先IP供应商就参与到MIPI传感器工作小组,负责提供输入和规范知识,简化了实施和向后兼容。

    结合以生态系统,Synopsys实现了多种概念验证设计,可对规范中的多种假设进行验证确认,有助于统一和可扩展的接口。这样,可确保与其他解决方案的互操作性,有助于建立健康的生态系统。此外,使用Synopsys的DesignWare® MIPI I3C Controller IP,设计人员还能缩短开发周期,降低总的拥有成本,并将风险从传统的I2C迁移至I3C。