一种设备管理系统及方法

文档序号:6639338阅读:136来源:国知局
专利名称:一种设备管理系统及方法
技术领域
本发明涉及计算机通信领域,尤其是在计算机通信设备中管理I2C设备的系统。
背景技术
在计算机网络通信设备中,具有I2C总线接口的设备应用越来越多。所述I2C总线由两根线组成,一根串行时钟线(SCL)和一根串行数据线(SDA),I2C总线系统由主控CPU控制,所有的受控设备都挂接在这条线上,因此I2C总线接口具有信号线少,操作方便的优点。
I2C总线方式依靠不同的设备地址来区分设备,I2C总线上挂接的每个设备都有唯一的地址;并且CPU通过I2C总线发送的串行数据中,第一部分为传送起始信号;第二部分为受控电路的地址;第三部分是读/写位,用于指示被控IC的工作方式是接收还是发送;第四部分为传送的数据。进而,I2C总线上的所有被控设备都会将CPU发出的位于起始信号后面的地址与自己的地址相比较,如果两者相同,则该被控设备认为自己被CPU选中,进而接收或发送数据。I2C总线连接的主控CPU与各被控设备间实现双向数据通信,即主控CPU可以向被控设备发送数据,被控设备也可向主控CPU回传数据,但被控设备是接收还是发送数据,则由主控CPU控制。
图1为现有技术中常用的管理I2C设备的系统,由图可知,通常为每个被控设备提供一个I2C接口,并以串行的办法将主设备与各个从设备连接,系统控制或CPU对每个接口分别进行操作,即根据不同I2C地址访问各被控设备。该系统的缺陷在于I2C接口的数据线和时钟线均以串联方式连接,若被控设备超过主控CPU允许的负载能力,则电路的可靠性将会下降;同时,总线上各个I2C设备的地址必须不同,否则会产生地址冲突。
实际中,有些设备的地址固化在芯片内部,使用时无法重新进行地址的配置。例如小封装可插拔光模块(SFP,Small Form-Factor Pluggable)的I2C设备地址已由制造商固定为“000”,无法由外部设定。这种情况下,使用可编程逻辑设计多路选择器(DEMUX),对I2C主控CPU时钟进行分配,分配到制定访问的受控设备,以避免访问冲突,具体系统结构如图2所示。该系统的缺陷在于该系统虽然可以分别寻址I2C地址相同的设备,并且对时钟进行了分别的驱动,但因为数据线仍采取了串联的形式,主控CPU负载能力同样受到很大限制;因此,一种既能同时管理多个I2C地址相同的设备,同时具有相当驱动能力的设计方案亟待提出。

