MIPI I3C的基本原理及其应用概述

描述

I2C和SPI不足之处

I2C不足之处

从设备无法主动向主设备发起通讯

降低吞吐量和上拉电阻限制了时钟速率且使得功耗偏高

SPI不足之处

需要四根通讯线路来进行较大的数据通讯

没有明确的定义标准

随着移动设备对于传感器数量的增加以及对性能的提高,I2C和SPI逐渐达到瓶颈,而I3C可以在同一根主线上支持更多的传感器设备,而且不会因为要支持中断或睡眠模式而增加额外的逻辑信号。

并且I3C可以在更低功耗的情况下提供更快的传输速率。

MIPI I3C概述

MIPI I3C (MIPI Alliance Improved Inter Integrated Circuit) 是一种可扩展的中速串行控制总线接口,用于将外围设备连接到应用处理器,简化集成并提高成本效率,适用于广泛的设备互连应用,包括传感器和存储器接口,为移动产品(从智能手机、可穿戴设备到汽车系统)提供创新设计。

MIPI I3C 结合了传统I2C和SPI接口的关键属性,以提供统一的、高性能、极低功耗的解决方案。

I3C v1.0 提供了集成机械、运动、生物识别、环境和任何其他类型传感器的新功能;

MIPI I3C v1.1(现为 v1.1.1)通过添加外围命令、控制和通信的新功能来构建该功能到短距离的主机处理器和系统可管理性。

MIPI I3C技术在标准CMOS I/O上实现。它使用两线接口,与4线SPI相比,可减少引脚数和信号路径,有助于在设备中集成更多传感器,为设计人员提供更低的复杂性和更大的灵活性。它还可以用作边带接口,以进一步减少引脚数。

MIPI I3C 支持 10Mbps的最低数据速率,并提供更高性能的高数据速率模式选项,与以前的选项相比,在性能和能效方面实现了大幅飞跃。

最新版本提供额外总线通道的可扩展使用,以提高接口速度;

支持带内中断(IBI),使存在于2线MIPI I3C总线上的设备能够发出中断,无需使用额外的I / O引脚信号。(I2C和SPI接口通常需要额外的逻辑信号来实现中断功能);

MIPI I3C基本原理

I3C接口使用的跟I2C类似,也是一根漏级数据线(SDA)和一根推挽式时钟线(SCL),该SDA线上的从设备可以控制数据总线,并且可以启动中断。

主控通过该SCL线可以将总线的时钟频率调节到12.5MHZ。

I3C支持多种类型设备,包括Main Master(当前主设备),secondary master(辅助主设备)、I3C Slave、I2C Slave。

SDA

图1

主设备可以动态为I3C分配7-bit地址,同时也支持为传统I2C设备静态的分配地址。这样就使得I3C兼容I2C。而且相比I2C功耗降低了一个等级,但是传输速率提升了一个数量级。

I3C提供了四种数据传输模式,在时钟速率达到12.5MHz时,默认的SDR模式下数据传输速率可以达到12.5Mbps,在HDR模式下可以达到25/27.5/39.5Mbps。除去控制字节,可有效提供 11.1、20、23.5 和 33.3 Mbps 的数据比特率;

SDA

图2 I3C 与 I2C能耗和数据速率对比

上图左侧显示了不同 I3C 模式下给定数据量与 I2C 相比的能耗(单位为毫焦每兆比特),而右侧是数据吞吐量。两者都显示出 I3C 的显着优势。

SDA

图3 I3C在不同模式下消耗的能量对比

从上图来看,I3C的HDR_TSP模式的功耗最低,从图2右侧可以看出HDR_TSP模式的数据速率最快,能够支持超过33Mbps的有效数据比特率。

在数据传输的过程中有I3C纠错机制进行保护;

I3C允许从设备启动带内中断,这对于I2C和SPI设备来说都需要一根额外的信号线才能实现。当总线处于空闲状态时,从设备可以通过中断机制发送一个"START"信号,然后主设备会为从设备提供一个时钟信号,从设备可以通过主设备提供的分配地址将设备驱动到总线上来启动中断。

如果此时有多个从设备尝试启动中断,则地址最小的从设备获得此次仲裁。同时主设备发出ACK信号响应此次中断并重新启动总线或者继续从从设备接收数据,也可以发出NACK信号来结束通信。

例如:I2C和SPI的缺陷是无法主动的与主设备进行通讯,如果传感器需要反馈数据,需要额外添加一个中断管脚,随着移动设备上传感器数量的增加,使得GPIO数增加。

而I3C可以通过带内中断,使从设备可以主动发起中断进行通讯,大大减小了对GPIO中断的依赖;

I3C允许从设备在总线配置完成之后再连接到总线上,即热接入特性。连接在同一总线上的传感器可以暂时关闭,直到需要唤醒的时候才激活唤醒。热连接应遵守特定的电气限制,不得干扰MIPI I3C线路。

已为启用和禁用事件、管理MIPI I3C特定功能(动态寻址、定时控制等)等标准操作定义了一组通用命令代码(CCCs)。

该通用命令代码可以发送广播(发送给所有设备)或者可以指向总线上的特定设备。在使用传感器时功耗和性能是必须考虑的,因为即使主程序处理器处于空闲状态(低功耗模式或者深度睡眠),Always-on 传感器 和 传感器 hubs也会不断的累积数据,累积的传感器数据通常是有规律的,需要在传感器、传感器 hub和应用处理器之间定期快速传输,从而最大限度地降低功耗。

主要亮点

将 I2C 和 SPI 的关键功能整合到先进的综合规范中;

减少引脚数和信号路径,两条通讯线路(SCL和SDA);

高性能;

低功耗;

低电磁干扰 (EMI);

支持多主设备,同时向后兼容 I2C;

其他技术亮点包括多控制器支持、动态寻址、命令代码兼容性以及用于高级电源管理功能(如睡眠模式)的统一方法。

用例

将外围设备连接到任何移动设备中的应用处理器

传感器管理功能,简化设备中多个传感器的连接和管理

MIPI Touch over I3C 为已处理和原始触摸数据提供融合接口选项

MIPI CCI over I3C 提供更快、更低延迟和更高效的相机控制

支持多种新应用

内存边带信道

“Always-on”imaging

服务器系统管理

调试应用程序通信

触摸屏命令和通信

传感器设备命令、控制和数据传输

功耗管理

它提供同步和异步时间戳,可以有效的把握外设传感器通讯的准确性和先后时间,以提高使用来自各种传感器的信号的应用程序的准确性。

它还可以快速批处理和传输数据,以最大限度地减少主机处理器的能耗。

I3C应用场景

适合低成本、现成标准化总线解决方案,该解决方案具有小型电路板 (PCB) 占位面积以及定义明确且易于使用的外围设备、传感器和应用生态系统。

随着时间的推移,I3C有可能在触摸、低分辨率camera、音效、环境传感器和变频器等领域取代传统的I2C,SPI,UART等接口。




审核编辑:刘清

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

全部0条评论

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

×
20
完善资料,
赚取积分