通信装置、通信方法、程序和通信系统

文档序号:1559714 发布日期:2020-01-21 浏览:12次 >En<

阅读说明:本技术 通信装置、通信方法、程序和通信系统 (Communication device, communication method, program, and communication system ) 是由 越坂直弘 高桥宏雄 于 2018-05-25 设计创作,主要内容包括:为了更明确、更有效地进行通信。为了执行使用组地址将多个任意从设备设置为单个组并将该组设置为目的地的通信,识别具有能够属于该组的组归属能力并进行通信的从设备。然后,在具有组归属能力的从设备和不具有组归属能力的从设备混合地接入总线的状态下,将组地址分配给被识别为具有组归属能力的从设备。本技术例如可应用于总线IF。(In order to communicate more specifically and efficiently. In order to perform communication in which a plurality of arbitrary slave devices are set as a single group using a group address and the group is set as a destination, a slave device having a group attribution capability that can belong to the group and performing communication is identified. Then, in a state where the slave device having the group affiliation capability and the slave device not having the group affiliation capability mixedly access the bus, a group address is assigned to the slave device identified as having the group affiliation capability. The present technique is applicable to the bus IF, for example.)

通信装置、通信方法、程序和通信系统

技术领域

本公开涉及通信装置、通信方法、程序和通信系统,并且更具体地涉及旨在使通信更加明确和有效进行的通信装置、通信方法、程序和通信系统。

背景技术

常规地,CCI(相机控制接口)已被广泛用作控制各种装置中的寄存器的总线IF(接口),并且CCI中的物理层已采用I2C(集成电路间)标准。另外,近来,已经要求实现I2C的加速,制定了I3C(改进的集成电路间)的规定作为下一代标准,并且已经推广了其修订。

例如,I2C和I3C被配置为在具有通信主动权的主设备的控制下,通过总线IF与连接至总线IF的从设备进行通信。另外,在I3C中,提供以下功能:为了与I2C的装置进行通信而保持兼容性的功能、从设备在中途能够接入总线IF的被称为热连接的功能、在多个主设备之间相互转移主权限的功能等。

另外,在专利文献1中,在I3C中,定义了错误检测方法,从而避免了伴随通信的开始或停止等的错误检测而导致的通信故障,从而公开能够更明确地进行通信的通信装置。

引用列表

专利文献

专利文献1:PCT专利公开号WO2017/061330

发明内容

[技术问题]

同时,在I3C的当前标准中,规定:将连接到总线IF的所有装置设置为目的地进行通信,并且将连接到总线IF的单个任意装置设置为目的地进行通信。

因此,例如,当期望在连接到总线IF的多个任意装置中进行相同内容的写入时,主设备必须重复地对其装置单独地进行写入传输。因此,为了使通信能够有效地进行,考虑创建用于将多个任意装置设置为目的地进行通信的方法。然后,有必要避免通过这种方法随着通信的进行而发生有关的通信错误,并且明确地进行通信。

鉴于上述情况做出了本公开,并且本公开的目的在于使得能够更加明确和有效地进行通信。

[问题的解决方法]

根据本公开的一方面,提供了一种具有通过总线的通信主动权的通信装置,包括:发送和接收控制单元,被配置为控制与在通信装置的控制下进行通信的另一通信装置的信号的发送和接收;以及处理执行单元,被配置为执行用于识别具有能够属于组的组归属能力的其他通信装置并进行通信的处理以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;以及执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

根据本公开的另一方面,提供了一种通信方法,该通信方法由具有通过总线的通信主动权的通信装置或程序执行,该程序使内置于具有通过总线的通信主动权的通信装置中的计算机执行处理,方法包括以下步骤:控制与在通信装置的控制下进行通信的另一通信装置的信号的发送和接收;执行用于识别具有能够属于组的组归属能力的其他通信装置并进行通信的处理以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;并执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

根据本公开的又一方面,提供了一种通信系统,其中,由具有通过总线的通信主动权的通信装置与在该通信装置的控制下进行通信的另一通信装置进行通信,其中,该通信装置包括:发送和接收控制单元,被配置为控制与另一通信装置的信号的发送和接收;以及处理执行单元,被配置为执行用于识别具有能够属于组的组归属能力的其他通信装置并进行通信的处理以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;并执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

根据本公开的方面,通过在通信装置的控制下进行通信的另一通信装置来控制信号的发送和接收,执行用于识别具有能够属于组的组归属能力的其他通信装置并进行通信的处理以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;并执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

[发明的有益效果]

根据本公开的方面,可更加明确和有效地进行通信。

注意,这里描述的效果不必受到限制,并且可以是本公开中描述的任何效果。

附图说明

[图1]图1是示出应用本技术的总线IF的实施方式的配置实例的框图。

[图2]图2是示出主设备和从设备的配置实例的框图。

[图3]图3是示出注册了装置信息的表的实例的示图。

[图4]图4是描述分配动态地址和组地址的处理的流程图。

[图5]图5是描述分配动态地址和组地址的处理的修改的流程图。

[图6]图6是示出GETGRPCAP命令的第一格式实例的示图。

[图7]图7是示出GETGRPCAP命令的第二格式实例的示图。

[图8]图8是示出GETGRPCAP命令的第三格式实例的示图。

[图9]图9是示出SETGRPA命令的第一格式实例的示图。

[图10]图10是示出SETGRPA命令的第二格式实例的示图。

[图11]图11是示出DEFGRPS命令的第一格式实例的示图。

[图12]图12是示出DEFGRPS命令的第二格式实例的示图。

[图13]图13是示出DEFGRPS命令的第三格式实例的示图。

[图14]图14是示出写入传输中的通信格式的实例的示图。

[图15]图15是示出写入传输和读出传输中的通信格式的实例的示图。

