摘要
对于诸多应用,如移动电话、汽车、工业控制、以电池为动力的移动设备、互联网等,在传感器连接方面采用了I2C串行通信协议,原因在于其简单的两线接口体系结构。虽然也存在其他传感器接口,如串行外围接口(SPI)以及通用异步收发器(UART),但I2C的使用更为常见,原因在于其实施简单,引线数低。
然而,随着采用的传感器变多,在很多情形下,一台装置中有可能含有12个或更多的传感器,系统集成变得更加困难,这是因为不间断工作组件的低功耗和高性能要求。路由选择变得日渐困难,必须要支持一些可穿戴应用要求的最大数据率。标准I2C接口采用2线结构,可创建多种应用,这类应用需要额外的边带信号,来满足高优先级中断需求,这类信号为非标准性的且与具体实施相关。在图1中,给出了一个I2C体系结构示例。
图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联盟)
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系统支持的数据速率
**如果I2C从设备和I3C设备共存,则适用