CN119066016A - 一种用于多路i2c总线设备的系统、方法和控制器 - Google Patents
一种用于多路i2c总线设备的系统、方法和控制器 Download PDFInfo
- Publication number
- CN119066016A CN119066016A CN202411573320.6A CN202411573320A CN119066016A CN 119066016 A CN119066016 A CN 119066016A CN 202411573320 A CN202411573320 A CN 202411573320A CN 119066016 A CN119066016 A CN 119066016A
- Authority
- CN
- China
- Prior art keywords
- data
- signal
- master device
- slave devices
- slave
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请涉及总线技术领域,公开了一种用于多路I2C总线设备的系统、方法和控制器,用于数字芯片,包括:监听模块用于获取时钟信号以及主设备和多个从设备的数据信号,根据与时钟信号对应的数据信号中的数据信息确定控制信号并输出;处理模块用于根据控制信号控制主设备和多个从设备之间的数据传输方向;将多个从设备的数据的逻辑与传输至主设备。通过监听模块获取主设备和多个从设备的数据信号,并根据数据信号中的数据信息确定控制信号并输出,可以确定主设备和多个从设备的数据信息的传输方向;通过处理模块调整主设备和多个从设备之间的数据传输方向,从而能够实现在内部只有逻辑0/1的情况下,将多个I2C设备连接到一起。
Description
技术领域
本申请涉及总线技术领域,尤其涉及一种用于多路I2C总线设备的系统、方法和控制器。
背景技术
I2C是内部集成电路(Inter-Integrated Circuit,IIC)的简称,是一种通用的总线协议。它是由Philips(飞利浦)公司,现NXP(恩智浦)半导体开发的一种简单的双向两线总线协议标准。I2C总线是一种非常流行的串行总线,用于单个或多个主机与单个或多个从机之间的通信。
I2C总线需要依靠集电极开路(OC)或者开漏(OD)电路实现总线上多个I2C设备的共存。之所以使用漏极开路(Open-drain)而不使用推挽式(Push-Pull)是因为线与时如果一个设备输出高电平,一个设备输出低电平,会导致如图1所示的电路中的上下两个MOS管都会导通,从而造成VCCIO(用于驱动IO模块的电压)和接地端GND之间,或VCC端和接地端GND之间的大电流,甚至会烧毁电路。如图1所示,为由4个MOS管组成的电路,其中,若INP1端输入低电平,INN2端输入高电平,使MOS管Q1和MOS管Q4同时导通,或若INP2端输入低电平,INN1端输入高电平,使MOS管Q3和MOS管Q2同时导通,则会造成VCC端和接地端GND之间产生很大的电流,可能会烧毁电路。
如图2所示,I2C总线有两根信号线,SDA(Serial Data Line,串行数据线)和SCL(Serial Clock Line,串行时钟线),它们都是双向I/O(IO)总线,接口电路为开漏输出,需要通过上拉电阻(pull-up resistors)Rp连接到VCCIO(用于驱动IO模块的电压)或+VDD电压。多个设备(如图2所示的设备1和设备2)以线与(线与逻辑)的方式连接到总线上,当总线空闲时,两根信号线(SDA和SCL)都是高电平;当输出0时总线被拉低。I2C总线的状态是各I2C设备的线与,总线空闲时为High-Z状态,通过上拉电阻表现为逻辑1,当输出0时总线被拉低。
然而,一般数字芯片只有IO Buffer上存在三态,内部只有逻辑0/1,是没有三态信号的,也就没法输出High-Z状态;因此在数字芯片内部,无法将多个I2C设备连接到一块。
综上所述,需要提供一种能够在内部只有逻辑0/1的情况下,将多个I2C设备连接到一起的用于多路I2C总线设备的系统、方法和控制器。
发明内容
为解决以上问题,本申请提出了一种用于多路I2C总线设备的系统、方法和控制器。
一方面,本申请提出一种用于多路I2C总线设备的系统,用于数字芯片,包括:
监听模块,用于获取时钟信号以及主设备和多个从设备的数据信号,根据与所述时钟信号对应的所述数据信号中的数据信息确定控制信号并输出;
处理模块,用于根据所述控制信号控制所述主设备和所述多个从设备之间的数据传输方向;将所述多个从设备的数据的逻辑与传输至所述主设备。
优选地,所述监听模块还用于,获取所述主设备和/或所述多个从设备的所述时钟信号,从所述时钟信号中确定目标高电平信号;获取与所述目标高电平信号对应的所述数据信号中的目标数据信号;根据所述目标数据信号的数据信息,输出控制信号。
优选地,所述目标高电平信号为所述时钟信号中的地址周期之后的一个高电平信号;
所述目标数据信号的数据信息包括写信息和读信息;在所述目标数据信号的数据信息为写信息的情况下,所述监听模块输出第一控制信号;在所述目标数据信号的数据信息为读信息的情况下,所述监听模块输出第二控制信号。
优选地,所述主设备通过所述数字芯片的IO接口与所述监听模块以及所述处理模块相连接;所述多个从设备中每个从设备均通过所述数字芯片的IO接口与所述处理模块相连接;其中,所述主设备和所述多个从设备中的每个从设备分别与所述数字芯片的多个所述IO接口中的不同的IO接口相连接。
优选地,所述处理模块还用于,
在接收到的所述控制信号为第一控制信号的情况下,所述处理模块控制所述数据信号中的多个第一数据的逻辑与从所述多个从设备向所述主设备方向传输,控制所述数据信号中的多个第二数据从所述主设备向所述多个从设备方向传输;其中,所述多个第一数据的逻辑与为将所述多个第一数据进行逻辑与得到的结果;
在接收到的所述控制信号为第二控制信号的情况下,所述处理模块控制所述数据信号中的多个第三数据的逻辑与从所述多个从设备向所述主设备方向传输,控制所述数据信号中的多个第四数据从所述主设备向所述多个从设备方向传输;其中,所述多个第三数据的逻辑与为将所述多个第三数据进行逻辑与得到的结果。
优选地,所述多个第一数据包括与所述时钟信号中的第九时钟、第十八时钟和第二十七时钟对应的数据信号中的数据;
所述多个第二数据包括与所述时钟信号中的第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据;
所述多个第三数据包括与所述时钟信号中的第九时钟、第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据;
所述多个第四数据包括与所述时钟信号中的第十八时钟和第二十七时钟对应的数据信号中的数据。
优选地,在所述控制所述数据信号中的多个第一数据从所述多个从设备向所述主设备方向传输的情况下,或在所述控制所述数据信号中的多个第三数据从所述多个从设备向所述主设备方向传输的情况下,所述处理模块还用于对所述多个从设备的所述多个第一数据做与逻辑后输出,或对所述多个从设备的所述多个第三数据做与逻辑后输出。
优选地,所述多个从设备包括:实体从设备和/或虚拟从设备。
第二方面,本申请提出一种用于多路I2C总线设备的方法,用于数字芯片,包括:
监听模块获取时钟信号以及主设备和多个从设备的数据信号;
所述监听模块根据与所述时钟信号对应的所述数据信号中的数据信息确定控制信号并输出;
处理模块根据所述控制信号控制所述主设备和所述多个从设备之间的数据传输方向;将所述多个从设备的数据的逻辑与传输至所述主设备。
第三方面,本申请提出一种控制器,包括:如第一方面任一项所述的用于多路I2C总线设备的系统。
本申请的优点在于:通过监听模块获取主设备和多个从设备的数据信号,并根据数据信号中的数据信息确定控制信号并输出,可以确定主设备和多个从设备的数据信息的传输方向;通过处理模块调整主设备和多个从设备之间的数据传输方向,从而能够实现在内部只有逻辑0/1的情况下,将多个I2C设备连接到一起。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选事实方案的目的,而并不认为是对本申请的限制。而且在整个附图中,用同样的参考符号表示相同的部件。在附图中:
图1现有的一种电路的示意图;
图2是现有的一种I2C总线与多个设备连接的示意图;
图3是现有的一种数字芯片内部的输出结构的示意图;
图4是现有的一种多个数字芯片通过线与的逻辑相连接的示意图;
图5是现有一种I2C总线与多个设备的连接的示意图;
图6是一种I2C总线与多个设备的连接的数据传输的示意图;
图7是现有一种数字芯片内部的IO引脚构造的示意图;
图8是现有一种数字芯片内部的多个IO引脚构造的示意图;
图9是现有一种数字芯片内部的数据流的示意图;
图10是预想的一种数字芯片内部的多个IO引脚的连接的示意图;
图11是现有一种数字芯片外部的I2C总线设备的连接的示意图;
图12是一种I2C总线通过MUX与多个设备的连接的示意图;
图13是本申请提供的一种用于多路I2C总线设备的系统的示意图;
图14是本申请提供的一种用于多路I2C总线设备的系统的总线的时钟与数据的示意图;
图15是现有的I2C总线的周期和数据传输方向的示意图;
图16是现有的I2C总线的信号的示意图;
图17是本申请提供的一种用于多路I2C总线设备的系统的主设备与多个从设备连接的示意图;
图18是本申请提供的另一种用于多路I2C总线设备的系统的主设备与多个从设备连接的示意图;
图19是本申请提供的一种用于多路I2C总线设备的系统的主设备与两个从设备连接的示意图;
图20是本申请提供的一种用于多路I2C总线设备的系统的主设备与两个从设备以及虚拟从设备连接的示意图;
图21是本申请提供的一种用于多路I2C总线设备的系统的另一种主设备与两个从设备以及虚拟从设备连接的示意图;
图22是本申请提供的一种用于多路I2C总线设备的方法的流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图3所示,为数字芯片内部的输出结构。当Data输出为0时,三极管导通NPN,IO口相当于连接到地;当Data输出为1时,三极管NPN截止,IO口相当于悬空。在外部增加一个上拉电阻R后,当Data输出0时,三极管NPN导通,IO口输出Data_out为0;当Data输出为1时,三极管NPN截止,IO口被上拉到IO电平,输出Data_out为1。
如图4所示,多个芯片(芯片1和芯片2)的OC(Open Collector,集电极开路门)输出的芯片引脚可以基于如下的逻辑连接到一起,即,只要有一个输出为0,就会把总线电平拉到0;只有全部输出都为1,总线才是高电平1;从而实现了线与的逻辑。而I2C总线就是利用线与的特性,将多个I2C从设备挂到一条总线上。
如图5所示,为现有的I2C总线连接方式,即通过I2C总线将一个主设备与多个从设备相连接。对于数字芯片,以FPGA为例,希望其能实现如图6所示的多路I2C总线设备的数据传输,即能够实现将I2C主设备(主设备)与多个I2C从设备(从设备)的数据相互传输。但是如图7所示,芯片(数字芯片)内部的IO引脚构造只有单向驱动或逻辑运算,即,1、当输出使能有效(T=1)时,I数据输出到IO引脚;2、当输出使能无效(T=0)时,芯片外部的IO引脚为高组态(Z);3、芯片IO引脚电平可以通过O输入到芯片内部,但是芯片没有内部High-Z状态。如图8所示,芯片的IO1、IO2引脚的输入/输出只能通过内部逻辑来控制,可以实现IO1输入/IO2输出,IO2输入/IO1输出,或者通过T来控制。由于芯片内部的数据流都是如图9所示的单方向(即从I向O)数据流,因此,虽然芯片外部的IO引脚可以具有高组态(Z),但是在芯片内部无法实现IO1与IO2之间,像图10所示的,完全直接连接,且数据双向传输。因此,常规实现只能从芯片外部,通过物理线路实现I2C设备的互连,如图11所示。
但是由于FPGA内部无法实现如图5所示的连接,并且不具备三态,所以也无法实现如图6所示的连接。因此,在主设备Master通过I2C总线连接到FPGA,且需要将两个从设备Slave(第一从设备Slave1和第二从设备Slave2)连接到主设备Master上进行正常通信的情况下,如图12所示,可以考虑通过一个MUX(多路复用器)将两路从设备(第一从设备Slave1和第二从设备Slave2)的信号汇合后连接到主设备上。使用MUX虽然是一种可能的方式,但是其存在两个很突出的问题:1、SDA是双向信号,如何确定信号何时从主设备流向从设备,什么时候从设备流向主设备?2、FPGA内部是无法实现High-Z的逻辑的,两个从设备的两路SDA如何汇集到一起,并实现主设备与从设备之间的数据方向的切换?这些都是需要解决的问题。
第一方面,为解决上述问题,本申请的实施方式提出一种用于多路I2C总线设备的系统,用于数字芯片,如图13所示,包括:
监听模块100,用于获取时钟信号以及主设备Master和多个从设备Slave(如从设备1Slave至从设备nSlave)的数据信号,根据与时钟信号对应的数据信号中的数据信息确定控制信号并输出;
处理模块200,用于根据控制信号控制主设备Master和多个从设备Slave之间的数据传输方向;将多个从设备Slave的数据的逻辑与传输至主设备Master。
数字芯片为具有逻辑与功能但是不具备三态(即内部只有逻辑0/1,没有High-Z状态)的芯片。
其中,监听模块100包括:电路。处理模块(Switch)200包括:电路。电路包括:由编程语言实现功能的硬件电路,或由与非门等组成的数字电路。由于I2C总线为双向传输,因此监听模块100可以只与主设备Master一侧的时钟信号(SCL)线和数据信号(SDA)线相连接,以获取获取主设备Master和多个从设备Slave(如从设备1Slave至从设备nSlave)的数据信号。
监听模块100还用于,获取主设备Master和/或多个从设备Slave的时钟信号,从时钟信号中确定目标高电平信号;获取与目标高电平信号对应的数据信号中的目标数据信号;根据目标数据信号的数据信息,输出控制信号。
目标高电平信号为时钟信号中的地址周期之后的一个高电平信号。
如图14所示,I2C总线一般在SCL低电平期间允许数据改变,在SCL高电平期间采集SDA上的数据。
I2C在地址周期和写周期,由主设备Master发出地址/数据信号,从设备Slave给出应答(ACK)信号;在读周期,由从设备Slave发出数据信号,主设备Master给出应答(ACK)信号。主设备Master和从设备Slave控制总线的周期和数据传输方向如图15所示,其中S表示起始位;P表示停止位;R表示读;W ̅表示写;A即ACK,表示应答;A ̅即NACK,表示无应答;用Dm表示此部分数据为从主设备传输至从设备,用Ds表示此部分数据为从从设备传输至主设备。
如图16所示为I2C总线的信号示意图,其中时钟信号(SCL)从开始位(START)开始,第1至7位高电平信号为地址周期的高电平信号,其与对应的数据信号(SDA)中包括地址数据信号,第8位高电平信号为读/写周期的高电平信号,即目标高电平信号,其与对应的数据信号中包括读/写数据信号,通过从读/写数据信号中确定具体的读或写操作,可以确定数据信号的传输方向。因此,可以根据上述I2C在读周期和写周期的数据信号的区别,确定数据信号的传输方向。
目标数据信号的数据信息包括写信息和读信息;在目标数据信号的数据信息为写信息的情况下,监听模块100输出第一控制信号;在目标数据信号的数据信息为读信息的情况下,监听模块100输出第二控制信号。
如图17所示,处理模块200还用于,在接收到的控制信号为第一控制信号的情况下,处理模块200控制数据信号中的多个第一数据的逻辑与从多个从设备Slave向主设备Master方向传输,控制数据信号中的多个第二数据从主设备Master向多个从设备Slave方向传输;其中,多个第一数据的逻辑与为将多个第一数据进行逻辑与得到的结果;在接收到的控制信号为第二控制信号的情况下,处理模块200控制数据信号中的多个第三数据的逻辑与从多个从设备Slave向主设备Master方向传输,控制数据信号中的多个第四数据从主设备Master向多个从设备Slave方向传输;其中,所述多个第三数据的逻辑与为将多个第三数据进行逻辑与得到的结果。
如图16所示,多个第一数据包括与时钟信号中的第九时钟、第十八时钟和第二十七时钟对应的数据信号中的数据。多个第二数据包括与时钟信号中的第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据。多个第三数据包括与时钟信号中的第九时钟、第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据。多个第四数据包括与时钟信号中的第十八时钟和第二十七时钟对应的数据信号中的数据。
在控制数据信号中的多个第一数据从多个从设备Slave向主设备Master方向传输的情况下,或在控制数据信号中的多个第三数据从多个从设备Slave向主设备Master方向传输的情况下,处理模块200还用于对多个从设备Slave的多个第一数据做与逻辑后输出,或对多个从设备Slave的多个第三数据做与逻辑后输出。
本申请实施方式的监听模块100工作在一个远高于I2C总线的时钟频率,比如10MHz。通过增加一个监听模块100,对I2C总线的SDA信号和SCL信号进行实时监控。通过实时采集分析SDA信号和SCL信号,根据I2C协议对SDA、SCL数据进行解析;在SCL信号的下降沿根据解析的结果,确定数据的传输方向,并输出与数据传输方向对应的控制信号。处理模块200根据控制信号调整或保持数据传输方向,从而实现如图18所示的,主设备和多个从设备通过物理线路与芯片(数字)相连接,在芯片内部实现将多个I2C设备互连。并且,这种方式不仅能够通过数字芯片连接多个外部I2C设备,还能够将数字芯片内部的I2C模块也接入总线。
如图18所示,主设备通过所述数字芯片的IO接口与监听模块以及处理模块相连接;多个从设备中每个从设备均通过所述数字芯片的IO接口与处理模块相连接;其中,主设备和多个从设备中的每个从设备分别与数字芯片的多个IO接口中的不同的IO接口(IO1、IO2和IO3)相连接。
比如在地址周期的结束,最后一个SCL为高电平期间,监听模块100会采集SDA信号的电平,接下来是SCL的下降沿,在这一时刻根据前面采集下来的信息已经能够确定接下来的数据方向是从从设备Slave到主设备Master,还是从主设备Master到从设备Slave,并且也能够确定数据传输方向需要持续的时间长度,从而实现数据传输方向的调整。
如图19所示,当数据方向是从主设备Master到从设备Slave时,SDA信号和SCL信号直接输出到所有从设备Slave;当数据方向是从设备Slave到主设备Master时,处理模块200将主设备Master的SCL信号输出到所有从设备Slave,并将第一从设备Slave1的SDA信号和第二从设备Slave2的SDA信号做与逻辑后输出给主设备Master的SDA信号端口。若从设备Slave有超过2个,则处理模块200将所有从设备Slave的SDA信号做与逻辑后输出给主设备Master的SDA信号端口。
多个从设备Slave包括:实体从设备和/或虚拟从设备。虚拟从设备包括控制器(如FPGA)中的虚拟从设备。
因此,除了与外部I2C设备(实体从设备)进行连接的方式外,本申请的实施方式还可以与数字芯片(如FPGA)内部的虚拟I2C设备(虚拟从设备)连接。如图20所示,本申请的实施方式在与多个实体从设备(第一从设备Slave1和第二从设备Slave2)连接的情况下,还可以与虚拟从设备相连接。其中,使用第三从设备Slave3表示虚拟从设备。
数字芯片以FPGA为例,如图21所示,在与FPGA内部的虚拟I2C设备连接的情况下,数据处理方式跟与外部I2C设备进行连接的情况相同。当数据方向是从主设备Master到从设备Slave时,SDA信号和SCL信号直接输出到所有从设备Slave,包括外部的从设备(第一从设备Slave1和第二从设备Slave2)和内部的虚拟从设备(第三从设备Slave3),当数据方向是从从设备Slave到主设备Master时,SCL信号的传输方向保持不变,还是从主设备Master输出给所有从设备Slave,而SDA信号是所有的外部从设备(第一从设备Slave1和第二从设备Slave2)与内部的虚拟从设备(第三从设备Slave3)的SDA信号做与逻辑后输出给主设备Master的SDA信号端口。
第二方面,如图22所示,根据本申请的实施方式,还提出一种用于多路I2C总线设备的方法,用于数字芯片,包括:
S101,监听模块获取时钟信号以及主设备和多个从设备的数据信号;
S102,监听模块根据与时钟信号对应的数据信号中的数据信息确定控制信号并输出;
S103,处理模块根据控制信号控制主设备和多个从设备之间的数据传输方向;将多个从设备的数据的逻辑与传输至主设备。
第三方面,根据本申请的实施方式,还提出一种控制器,包括:第一方面任一项所述的用于多路I2C总线设备的系统。
其中,控制器包括FPGA等可编程的数字芯片,或使用可编程的数字芯片的器件。
本申请的实施方式中,控制器(如芯片)可以连接一个或多个I2C设备(从设备),通过上行I2C线路连接到上级设备(如包括芯片的主设备)。同时,控制器(如芯片)内部的I2C设备(如虚拟从设备)还可以通过上行I2C线路连接到上级设备(如包括芯片的主设备)。并且还可以将控制器连接的I2C设备,共享给其他设备(如芯片)。
本申请的实施方式中,通过监听模块获取主设备和多个从设备的数据信号,并根据数据信号中的数据信息确定控制信号并输出,可以确定主设备和多个从设备的数据信息的传输方向;通过处理模块调整主设备和多个从设备之间的数据传输方向,从而能够实现在内部只有逻辑0/1的情况下,将多个I2C设备连接到一起。本申请的实施方式能够有效减少总线互连信号的数量,同时还可以降低互连的复杂度,使芯片间的连接更加简洁。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种用于多路I2C总线设备的系统,用于数字芯片,其特征在于,包括:
监听模块,用于获取时钟信号以及主设备和多个从设备的数据信号,根据与所述时钟信号对应的所述数据信号中的数据信息确定控制信号并输出;
处理模块,用于根据所述控制信号控制所述主设备和所述多个从设备之间的数据传输方向;将所述多个从设备的数据的逻辑与传输至所述主设备。
2.如权利要求1所述的系统,其特征在于,所述监听模块还用于,获取所述主设备和/或所述多个从设备的所述时钟信号,从所述时钟信号中确定目标高电平信号;获取与所述目标高电平信号对应的所述数据信号中的目标数据信号;根据所述目标数据信号的数据信息,输出控制信号。
3.如权利要求2所述的系统,其特征在于,所述目标高电平信号为所述时钟信号中的地址周期之后的一个高电平信号;
所述目标数据信号的数据信息包括写信息和读信息;在所述目标数据信号的数据信息为写信息的情况下,所述监听模块输出第一控制信号;在所述目标数据信号的数据信息为读信息的情况下,所述监听模块输出第二控制信号。
4.如权利要求1所述的系统,其特征在于,所述主设备通过所述数字芯片的IO接口与所述监听模块以及所述处理模块相连接;所述多个从设备中每个从设备均通过所述数字芯片的IO接口与所述处理模块相连接;其中,所述主设备和所述多个从设备中的每个从设备分别与所述数字芯片的多个所述IO接口中的不同的IO接口相连接。
5.如权利要求4所述的系统,其特征在于,所述处理模块还用于,
在接收到的所述控制信号为第一控制信号的情况下,所述处理模块控制所述数据信号中的多个第一数据的逻辑与从所述多个从设备向所述主设备方向传输,控制所述数据信号中的多个第二数据从所述主设备向所述多个从设备方向传输;其中,所述多个第一数据的逻辑与为将所述多个第一数据进行逻辑与得到的结果;
在接收到的所述控制信号为第二控制信号的情况下,所述处理模块控制所述数据信号中的多个第三数据的逻辑与从所述多个从设备向所述主设备方向传输,控制所述数据信号中的多个第四数据从所述主设备向所述多个从设备方向传输;其中,所述多个第三数据的逻辑与为将所述多个第三数据进行逻辑与得到的结果。
6.如权利要求5所述的系统,其特征在于,所述多个第一数据包括与所述时钟信号中的第九时钟、第十八时钟和第二十七时钟对应的数据信号中的数据;
所述多个第二数据包括与所述时钟信号中的第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据;
所述多个第三数据包括与所述时钟信号中的第九时钟、第十时钟至第十七时钟和第十九时钟至第二十六时钟对应的数据信号中的数据;
所述多个第四数据包括与所述时钟信号中的第十八时钟和第二十七时钟对应的数据信号中的数据。
7.如权利要求5所述的系统,其特征在于,在所述控制所述数据信号中的多个第一数据从所述多个从设备向所述主设备方向传输的情况下,或在所述控制所述数据信号中的多个第三数据从所述多个从设备向所述主设备方向传输的情况下,所述处理模块还用于对所述多个从设备的所述多个第一数据做与逻辑后输出,或对所述多个从设备的所述多个第三数据做与逻辑后输出。
8.如权利要求1所述的系统,其特征在于,所述多个从设备包括:实体从设备和/或虚拟从设备。
9.一种用于多路I2C总线设备的方法,用于数字芯片,其特征在于,包括:
监听模块获取时钟信号以及主设备和多个从设备的数据信号;
所述监听模块根据与所述时钟信号对应的所述数据信号中的数据信息确定控制信号并输出;
处理模块根据所述控制信号控制所述主设备和所述多个从设备之间的数据传输方向;将所述多个从设备的数据的逻辑与传输至所述主设备。
10.一种控制器,特征在于,包括如权利要求1至8任一项所述的用于多路I2C总线设备的系统。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411573320.6A CN119066016A (zh) | 2024-11-06 | 2024-11-06 | 一种用于多路i2c总线设备的系统、方法和控制器 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411573320.6A CN119066016A (zh) | 2024-11-06 | 2024-11-06 | 一种用于多路i2c总线设备的系统、方法和控制器 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN119066016A true CN119066016A (zh) | 2024-12-03 |
Family
ID=93643005
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202411573320.6A Pending CN119066016A (zh) | 2024-11-06 | 2024-11-06 | 一种用于多路i2c总线设备的系统、方法和控制器 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN119066016A (zh) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101763331A (zh) * | 2010-01-18 | 2010-06-30 | 中兴通讯股份有限公司 | 一种实现i2c总线控制的系统及方法 |
| US20110099310A1 (en) * | 2008-05-21 | 2011-04-28 | Scott Haban | Controlling passthrough of communication between multiple buses |
| CN110659238A (zh) * | 2018-06-28 | 2020-01-07 | 鸿富锦精密电子(天津)有限公司 | 数据通信系统 |
| CN113031486A (zh) * | 2021-03-18 | 2021-06-25 | 深圳市度信科技有限公司 | 基于fpga的i3c逻辑控制器实现方法、i3c读写测试装置和系统 |
| CN118377739A (zh) * | 2024-04-26 | 2024-07-23 | 上海傲显科技有限公司 | 总线数据读取方法、总线接口电路及验证系统 |
-
2024
- 2024-11-06 CN CN202411573320.6A patent/CN119066016A/zh active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110099310A1 (en) * | 2008-05-21 | 2011-04-28 | Scott Haban | Controlling passthrough of communication between multiple buses |
| CN101763331A (zh) * | 2010-01-18 | 2010-06-30 | 中兴通讯股份有限公司 | 一种实现i2c总线控制的系统及方法 |
| CN110659238A (zh) * | 2018-06-28 | 2020-01-07 | 鸿富锦精密电子(天津)有限公司 | 数据通信系统 |
| CN113031486A (zh) * | 2021-03-18 | 2021-06-25 | 深圳市度信科技有限公司 | 基于fpga的i3c逻辑控制器实现方法、i3c读写测试装置和系统 |
| CN118377739A (zh) * | 2024-04-26 | 2024-07-23 | 上海傲显科技有限公司 | 总线数据读取方法、总线接口电路及验证系统 |
Non-Patent Citations (1)
| Title |
|---|
| 王炳文;段小虎;张婷婷;: "基于可编程逻辑的I~2C总线控制器设计及应用", 工业控制计算机, no. 05, 25 May 2017 (2017-05-25) * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5592633A (en) | Integrated circuit interface to control bus with either of two different protocol standards | |
| US8269524B2 (en) | General purpose input/output pin mapping | |
| US9460038B2 (en) | Multi-core microprocessor internal bypass bus | |
| WO2002077835A1 (en) | Communication control semiconductor device and interface system | |
| JP2002531891A (ja) | 集積回路デバイスで機能ブロックを集積化するための並行シリアルインタコネクト | |
| JPH07182078A (ja) | データ処理システムおよび動作方法 | |
| JP2011050071A5 (zh) | ||
| US20100064083A1 (en) | Communications device without passive pullup components | |
| JP2009535677A (ja) | I2cクロックの生成方法及びシステム | |
| JP6054006B2 (ja) | 通信システム | |
| CN103443780B (zh) | 带有共享引脚组的通信总线 | |
| CN114845071A (zh) | 一种单摄像头多路usb视频输出系统及硬件升级方法 | |
| US6438624B1 (en) | Configurable I/O expander addressing for I/O drawers in a multi-drawer rack server system | |
| US20210271625A1 (en) | NVMe-MI Over SMBus Multi-Master Controller with other SMBus and I2C Masters in a Single FPGA Chip | |
| CN113113943A (zh) | 用于双端口通信和电力输送的系统和方法 | |
| CN102298562A (zh) | 一种线与仲裁总线互联的方法、装置和系统 | |
| CN119066016A (zh) | 一种用于多路i2c总线设备的系统、方法和控制器 | |
| CN101340352A (zh) | 一种线与仲裁总线互联的方法、装置和系统 | |
| CN104142905B (zh) | 一种扩展集成电路总线iic的方法及设备 | |
| TW202514390A (zh) | 串列資料匯流排上錯誤狀況之偵測 | |
| JP3949429B2 (ja) | Iicバス制御システム | |
| JPS6123243A (ja) | 論理集積回路 | |
| CN100353718C (zh) | 一种扩展i2c总线的系统及方法 | |
| TWI894391B (zh) | 匯流排仲裁電路及包括其的資料傳輸系統 | |
| CN116737623A (zh) | 一种通信协议切换方法、芯片和电子设备 |
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 | ||
| RJ01 | Rejection of invention patent application after publication | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20241203 |