[图16]图16是示出写入传输和读出传输中的通信格式的实例的示图。

[图17]图17是示出应用本技术的计算机的实施方式的配置实例的框图。

具体实施方式

在下文中,将参考附图详细描述应用本技术的具体实施方式。

<总线IF的配置实例>

图1是示出应用本技术的总线IF的实施方式的配置实例的框图。

在图1中所示的总线IF 11中,3个主设备12-1至12-3和6个从设备13-1至13-6通过用于传输串行数据SDA的数据信号线14和用于传输串行时钟SCL的时钟信号线15而连接。

主设备12-1和12-2以及从设备13-1至13-4符合新提出版本的I3C的标准(I3C_v1.1)。而且,主设备12-3和从设备13-5符合当前版本的I3C的标准(I3C_v1.0),而从设备13-6符合I2C的标准。如上所述,即使将符合I3C_v1.1的装置、符合I3C_v1.0的装置和符合I2C标准的装置进行混合,也要配置总线IF 11以便进行操作。

另外,在I3C中,调整了热连接,该热连接是能够在中途接入处于操作状态的总线IF 11中的功能。由图1中虚线所示的从设备13-4指示例如,从设备13-4断电并且没有接入总线IF 11中的状态。在通电之后,从设备13-4可发送热连接请求并接入总线IF 11。

主设备12-1至12-3包括严格控制通过总线IF 11的通信的功能,并且从设备13-1至13-6可在具有主设备12-1至12-3的主动权的单个主设备的控制下,通过总线IF 11进行通信。注意,在下文中适当地,当不需要区分主设备12-1至12-3时,将它们简称为主设备12,并且当不需要区分从设备13-1至13-6时,将他们简称为从设备13。

另外,在主设备12-1至12-3中,将具有总线IF 11中的通信主动权(以下称为主设备权限)的一个主设备12称为当前主设备12C,并且将其他主设备12称为次级主设备12S。例如,没有主设备权限的次级主设备12S可在当前主设备12C的控制下通过总线IF 11进行通信,并且当从当前主设备12C转移了主权限时,次级主设备12S用作当前主设备12C。如上所述,主设备12在具有通信主动权的状态下用作当前主设备12C,并且以与从设备13相似的方式处理没有通信主动权的状态下的次级主设备12S。因此,在本实施方式中,在当前主设备12C的控制下进行通信的次级主设备12S将描述为包括在从设备13中。

这里,在下文中适当地,符合I3C_v1.1的从设备13-1至13-4和符合I3C_v1.0的从设备13-5也被称为I3C从设备13。此外,符合I3C_v1.1和I3C_v1.0中的任何一个的装置(即,主设备12和I3C从设备13)也被称为I3C装置。

同时,在I3C_v1.1中,将多个任意的I3C从设备13设置为目的地,检查当前主设备12C以设置和操作能够同时对I3C从设备13进行写入传输的组地址。

即,通过定义如下面描述的图6至图8所示的格式的SETGRPA命令,相同的组地址被设置给属于同一组的多个I3C从设备13。例如,通过为每个组设置动态地址,可将动态地址用作组地址。注意,单个I3C从设备13可属于多个组,并且可将至少一个或多个组地址分配给单个I3C从设备13。

例如,当前主设备12C通过使用SETGRPA命令将组地址设置给相应的组。然后,在进行由I3C规定的各种类型的写入传输(直接写入CCC/专用写入/HDR写入)的情况下,当前主设备12C将组地址指定为写入传输命令的从设备地址字段。通过该处理,当前主设备12C可通过一次写入传输将数据同时写入属于该组的多个I3C从设备13中。

同时,I3C从设备13接收与用于指定接入总线IF 11的所有I3C从设备13的地址7’h7E、I3C从设备13自身的动态地址或I3C从设备13自身所属的组地址有关的通信,并根据通信内容执行处理。

另外,当当前主设备12C使用组地址执行指定并且将读出命令发送到多个I3C从设备13时,估计从多个I3C从设备13传输的读出数据发生冲突。因此,假定一种操作,其中在进行由I3C规定的各种类型的读出传输(直接读出CCC/专用读出/HDR读出)的情况下,禁止将组地址指定为读出传输的命令的从属地址字段。注意,如下面要描述的图15和图16所示,当针对多个I3C从设备13中的每一个控制输出读出数据的定时时,可避免读出数据的冲突。在这种情况下,在进行各种类型的读出传输的情况下,可在不禁止指定组地址的情况下操作总线IF 11。此外,可安装寄存器等以实现指定了组地址的读出传输。

同时,图1中所示的总线IF 11被形成为符合I3C_v1.1(调整了与组地址有关的功能)的主设备12-1和12-2与I3C从设备13-1至13-4、符合I3C_v1.0(没有调整与组地址有关的功能)的主设备12-3与I3C从设备13-5,以及符合I2C标准的I2C从设备13-6的混合。

在如上所述配置的总线IF 11中,为了通过主设备12-1和12-2进行组地址的分配,需要调整I3C_v1.1以识别与接入总线IF 11的所有主设备12和从设备13的组地址相对应的I3C装置。

另外,当接入到总线IF 11中的多个主设备12对应于组地址时,需要调整I3C_v1.1,使得那些主设备12可相互识别其他主设备12分配给的组地址。即,存在以下问题:当一些主设备12不能识别由其他主设备12分配的组地址时,已经使用的地址值已经用于该组地址,并且发生通信错误。另外,存在以下问题:由一些主设备12设置的组地址被其他主设备12重新写入,从而组地址信息被破坏并且发生通信错误。

为了解决这些问题,当操作组地址时,配置符合I3C_v1.1的主设备12-1和12-2,以便可识别与组地址相对应的状态,并且可避免由于组地址的使用而发生相关的通信错误。该处理允许使用总线IF 11中的组地址来明确地避免通信错误并且有效地进行通信。

