CN112639753B - 聚合带内中断 - Google Patents
聚合带内中断 Download PDFInfo
- Publication number
- CN112639753B CN112639753B CN201980056117.2A CN201980056117A CN112639753B CN 112639753 B CN112639753 B CN 112639753B CN 201980056117 A CN201980056117 A CN 201980056117A CN 112639753 B CN112639753 B CN 112639753B
- Authority
- CN
- China
- Prior art keywords
- response
- slave
- responses
- ibi
- serial communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Bus Control (AREA)
- Small-Scale Networks (AREA)
- Selective Calling Equipment (AREA)
Abstract
提供了用于聚合IBI的方法和装置。该装置包括主机控制器,主机控制器被配置为经由串行通信总线与至少一个从机通信,经由串行通信总线来触发并接收来自至少一个从机的一系列响应,确定一系列响应中指示带内中断(IBI)请求的一个响应,以及基于一个响应在一系列响应之中的位置来对IBI请求做出响应。该方法包括:经由串行通信总线与至少一个从机通信,经由串行通信总线来触发并接收来自至少一个从机的一系列响应,确定一系列响应中指示带内中断(IBI)请求的一个响应,以及基于一个响应在一系列响应之中的位置来对IBI请求做出响应。
Description
相关申请的交叉引用
本申请要求于2019年8月26日提交的题为“AGGREGATED IN-BAND INTERRUPT”的美国专利申请号16/551,447、于2018年8月30日提交的题为“AGGREGATED IN-BANDINTERRUPT”的美国临时专利申请号62/724,873的优先权,其已被转让给其受让人,并且其全部内容通过引用并入本文。
技术领域
本公开一般地涉及处理器(例如,主设备)和外围设备(例如,从设备)之间的接口,并且更具体地涉及增强带内中断的能力。
背景技术
计算设备(例如,膝上型计算机、移动电话等)可以执行各种功能,诸如拨号服务、无线数据访问和相机/视频功能等。这样的计算设备可以包括各种部件,包括电路板、集成电路(IC)设备和/或片上系统(SoC)设备。部件可以包括处理电路、用户接口部件、存储部以及通过串行总线进行通信的其他外围部件。在一个示例中,串行总线可以根据集成电路间协议来操作,集成电路间协议也可以被称为I2C协议或I2C协议。I2C协议在用于将低速外围设备连接到处理器的串行单端总线上可操作。在一些示例中,串行总线可以采用多主机协议,在多主机协议中,一个或多个设备可以用作在串行总线上传输的不同消息的主机和从机。根据在串行时钟(SCL)线上携带的时钟信号中提供的定时,数据可以被串行化并且在串行数据(SDA)线上携带的数据信号中传输。
在一些示例中,串行总线可以根据由移动工业处理器接口(MIPI)联盟定义的I3C协议来操作。I3C协议可以通过更高的发射器时钟速率,通过在定义两个或更多个导线的信令状态的符号中编码数据和/或通过包括双倍数据速率传输(其中数据使用所传输的时钟信号的上升沿和下降沿来被钟控)的其他编码技术,增加串行总线上的可用带宽。I3C协议的某些方面从I2C协议的对应方面导出,并且I2C和I3C协议可以共存于同一串行总线上(例如,在SDA线和SCL线上)。
在I3C协议内,从设备可以向主设备(也被称为I3C主机)发信号通知带内中断(IBI)请求。IBI已被证明由于带外带中断引脚和连接被减少/消除,从而减小了系统成本并降低了设计复杂度。但是,仍然期望并需要IBI的性能改进。
发明内容
本发明内容标识了一些示例方面的特征并且不是所公开主题的排他性或穷举性描述。在阅读以下具体实施方式并查看形成其一部分的附图之后,其他特征和方面将被描述,并且对于本领域技术人员而言将变得显而易见。
根据至少一个实施例的一种装置包括主机控制器,主机控制器被配置为经由串行通信总线与至少一个从机进行通信,经由串行通信总线来触发并接收来自至少一个从机的一系列响应,确定一系列响应中指示带内中断(IBI)请求的一个响应,以及基于一个响应在一系列响应之中的位置来对IBI请求做出响应。
根据至少一个实施例的另一装置包括至少一个从机,至少一个从机包括被配置为存储位置信息的位置存储器。至少一个从机被配置为经由串行通信总线与主机控制器进行通信,经由串行通信总线来检测来自主机控制器的针对一系列响应的触发,以及响应于检测到触发,基于位置存储器中存储的位置信息,在串行通信总线上提供一系列响应之中指示带内中断(IBI)请求的一个响应。
根据至少一个实施例的一种用于经由串行通信总线来操作聚合带内中断的方法,包括:由主机控制器经由串行通信总线与至少一个从机通信,由主机控制器经由串行通信总线来触发并接收来自至少一个从机的一系列响应,由主机控制器确定一系列响应中指示带内中断(IBI)请求的一个响应,以及由主机控制器基于一个响应在一系列响应之中的位置来对IBI请求做出响应。
根据至少一个实施例的一种用于经由串行通信总线来操作聚合带内中断的另一方法包括:由至少一个从机经由串行通信总线与主机控制器通信,由至少一个从机经由串行通信总线来检测来自主机控制器的针对一系列响应的触发,以及由至少一个从机响应于检测到触发,基于位置存储器中存储的位置信息,在串行通信总线上提供一系列响应之中指示带内中断(IBI)请求的一个响应。
附图说明
现在将参考附图,通过示例而非限制的方式在具体实施方式中呈现装置和方法的各个方面,其中:
图1图示了根据本公开的某些方面的具有串行通信总线的装置的部件。
图2图示了根据本公开的某些方面的针对聚合IBI请求的I3C链路的波形。
图3图示了根据本公开的某些方面的图1的至少一个从机的部件。
图4图示了根据本公开的某些方面的用于通过串行通信总线来操作聚合带内中断请求的方法。
图5图示了根据本公开的某些方面的用于通过串行通信总线来操作聚合带内中断的另一方法。
具体实施方式
以下结合附图阐述的具体实施方式旨在作为对各种配置的描述,而不旨在表示可以实践本文中所描述的概念的唯一配置。具体实施方式包括用于提供对各种概念的透彻理解的具体细节。然而,对于本领域技术人员而言显而易见的是,这些概念可以在没有这些具体细节的情况下实践。在某些情况下,以框图形式示出了公知的结构和部件,以避免使得这些概念模糊。
如本文中所使用的,在动词“耦合”的各种时态中的术语“被耦合到”可以表示元件A被直接连接到元件B或者其他元件可以被连接在元件A和B之间(即,元件A与元件B被间接连接)。在电气部件的情况下,术语“被耦合到”在本文中也可以用于表示导线、迹线或其他导电材料被用来将元件A和B(以及在它们之间电连接的任何部件)电连接。在一些示例中,术语“被耦合到”指示在元件A和B之间流动有电流。在一些示例中,术语“被电连接”可以指示在元件A和B之间流动有电流。
为了易于参考,术语“第一”、“第二”、“第三”等被使用并且可能不具有实质性含义。同样,为了便于参考,部件/模块的名称可以被采用,并且可能不限制部件/模块。例如,这样的非限制性名称可以包括“IBI处理”模块、“IBI检测”模块、“处理单元中断控制”模块和/或“IBI响应”模块。本公开中呈现的模块和部件可以以硬件、软件或硬件和软件的组合来实现。
术语“总线系统”可以提供耦合到“总线系统”的元件可以在其之间直接或间接地交换信息。以这种方式,“总线系统”可以涵盖多个物理连接以及诸如缓冲器、锁存器、寄存器等的中间级。
在本公开中,串行通信协议可以包括例如I3C规范。I3C规范的示例可以包括MIPIAlliance I3C规范(例如,主机控制器被配置为操作满足MIPI I3C规范的所有要求的I3C链路)。在一些示例中,I3C规范可以包括来自使用I3C链路的一部分或全部(例如,SCL线和SDA线)和/或由MIPI Alliance I3C规范提供的常用命令代码的任何标准制定组织的规范。在一些示例中,串行通信协议可以包括I2C规范。串行通信总线(例如,I3C链路)可以是根据串行通信协议进行操作的链路。
诸如I2C的串行通信协议可以允许多个中断请求引脚(和连接),这允许从机(例如,从设备)向主机(例如,主设备)发送不同类型的中断信号。例如,某些中断引脚可能携带紧急中断请求,而其他中断引脚可能携带不太紧急的中断请求。因此,主机可以智能地为中断请求提供服务。例如,主机可以在响应来自非紧急引脚的中断请求之前响应(例如,服务)来自紧急引脚的中断请求。然而,这样的方案需要多个引脚和连接并且因此增加了设计复杂度和系统成本。
诸如I3C的另一串行通信协议提供了带内中断(IBI),以减少引脚和连接。IBI请求经由I3C链路的串行数据线(被称为SDA线)来进行,并且因此不需要附加中断引脚和连接。但是,IBI不允许在请求的从机或中断请求类型之间进行区分。例如,在报头仲裁中,多个从机可以在SDA线上提供其地址,以尝试赢得仲裁(例如,以便提交IBI请求)。主机可以从最高有效位开始仅识别仲裁中的高(逻辑1)。即,其地址中全为零或几乎为零的从机将永远不会赢得仲裁。这样的从机可能急需提出IBI请求。
呈现了用于改进的、有效的聚合IBI的方法和装置。主机(经由其主机控制器)可以经由串行通信总线与至少一个从机通信,经由串行通信总线触发并接收来自至少一个从机的一系列响应,确定一系列响应中指示带内中断(IBI)请求的一个响应,以及基于一个响应在一系列响应之中的位置来对IBI请求做出响应。一系列响应可以包括一系列的多个响应(例如,一个接一个)。在一些示例中,一系列响应在连续的时钟周期中提供。在一些示例中,主机可以确定一系列响应中的每一个是否指示IBI请求。主机可以基于指示IBI请求的一个响应在一系列响应之中的位置来对IBI请求做出响应。例如,一系列响应之中的第一响应可以指示最紧急的IBI请求;并且一系列响应之中的第二响应可以指示第二最紧急的IBI请求,依此类推。在一些示例中,一系列响应之中的第一响应可以指示来自第一从机的IBI请求,并且一系列响应之中的第二响应可以指示来自第二从机的IBI请求,依此类推。主机可以选择首先服务于最紧急的IBI请求,或者选择首先服务于服务最少的从机。以这种方式,通过考虑多个IBI请求(聚合IBI请求),聚合IBI使得主机能够智能地响应(例如,服务于)IBI请求。串行通信协议的性能将因此改进。
图1图示了根据本公开的某些方面的具有串行通信总线的装置100的部件。装置100可以例如是计算系统(例如,服务器、数据中心、台式计算机)、移动计算设备(例如,膝上型计算机、蜂窝电话、车辆等)、物联网设备和虚拟现实或增强现实系统中的一种。装置100包括主机101(例如,主机设备)、I3C链路110和至少一个从机120-1至120-N(例如,从设备)中的一些或全部。主机101可以是例如执行各种功能(例如,拨号服务、无线数据访问、音频/视频功能等)并且经由I3C链路110与移动设备中的至少一个从机120-1至120-N进行通信的应用处理器。I3C链路110提供串行通信总线的示例并且包括串行时钟(SCL)线112和串行数据(SDA)线114。
主机101包括至少一个处理单元(一个或多个)103-1至103-M、主机控制器102和总线系统105中的一些或全部。总线系统105可以是一个或多个总线并且可以将至少一个处理单元103-1至103-M直接或间接地连接至主机控制器102。至少一个处理单元103-1至103-M可以是例如中央处理器(CPU)。在一些示例中,至少一个处理单元103-1至103-M可以是用于执行各种功能(例如,拨号服务、无线数据访问、音频/视频功能等)的一个或多个功能单元。例如,在移动设备中,至少一个处理单元103-1至103-M可以包括调制解调器、图像信号处理器和/或多媒体模块。至少一个从机(例如,一个或多个)120-1至120-N可以是例如各种传感器。例如,至少一个从机120-1至120-N可以包括指纹传感器、电容性触摸传感器、陀螺仪、加速度计、磁力计和/或相机等。
主机控制器102包括协议模块104、聚合IBI触发模块106、IBI确定模块108、IBI响应模块116以及总线系统109中的一些或全部,总线系统109将主机控制器102的模块耦合并且耦合至总线系统105。PHY 107可以被配置为根据规范来控制/操作串行通信协议(诸如,I2C或I3C)的物理层。例如,PHY 107可以被配置为检测SDA线114上的状态并且操作(例如,拉低和拉高)SCL线112和SDA线114。通过拉动SDA线114或者不驱动SDA线114,SDA线114可以为高。I2C或I3C可以在漏极开路模式中操作,在漏极开路模式中,SDA线114经由电阻器而被拉高至电压源。通过不驱动SDA线114,SDA线将为高。
协议模块104可以被配置为根据串行通信协议(例如,I2C或I3C),经由PHY 107,经由串行通信总线(诸如,I3C链路110)与至少一个从机120-1至120-N通信。这样的通信可以包括(经由主机控制器102)在至少一个处理单元103-1至103-M与至少一个从机120-1至120-N之间的数据交换。
聚合IBI触发(AIT)模块106可以被配置为触发聚合IBI,其中来自至少一个从机120-1至120-N的一系列响应可以经由I3C链路110接收。IBI确定模块108可以被配置为确定一系列响应中的每一个是否指示IBI请求。IBI响应模块116可以被配置为对IBI请求或由一系列响应指示的请求做出响应(例如,服务)。这些模块利用图2中呈现的附加信息来呈现。
图2图示了根据本公开的某些方面的针对聚合IBI请求的I3C链路110的波形。图2包括SCL线112和SDA线114的信令。最初(在T0之前),I3C链路110处于总线可用状态(例如,SCL线112和SDA线114均为高)。在T0处,I3C链路110进入开始(例如,在SCL线112为高时,SDA线114上从高到低的转变)。例如,协议模块104(经由PHY 107;参见图1)可以被配置为将SDA线114从高拉至低,同时保持SCL线为高,以发信号开始。
在T1处,主机101经由I3C链路110,向至少一个从机120-1至120-N(参见图1)发布针对一系列响应的触发230。例如,AIT模块106(经由PHY 107;参见图1)可以被配置为经由串行通信总线(例如,I3C链路110)触发并接收来自至少一个从机120-1至120-N的一系列响应。AIT模块106可以引导PHY 107以钟控SCL线112并且将触发230放置到SDA线114上。触发230可以包括触发地址232、指示读取或写入的RnW位和/或ACK(确认)位。触发地址232和/或RnW位可以唯一地(例如,不与串行通信协议的另一功能共享)指示针对聚合IBI请求的触发。例如,触发地址232可以是0x08,并且RnW位可以指示写入,并且至少一个从机120-1至120-N可以将触发地址232和RnW位的这种组合识别为针对一系列响应的触发230。作为响应,至少一个从机120-1至120-N可以使用ACK位以经由I3C链路110确认主机101。
在T2到T7之间,至少一个从机120-1至120-N基于预定位置,在I3C链路110上提供一系列响应S1-S8。术语“预定”可以指示值在聚合IBI请求之前被确定。在一些示例中,一系列响应S1-S8之中的位置可以指示至少一个从机120-1至120-N之中的源。例如,响应S1(例如,第一)的位置可以指示来自第一从机120-1的响应(例如,IBI请求);响应S2(例如,第二)的位置可以指示来自第二从机120-2的响应(例如,另一IBI请求);以此类推。在一些示例中,一系列响应S0-S7中的位置可以指示中断请求的类型。在一些示例中,包括IBI请求的中断请求的类型可以基于中断请求的紧急性或目标部分(在主机内)。例如,响应S1(例如,第一)的位置可以指示最紧急的中断请求或者对主机101的第一部分(例如,第一处理单元103-1)的中断请求。响应S2(例如,第二)的位置可以指示第二最紧急的中断请求或者对主机101的第二部分(例如,第二处理单元103-2)的中断请求;以此类推。
在一些示例中,为了发信号通知没有IBI请求,至少一个从机120-1至120-N可以被配置为保持SDA线114为高,并且主机101可能不需要确认响应(例如,保持SDA线114为高)。例如,对于T2处的响应S1,SDA线114在SCL线112的第一边沿(例如,上升沿)处为高,以指示没有中断请求。在该示例中,主机101(例如,主机控制器102的协议模块104)可以被配置为不确认S0。例如,在T3处,协议模块104可以被配置为在SCL线112的跟随边沿(例如,跟随第一边沿或上升沿的下降沿)处,将SDA线114保持为高。
为了发信号通知IBI请求,至少一个从机120-1至120-N可以被配置为将SDA线114拉低,并且主机101可以被配置为确认IBI请求。例如,对于T4处的响应S2,SDA线114在SCL线112的第一边沿(例如,上升沿)处被拉低,以指示IBI请求。主机控制器102(例如,经由PHY107的协议模块104)可以被配置为在SCL线112的第一边沿(例如,上升沿)处(在T4处)接收指示IBI请求的一个响应(例如,响应S2)。在T5处,主机控制器102(例如,经由PHY 107的协议模块104)可以被配置为在SCL线112的跟随边沿(例如,下降沿)处确认IBI请求。在一些示例中,主机101(例如,主机控制器102)可能不需要确认IBI请求(例如,可能不需要T5处的确认)。在这些示例中,至少一个从机120-1至120-N可以被配置为在SCL线112的一个边沿(例如,上升沿)处处理操作,这将允许通过更长的I3C链路110进行通信。在图4中,响应S2、S3、S5和S6是指示IBI请求的响应。
以该方式,主机控制器102(例如,IBI确定模块108)可以被配置为确定一系列响应S1-S8中的每一个是否指示带内中断(IBI)请求。例如,IBI确定模块108可以被配置为通过在SCL线112的每个上升沿处确定SDA线114的状态来确定一系列响应(响应S1-S8)中指示带内中断(IBI)请求的一个响应(例如,响应S2、S3、S5和S6之一)。在该示例中,主机控制器102(例如,IBI确定模块108)可以确定响应S2、S3、S5和S6指示在I3C链路110上的IBI请求。
主机控制器102(例如,IBI响应模块116)可以被配置为基于一个响应在一系列响应S1-S8之中的位置来对IBI请求(由IBI确定模块108检测)做出响应。例如,响应S2、S3、S5和S6中的每一个指示由IBI确定模块108检测到的IBI请求。在一系列响应S1-S8中,响应S2处于第二位置;响应S3为第三位置;响应S5为第五位置;并且响应S6为第六位置。在一些示例中,一系列响应S1-S8之中的位置(包括指示所检测的IBI请求的响应S2、S3、S5和S6的位置)可以指示中断请求的类型。
中断请求的类型可以基于中断请求的主机101的目标部分。例如,位置可以指示所检测的IBI请求被引导到主机101的不同部分处。例如,第一位置可以指示被引导到第一处理单元130-1的IBI请求;第二位置可以指示被引导到第二处理单元130-2的IBI请求;以此类推。如由对应请求S1-S8的位置所指示的,主机控制器102(例如,IBI响应模块116)可以被配置为基于中断请求的类型来响应所检测的IBI请求。例如,在IBI请求的目标部分(在该示例中为第六处理单元103-6)正在执行最紧急任务的情况下,IBI响应模块116可以被配置为首先响应(例如,服务)由响应S6指示的IBI请求。
在一些示例中,中断请求的类型可以基于中断请求的紧急性。例如,位置可以指示所检测的IBI请求具有不同的紧急度级别。在某些示例中,第一位置可以指示最紧急的IBI请求;第二位置可以指示第二最紧急的IBI请求;以此类推。IBI响应模块116可以被配置为通过首先服务最紧急的IBI请求来进行响应。在该示例中,由响应S2指示的IBI请求将作为最紧急的(如其在一系列响应S1-S8中的位置所指示的)首先由IBI响应模块116来服务。
在一些示例中,一系列响应S1-S8之中的位置可以指示至少一个从机120-1至120-N之中的源。例如,第一位置可以指示来自第一从机120-1的响应(例如,IBI请求);第二位置可以指示来自第二从机120-2的响应;以此类推。在一些示例中,如果请求从机急需(例如,在预定时间段未被服务),则IBI响应模块116可以被配置为服务于该请求从机。例如,IBI响应模块116可以被配置为确定发布响应S6的第六从机120-6在预定时间段急需,并且因此首先响应由响应S6指示的IBI请求。以这样的方式,IBI响应模块116可以智能地服务于聚合IBI请求,并且避免使得从机渴望通过IBI访问主机。
在T6处,I3C链路110通过SCL线112和SDA线114均变为高而进入停止状况。I3C链路110然后进入总线空闲状况(总线可用状况的前导),并且I3C链路110被释放。
图3图示了根据本公开的某些方面的图1的至少一个从机120-1至120-N的部件。第一从机120-1包括PHY2 307、从机控件340、位置存储器342和总线系统343中的一些或全部。总线系统343将第一从机120-1的部件耦合。位置存储器可以是易失性或非易失性存储器并且可以被配置为存储位置信息。位置信息可以提供由来自至少一个从机120-1至120-N的一系列响应(例如,图2的响应S1至S8)的位置指示的中断请求的类型。例如,如利用图2呈现,中断请求(例如,IBI请求)的类型可以基于IBI请求的紧急性或IBI请求的主机101(参见图1)的目标部分来进行分类。
在一些示例中,位置信息可以提供由一系列响应(例如,图2的响应S1-S8)之中的位置所指示的一系列响应的源(至少一个从机120-1至120-N之中)的顺序。例如,位置信息可以将第一从机120-1指示为第一响应S1的源,将第二从机120-2指示为第二响应S2的源,以此类推。
PHY2 307可以被配置为检测I3C链路110上的状态并且操作I3C链路110(例如,将SDA线114拉低)。从机控件340可以被配置为经由总线系统343、PHY2 307和串行通信总线(例如,I3C链路110)来与主机控制器102(参见图1)通信。从机控件340可以进一步被配置为从主机控制器102(经由PHY2 307、总线系统343和串行通信总线(例如,I3C链路110))检测针对一系列响应的触发。例如,参考图2,从机控件340可以检测包括触发地址232和RnW位的触发230。
从机控件340可以进一步被配置为响应于检测到触发,基于位置存储器中存储的位置信息,在串行通信总线上提供一系列响应之中指示带内中断(IBI)请求的(至少)一个响应。例如,参考图2,从机控件340可以被配置为在T4处提供响应S2,响应S2指示IBI请求(从机控件340经由总线系统343和PHY2 307将SDA线114拉低)。指示IBI请求的响应S2在响应于触发230而提供的一系列响应S1-S8之中。以这样的方式,响应于单个触发,一系列响应S1-S8可以指示多个IBI请求(例如,由响应S2、S3、S5和S6指示)。这样的方案因此可以被称为聚合IBI。
至少一个从机120-1至120-N可以基于位置存储器342中存储的位置信息,将一系列响应S1-S8提供到I3C链路110上。例如,指示中断请求的类型的位置信息可以基于由至少一个从机120-1至120-N提供的一系列响应S1-S8的位置。例如,如利用图2呈现,中断请求(例如,IBI请求)的类型可以基于IBI请求的紧急性或IBI请求的主机101(参见图1)的目标部分来进行分类。例如,参考图2,至少一个从机120-1至120-N可以基于位置存储器342中存储的位置信息,提供响应S2,以指示更紧急的IBI请求(与由响应S3指示的IBI请求相比更紧急)。
在一些示例中,位置信息可以基于一个响应在一系列响应(例如,图2的响应S1至S8)之中的位置来指示响应的源(在至少一个从机120-1至120-N之中),该响应指示IBI请求。例如,位置信息可以将第一从机120-1指示为第一响应S1的源,将第二从机120-2指示为第二响应S2的源,以此类推。在一个示例中,基于位置存储器342中存储的位置信息,第二从机120-2可以提供指示IBI请求的响应S2;第三从机120-3可以提供指示不同IBI请求的响应S3,以此类推。
图4图示了根据本公开的某些方面的用于通过串行通信总线来操作聚合带内中断请求的方法。图4的操作可以由例如图1所示的装置100来实现。箭头指示操作之间的某些关系,但不一定表示顺序关系。在410处,至少一个从机经由串行通信总线来与主机控制器通信。例如,参考图1,主机101的主机控制器102(例如,经由协议模块104和PHY 107)根据I3C规范、经由I3C链路(例如,串行通信总线)来与至少一个从机120-1至120-N通信。在420处,来自至少一个从机的一系列响应由主机控制器经由串行通信总线来触发并接收。参考图2,主机控制器102(例如,经由聚合IBI触发模块106和PHY 107)经由I3C链路110提供触发230,并且经由I3C链路(例如,经由PHY 107)接收一系列响应S1-S8。
在430处,一系列响应中的一个响应由主机控制器确定为指示带内中断(IBI)请求。参考图2,主机控制器102(例如,IBI确定模块108)确定SDA线114在响应S2、S3、S5和S6(一系列响应S1-S8之中)处被拉低并且确定响应S2、S3、S5和S6指示IBI请求。
在440处,IBI请求基于一个响应在一系列响应之中的位置,由主机控制器进行响应。例如,主机控制器102(例如,IBI响应模块116)基于一个响应在一系列响应S1-S8之中的位置来对IBI请求(由IBI确定模块108检测)做出响应。例如,响应S2、S3、S5和S6中的每一个指示由IBI确定模块108检测的IBI请求。在一系列响应S0-S7之中,响应S2为第二位置;响应S3为第三位置;响应S5为第五位置;并且响应S6为第六位置。在一些示例中,一系列响应S1-S8之中的位置(包括指示所检测的IBI请求的响应S2、S3、S5和S6的位置)指示中断请求的类型。在一些示例中,一系列响应S1-S8之中的位置可以指示至少一个从机120-1至120-N之中的源。在一些示例中,IBI响应模块116基于响应S2、S3、S5和S6的位置(换言之,基于由位置指示的中断请求的类型或中断请求的源)来响应(例如,服务)由响应S2、S3、S5和S6指示的IBI请求。
图5图示了根据本公开的某些方面的用于通过串行通信总线来操作聚合带内中断的另一方法。图5的操作可以由例如利用图1呈现的装置100和/或图3的至少一个从机120-1至120-N的部件来实现。箭头指示操作之间的某些关系,但不一定表示顺序关系。在510处,主机控制器、至少一个从机经由串行通信总线进行通信。例如,参考图1,主机101的主机控制器102根据I3C规范、经由I3C链路(例如,串行通信总线)来与至少一个从机120-1至120-N(例如,经由PHY2 307;参见图3)通信。
在520处,来自主机控制器的针对一系列响应的触发由至少一个从机经由串行通信总线来检测。例如,参考图3,从机控件340(例如,经由从机控件340和PHY2 307)检测来自主机控制器102的针对一系列响应的触发。例如,参考图2,从机控件340可以检测包括触发地址232和RnW位的触发230。
在530处,一系列响应之中指示带内中断(IBI)请求的一个响应由至少一个从机响应于检测到触发、基于位置存储器中存储的位置信息来在串行通信总线上提供。例如,参考图3,从机控件340响应于检测到触发230(参见图2),基于位置存储器342(参见图3)中存储的位置信息,在I3C链路110(例如,串行通信总线)上提供一系列响应之中指示带内中断(IBI)请求的(至少)一个响应。例如,参考图2,从机控件340在T4处提供响应S2,响应S2指示IBI请求(从机控件340经由总线系统343和PHY2 307将SDA线114拉低)。指示IBI请求的响应S2在响应于触发230而提供的一系列响应S1-S8之中。以这样的方式,响应于单个触发230,一系列响应S1-S8指示多个IBI请求(例如,由响应S2、S3、S5和S6指示)。这样的方案因此可以被称为聚合IBI或聚合IBI响应。
例如,至少一个从机120-1至120-N基于位置存储器342中存储的位置信息,将一系列响应S1-S8提供到I3C链路110上。例如,位置信息基于由至少一个从机120-1至120-N提供的一系列响应S1-S8的位置来指示中断请求的类型。例如,如利用图2呈现,中断请求(例如,IBI请求)的类型可以基于IBI请求的紧急性或IBI请求的主机101(参见图1)的目标部分来进行分类。例如,参考图2,至少一个从机120-1至120-N可以基于位置存储器342中存储的位置信息,提供响应S2,以指示更紧急的IBI请求(与由响应S3指示的IBI请求相比更紧急)。
在一些示例中,位置信息可以基于一个响应在一系列响应(例如,图2的响应S1至S8)之中的位置来指示响应的源(在至少一个从机120-1至120-N之中),该响应指示IBI请求。例如,位置信息可以将第一从机120-1指示为第一响应S1的源,将第二从机120-2指示为第二响应S2的源,以此类推。在一个示例中,基于位置存储器342中存储的位置信息,第二从机120-2可以提供指示IBI请求的响应S2;第三从机120-3可以提供指示不同IBI请求的响应S3,以此类推。
提供先前的描述来使得本领域任何技术人员能够实践本文描述的各个方面。对这些方面的各种修改对于本领域技术人员而言将是显而易见的,并且本文中定义的一般原理可以应用于其他方面。因此,权利要求书不旨在限于本文中所示的各方面,而是应被赋予与语言权利要求一致的完整范围,其中除非明确指出,否则以单数形式提及元件并不旨在表示“一个且仅一个”,而是“一个或多个”。词语“示例性”在本文中被用来表示“用作示例、实例或例示”。本文中被描述为“示例性”的任何方面不必被解释为比其他方面优选或有利。除非另有明确说明,否则术语“一些”指代一个或多个。诸如“A、B或C中的至少一个”、“A、B或C中的一个或多个”、“A、B和C中的至少一个”、“A、B和C中的一个或多个”以及“A、B、C或其任意组合”包括A、B和/或C的任何组合,并且可以包括A的倍数、B的倍数或C的倍数。具体地,诸如“A、B或C中的至少一个”、“A、B或C中的一个或多个”、“A、B和C中的至少一个”、“A、B和C中的一个或多个”以及“A、B、C或其任意组合”可以是仅A、仅B、仅C、A和B、A和C、B和C或A和B和C,其中任何此类组合可以包含A、B或C的一个或多个成员。本领域普通技术人员已知或以后将知道的,贯穿本公开描述的各个方面的元件的所有结构和功能等同物通过引用明确地并入本文,并且旨在由权利要求书涵盖。而且,无论在权利要求书中是否明确叙述了本文公开的内容,都不打算将其奉献给公众。词语“模块”、“机制”、“元件”、“设备”等可能无法代替词语“装置”。这样,除非权利要求元件使用短语“用于…的装置”来明确叙述,否则任何权利要求元件都不应解释为装置加功能。
Claims (16)
1.一种装置,包括:
主机控制器,被配置为:
经由串行通信总线向至少一个从机传输针对一系列响应的触发;
响应于传输所述触发,经由所述串行通信总线在连续的时钟周期中接收来自所述至少一个从机的所述一系列响应;
确定所述一系列响应之中指示带内中断IBI请求的第一响应;以及
基于所述第一响应在所述连续的时钟周期中的位置,来对所述IBI请求做出响应,其中所述第一响应在所述连续的时钟周期中的所述位置指示所述第一响应的源或所述IBI请求的目标部分。
2.根据权利要求1所述的装置,其中:
所述串行通信总线包括串行时钟SCL线和串行数据SDA线,并且
所述主机控制器被配置为在所述SCL线的边沿处接收指示所述IBI请求的所述第一响应。
3.根据权利要求2所述的装置,其中所述主机控制器进一步被配置为在所述SCL线的跟随边沿处确认所述IBI请求。
4.根据权利要求1所述的装置,其中在所述连续的时钟周期中的、并且包括所述第一响应的所述位置的一个或多个位置指示所述至少一个从机之中的一个或多个源。
5.根据权利要求1所述的装置,其中在所述连续的时钟周期中的、并且包括所述第一响应的所述位置的一个或多个位置指示中断请求的一个或多个类型。
6.根据权利要求1所述的装置,其中所述装置进一步包括以下各项中的一项:
包括所述至少一个从机和所述串行通信总线的计算系统,
包括所述至少一个从机和所述串行通信总线的移动计算系统,
包括所述至少一个从机和所述串行通信总线的物联网IoT设备,
包括所述至少一个从机和所述串行通信总线的虚拟现实系统,或
包括所述至少一个从机和所述串行通信总线的增强现实系统。
7.一种用于在主机控制器处并且经由串行通信总线来执行聚合带内中断的方法,所述方法包括:
经由串行通信总线向至少一个从机传输针对一系列响应的触发;
经由所述串行通信总线在连续的时钟周期中接收来自所述至少一个从机的所述一系列响应;
确定所述一系列响应之中指示带内中断IBI请求的第一响应;以及
基于所述第一响应在所述连续的时钟周期中的位置,来对所述IBI请求做出响应,其中所述第一响应在所述连续的时钟周期中的所述位置指示所述第一响应的源或所述IBI请求的目标部分。
8.根据权利要求7所述的方法,其中:
所述串行通信总线包括串行时钟SCL线和串行数据SDA线,并且所述方法进一步包括:在所述SCL线的边沿处接收所述第一响应。
9.根据权利要求8所述的方法,进一步包括:
在所述SCL线的跟随边沿处确认所述IBI请求。
10.根据权利要求7所述的方法,其中在所述连续的时钟周期中的、并且包括所述第一响应的所述位置的一个或多个位置指示所述至少一个从机之中的一个或多个源。
11.根据权利要求7所述的方法,其中在所述连续的时钟周期中的、并且包括所述第一响应的所述位置的一个或多个位置指示中断请求的一个或多个类型。
12.一种装置,包括:
至少一个从机,所述至少一个从机包括被配置为存储位置信息的位置存储器,所述至少一个从机被配置为:
检测经由串行通信总线来自主机控制器的针对一系列响应的触发;以及
响应于检测到所述触发,经由所述串行通信总线在连续的时钟周期中提供所述一系列响应,其中所述一系列响应包括位于所述连续的时钟周期中的位置处的指示带内中断IBI请求的第一响应,其中所述位置是基于所述位置信息来确定的,其中所述第一响应在所述连续的时钟周期中的所述位置指示所述第一响应的源或所述IBI请求的目标部分。
13.根据权利要求12所述的装置,其中:
所述串行通信总线包括串行时钟SCL线和串行数据SDA线,并且
所述至少一个从机被配置为在所述SCL线的边沿处传输指示所述IBI请求的所述第一响应。
14.根据权利要求13所述的装置,其中所述至少一个从机进一步被配置为在所述SCL线的跟随边沿处从所述主机控制器接收对所述IBI请求的确认。
15.根据权利要求12所述的装置,其中所述主机控制器和所述串行通信总线被包括在以下各项的一项中:
计算系统,
移动计算系统,
物联网IoT设备,
虚拟现实系统,或
增强现实系统。
16.一种由至少一个从机来执行聚合带内中断的方法,所述方法包括:
检测经由串行通信总线来自主机控制器的针对一系列响应的触发;以及
响应于检测到所述触发,经由所述串行通信总线在连续的时钟周期中提供所述一系列响应,其中所述一系列响应包括位于所述连续的时钟周期中的位置处的指示带内中断IBI请求的第一响应,其中所述位置是基于位置信息来确定的,其中所述第一响应在所述连续的时钟周期中的所述位置指示所述第一响应的源或所述IBI请求的目标部分。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862724873P | 2018-08-30 | 2018-08-30 | |
US62/724,873 | 2018-08-30 | ||
US16/551,447 US11030133B2 (en) | 2018-08-30 | 2019-08-26 | Aggregated in-band interrupt based on responses from slave devices on a serial data bus line |
US16/551,447 | 2019-08-26 | ||
PCT/US2019/048309 WO2020046909A1 (en) | 2018-08-30 | 2019-08-27 | Aggregated in-band interrupt |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112639753A CN112639753A (zh) | 2021-04-09 |
CN112639753B true CN112639753B (zh) | 2022-08-16 |
Family
ID=69639066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980056117.2A Active CN112639753B (zh) | 2018-08-30 | 2019-08-27 | 聚合带内中断 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11030133B2 (zh) |
EP (1) | EP3844626A1 (zh) |
CN (1) | CN112639753B (zh) |
TW (1) | TWI742422B (zh) |
WO (1) | WO2020046909A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11144490B2 (en) * | 2020-01-09 | 2021-10-12 | Qualcomm Incorporated | Optimal I3C in-band interrupt handling through reduced slave arbitration cycles |
US11144486B2 (en) * | 2020-02-27 | 2021-10-12 | Dell Products L.P. | System and method for overcoming in-band interrupt starvation with dynamic address remapping |
EP3958514A1 (de) * | 2020-08-19 | 2022-02-23 | Siemens Aktiengesellschaft | Datenübertragung an einem bussystem |
US11699683B2 (en) * | 2020-08-20 | 2023-07-11 | Global Unichip Corporation | Semiconductor device in 3D stack with communication interface and managing method thereof |
TWI784853B (zh) * | 2021-12-23 | 2022-11-21 | 新唐科技股份有限公司 | 資料偵測電路以及處理裝置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103166821A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市华为安捷信电气有限公司 | 实现串口通信的方法、设备及系统 |
CN105637496A (zh) * | 2013-10-09 | 2016-06-01 | 高通股份有限公司 | CCIe总线上的从动方标识符扫描和热插能力 |
CN106415518A (zh) * | 2014-01-14 | 2017-02-15 | 高通股份有限公司 | 具有带内中断的相机控制接口扩展 |
CN107003958A (zh) * | 2014-11-26 | 2017-08-01 | 高通股份有限公司 | 带内中断时间戳 |
CN108369564A (zh) * | 2015-12-10 | 2018-08-03 | 高通股份有限公司 | 来自外围设备的中断的数字聚合 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5875342A (en) | 1997-06-03 | 1999-02-23 | International Business Machines Corporation | User programmable interrupt mask with timeout |
US20060136642A1 (en) * | 2004-12-21 | 2006-06-22 | Ooi Ping C | Interrupt distribution for multiprocessor system |
US9251105B2 (en) | 2012-11-20 | 2016-02-02 | Intel Corporation | Transmitting an interrupt packet |
US9921981B2 (en) * | 2013-08-24 | 2018-03-20 | Qualcomm Incorporated | Method to minimize the number of IRQ lines from peripherals to one wire |
CN105612507A (zh) * | 2013-10-08 | 2016-05-25 | 高通股份有限公司 | I2c从动设备与相机控制接口扩展设备在共享控制数据总线上的共存 |
EP3123343A4 (en) * | 2014-03-24 | 2017-11-22 | Intel Corporation | Synchronization of interrupt processing to reduce power consumption |
US9734121B2 (en) * | 2014-04-28 | 2017-08-15 | Qualcomm Incorporated | Sensors global bus |
US20170104733A1 (en) | 2015-10-09 | 2017-04-13 | Intel Corporation | Device, system and method for low speed communication of sensor information |
US11301406B2 (en) * | 2016-08-16 | 2022-04-12 | Intel Corporation | Method, apparatus and system for role transfer functionality for a bus master |
US10769084B2 (en) | 2016-12-22 | 2020-09-08 | Intel Corporation | Out-of band interrupt mapping in MIPI improved inter-integrated circuit communication |
US20180181531A1 (en) * | 2016-12-22 | 2018-06-28 | Intel Corporation | Serial peripheral mode in mipi improved inter-integrated circuit (i3c) |
US10707984B2 (en) * | 2017-07-14 | 2020-07-07 | Qualcomm Incorporated | Techniques for synchronizing slave devices |
US10496562B1 (en) * | 2018-08-13 | 2019-12-03 | Qualcomm Incorporated | Low latency virtual general purpose input/output over I3C |
US20200201804A1 (en) * | 2018-12-21 | 2020-06-25 | Qualcomm Incorporated | I3c device timing adjustment to accelerate in-band interrupts |
-
2019
- 2019-08-26 US US16/551,447 patent/US11030133B2/en active Active
- 2019-08-27 CN CN201980056117.2A patent/CN112639753B/zh active Active
- 2019-08-27 WO PCT/US2019/048309 patent/WO2020046909A1/en unknown
- 2019-08-27 EP EP19765907.1A patent/EP3844626A1/en active Pending
- 2019-08-29 TW TW108130974A patent/TWI742422B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103166821A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市华为安捷信电气有限公司 | 实现串口通信的方法、设备及系统 |
CN105637496A (zh) * | 2013-10-09 | 2016-06-01 | 高通股份有限公司 | CCIe总线上的从动方标识符扫描和热插能力 |
CN106415518A (zh) * | 2014-01-14 | 2017-02-15 | 高通股份有限公司 | 具有带内中断的相机控制接口扩展 |
CN107003958A (zh) * | 2014-11-26 | 2017-08-01 | 高通股份有限公司 | 带内中断时间戳 |
CN108369564A (zh) * | 2015-12-10 | 2018-08-03 | 高通股份有限公司 | 来自外围设备的中断的数字聚合 |
Also Published As
Publication number | Publication date |
---|---|
US11030133B2 (en) | 2021-06-08 |
TWI742422B (zh) | 2021-10-11 |
TW202026895A (zh) | 2020-07-16 |
EP3844626A1 (en) | 2021-07-07 |
US20200073833A1 (en) | 2020-03-05 |
CN112639753A (zh) | 2021-04-09 |
WO2020046909A1 (en) | 2020-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112639753B (zh) | 聚合带内中断 | |
US8443126B2 (en) | Hot plug process in a distributed interconnect bus | |
US7562172B2 (en) | I2C Slave/master interface enhancement using state machines | |
JP6517243B2 (ja) | リンクレイヤ/物理レイヤ(phy)シリアルインターフェース | |
US7349973B2 (en) | Data transfer control device, electronic equipment, and data transfer control method | |
US10169282B2 (en) | Bus serialization for devices without multi-device support | |
EP3844628B1 (en) | Slave-to-slave direct communication | |
US10853289B2 (en) | System, apparatus and method for hardware-based bi-directional communication via reliable high performance half-duplex link | |
EP4195058A1 (en) | Unified systems and methods for interchip and intrachip node communication | |
WO2007030978A1 (fr) | Procede, appareil de reinitialisation et equipement pour effectuer la reinitialisation d'un dispositif maitre dans un bus i2c | |
WO2005091156A2 (en) | Signaling arrangement and approach therefor | |
KR20210075878A (ko) | I2c와의 하위 호환성을 촉진하는 i3c 허브 | |
CN109582634B (zh) | 总线系统 | |
US20200065274A1 (en) | Always-on ibi handling | |
CN114884768B (zh) | 一种总线空闲状态的检测装置、系统及检测方法 | |
CN109240955B (zh) | 电子装置 | |
CN117520219A (zh) | 一种多soc间基于pcie的外设透传方法和装置 | |
JP2003523576A (ja) | リンクブリッジ | |
JP2004021976A (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
Muzaffar | Inter-Integrated-Circuit (I2C) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |