0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

FPGA之家 来源:数字ICer 作者:数字ICer 2022-11-14 09:31 次阅读

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。

d039f50e-63ae-11ed-8abf-dac502259ad0.png

图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 的数据比特率;

d04a5f3e-63ae-11ed-8abf-dac502259ad0.png

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

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

d057bfe4-63ae-11ed-8abf-dac502259ad0.png

图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等接口。




审核编辑:刘清

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

    关注

    58

    文章

    5724

    浏览量

    235679
  • SoC设计
    +关注

    关注

    1

    文章

    148

    浏览量

    18791
  • I2C
    I2C
    +关注

    关注

    28

    文章

    1490

    浏览量

    123971
  • SDA
    SDA
    +关注

    关注

    0

    文章

    124

    浏览量

    28166

原文标题:SOC设计之MIPI I3C

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MIPI-I3C总线接口简述

    访问MIPI Allliance官方网站时,发现早在2013年MIPI联盟就已建立了“MIPI I3C Working Group”,后来在2018年10月发布了
    的头像 发表于 10-25 10:23 1.2w次阅读
    <b class='flag-5'>MIPI-I3C</b>总线接口简述

    Gowin I3C SDR IP的参考设计

    本文档所介绍的参考设计主要包括以下三种类型: I3C SDR 主机和 I3C SDR 从机之间的通信;I3C SDR 主机和 GW-I2C 从机之间的通信;
    发表于 10-08 06:33

    基于MIPI I3C规范从I2C无缝连接I3C的关键优点

    (SPI)以及通用异步收发器(UART),但I2C的使用更为常见,原因在于其实施简单,引线数低。 MIPI I3C规范结合了I2C和串行外围接口(SPI)的多种特性,提供了统一的标准和
    发表于 11-16 19:11 2w次阅读
    基于<b class='flag-5'>MIPI</b> <b class='flag-5'>I3C</b>规范从<b class='flag-5'>I2C</b>无缝连接<b class='flag-5'>I3C</b>的关键优点

    MIPI联盟公开其传感器接口规范MIPI I3C

    接口规范的公开有助于智能手机、可穿戴设备、物联网设备、增强现实/虚拟现实和汽车系统实现更多设计创新 致力于为移动和受移动影响行业制定接口规格的国际组织MIPI®联盟今日宣布公开其传感器接口规范MIPI I3C
    的头像 发表于 06-30 07:21 4908次阅读

    关于MIPI I3C Sensor接口标准制定的介绍和应用

    MIPI I3C规定一种芯片到芯片接口,可以将设备中的所有传感器连接到应用处理器。其使用双线在标准的CMOS I/O上实现。该规格实现高达12.5兆赫的时钟速率并提供更高性能、高数据速率模式选项。其使用一小部分功率,而带宽比
    的头像 发表于 10-18 15:19 5056次阅读

    符合最新MIPI I3C规范的DesignWare IP提供高带宽和可扩展性

    Synopsys公司(纳斯达克股票代码:SNPS)今天宣布推出业界首款MIPI®I3C SM 控制器IP,以简化多个传感器与移动,汽车和物联网(IoT)等应用的集成
    的头像 发表于 08-07 10:31 4114次阅读
    符合最新<b class='flag-5'>MIPI</b> <b class='flag-5'>I3C</b>规范的DesignWare IP提供高带宽和可扩展性

    Arasan宣布现货供应PHY I/O IP

     Arasan的MIPI I3CⓇ Total IP™解决方案无缝集成MIPI I3CⓇ控制器、MIPI
    发表于 12-02 14:18 1588次阅读

    MIPI I3C主机控制器接口加速传感器集成

      现在可供下载的 MIPI I3C HCI 也包含在即将发布的 MIPI Touch 系列规范中,从而可以使用触摸命令和多个数据流来为设计添加差异化的触摸功能。应用处理器公司可以应用该规范来标准化其设备中使用的 HCI 方法。
    的头像 发表于 06-29 15:07 1834次阅读

    Gowin I3C SDR IP参考设计

    电子发烧友网站提供《Gowin I3C SDR IP参考设计.pdf》资料免费下载
    发表于 09-15 14:22 4次下载
    Gowin <b class='flag-5'>I3C</b> SDR IP参考设计

    I3C协议规范的详细内容

    本文讲解 I3C 协议规范的详细内容,从规范中可以看出,I3CI2C 复杂很多,硬件简单带来的是软件的复杂。 对于 Linux 常用版本,kernel-4.14 和 kernel-4.19
    的头像 发表于 07-22 16:13 3832次阅读
    <b class='flag-5'>I3C</b>协议规范的详细内容

    I3C Introduction是什么意思

    I3C Introduction I3C :Improved Inter Integrated Circuit ,是 MIPI(Mobile Industry Processor Interface
    的头像 发表于 07-22 16:16 917次阅读
    <b class='flag-5'>I3C</b> Introduction是什么意思

    I2CI3C的区别有哪些

    I2CI3C 主要区别如下: I2C 虽然也是两条线,但是很多时候传感器需要一条额外的中断线,来告诉主控数据已经准备好。I3C 允许从设备直接在总线上产生中断,不再需要一条额外的
    的头像 发表于 07-22 16:20 7059次阅读
    <b class='flag-5'>I2C</b>和<b class='flag-5'>I3C</b>的区别有哪些

    I2CI3C关于功耗和传输速率的对比

    I2CI3C 关于功耗和传输速率的对比: I3C 使用推挽功能的双线串行接口,速度可达 12.5 MHz I3C 同一总线上共存的传统 I2C
    的头像 发表于 07-22 16:24 1926次阅读
    <b class='flag-5'>I2C</b>和<b class='flag-5'>I3C</b>关于功耗和传输速率的对比

    什么是I3C接口 I3C和SPI接口有什么区别

    I3C接口使用两根通信线,一根是数据线(SDL),另一根是时钟线(SCL)。与I2C总线一样,I3C接口也支持多主设备(Main Master)和从设备(Slave)之间的通信。
    的头像 发表于 03-05 16:50 2916次阅读
    什么是<b class='flag-5'>I3C</b>接口 <b class='flag-5'>I3C</b>和SPI接口有什么区别

    I3C接口通信基础

    I 2 CI3C之间显着的变化是时钟速度。I 2 C 通常为 100 kHz、400 kHz 或 1 MHz,而
    发表于 05-03 10:22 3845次阅读
    <b class='flag-5'>I3C</b>接口通信基础