<主设备和从设备的配置实例>

图2是示出主设备12和从设备13的配置实例的框图。

在图2所示的配置中,主设备12被合并为主设备装置21的物理层,并且主设备装置21包括位于主设备12的较上位置的上层22(例如,CCI层)。以类似的方式,从设备13被合并为从设备装置31的物理层,并且从设备装置31包括位于从设备13的较上位置的上层32(例如,CCI层)。

如图2所示,主设备12包括发送和接收控制单元41、数据接收单元42、数据发送单元43、主控权请求控制单元44、命令解释单元45、信息保持单元46、命令发送单元47和表格保持单元48。注意,可通过例如使用半导体集成电路、可编程半导体集成电路、软件等来实现每个单元或这些单元的一部分。

发送和接收控制单元41控制与连接到总线IF 11的其他装置的信号的发送和接收。例如,发送和接收控制单元41根据串行时钟SCL的定时驱动时钟信号线15、发送串行时钟SCL并驱动数据信号线14,从而控制串行数据SDA向其他装置的传输。另外,根据串行时钟SCL的定时,发送和接收控制单元41控制通过经由其他装置驱动数据信号线14而发送的串行数据SDA的接收。

在发送和接收控制单元41的控制下,数据接收单元42接收从其他装置发送的数据,并将该数据提供给上层22。

在发送和接收控制单元41的控制下,数据发送单元43将上层22提供的数据发送到其他装置。

根据来自上层22的请求,当主设备12是次级主设备12S时,主控权请求控制单元44针对从当前主设备12C转移主设备权限的请求进行与主控权请求的发送有关的控制。

命令解释单元45对在发送和接收控制单元41的控制下接收到的命令进行解释,并且参考由信息保持单元46保持的各种类型的信息,根据该命令执行处理。

信息保持单元46可保持通过命令解释单元45根据命令执行处理所需的各种类型的信息。在信息保持单元46中,例如,保持有组相关能力信息,其是与该组相关的能力,并且是表示主设备12自身包括的能力的信息。例如,当主设备12自身具有分配组地址的能力(以下,也称为组管理能力)时,信息保持单元46保持指示包含组管理能力的组相关能力信息。

根据来自上层22的请求,命令发送单元47在发送和接收控制单元41的控制下通过总线IF 11发送命令。此外,根据从主设备12发送的命令,例如,命令发送单元47将从接入总线IF 11中的装置发送的组相关能力信息提供给表格保持单元48。

表格保持单元48保持装置信息表(参照后述的图3),在表中与各装置相关联的装置信息被注册,同时装置信息与接入总线IF 11中的所有装置相关联。例如,在装置信息表中,包括组相关能力信息、组地址等的装置信息被注册,同时装置信息与识别该装置的装置ID(标识)相关联。然后,表格保持单元48将从命令发送单元47提供的每个装置的组相关能力信息保持在装置信息表中,并且同时还将组相关能力信息通知给上层22。

从设备13包括发送和接收控制单元51、数据接收单元52、数据发送单元53、热连接请求控制单元54、动态地址保持单元55、组地址保持单元56、命令解释单元57和和信息保持单元58。此外,例如,可使用半导体集成电路、可编程半导体集成电路、软件等来实现每个单元或这些单元的一部分。

发送和接收控制单元51控制与连接到总线IF 11的其他装置的信号的发送和接收。例如,根据串行时钟SCL的定时,发送和接收控制单元51控制通过经由其他装置驱动数据信号线14而发送的串行数据SDA的接收。而且,根据串行时钟SCL的定时,发送和接收控制单元51驱动数据信号线14,从而控制串行数据SDA向其他装置的发送。

在发送和接收控制单元41的控制下,数据接收单元52接收从其他装置发送的数据,并将该数据提供给上层32。

在发送和接收控制单元41的控制下,数据发送单元53将上层32提供的数据发送到其他装置。

热连接请求控制单元54针对处于未接入总线IF 11的状态下的从设备13要接入处于操作状态的总线IF 11的请求,进行例如与热连接请求的发送有关的控制。

动态地址保持单元55可保持分配给从设备13的动态地址,并根据命令解释单元57的指令适当地保持动态地址。

组地址保持单元56可保持分配给从设备13的组地址,并根据命令解释单元57的指令适当地保持组地址。

命令解释单元57对在发送和接收控制单元51的控制下接收到的命令进行解释,参考由信息保持单元58保持的各种类型的信息,并根据该命令执行处理。

信息保持单元58可保持通过命令解释单元57根据命令执行处理所需的各种类型信息。在信息保持单元58中,例如,保持有组相关能力信息,该信息是指示与组有关的能力的信息并且是从设备13本身包括的信息。例如,当从设备13自身具有分配组地址的能力(以下,也称为组归属能力)时,信息保持单元58保持指示包含该组归属能力的组相关能力信息。

这里,将参照图3描述由表格保持单元48保持的装置信息表。在图3A中,示出了由符合I3C_v1.1的主设备12-1和12-2的表格保持单元48所保持的装置信息表的实例,并且在图3B中,示出了由符合I3C_v1.0的主设备12-3的表格保持单元48所保持的装置信息表的实例。

如图3A所示,在I3C_v1.1的装置信息表中,注册了识别接入总线IF11中的所有装置的装置ID(在图3的实例中,装置ID:A至H)。然后,功能信息、静态地址(SA)、动态地址(DA)、组信息有效信息、组管理能力信息、组归属能力信息和组地址(GRPA)被注册为装置信息,装置信息与与相应的装置ID相关联。另外,在该装置信息表中,注册了作为当前主设备12C的主设备12的装置ID(在图3的实例中,装置ID:A)。