发明内容
本发明要解决的问题是提供一种管理I2C设备的系统,该系统既能同时管理多个I2C地址相同的设备,同时又具有较好的驱动能力,实现对多I2C设备的操控;相应的本发明还提供了一种设备访问方法。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的。
一种管理I2C设备的系统,包括I2C主设备、CPU、I2C从设备、多路选择器、单通道双向模拟开关以及译码器,其中所述多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;所述译码器的每个输出接口与一单通道双向模拟开关的控制端连接,译码器获取CPU的控制信号,控制双向模拟开关的开启/闭合;所述单通道双向模拟开关的第一输入/输出端与所述I2C主设备的数据线连接;I2C从设备的时钟线连接到多路选择器的输出接口,I2C从设备的数据线连接到单通道双向模拟开关的第二输入/输出端,并且,连接到多路选择器同一输出接口的I2C从设备连接到不同的单通道双向模拟开关。
上述系统基础上,所述多路选择器可选用8路输出选择器;所述译码器可选用3-8线译码器。
一种管理I2C设备的系统,包括I2C主设备、CPU、I2C从设备、多路选择器、多选一双向模拟开关,其中所述多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;I2C从设备的时钟线连接到多路选择器确定的输出接口,I2C从设备的数据线连接到多选一双向模拟开关确定的输出接口,并且,连接到多路选择器同一输出接口的I2C从设备的数据线连接到多选一双向模拟开关的不同输出接口;多选一双向模拟开关的输入接口与所述I2C主设备的数据线连接;并且,多选一双向模拟开关获取CPU的控制信号,选择多个输出接口中的一个与输入接口实现传输通路。
上述系统基础上,所述多选一双向模拟开关可选用8选1双向模拟开关。
本发明还提供了一种设备的访问方法,用于实现主设备对多个从设备的访问。将从设备逻辑划分为M行N列,预置从设备地址以标识该从设备所在行/列节点位置;第一选通单元将主设备的访问控制信号发送至确定的从设备行,第二选通单元将主设备的时钟信号发送到确定的从设备列,实现主设备对所述确定行与确定列节点上从设备的访问。
所述第一选通单元发送主设备访问控制信号的方法可以为第一选通单元中的译码器获取控制信号后控制与译码器输出通道连接的单通道双向模拟开关的开启/闭合,若所述单通道双向模拟开关开启,则主设备的访问控制信号通过该双向模拟开关发送到确定行的从设备。
所述第一选通单元发送主设备访问控制信号的方法还可以为第一选通单元中的多选一双向模拟开关获取主设备的访问控制信号,并根据CPU(中央处理器)提供的控制信号选择确定的输出通道将所述访问控制信号发送到确定行的从设备。
所述第二选通单元发送主设备时钟信号的方法具体为第二选通单元中的多路选择器获取主设备的时钟信号,并根据控制信号选择确定的输出通道将所述主设备的时钟信号发送到确定列的从设备。
以上技术方案可以看出,在本发明中,对于从设备的管理引入了行/列地址和矩阵式管理的思想。一方面,即使在从设备芯片内部已经固化了地址使得从设备之间存在相同地情况下,本发明中可以根据唯一的行/列地址访问到各从设备。另一方面,由于本发明中,提供了多路选择器对时钟分别进行驱动,同时采用双向模拟开关与译码器的组合(或多选一双向模拟开关)对数据进行分别驱动,使得在主设备接口满足一定通信速率的前提下,本发明提供的系统可将更多的从设备连接到主设备,实现主设备对该些从设备的操控;因此,本发明对主设备驱动能力实现了较大的扩展,主设备可驱动的从设备数跃升为双向模拟开关的驱动能力以及多路输出选择器每一路驱动能力的乘积(至少64以上)。本发明应用与I2C设备的管理时,上述有益效果更加明显。
综上所述,本发明的设备管理系统和方法是一种既能管理多个I2C地址相同的设备,同时挂负载能够超过50个设备的技术方案,能够应用于高密度全SFP光口以太网交换机设计等需要同时管理多个I2C设备的场合;并且电路设计简单,成本较低。


