可编程I2C多路选择器和交换机的制作方法

文档序号:14241055阅读:1406来源:国知局
可编程I2C多路选择器和交换机的制作方法

本实用新型涉及计算机和通信技术领域,具体涉及一种可编程I2C多路选择器和交换机。



背景技术:

I2C(或写为I2C)总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。

PCA9548A是一款通过I2C总线控制的八进制双向转换开关。如图1所示,它的每对SCL/SDA上行通道可以扩展为八对下行通道,可以通过I2C总线对其编程写入寄存器的内容来选择任意单一的SCx/SDx通道。

在交换机的设计中,要求对所有光口的I2C接口都能访问到,对于8口的交换机来说,一个PCA9548A就可以满足,但是对24口,48口之类的交换机就要必须用到更多的pca9548,这就增加了产品复杂度,明显增加了成本。



技术实现要素:

本实用新型实施例提供一种可编程I2C多路选择器和交换机,通过利用CPLD芯片来扩展I2C总线,解决PCA9548A只能将一路上行通道扩展为八路下行通道的问题。

所采用的技术问题为:

一方面,提供一种可编程I2C多路选择器,包括:复杂可编程逻辑器件CPLD芯片和集成有总线主控单元的处理器,所述CPLD芯片和所述总线主控单元通过I2C总线连接,所述I2C总线由数据线SDA和时钟信号线SCL构成,所述CPLD芯片将SCL输入端扩展为n个SC输出端,从而,将一路SDA/SCL上行通道扩展为n路SDx/SCx下行通道,n为正整数,x=0,1,……n。

其中,所述SDA分别和扩展出的n个SC输出端构成所述n路SDx/SCx下行通道,所述n个SC输出端分别作为所述n路SDx/SCx下行通道的SC输出端,所述SDA直接作为所述n路SDx/SCx下行通道的SD输出端。

当用于扩展光纤网络通道时,所述n路SDx/SCx下行通道分别连接n个光纤网络口。n可以为大于8的正整数。

另一方面,还提供一种交换机,包括处理器和CPLD芯片,所述处理器中集成有总线主控单元,所述CPLD芯片和所述总线主控单元通过I2C总线连接,构成如上文所述的可编程I2C多路选择器。

从以上技术方案可以看出,本实用新型实施例具有以下优点:

采用CPLD芯片与处理器连接,构成可编程I2C多路选择器,可以将一路SDA/SCL上行通道扩展为多路例如超过八路SDx/SCx下行通道,解决了现有的PCA9548A只能将一路上行通道扩展为八对下行通道的问题,这样,对24口,48口之类的交换机,不必采用多个PCA9548A,只需要一个CPLD芯片即可实现,并且使用更少的SDA引脚,从而,精简了设计,降低了产品复杂度,提高了应用灵活性,且能够节省成本。

附图说明

为了更清楚地说明本实用新型实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本实用新型的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1是现有技术中采用PCA9548A进行I2C总线扩展的原理示意图;

图2是本实用新型实施例提供的一种可编程I2C多路选择器的原理示意图。

具体实施方式

为了使本技术领域的人员更好地理解本实用新型方案,下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分的实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本实用新型保护的范围。

本实用新型的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面通过具体实施例,分别进行详细的说明。

请参考图2,本实用新型的一个实施例,提供一种可编程I2C多路选择器,可用在交换机中。该可编程I2C多路选择器可包括:

复杂可编程逻辑器件CPLD芯片和集成有总线主控单元的处理器,所述CPLD芯片和所述总线主控单元通过I2C总线连接,所述I2C总线由数据线SDA和时钟信号线SCL构成,所述CPLD芯片将SCL输入端扩展为n个SC输出端,从而,将一路SDA/SCL上行通道扩展为n路SDx/SCx下行通道,n为正整数,x=0,1,……n。

其中,CPLD仅对SCL扩展,不对SDA扩展,SDA分别和扩展出的n个SC输出端构成n路下行通道;即,所述n个SC输出端分别作为所述n路SDx/SCx下行通道的SC输出端,所述SDA直接作为所述n路SDx/SCx下行通道的SD输出端。

当用于扩展光纤网络通道时,所述n路SDx/SCx下行通道可分别连接n个光纤网络口。当用于其他应用场景时,也可用于连接其他端口/设备。

可选的,n为大于8的正整数。

其中,所述CPLD芯片接3.3V电源。

其中,所述总线主控单元可为I2CSMBus master。

如上,本实用新型利用CPLD空余的引脚来实现类似于PCA9548A的功能,并且使用更少的引脚,从而减低成本。CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件),是从PAL和GAL器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围。是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆将代码传送到目标芯片中,实现设计的数字系统。

编程后的CPLD,作为I2C从设备,并具备一个字节的寄存器,通过修改寄存器的值,选择哪一通道输出I2C时钟。比如说,设置0x01选择sc0输出I2C时钟信号,由于所有从设备与主设备的SDA是直接相连的。因此选择好时钟输出的通道,主设备就可以直接访问对应的从设备了。CPLD的I2C地址也可以编程自定义的,这样就避免了地址冲突。输出I2C的时钟通道的总数也可以编程定义。相比pca9548A,少了很多sdax占用了的引脚,精简了设计,提高了应用灵活性并能节省成本。

为了更好的实施本实用新型实施例的上述方案,下面还提供用于配合实施上述方案的相关装置。

一些实施例中,还提供一种交换机,包括处理器和CPLD芯片,所述处理器中集成有总线主控单元,所述CPLD芯片和所述总线主控单元通过I2C总线连接,构成如上文实施例所述的可编程I2C多路选择器。

综上,本实用新型提供了一种可编程I2C多路选择器,以及包括该可编程I2C多路选择器的交换机。本实用新型技术方案中,采用CPLD芯片与处理器连接,构成可编程I2C多路选择器,可以将一路SDA/SCL上行通道扩展为多路例如超过八路SDx/SCx下行通道,解决了现有的PCA9548A只能将一路上行通道扩展为八对下行通道的问题,这样,对24口,48口之类的交换机,不必采用多个PCA9548A,只需要一个CPLD芯片即可实现,并且使用更少的SDA引脚,从而,精简了设计,降低了产品复杂度,提高了应用灵活性,且能够节省成本。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。

上述实施例仅用以说明本实用新型的技术方案,而非对其限制;本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本实用新型各实施例技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1