在功能信息中,指示接入总线IF 11中的装置中包括的功能的装置信息被注册,并且例如,指示I3C主要主设备、I3C次级主设备、I3C从设备和I2C从设备中的任何一个的装置信息被注册。

在静态地址中,将指示装置中包括的静态地址的地址值(SA值)注册为装置信息,此外,针对不具有静态地址的装置,注册指示事实的装置信息(无)。

在动态地址中,将指示分配给该装置的动态地址的地址值(DA值)注册为装置信息,此外,针对无法具有动态地址的装置(I2C装置),注册指示事实的装置信息(无)。另外,当可包括动态地址但尚未分配动态地址时,指示事实的装置信息(尚未)被注册在动态地址中。

在组信息有效信息中,指示在组管理能力信息、组归属能力信息和组地址中注册的装置信息有效的装置信息(存在),或指示其装置信息尚未获取的装置信息(不存在)被注册。

在组管理能力信息中,指示该装置具有分配组地址的能力的装置信息(存在)或指示该装置没有分配组地址的能力的装置信息(不存在)被注册。另外,对于未获取组管理能力信息的装置,组管理能力信息留为空白。

在组归属能力信息中,指示装置具有分配组地址的能力的装置信息(存在)或指示装置没有分配组地址的能力的装置信息(不存在)被注册。另外,对于未获取组归属能力信息的装置,组归属能力信息留为空白。

在组地址中,将指示分配给该装置所属的组的组地址的地址值(GRPA值)注册为装置信息。另外,对于无需分配组地址的装置(I2C装置,不具有组归属能力信息的I3C装置等),指示事实的装置信息(不存在)被注册。此外,在组地址中,当装置需要分配组地址但还没有将组地址分配给装置时,指示事实的装置信息(尚未)被注册。此外,对于未获取组地址的装置,组地址保留为空白。

此外,如图3B所示,在I3C_v1.0的装置信息表中,从在I3C_v1.1的装置信息表中注册的装置信息集中,功能信息、静态地址(SA)和动态地址(DA)被注册为装置信息,同时装置信息与相应的装置ID相关联。即,在I3C_v1.0中,由于未定义组地址,因此在装置信息表中未注册组信息有效信息、组管理能力信息、组归属能力信息和组地址。

如上所述,在表格保持单元48中,保持了装置信息表,在该装置信息表中注册了静态地址、动态地址或组地址的分配状态等。

<地址分配处理>

参照图4所示的流程图,将描述当前主设备12C分配动态地址和组地址的处理。

例如,当当前主设备12C通电时,处理开始,并且在步骤S11中,当前主设备12C进行其自身的初始化。然后,当前主设备12C的发送和接收控制单元41将数据信号线14和时钟信号线15的电位均驱动为H电平,并使总线IF 11进入总线空闲状态。

在步骤S12中,当前主设备12C在接入总线IF 11的I3C装置中识别出具有静态地址的I3C装置的存在。然后,当前主设备12C指定I3C装置的静态地址,并发送用于指示待分配的动态地址的SETDASA命令。根据上述内容,当将动态地址向具有静态地址的I3C装置的分配完成时,处理进入步骤S13。

在步骤S13中,当前主设备12C执行ENTDAA命令序列,以指示将动态地址分配给在步骤S12中尚未向其分配动态地址的其余I3C装置。根据上述内容,当将动态地址分配给接入总线IF 11中的所有I3C装置时,处理进入步骤S14。

在步骤S14中,当前主设备12C向接入总线IF 11中的所有次级主设备12S发送用于指示要共享装置信息的DEFSLVS命令。该处理允许当前主设备12C与次级主设备12S共享与接入总线IF 11的所有装置相关联的装置信息。注意,此时,不执行与组地址有关的处理,因此在步骤S14中共享的装置信息中,在上述图3所示的表中注册的装置信息集中,包括装置ID、功能信息、静态地址和动态地址。

在步骤S15中,当前主设备12C参考由信息保持单元46保持的组相关能力信息,并确定当前主设备12C自身是否具有分配组地址的能力。

在步骤S15中,当确定当前主设备12C不具有分配组地址的能力时,处理结束。例如,当当前主设备12C是符合I3C_v1.0的主设备12-3时,当前主设备12C不具有分配组地址的能力。另外,当将分配组地址的能力调整为I3C_v1.1中的选项,并且该能力未设置为作为当前主设备12C的主设备12-1或12-2时,则确定当前主设备12C不具有分配组地址的能力。

同时,在步骤S15中,当确定当前主设备12C具有分配组地址的能力时,处理进入步骤S16。

在步骤S16中,当前主设备12C向接入总线IF 11的所有I3C装置发送用于指示请求发送组相关能力信息的GETGRPCAP命令(参照后述的图6至图8)。根据上述内容,当当前主设备12C获取从每个I3C装置发送的组相关能力信息时,处理进入步骤S17。

在步骤S17中,当前主设备12C将在步骤S16中获取的组相关能力信息通知给图2的上层22。该处理允许上层22掌握每个I3C装置与组地址的对应关系,并且例如,上层22可确定组地址要分配给哪个I3C从设备13。

在步骤S18中,当前主设备12C确定是否将组地址分配给I3C从设备13。例如,当基于组相关能力信息进行确定的上层22指示当前主设备12C分配组地址时,当前主设备12C可根据指示确定要将组地址分配给I3C从设备13。

在步骤S18中,当当前主设备12C确定执行组地址的分配时,处理进入步骤S19。在步骤S19中,当前主设备12C发送用于指示分配组地址的SETGRPA命令(参照后述的图9和图10),并根据来自上层22的指令将组地址分配给I3C从设备13。