图1为现有技术中常用的管理I2C设备的系统结构图;
图2为现有技术中另一种管理I2C设备的系统结构图;图3为本发明原理图;图4所示为多路输出选择器的逻辑结构图;图5为单通道双向模拟开关逻辑结构图;图6为本发明一实施例的逻辑结构图;图7为本发明一实施例结构示意图。
具体实施例方式
本发明的思想是提供一种实现I2C主设备接口连接I2C从设备的系统,即在I2C主设备接口与从设备(如SFP)之间插入一驱动系统,使一个I2C主设备接口可访问多个I2C从设备,然而本发明并不具体限定主设备接口的实现方式,即主设备如何实现对从设备的访问。中国专利申请号200410009102.6,发明名称为“在通信设备中操作多个I2C从设备的装置及其方法”的申请文件中公开了一种主设备接口的实现方式,以及通过该主设备接口实现对从设备的访问的方法,本领域技术人员可将该技术方案与本发明结合使用,将该技术方案中的装置放在本发明所述系统的前端,进行I2C设备驱动数量的扩充;或者本领域技术人员将本发明单独使用,既能同时管理多个I2C地址相同的设备,同时又具有较好的驱动能力,进而实现对多I2C设备的操控。
基于上述思想,本发明的核心在于,所述管理I2C设备的系统包括I2C主设备,CPU,I2C从设备,多路选择器、双向模拟开关以及译码器。其中多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;所述译码器的每个输出接口与一双向模拟开关的控制端连接,译码器获取CPU的控制信号,控制双向模拟开关的开启/闭合;所述双向模拟开关的第一输入/输出端与所述I2C主设备的数据线连接;I2C从设备的时钟线连接到多路选择器的输出接口,I2C从设备的数据线连接到双向模拟开关的第二输入/输出端,并且,连接到多路选择器同一输出接口的I2C从设备的数据线与不同的双向模拟开关连接。
结合上述发明思想,具体说明本发明的实现方式。
图3为本发明原理图。参照该图,无论I2C从设备地址是否相同,都可以将其矩阵化。由于I2C设备仅有数据信号和时钟信号,因而,本实施例中将矩阵横向定义为数据信号列,纵向定义为时钟信号列(矩阵横向与纵向人为定义,因此本发明中同样可将矩阵横向定义为时钟信号列,矩阵纵向定义为数据信号列);需要注意的是,矩阵中的设备都是从设备,而主设备是主动提供时钟并读写访问从设备的,因此不在矩阵中。
参照图3,该图所示为8×8矩阵,图中,斜线表示矩阵上各个节点,所有从设备分别对应于矩阵中确定的节点,进而该设备拥有对应的节点处的地址;只有同时选中对应确定节点上从设备的时钟线/数据线时,主设备才能访问到该从设备。例如位于第3行第4列的从设备,需要提供I2C_DATA2和I2C_CLK3,主设备就可以访问并唯一的访问到该设备。
以下说明如何实现对I2C主设备数据信号和时钟信号的分配。
时钟信号的分配由于I2C总线中时钟信号是单向的,因此,可以选用现有的多路输出选择器(DEMUX),或者为了更加方便灵活,也可利用可编程逻辑设计多路输出选择模块。
图4所示为多路输出选择器的逻辑结构图。如图,多路输出选择器的通道数即为上述矩阵中的列数(以上文定义列代表时钟信号为例),即多路输出选择器的输出通道对应矩阵的列。例如对应于8个时钟列的矩阵,选用8路的多路输出选择器,如图4所示的8路选择器,共有1个输入端,8个输出端提供8路输出,以及3位控制信号;将该选择器的输入端与主设备I2C接口的时钟线连接,以获取I2C主设备的时钟信号,选择器的8个输出端分别作为各列I2C时钟的输出;并且,该选择器获取来自CPU的3位控制信号,当3位控制信号在二进制000-111变化时,输入时钟信号对应通过1-8输出通道输出,提供作为矩阵1-8时钟列(000-1、001-2、010-3、011-4、100-5、101-6、110-7、111-8)。
数据信号的分配由于I2C总线中数据信号是双向的,而在可编程逻辑芯片中,对双向信号做选择切换非常困难,因此需要应用现有的双向模拟开关器件。例如仙童公司的NC7SZ66M5,就是一种单通道双向模拟开关器件。如图5可知,当SE为低电平时,该双向模拟开关器件关闭,输入/输出A和B之间阻断,SE为高电平时,双向模拟开关器件开启,输入/输出A和B之间形成通路,数据信号可由A到B,也可由B到A。
将所有单通道双向模拟开关的一输入/输出端(A或B中任一端)串联,并与主设备I2C接口的数据线连接;将模拟开关的另一端与矩阵上确定行中的从设备I2C接口的数据线连接,即每个单通道双向模拟开关对应矩阵的行(上文定义行代表数据信号,即为数据行)。并且,连接到多路选择器同一输出端的I2C从设备与不同的单通道双向模拟开关连接。参照图6,该图为本发明实施例的逻辑结构图。如图所示,从设备2、10、18连接到多路选择器的同一个时钟输出端SCL1,并且,所述从设备分别连接到不同的双向模拟开关上;如图,从设备2、10、18均在矩阵中相同的列(均与时钟输出SCL1连接),但分别在矩阵中的不同行,即从设备2连接到数据行SDA1的双向模拟开关上,从设备10连接到数据行SDA3的双向模拟开关上,从设备18连接到数据行SDA5的双向模拟开关上。同理,连接到所述多路选择器同意时钟输出端SCL3的从设备4、12、20分别连接到数据行SDA1、SDA3、SDA5的双向模拟开关上。相应的,该连接方式同样可表述为连接到同一数据行双向模拟开关的从设备与多路选择器不同的时钟输出端连接。如图,从设备2、4、6、8均连接到同一数据行SDA1的双向模拟开关上,且从设备2、4、6、8分别连接到多路选择器时钟输出端SCL1、SCL3、SCL5、SCL7。
在所述双向模拟开关与从设备与主设备连接结构基础上,使用现有的译码器或可变成逻辑芯片设计的译码器,控制各双向模拟开关的开启/关闭,进而实现对I2C主设备数据信号的分配。其具体方式为译码器接收CPU的控制信号,并且,译码器的各输出通道分别连接各双向模拟开关的控制接口(SE),即译码器输出通道数与所述双向模拟开关数对应,进而,译码器输出通道的数量决定了矩阵行数。例如3-8线译码器可通过8各输出通道控制8个双向模拟开关的开启/关闭,进而控制8行数据信号的分配。
由上述本发明的逻辑结构可知,所述多路选择器的通道数和所述译码器的通道数是决定I2C主设备所能操控的从设备数的主要决定因素。若某系统中使用了8路输出选择器和3-8线译码器,则该管理I2C设备的系统理论上可实现I2C主设备对64个从设备的操控。
图7为本发明一实施例结构示意图。参照该图可知本发明应用于I2C设备管理的系统结构。图示中包括主设备、CPU、3-8译码器、8路选择器、双向模拟开关,以及从设备(图中以71所标识虚线范围内的节点代表从设备)。其中,8路选择器获取主设备的时钟信号I2C_CLK,8路选择器的A0、A1、A2获取CPU的控制信号,控制各输出通道(I2C_CLK0至I2C_CLK7)时钟信号的输出,每路输出通道与矩阵确定列中所有从设备I2C接口的时钟线连接,亦即将确定列中所有从设备的时钟线串连,并连接到选择器的某一时钟输出通道;3-8译码器的B0、B1、B2获取CPU的控制信号,控制译码器8路输出通道(OUT_0至OUT_7)控制信号的输出;如图,3-8译码器的每个输出通道与一个双向模拟开关的控制接口SE连接,使得译码器在获取CPU的控制信号后可通过8个输出通道分别控制8个双向模拟开关的开启/闭合;所述双向模拟开关的一输入/输出端(图中标识为A)与主设备I2C接口的数据线连接,即各双向模拟开关的一端串连,并连接到主设备I2C接口的数据线;双向模拟开关的另一输入/输出端(图中标识为B)与矩阵中确定行中所有从设备I2C接口的数据线连接,亦即将确定行中所有从设备的数据线串连,并连接到某一双向模拟开关输入输出端。通过如图所示的系统,主设备可实现对71所标识的虚线范围内矩阵化从设备的管理(图中以圆圈标识矩阵各节点上的从设备),当主设备同时选中对应确定节点上从设备的时钟线/数据线时,主设备即可访问到该从设备。
本发明还提供了一种管理I2C设备的系统,该系统的核心在于,所述管理I2C设备的系统包括I2C主设备,CPU,I2C从设备,还包括多路选择器、多选一双向模拟开关。其中所述多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;I2C从设备的时钟线连接到多路选择器确定的输出接口,I2C从设备的数据线连接到多选一双向模拟开关确定的输出接口,并且,连接到多路选择器同一输出接口的I2C从设备的数据线连接到多选一双向模拟开关的不同输出接口;多选一双向模拟开关的输入接口与所述I2C主设备的数据线连接;并且,多选一双向模拟开关获取CPU的控制信号,选择多个输出接口中的一个与输入接口实现传输通路。
该系统与第一系统的区别在于用现有技术中的多选一双向模拟开关替代了第一系统中译码器与单通道双向模拟开关的组合。
在上述两系统结构基础上,在实现主设备对各从设备的操控之前,需要对每个从设备进行编址。仍以上述8×8矩阵为例,在对设备进行编址时,将行地址在前,列地址在后。例如在该8×8的矩阵中,位于第3行第4列的设备,它的地址为(3,4),转换为4位二进制为(0011,0100),将该节点设备地址整合为一个字节表示8’b00110100。然而,由于所述多路输出选择器与译码器等逻辑器件的控制信号地址信息从000开始,因而所述第3行第4列的设备实际对应的地址信息为00100011。同理,对所有从设备进行编址,建立各从设备与该设备所在节点地址信息的对应关系,该些地址信息由主设备的地址信号线来控制实现。
举例若某以太网交换机需要对24个百兆SFP模块和两个千兆SFP模块进行管理,分别读取这些模块的信息,其逻辑结构图如图6所示,将时钟信号分为8列,数据信号分为7行,则各个模块对应的矩阵行/列地址参照下表(序号1对应图6中的1设备,依此类推。前三位为行地址,后三位为列地址)。


