前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >I3C协议 |02. Master和Slave

I3C协议 |02. Master和Slave

作者头像
用户10108023
发布2024-03-06 13:32:20
2830
发布2024-03-06 13:32:20
举报

01、I3C协议学习笔记

在I3C总线上,总是包含一个主机和若干个从机,从机又可以是I3C从机,同时支持I2C从机。一个I3C设备可以被设计成仅为主机或者仅为从机,或者既可以为从机也可以为主机,必须设定为主机或者从机,但不能同时为主机和从机。

要使该I3C总线正常工作,总线上的多个I3C设备中只有一个可以初始配置(初始化)为I3C主设备。该I3C设备将具有“Main Master”设备角色,并将是总线上第一个作为”Current Master”的I3C设备,I3C总线上的所有其他I3C设备和I2C设备将被初始化配置为从设备。

但是,在初始总线配置之后,可以使用提供的I3C命令(CCCs),改变当前master,总线上具有master功能的从机,即Secondary Master,需要发送"Master Handover" CCC命令。新的主设备发送这个命令以请求主设备控制权,当前的主设备应对该请求作出回应并将主设备权移交给请求设备。

在典型应用中,当前主设备只能是总线上的 I3C 设备,I2C设备不具备成为主机的功能。它发送大部分 I3C 命令 (CCC),寻址所有从设备(广播 CCC)或特定的单个从设备(定向 CCC)。当前主设备也是I3C 总线上唯一允许发送I2 C 消息的设备。

除了发送 I3C 命令和I2 C 消息之外,I3C 主设备还负责:

  1. 生成总线时钟;
  2. 管理Pull-Up结构;
  3. 管理动态地址分配过程(包括热插拔),同时充当Main Master;
  4. 管理总线上 I3C 从设备的 START 请求以及地址仲裁请求:
    • 产生带内中断;
    • 针对Hot-Join事件
    • 成为Current Mater;
  5. 支持I2C从设备
  6. 支持I3C SDR模式

从设备负责:

  1. 请求In-Bond带内中断;
  2. 产生Hot-Join事务
  3. 请求成为当前Master, 如果当前从机也具有主机功能;

I3C主设备可以充当下面的角色:

  1. Main Master:初始化I3C总线,作为第一个“current master”.
  2. SDR-Only Main Master: 仅支持SDR模式的主机
  3. Secondary Master: 具备成为Master的能力,当前作为slave存在。
  4. SDR-Only Secondary Master: 仅支持SDR模式的第二主机 。

**注意**,Current master 没有正式定义为一种I3C设备角色,也没有在寄存器中显示反映,在I3C设备特性表中也没有体现。

I3C从设备可以充当下面两种角色:

  1. I3C Slave: 普通的I3C设备,不具有成为Master的能力;
  2. SDR-Only Slave: 仅支持SDR模式的slave,不支持HDR模式;
  3. I2C slave: 充当I2C设备,不具备i3c主机或者从机的功能;

好了,今天的分享就到这里了,个人愚见,如有错误也欢迎批评指正。持续更新,欢迎关注。觉得有帮助的朋友,希望能够点个赞鼓励一下!!你的每个鼓励都是我持续创作的动力!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 不二鱼 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档