同时,在步骤S18中,当当前主设备12C确定不进行组地址的分配时,或者在步骤S19的处理之后,处理进入步骤S20。

在步骤S20中,当前主设备12C参考由表格保持单元48保持的装置信息表,并确定除了当前主设备12C之外是否存在具有分配组地址的能力的次级主设备12S。

在步骤S20中,当当前主设备12C确定存在具有分配组地址的能力的次级主设备12S时,处理进入步骤S21。

在步骤S21中,当前主设备12C向具有分配组地址的能力的次级主设备12S发送用于指示与待共享的组地址相关联的信息的DEFGRPS命令(参照后述的图11至图13)。通过该处理,当前主设备12C与具有分配组地址的能力的次级主设备12S共享与接入总线IF 11中的所有装置的组地址相关联的信息。作为与组地址相关联的信息,例如,当前主设备12C共享接入到总线IF 11中的每个装置的组管理能力信息和组归属能力信息。此外,当在步骤S19中将组地址分配给I3C从设备13时,当前主设备12C共享该组地址作为与该组地址相关联的信息。

在步骤S20中,当当前主设备12C确定不存在具有分配组地址的能力的次级主设备12S时,或者在步骤S21的处理之后,该处理结束。

如上所述,当前主设备12C获取接入到总线IF 11中的所有I3C装置的组相关能力信息,从而识别具有组归属能力的I3C从设备13。该处理允许当前主设备12C将组地址明确地分配给具有组归属能力的I3C从设备13。

此外,当前主设备12C获取接入总线IF 11中的所有I3C装置的组相关能力信息,从而识别具有组管理能力的次级主设备12S。该处理允许当前主设备12C与具有组管理能力的次级主设备12S共享与组地址相关联的信息。

如上所述,通过共享与组地址相关联的信息,例如,在总线IF 11中,可避免这样的情况:已经被其他主设备12使用的地址值被新用作组地址,从而发生通信错误。另外,通过共享与组地址相关联的信息,例如,在总线IF 11中,可避免这样的情况:重写了由其他主设备12设置的组地址,从而发生通信错误。因此,在总线IF 11中,不会发生通信错误,并且通过使用组地址可更明确和有效地进行通信。

注意,当前主设备12C分配动态地址和组地址的处理不限于参考图4描述的程序,并且可采用其他程序。

例如,当前主设备12C可通过如图5所示的程序来分配动态地址和组地址。

即,在图5所示的流程图中,在步骤S31至步骤S33中,执行与图4的步骤S11至步骤S13相似的处理。然后,在步骤S34中,当前主设备12C参考由信息保持单元46保持的组相关能力信息,并确定当前主设备12C自身是否具有分配组地址的能力。

在步骤S34中,当确定当前主设备12C具有分配组地址的能力时,在步骤S35至S38中,执行与图4的步骤S16至S19类似的处理,然后处理进入步骤S39。可替代地,在步骤S34中,当确定当前主设备12C不具有分配组地址的能力时,处理进入步骤S39。

在步骤S39中,当前主设备12C向接入总线IF 11的所有次级主设备12S发送用于指示待共享的装置信息的DEFSLVS命令。该处理允许当前主设备12C与次级主设备12S共享关于接入总线IF 11中的所有装置的装置信息(装置ID、功能信息、静态地址和动态地址)。

然后,在步骤S40中,当前主设备12C参考由信息保持单元46保持的组相关能力信息,并确定当前主设备12C自身是否具有分配组地址的能力。

在步骤S40中,当确定当前主设备12C不具有分配组地址的能力时,处理结束。同时,在步骤S40中,当确定当前主设备12C具有分配组地址的能力时,在步骤S41和S42中,执行与图4的步骤S20和S21类似的处理,然后处理结束。

如上所述,在总线IF 11中,例如,组地址可与静态地址和动态地址同时共享。

<GETGRPCAP命令的格式实例>

在图6中,示出了在图4的步骤S16中发送的GETGRPCAP命令的第一格式实例。

如上所述,GETGRPCAP命令指示用于向接入总线IF 11的所有I3C装置发送组相关能力信息的请求。

在图6所示的实例中,首先,当前主设备12C发出启动条件(S)、发送指定接入总线IF 11的所有装置的地址7’h7E,并连续发送请求发送组相关能力信息的公共命令代码(GETGRPCAP CCC)。然后,在重启(Sr)之后,当当前主设备12C发送从设备地址时,从设备地址的I3C从设备13发送回组相关能力信息(GRPCAP)。

如图所示,在8位的组相关能力信息中,第0位是指示该装置是否具有组管理能力的标志,第1位是指示该装置是否具有组归属能力的标志,并且第2位到第7位保留。因此,接收到用于请求发送组相关能力信息的公共命令代码并由从设备地址指定的I3C从设备13,可通过使用指示装置是否具有组归属能力的标志,允许当前主设备12C识别I3C从设备13自身的组相关能力信息。

即,当接收到GETGRPCAP命令的装置具有组管理能力或组归属能力时,该装置进行ACK响应。此外,具有组管理能力的装置向指示该装置是否具有组管理能力的标志发送1,而没有组管理能力的装置向指示该装置是否具有组管理能力的标志发送0。另外,具有组归属能力的装置向指示该装置是否具有组归属能力的标志发送1,而没有组归属能力的装置向指示该装置是否具有组归属能力的标志发送0。另外,保留区域向所有标志发送0。

同时,当接收到GETGRPCAP命令的装置不具有组管理能力和组归属能力时,需要在I3C_v1.1中对装置进行调整,以便进行NACK响应或进行ACK响应,然后通过ALL0发送数据。例如,在I3C_v1.0的调整中,接收不被支持的直接公共命令代码(直接CCC)的装置被调整以进行NACK响应。然后,由于在I3C_v1.0的标准中未调整GETGRPCAP命令,因此,符合I3C_v1.0的装置必须进行对GETGRPCAP命令的NACK响应。