由上述实施例可知,本发明以矩阵式方案实现对多个相同或不同类型的I2C设备进行访问控制,同时解决了因主设备芯片固有驱动能力导致管理从设备数量受限的问题。
本发明还提供了一种设备的访问方法,用于实现主设备对多个从设备的访问。
该方法具体为将从设备逻辑划分为M行N列,即构成了M*N的从设备矩阵;预置从设备地址以标识该从设备所在行/列节点位置,如通过二进制编码标识确定从设备所在的第H行第L列;第一选通单元将主设备的访问控制信号发送至确定的从设备行,即选通第H行从设备;第二选通单元将主设备的时钟信号发送到确定的从设备列,即选通第L列从设备,进而,位于第L行第H列的从设备被选通,从而实现了主设备对所述确定行与确定列节点(H,L)上从设备的访问。(其中M、N为大于1的正整数;L为小于等于M的正整数;H为小于等于N的正整数)。
下面具体说明所述第一选通单元与第二选通单元实现信号分配的方法。所述第一选通单元可采用译码器,该译码器在控制信号的控制下,选择将主设备的访问控制信号发送到矩阵中确定的从设备行;所述第二选通单元可采用多路选择器,在控制信号的控制下,将主设备的时钟信号发送到矩阵确定的从设备列。
进而,当上述方法应用于I2C从设备的管理时,由于所述I2C主设备与从设备之间数据是双向的,因而所述第一选通单元可采用译码器与单通道双向模拟开关组合的方式,具体方法为译码器的每个输出通道与一个双向模拟开关的控制接口SE连接,使得译码器在获取CPU的控制信号后可控制各双向模拟开关的开启/闭合;所述双向模拟开关的一输入/输出端与主设备I2C接口的数据线连接,即各双向模拟开关的一端串连,并连接到主设备I2C接口的数据线;双向模拟开关的另一输入输出端与矩阵中确定行中所有从设备I2C接口的数据线连接,亦即将确定行中所有从设备的数据线串连,并连接到某一双向模拟开关输入输出端。
或者,除上述方法之外,所述第一选通单元发送主设备访问控制信号的方法还可以为第一选通单元中采用多选一双向模拟开关获取主设备的访问控制信号,并根据CPU(中央处理器)提供的控制信号选择确定的输出通道将所述访问控制信号发送到确定行的从设备。
以上对本发明所提供的一种管理I2C设备的系统及一种设备的访问方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种设备管理系统,包括主设备、CPU、从设备,其特征在于还包括多路选择器、单通道双向模拟开关以及译码器,所述多路选择器接收主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;所述译码器的每个输出接口与一单通道双向模拟开关的控制端连接,译码器获取CPU的控制信号,控制双向模拟开关的开启/闭合;所述单通道双向模拟开关的第一输入/输出端与所述主设备的数据线连接;从设备的时钟线连接到多路选择器的输出接口,从设备的数据线连接到单通道双向模拟开关的第二输入/输出端,并且,连接到多路选择器同一输出接口的从设备连接到不同的单通道双向模拟开关。
2.如权利要求1所述的设备管理系统,其特征在于所述主设备为I2C设备,所述从设备为I2C设备。
3.如权利要求1所述的设备管理系统,其特征在于所述多路选择器为8路输出选择器。
4.如权利要求1至3其中之一所述的设备管理系统,其特征在于所述译码器为3-8线译码器。
5.一种管理I2C设备的系统,包括I2C主设备、CPU、I2C从设备,其特征在于还包括多路选择器、多选一双向模拟开关;所述多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;I2C从设备的时钟线连接到多路选择器确定的输出接口,I2C从设备的数据线连接到多选一双向模拟开关确定的输出接口,并且,连接到多路选择器同一输出接口的I2C从设备的数据线连接到多选一双向模拟开关的不同输出接口;多选一双向模拟开关的输入接口与所述I2C主设备的数据线连接;并且,多选一双向模拟开关获取CPU的控制信号,选择多个输出接口中的一个与输入接口实现传输通路。
6.如权利要求4所述的管理I2C设备的系统,其特征在于所述多选一双向模拟开关为8选1双向模拟开关。
7.一种设备的管理方法,用于实现主设备对多个从设备的访问,其特征在于将从设备逻辑划分为M行N列,预置从设备地址以标识该从设备所在行/列节点位置;第一选通单元将主设备的访问控制信号发送至确定行的从设备,第二选通单元将主设备的时钟信号发送到确定的从设备列,实现主设备对所述确定行与确定列节点上从设备的访问。
8.如权利要求7所述的设备的管理方法,其特征在于,所述第一选通单元发送主设备访问控制信号的方法具体为第一选通单元中的译码器获取控制信号后控制与译码器输出通道连接的单通道双向模拟开关的开启/闭合,若所述单通道双向模拟开关开启,则主设备的访问控制信号通过该双向模拟开关发送到确定行的从设备。
9.如权利要求7所述的设备的管理方法,其特征在于,所述第一选通单元发送主设备访问控制信号的方法具体为第一选通单元中的多选一双向模拟开关获取主设备的访问控制信号,并根据CPU(中央处理器)提供的控制信号选择确定的输出通道将所述访问控制信号发送到确定行的从设备。
10.如权利要求7或8或9所述的设备的管理方法,其特征在于所述第二选通单元发送主设备时钟信号的方法具体为第二选通单元中的多路选择器获取主设备的时钟信号,并根据控制信号选择确定的输出通道将所述主设备的时钟信号发送到确定列的从设备。
全文摘要
本发明涉及设备管理系统及方法。包括I2C主设备、CPU、I2C从设备、多路选择器、单通道双向模拟开关以及译码器;多路选择器接收I2C主设备的时钟信号,根据CPU的控制信号选择输出接口进行时钟信号输出;所述译码器的每个输出接口与一单通道双向模拟开关的控制端连接,译码器获取CPU的控制信号,控制双向模拟开关的开启/闭合;所述单通道双向模拟开关的第一输入/输出端与所述I2C主设备的数据线连接;I2C从设备的时钟线连接到多路选择器的输出接口,I2C从设备的数据线连接到单通道双向模拟开关的第二输入/输出端,并且,连接到多路选择器同一输出接口的I2C从设备连接到不同的单通道双向模拟开关。本发明可管理多个地址相同的设备,且提高了主设备驱动能力。
文档编号G06F13/42GK1731383SQ200510093450
公开日2006年2月8日 申请日期2005年8月29日 优先权日2005年8月29日
发明者沈明, 戴科, 洪建明 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1