作为I2C继任者的I3C有何不同?-Anlogic-安路社区-FPGA CPLD-ChipDebug

作为I2C继任者的I3C有何不同?

导言

之前谈I3C还是在发布V1.0版本的时候,现在V1.1.1版本都发布有段时间了,拿到最新Basic版本最直观的改变就是:标准页数边长了,从V1.0的180页左右,到现在的440页左右,增加了非常多,这篇主要在原来的基础上再介绍一下新增加的特性。

原本I3C目标范围只是在移动端,想要处理I2C和SPI的不足,现在再看到官网相关的介绍,在嵌入式领域的中速传输,I3C都想参加,传感器,ARM,MCU,FPGA等等,而不是之前所讲的简单应用到移动端。个人觉得I3C和SPI的对比度不是很强,它主要还是作为I2C的继任者。

1I2C缺点

I2C其实已经出现很多年了,缺点也不言而喻,功耗不能满足目前更严格的嵌入式系统,7位固定的地址,没有内带中断,需要额外的中断引脚,有限的传输速率慢慢不能满足一些高性能场所。

2SPI缺点

需要4根线,对当前的处理器pin资源来讲,这一点可能增加很大的引脚开销,进而带入芯片的成本。当接入多个从机,需要更多的片选引脚。这种对于移动端一些引脚敏感的场所非常不适。当然I3C覆盖SPI的大多数速度范围,不是全部。SPI的功耗同样也难以忽略,I3C旨在解决部分SPI的问题。

3再回顾以下I3C:

MIPI I3C具有I²C的优点,即简单、引脚数少、易于电路板设计和多路传输(相对于点对点),但提供更高的数据速率、更简单的焊盘和更低的功率。然后,I3C在给定的频率下增加了更高的吞吐量、带内中断(从目标到控制器)、动态寻址、高级电源管理和热连接。

4V1.1.1 Basic新增加特性

  • HDR-DDR Mode
  • HDR-BT (Bulk Transport) Mode
  • Grouped Addressing
  • Multi-Lane for Speed (for HDR-BT Mode only)
  • Target Reset with RSTACT CCC (previously defined in a separate addendum for I3C Basic v1.0)
  • Timing Control (Async Mode 0 only)
  • CCCs in HDR Modes
  • GETCAPS CCC
  • SETBUSCON CCC
  • SETROUTE CCC
  • Virtual Target support

具体可以下载协议查阅,最新版本为V1.1.1

// MIPI下载网址
https://www.mipi.org/specifications/i3c-sensor-specification

当然还有部分命名的修改,不过这些看标准就能知晓,和之前版本有所区别,如下表:

Deprecated Prior Term I3C and I3C Basic before v1.1.1 Replacement Term I3C and I3C Basic v1.1.1 and Later
Master Controller
Current Master Active Controller
Secondary Master Secondary Controller
Main Master Primary Controller
New Master (relating to Handoff) New Active Controller
Master-capable Device Controller-capable Device
Mastership, Mastering the Bus, etc. Controller Role, Control of the Bus, etc.
Mastership Request Controller Role Request
GETACCMST CCC GETACCCR CCC
Error Types M0 through M3 Error Types CE0 through CE3
Deprecated Prior Term I3C and I3C Basic before v1.1.1 Replacement Term I3C and I3C Basic v1.1.1 and Later
Slave Target
Slave Reset Pattern Target Reset Pattern
DEFSLVS CC DEFTGTS CCC
Error Types S0 through S6 Error Types TE0 through TE6

5厂家支持

许多公司开始发布具有I3C主/从的产品,有些公司提供IP,或者开发I3C协议的分析仪和验证硬件。比如NXP就开源了一个I3C的IP(从机),感兴趣的朋友可以下载看看:

// NXP 开源核地址
https://github.com/NXP/i3c-slave-design.git

 

往期推荐:

 

FPGA复位信号设计讨论

2022-02-08

图片[1]-作为I2C继任者的I3C有何不同?-Anlogic-安路社区-FPGA CPLD-ChipDebug

 

I3C协议讲解及其Verilog代码

2021-08-25

图片[2]-作为I2C继任者的I3C有何不同?-Anlogic-安路社区-FPGA CPLD-ChipDebug

 

 

请登录后发表评论

    没有回复内容