如上所述,通过调整对GETGRPCAP命令的响应,即使在符合I3C_v1.1的装置和符合I3C_v1.0的装置混合的总线IF 11中,也可操作GETGRPCAP命令而不会产生冲突。

注意,由于GETGRPCAP命令是读出命令,因此只能将动态地址指定为从设备地址,而不能指定组地址。

另外,具有分配组地址的能力的主设备12需要在I3C_v1.1中进行调整,以便必要地发送如图6所示的GETGRPCAP命令。同时,不具有分配组地址的能力的主设备12需要在I3C_v1.1中调整以将其确定为未被发送的图6所示的GETGRPCAP命令。

在图7中,示出了GETGRPCAP命令的第二格式实例。

如图7所示,接收到GETGRPCAP命令的装置进行ACK响应,然后发送第一组相关能力信息(GRPCAP1)和第二组相关能力信息(GRPCAP2)。在第一组相关能力信息(GRPCAP1)中,发送指示该装置是否具有组管理能力的标志,并且在第二组相关能力信息(GRPCAP2)中,除了指示该装置是否具有组归属能力的标志之外,发送分配给该装置本身的组地址。注意,不分配组地址的装置和不具有组归属能力的装置发送7’h00(禁止分配)作为第二组相关能力信息的组地址。

在图8中,示出了GETGRPCAP命令的第三格式实例。

如上所述,单个I3C从设备13可属于多个组,并且可将至少一个或多个组地址分配给单个I3C从设备13。因此,已经接收到GETGRPCAP命令的I3C从设备13可向当前主设备12C通知能够分配给I3C从设备13本身的组地址的数量。

如图8所示,在组相关能力信息(GRPCAP)中,组地址的时隙数(可分配时隙数)被发送到第0位至第2位。注意,例如,不具有组归属能力的装置将0发送到所有第0位至第2位,从而指示事实。另外,保留第3位到第6位,并且将指示该装置是否具有组管理能力的标志发送到第7位。

注意,在图8所示的实例中,组地址的时隙数用3个位表示;然而,不限于此,可根据标准根据时隙的最大数目来确定位宽度。

通过使用上述格式的GETGRPCAP命令,当前主设备12C可识别接入总线IF 11中的所有装置的组管理能力和组归属能力。

<SETGRPA命令的格式实例>

在图9中,示出了在图4的步骤S19中发送的SETGRPA命令的第一格式实例。

在图9所示的实例中,首先,当前主设备12C发出启动条件(S)、发送用于指定接入总线IF 11的所有装置的地址7’h7E,并连续发送用于指示分配组地址的公共命令代码(SETGRPA CCC)。

然后,当前主设备12C在重启(Sr)之后发送从设备地址,并发送分配给从设备地址的I3C从设备13的7位地址值的组地址。注意,可将动态地址或已分配的组地址指定为此处发送的从设备地址。

然后,当接收到SETGRPA命令的装置具有组管理能力或组归属能力时,该装置进行ACK响应。此外,当尚未分配组地址时,装置将接收到的地址值的组地址设置为装置本身的组地址。可替代地,当已经分配了组地址时,装置将接收到的地址值的组地址更新为装置本身的组地址。

同时,当接收到SETGRPA命令的装置不具有组管理功能和组归属功能时,该装置必须进行NACK响应。在I3C_v1.0的标准中,例如,接收不被支持的直接公共命令代码(直接CCC)的装置被调整为进行NACK响应。然后,由于SETGRPA命令未在I3C_v1.0的标准中进行调整,因此符合I3C_v1.0的装置必须对SETGRPA命令进行NACK响应。

另外,具有分配组地址的能力的主设备12需要在I3C_v1.1中调整,以便必要地发送如图9所示的SETGRPA命令。同时,不具有分配组地址的能力的主设备12需要在I3C_v1.1中调整,以将其确定为未发送的图9所示的SETGRPA命令。

在图10中,示出了SETGRPA命令的第二格式实例。

如上所述,单个I3C从设备13可属于多个组,并且可将至少一个或多个组地址分配给单个I3C从设备13。

因此,当前主设备12C发送用于指示待分配的组地址的公共命令代码(SETGRPACCC),然后将用于组地址的可分配数目和地址值的有效标志,发送到从设备地址之后的从设备地址的I3C从设备13。

注意,当通过SETGRPA命令分配多个组地址时,只能将动态地址指定为从地址,并且禁止指定组地址。即,使用动态地址将I3C从设备13分别设置为目的地,并进行组地址的分配。

另外,valid=0的时隙禁用组地址,而valid=1的时隙启用组地址。然后,当前主设备12C必要地发送字节,该字节用于针对分配组地址的装置的组地址的时隙数来设置组地址。此时,例如,当字节数小于时隙数时,装置针对接收到的字节数设置组地址,并且不进行针对不足的设置。可替代地,例如,当字节的数量大于时隙的数量时,装置针对超过时隙的数量的部分忽略字节。

通过使用如上所述格式的SETGRPA命令,当前主设备12C可将组地址分配给接入到总线IF 11中的I3C装置。

<DEFGRPS命令的格式实例>

在图11中,示出了在图4的步骤S21中发送的DEFGRPS命令的第一格式实例。

如上所述,具有组管理能力的主设备12可通过使用DEFGRPS命令来相互共享组相关能力信息。

在图11所示的实例中,首先,当前主设备12C发出启动条件(S),发送用于指定接入总线IF 11的所有装置的地址7’h7E,并连续发送用于指示与待共享的组地址相关联的信息的DEFGRPS命令(DEFGRPS CCC)。此外,当前主设备12C发送被当前主设备12C识别为存在的、接入到总线IF 11中的所有装置的数量(计数),即,要被连续发送的数据的组合数量。

紧接着,当前主设备12C发送当前主设备12C自身的动态地址(DA)、组相关能力信息(GRPCAP)、组地址(GRPA)和GA有效。然后,当前主设备12C针对接入总线IF 11的所有装置的数量重复发送相似的数据。注意,关于I3C装置,发送动态地址(DA),并且关于I2C装置,发送静态地址(SA)。

作为GA有效,例如,当I3C装置不具有组归属能力时,发送1’b0,当I3C装置具有组归属能力但尚未分配组地址时,发送1’b0,并且当I3C装置具有组归属能力并且已经分配了组地址时,将发送1’b1。另外,作为组地址,当I3C装置不具有组归属能力时,发送7’h00,当I3C装置具有组归属能力但尚未分配组地址时,发送7’h00,并且当I3C装置具有组归属能力并且已经分配了组地址时,发送地址值。

另外,具有分配组地址的能力的主设备12需要在I3C_v1.1中调整,以便必要地发送图11所示的DEFGRPS命令。同时,不具有分配组地址的能力的主设备12需要在I3C_v1.1中调整,以将其确定为未被发送的图11所示的DEFGRPS命令。

即使接收到DEFGRPS命令,不具有分配组地址的能力的主设备12也必须忽略DEFGRPS命令。例如,在I3C_v1.0中,将接收被支持的广播公共命令代码(广播CCC)的装置调整为忽略该命令。由于在I3C_v1.0的标准中未调整DEFGRPS命令,因此符合I3C_v1.0的装置必定会忽略DEFGRPS命令。

然后,具有分配组地址的能力的主设备12应该能够接收DEFGRPS命令。

在图12中,示出了DEFGRPS命令的第二格式实例。

在图12所示的DEFGRPS命令中,在DEFGRPS命令(DEFGRPS CCC)之后,当前主设备12C发送被当前主设备12C识别为存在的I3C装置的数量(计数),即要被连续发送的数据的组合的数量。即,显然,I2C装置不具有组管理能力和组归属能力,并且仅I3C装置可共享组相关能力信息。

紧接着,当前主设备12C发送当前主设备12C本身的动态地址(DA)、组管理能力信息(通过GETGRPCAP命令获取的标志)、组地址(GRPA)和组归属能力信息(通过GETGRPCAP获取的标志)。然后,当前主设备12C针对I3C装置的数量重复发送相似数据。另外,作为组地址(GRPA),当尚未分配组地址时,发送7’h00,并且当已经将组地址分配给具有组归属能力信息的I3C装置时,发送地址值。

另外,在图12所示的DEFGRPS命令的第二格式实例中,用于单个装置的信息被打包在2个字节的区域中发送,并且防止用于I2C装置的信息被发送,从而尝试减少传输数据量。

在图13中,示出了DEFGRPS命令的第三格式实例。

在图13所示的DEFGRPS命令中,在DEFGRPS命令(DEFGRPS CCC)之后,当前主设备12C发送被当前主设备12C识别为存在的、接入到总线IF 11中的所有装置的数量(计数),即要连续发送的数据的组合的数量。

紧接着,当前主设备12C发送当前主设备12C自身的动态地址(DA)、组相关能力信息(GRPCAP)、组地址(GRPA)和GA有效。此时,在组相关能力信息(GRPCAP)中,当前主设备12C以与参考图8的描述类似的方式发送组地址的时隙数。然后,以与参考图10的描述中相似的方式,发送组地址和与组地址的时隙数相同的字节数的有效标志。

另外,在图13所示的DEFGRPS命令的第三格式实例中,针对每个装置可分配的组地址的时隙数和组地址的时隙数,发送与组地址相关联的信息。

通过使用如上所述格式的DEFGRPS命令,当前主设备12C可与次级主设备12S共享组地址管理能力、组地址的分配状态以及接入总线IF 11的组地址的地址值。

<使用组地址的通信格式>

将参考图14至图16描述在使用组地址的通信中使用的通信格式。

在图14中,示出了写入传输(I3C定向CCC写入)中的通信格式的实例。

如图14所示,ACK从I3C从设备13发送回从当前主设备12C发送的组地址(I3C组地址),主设备12C将多个任意I3C从设备13设置为目的地,然后将组设置为目标发送写入数据(可选的写入数据)。然后,针对必要的数据量进行将组地址设置为目的地的数据的发送。

注意,当多个I3C从设备13发送回ACK并且属于同一组的多个I3C从设备13中的一部分I3C从设备13发送NACK时,当前主设备12C也被假定为不能识别NACK,但是可通过在随后的通信处理中使用错误检测执行对应关系来进行正常通信。

在图15中,示出了写入传输(I3C专用写入)和读出传输(I3C专用读出)中的通信格式的实例。

在图15所示的四种通信格式中,上侧的两种通信格式代表写入传输中的通信格式,而下侧的两种通信格式代表写入传输中的通信格式。

在写入传输中,ACK从I3C从设备13发送回从当前主设备12C发送的组地址(I3C组地址),主设备12C将多个任意I3C从设备13设置为目的地,然后将组设置为目标发送N条写入数据(写入数据-1至写入数据-N)。

在读出传输中,关于属于同一组的多个I3C从设备13,从相应的I3C从设备13依次读出N条数据(读取数据-1至读取数据-N)。即,需要控制从多个I3C从设备13读出的数据,以防止发生冲突,并且从相应的I3C从设备13读出数据的定时彼此不同。

在图16中,示出了写入传输(I3C专用写入)和读出传输(I3C专用读取)中的通信格式的实例。

以与图15中所示的通信格式类似的方式,在写入传输中,将组设置为目标发送N条写入数据,并且在读出传输中,对于同一组的每个I3C从设备13依次读出N条数据。

在启动条件(仅包括S且不包括Sr)之后的组地址(I3C组地址)中,例如,通过从当前主设备12C侧的开漏输出以大约400kHz进行数据传输。此时,仅关于前一个字节,通过开漏输出进行数据传输,而关于随后的位(6位+R/W),可通过推挽输出以12.5MHz进行数据传输。

<计算机的配置实例>

注意,参考以上流程图描述的各个处理不必按照流程图中描述的序列按时间顺序执行,而是包括并行或单独执行的处理(例如,并行处理或由对象执行的处理)。另外,程序可由单个CPU处理,或者可由多个CPU以分布式方式处理。

另外,上述的一系列处理(通信方法)可由硬件执行或可由软件执行。当通过软件执行一系列处理时,构成该软件的程序被安装在嵌入专用硬件中的计算机中,或者被安装在例如通用个人计算机中,在该通用个人计算机中,可安装各种程序以从记录有程序的程序记录介质执行各种功能。

图14是示出通过程序执行上述一系列处理的计算机的硬件的配置实例(执行由主设备12执行的处理的处理执行单元的实例)的框图。

在计算机中,CPU(中央处理单元)101、ROM(只读存储器)102、RAM(随机存取存储器)103和EEPROM(电可擦可编程只读存储器)104通过总线105彼此连接。输入和输出接口106进一步连接到总线105,并且输入和输出接口106连接到外部(例如,图1的数据信号线14和时钟信号线15)。

在如上所述配置的计算机中,CPU 101通过总线105在RAM 103中加载并执行例如存储在ROM 102和EEPROM 104中的程序,并且因此执行上述一系列处理。另外,由计算机(CPU 101)执行的程序可预先写入ROM 102中,或者通过输入和输出接口105从外部安装并更新到EEPROM 104中。

<配置的组合实例>

另外,本技术还可采用以下配置。

(1)一种通信装置,具有通过总线的通信主动权,该通信装置包括:

发送和接收控制单元,被配置为控制与在通信装置的控制下进行通信的另一通信装置的信号的发送和接收;以及

处理执行单元,被配置为执行:

用于识别具有能够属于组的组归属能力的另一通信装置并进行通信的处理,以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地,以及

将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

(2)根据上述(1)的通信装置,其中

处理执行单元在具有组归属能力的其他通信装置和没有组归属能力的其他通信装置混合接入总线的状态下,向具有组归属能力的其他通信装置发送用于指示将组地址单独地分配为目的地的命令。

(3)根据上述(1)或(2)的通信装置,其中

当从通信装置传输通信主动权时能够用作通信装置、并且在不包括通信主动权时在通信装置的控制下进行通信的特定其他通信装置可接入总线,并且

处理执行单元执行从接入总线的特定其他通信装置中识别具有能够管理组地址的组管理能力的特定其他通信装置并且进行通信的处理。

(4)根据上述(3)的通信装置,其中

处理执行单元执行与被识别为具有组管理能力的特定其他通信装置共享其他通信装置的组归属能力的识别状态、特定其他通信装置的组管理能力的识别状态、以及组地址到其他通信装置的分配状态的处理。

(5)根据上述(4)的通信装置,其中

在具有组管理能力的多个其他特定通信装置连接到总线的状态下,

处理执行单元发送用于指示与待共享的组地址相关联的信息的命令,从而共享其他通信装置的组归属能力的识别状态、特定其他通信装置的组管理能力的识别状态,以及组地址到其他通信装置的分配状态。

(6)一种通信方法,由具有通过总线的通信主动权的通信装置执行,该方法包括以下步骤:

控制与在通信装置的控制下进行通信的另一通信装置的信号的发送和接收;

执行用于识别具有能够属于组的组归属能力的另一通信装置并进行通信的处理,以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;以及

执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

(7)一种程序,用于使内置于具有通过总线的通信主动权的通信装置中的计算机执行处理,处理包括以下步骤:

控制与在通信装置的控制下进行通信的另一通信装置的信号的发送和接收;

执行用于识别具有能够属于组的组归属能力的另一通信装置并进行通信的处理,以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地;以及

执行将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

(8)一种通信系统,其中,由具有通过总线的通信主动权的通信装置与在该通信装置的控制下进行通信的另一通信装置进行通信,其中,该通信装置包括:

发送和接收控制单元,被配置为控制与其他通信装置的信号的发送和接收;以及

处理执行单元,被配置为执行:

用于识别具有能够属于组的组归属能力的其他通信装置并进行通信的处理,以进行这样的通信,在该通信中使用组地址将接入总线的两个或更多个其他通信装置中的多个其他任意通信装置设置为单个组,并将该组设置为目的地,以及

将组地址分配给被识别为具有组归属能力的其他通信装置的处理。

注意,本实施方式不限于上述实施方式,并且可在不脱离本公开的精神和范围的情况下进行各种修改。另外,本说明书中描述的效果仅是说明性的而不是限制性的,并且可在其中描述其他效果。

[参考符号列表]

11 总线IF

12-1至12-3 主设备

13-1至13-6 从设备

14 数据信号线

15 时钟信号线

21 主设备装置

22 上层

31 从设备装置

32 上层

41 发送和接收控制单元

42 数据接收单元

43 数据发送单元

44 主控权请求控制单元

45 命令解释单元

46 信息保持单元

47 命令发送单元

48 表格保持单元

51 发送和接收控制单元

52 数据接收单元

53 数据发送单元

54 热连接请求控制单元

55 动态地址保持单元

56 组地址保持单元

57 命令解释单元

58 信息保持单元。

35页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:通用并行计算架构

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!