CN112463702B - 一种级联背板的cpld i2c通道地址分配方法及系统 - Google Patents
一种级联背板的cpld i2c通道地址分配方法及系统 Download PDFInfo
- Publication number
- CN112463702B CN112463702B CN202011305371.2A CN202011305371A CN112463702B CN 112463702 B CN112463702 B CN 112463702B CN 202011305371 A CN202011305371 A CN 202011305371A CN 112463702 B CN112463702 B CN 112463702B
- Authority
- CN
- China
- Prior art keywords
- cpld
- address
- backboard
- link
- channel
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004891 communication Methods 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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/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; 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/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明实施例公开了一种级联背板的CPLD I2C通道地址分配方法及系统,S1,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;S2,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写;若第一地址不是0000_000和默认值,则链路主机通过I2C通道发送Stop信号;S3,循环执行步骤S1‑S2,直至整个链路背板上CPLD的I2C地址改写完成。本发明解决了现有技术中占用线缆连接器管脚多、生产成本高、生产过程中容易出错的问题,以及因走线等效负载电容、走线stub对信号的反射,造成的对I2C的信号影响大的问题。
Description
技术领域
本发明涉及服务器应用技术领域,具体涉及一种级联背板的CPLD I2C通道地址分配方法及系统。
背景技术
随着技术的发展,当前级联CPLD(CPLD,Complex Programmable Logic Device,复杂可编程逻辑器件)方式应用广泛,如在级联背板中,使用CPLD做为主控芯片及通信芯片,控制本背板功能并与上级、下级通信。在级联背板中,CPLD常见的通信方式是I2C(I2C,Inter-Integrated Circuit,I2C总线,是由Philips公司开发的一种简单、双向二线制同步串行总线),I2C总线只需要两根线,通信非常简洁。
级联背板还需要为各个CPLD分配地址,现有技术有两种方案,都需要额外的信号线传输地址。
如图1所示,为方案一,级联背板的CPLD挂在同一个I2C总线下,需要链路主机提供不同的地址信号线。假设,链路主机与各CPLD都在同一个电路板上,则地址线可以使用电阻上下拉;假设,链路主机与各CPLD不在同一个电路板上,如各CPLD分布于多个相同的背板上,则需要在链路主机端将地址信号引到多个背板上,非常占用线缆管脚数量。
如图2所示,为方案二,各背板的CPLD地址通过拨码开关实现,级联CPLD将各个CPLD串接在一个I2C总线上。
方案一中,在线缆连接器管脚有限的情况下,方案难以实现;级联CPLD将各个CPLD串接在一个I2C总线上,走线的等效负载电容、走线stub对信号的反射,都严重影响I2C的信号质量。方案二中,各背板的CPLD地址通过拨码开关实现,则增加了拨码开关成本;生产加工过程中,人工对各背板做不同地址的拨码,容易出现误拨、漏拨等问题;级联CPLD将各个CPLD串接在一个I2C总线上,走线的等效负载电容、走线stub对信号的反射,都严重影响I2C的信号质量。
发明内容
本发明实施例中提供了一种级联背板的CPLD I2C通道地址分配方法及系统,以解决现有技术中占用线缆连接器管脚多、生产成本高、生产过程中容易出错的问题,以及因走线等效负载电容、走线stub对信号的反射,造成的对I2C的信号影响大的问题。本发明将级联背板的CPLD的I2C通信相关信号线减至两根线,大大减少了对线缆连接器管脚数量的依赖,并改善了I2C总线的信号质量,提高I2C总线的健壮性。
本发明实施例公开了如下技术方案:
本发明第一方面提供了一种级联背板的CPLD I2C通道地址分配方法,包括:
S1,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S2,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,
若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写;
若第一地址不是0000_000和默认值,则链路主机通过I2C通道发送Stop信号;
S3,循环执行步骤S1-S2,直至整个链路背板上CPLD的I2C地址改写完成。
进一步地,步骤S1所述链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通,具体为:
S11,链路主机通过I2C通道发送Start信号给背板;
S12,背板上CPLD接收Start信号,CPLD判断本背板的CPLD I2C从机和CPLD I2C主机是否连通;
S13,若连通,则执行步骤S2,
若不连通,则本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机连通,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Start信号。
进一步地,步骤S2所述对整个链路背板上CPLD的I2C地址进行复位,具体为:
S21,本背板的CPLD I2C从机判断读写标志位是否为0,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机接收I2C通道发送的第二地址;
S22,本背板的CPLD I2C从机判断第二地址是否为0000_0110,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机将I2C地址复位至默认值;
S23,本背板的CPLD I2C从机向前级背板的CPLD I2C主机发送应答信号。
进一步地,步骤S2所述对链路背板上CPLD的I2C地址进行改写,具体为:
S21',本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开;
S22',本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号;
S23',本背板的CPLD I2C从机判断读写标志位是否为0,
若为0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址,并将本背板上CPLD的I2C地址改写为第二地址,
若不为0,则本背板的CPLD I2C从机不对I2C地址进行改写。
进一步地,在步骤S3所述整个链路背板上CPLD的I2C地址改写完成后,还包括:
链路主机和整个链路背板进行I2C通信。
本发明第二方面提供了一种级联背板的CPLD I2C通道地址分配的另一种方法,包括:
S01,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S02,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
当第一地址为0000_000,且读写标志位为0时,则执行步骤S03,
否则,执行步骤S05;
S03,本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开,并接收I2C通道发送的第二地址,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号,本背板的CPLD I2C从机将本背板上CPLD的I2C地址改写为第二地址;
S04,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送第一地址和第二地址,第一地址的值为0000_000,后级背板接收的第二地址为本背板的第二地址加1,本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机连通;
S05,循环执行步骤S01-S04,直至整个链路背板上CPLD的I2C地址改写完成。
本发明第三方面提供了一种级联背板的CPLD I2C通道地址分配系统,包括:
链路主机单元,用于链路主机向链路背板发送控制信号和地址信息;
CPLD I2C从机单元,用于接收控制信号和地址信息,控制前后级背板的连通与断开,以及对背板上CPLD的I2C地址进行复位和改写;
CPLD I2C主机单元,用于向后级背板发送控制信号和地址信息;
寄存器单元,用于存储第一地址和第二地址。
进一步地,所述控制信号包括Start信号和Stop信号,所述地址信息包括第一地址、读写标志位和第二地址。
进一步地,所述CPLD I2C从机单元对背板上CPLD的I2C地址进行复位和改写的判断条件为:
CPLD I2C从机单元接收第一地址,若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写。
进一步地,所述CPLD I2C从机单元对背板上CPLD的I2C地址进行复位具体为:
本背板的CPLD I2C从机判断读写标志位是否为0,若是0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址;
本背板的CPLD I2C从机判断第二地址是否为0000_0110,若是,则本背板的CPLDI2C从机将I2C地址复位至默认值。
进一步地,所述CPLD I2C从机单元对背板上CPLD的I2C地址进行改写具体为:
本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开,并判断读写标志位是否为0,若为0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址,并将本背板上CPLD的I2C地址改写为第二地址。
进一步地,所述寄存器单元包括第一地址寄存器和第二地址寄存器,所述第一地址寄存器用于存储第一地址,所述第二地址寄存器用于存储第二地址。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
(1)本发明提供的一种级联背板的CPLD I2C通道地址分配方法及系统,通过对I2CStart信号传递的处理,将链路中的I2C开关全部设置为连接状态;使用General CallAddress的方法对整条链路的所有CPLD器件的I2C地址复位至默认值。对链路背板上CPLD的I2C地址进行改写时,CPLD判断接收到的第一地址是否与本背板CPLD的I2C地址相同,若相同,断开I2C开关,并向后级CPLD发送Stop信号,从而实现每次操作不会出现雷同I2C地址。当I2C链路组链完成后,各CPLD器件的I2C地址唯一,并且后续可由链路主机进行链路的正常I2C通信。
(2)本发明提供的一种级联背板的CPLD I2C通道地址分配方法及系统,将级联背板的CPLD的I2C通信相关信号线减至两根线,大大减少主板和背板对线缆连接器管脚数量的依赖,并且级联背板间的线缆规格都一样,便于生产组装。因链路中的I2C通道均为点对点连接,链路中负载等效电容非常小,走线Stub非常小,因此极大改善了I2C的信号质量,提高了I2C总线的健壮性。
(3)本发明提供的一种级联背板的CPLD I2C通道地址分配方法及系统,不需要拨码开关、上下拉电阻等外围器件,因此从根本上解决了生产加工过程中,人工对各背板做不同地址拨码导致的误拨、漏拨等问题,同时也减少了BOM成本和生产成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明现有技术方案一所述I2C通道地址分配电路结构框图;
图2为本发明现有技术方案二所述I2C通道地址分配电路结构框图;
图3为本发明所述方法流程图;
图4为本发明实施例中采用的电路结构框图;
图5为本发明实施例中采用的CPLD内部结构框图;
图6为本发明实施例步骤S1的流程图;
图7为本发明实施例步骤S2中对整个链路背板上CPLD的I2C地址进行复位的流程图;
图8为本发明实施例步骤S2中对整个链路背板上CPLD的I2C地址进行改写的流程图;
图9为本发明实施例提供的级联背板的CPLD I2C通道地址分配简化方法流程图;
图10为本发明实施例中简化方法采用的CPLD的内部结构框图;
图11为本发明所述系统结构框图。
具体实施方式
为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
如图3所示,为本发明实施例提供的一种级联背板的CPLD I2C通道地址分配方法流程图,方法包括:
S1,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S2,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,
若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写;
若第一地址不是0000_000和默认值,则链路主机通过I2C通道发送Stop信号;
S3,循环执行步骤S1-S2,直至整个链路背板上CPLD的I2C地址改写完成。
链路主机通过I2C通道发送的数据采用General Call Address格式。
General Call Address格式定义如下:
General Call Address数据流格式如下:
本发明实施例第一地址和第二地址分别对应General Call Address数据流中first byte和second byte。
图4为本发明实施例采用的电路结构框图,本发明将链路主机和各CPLD之间使用相同的I2C总线串连,不需要额外的地址信号管脚。
图5为本发明实施例中采用的CPLD内部结构框图,CPLD内部实现了CPLD I2C从机、CPLD I2C主机、开关和寄存器。CPLD I2C从机用于连接前级CPLD,CPLD I2C主机用于连接后级CPLD,开关用于连接或断开CPLD I2C从机和CPLD I2C主机,寄存器受控于CPLD I2C从机,其中I2C地址寄存器判定了CPLD I2C从机的地址,寄存器与CPLD I2C从机一起控制开关的连接或断开。
CPLD I2C从机和CPLD I2C主机之间通过控制逻辑实现连通,当背板上CPLD从机接收到Start信号,CPLD从机控制开关将本背板的CPLD I2C从机和CPLD I2C主机连通。CPLDI2C从机和CPLD I2C主机在分配地址过程中,地址存储在寄存器中。
链路主机在改写CPLD的I2C地址过程中,CPLD通过控制CPLD I2C从机和CPLD I2C主机的连接或断开,实现链路主机逐一修改CPLD I2C地址的操作。
图6为本发明实施例步骤S1的流程图,步骤S1链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通,使链路主机可在后续对整个链路进行操作。
步骤S1具体为:
S11,链路主机通过I2C通道发送Start信号给背板;
S12,背板上CPLD接收Start信号,CPLD判断本背板的CPLD I2C从机和CPLD I2C主机是否连通;
S13,若连通,则执行步骤S2,
若不连通,则本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机连通,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Start信号。
图7为本发明实施例步骤S2中对整个链路背板上CPLD的I2C地址进行复位的流程图,链路主机通过I2C通道发送复位指令,使各CPLD的I2C地址复位到默认值,即所有CPLD的地址都相同。
步骤S2对整个链路背板上CPLD的I2C地址进行复位,具体为:
S21,本背板的CPLD I2C从机判断读写标志位是否为0,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机接收I2C通道发送的第二地址;
S22,本背板的CPLD I2C从机判断第二地址是否为0000_0110,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机将I2C地址复位至默认值;
S23,本背板的CPLD I2C从机向前级背板的CPLD I2C主机发送应答信号。
图8为本发明实施例步骤S2中对整个链路背板上CPLD的I2C地址进行改写的流程图,主要实现链路主机对选定地址的CPLD进行I2C读写操作,包括对选定地址的CPLD进行改写I2C地址的操作
步骤S2对链路背板上CPLD的I2C地址进行改写,具体为:
S21',本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开;
S22',本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号;
S23',本背板的CPLD I2C从机判断读写标志位是否为0,
若为0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址,并将本背板上CPLD的I2C地址改写为第二地址,
若不为0,则本背板的CPLD I2C从机不对I2C地址进行改写。
考虑到所有CPLD的I2C地址在复位为默认值之后,会有I2C地址雷同的问题,因此在流程中加入断开CPLD I2C从机和CPLD I2C主机、向后级发送Stop信号。由此,实现在有地址雷同的情形下,只操作雷同地址的第一个CPLD的目的。
在步骤S3整个链路背板上CPLD的I2C地址改写完成后,还包括:
链路主机和整个链路背板进行I2C通信。
上述方法可以实现链路主机对选定CPLD的I2C地址进行适意值改写。
若对链路中CPLD的I2C地址无适意值的需要,则本专利可以进行简化。简化后CPLD增加一个加法器,将I2C地址的值进行加1后,送到CPLD I2C主机待用,如图9所示,为简化方法流程图。图10为本发明实施例中简化方法采用的CPLD的内部结构框图。
简化方法包括:
S01,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S02,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
当第一地址为0000_000,且读写标志位为0时,则执行步骤S03,
否则,执行步骤S05;
S03,本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开,并接收I2C通道发送的第二地址,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号,本背板的CPLD I2C从机将本背板上CPLD的I2C地址改写为第二地址;
S04,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送第一地址和第二地址,第一地址的值为0000_000,后级背板接收的第二地址为本背板的第二地址加1,本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机连通;
S05,循环执行步骤S01-S04,直至整个链路背板上CPLD的I2C地址改写完成。
如图11所示,为本发明系统结构框图,系统包括:
链路主机单元,用于链路主机向链路背板发送控制信号和地址信息;
CPLD I2C从机单元,用于接收控制信号和地址信息,控制前后级背板的连通与断开,以及对背板上CPLD的I2C地址进行复位和改写;
CPLD I2C主机单元,用于向后级背板发送控制信号和地址信息;
寄存器单元,用于存储第一地址和第二地址。
本发明系统还包括加法器,用于将本背板的第二地址值加1。
控制信号包括Start信号和Stop信号,地址信息包括第一地址、读写标志位和第二地址。
链路主机单元,用于链路主机通过I2C通道发送Start信号、第一地址、读写标志位、第二地址和Stop信号。
CPLD I2C从机单元用于CPLD I2C从机:接收Start信号、第一地址、读写标志位和第二地址,对背板上CPLD的I2C地址进行复位和改写,控制CPLD I2C从机和CPLD I2C主机断开,控制CPLD I2C从机和CPLD I2C主机连通,向前级背板的CPLD I2C主机发送应答信号。
CPLD I2C主机单元用于CPLD I2C主机向后级背板的CPLD I2C从机发送第一地址、第二地址和Stop信号。
CPLD I2C从机单元对背板上CPLD的I2C地址进行复位和改写的判断条件为:
CPLD I2C从机单元接收第一地址,若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写。
CPLD I2C从机单元对背板上CPLD的I2C地址进行复位具体为:
本背板的CPLD I2C从机判断读写标志位是否为0,若是0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址;
本背板的CPLD I2C从机判断第二地址是否为0000_0110,若是,则本背板的CPLDI2C从机将I2C地址复位至默认值。
CPLD I2C从机单元对背板上CPLD的I2C地址进行改写具体为:
本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开,并判断读写标志位是否为0,若为0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址,并将本背板上CPLD的I2C地址改写为第二地址。
寄存器单元包括第一地址寄存器和第二地址寄存器,第一地址寄存器用于存储第一地址,第二地址寄存器用于存储第二地址。
以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视为本发明的保护范围。
Claims (8)
1.一种级联背板的CPLD I2C通道地址分配方法,其特征在于,所述方法包括:
S1,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S2,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,
所述对整个链路背板上CPLD的I2C地址进行复位,具体为:
S21,本背板的CPLD I2C从机判断读写标志位是否为0,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机接收I2C通道发送的第二地址;
S22,本背板的CPLD I2C从机判断第二地址是否为0000_0110,
若否,则执行步骤S23,
若是,则本背板的CPLD I2C从机将I2C地址复位至默认值;
S23,本背板的CPLD I2C从机向前级背板的CPLD I2C主机发送应答信号;
若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写;
所述对链路背板上CPLD的I2C地址进行改写,具体为:
S21',本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开;
S22',本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号;
S23',本背板的CPLD I2C从机判断读写标志位是否为0,
若为0,则本背板的CPLD I2C从机接收I2C通道发送的第二地址,并将本背板上CPLD的I2C地址改写为第二地址,
若不为0,则本背板的CPLD I2C从机不对I2C地址进行改写;
若第一地址不是0000_000和默认值,则链路主机通过I2C通道发送Stop信号;
S3,循环执行步骤S1-S2,直至整个链路背板上CPLD的I2C地址改写完成。
2.根据权利要求1所述的一种级联背板的CPLD I2C通道地址分配方法,其特征在于,步骤S1所述链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通,具体为:
S11,链路主机通过I2C通道发送Start信号给背板;
S12,背板上CPLD接收Start信号,CPLD判断本背板的CPLD I2C从机和CPLD I2C主机是否连通;
S13,若连通,则执行步骤S2,
若不连通,则本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机连通,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Start信号。
3.根据权利要求1所述的一种级联背板的CPLD I2C通道地址分配方法,其特征在于,在步骤S3所述整个链路背板上CPLD的I2C地址改写完成后,还包括:链路主机和整个链路背板进行I2C通信。
4.一种级联背板的CPLD I2C通道地址分配方法,其特征在于,所述方法包括:
S01,链路主机通过I2C通道发送Start信号,将整个链路的I2C通道连通;
S02,链路主机通过I2C通道发送第一地址和读写标志位,链路背板上CPLD接收第一地址并进行判断,
当第一地址为0000_000,且读写标志位为0时,则执行步骤S03,
否则,执行步骤S05;
S03,本背板的CPLD I2C从机控制CPLD I2C从机和CPLD I2C主机断开,并接收I2C通道发送的第二地址,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送Stop信号,本背板的CPLD I2C从机将本背板上CPLD的I2C地址改写为第二地址;
S04,本背板的CPLD I2C主机向后级背板的CPLD I2C从机发送第一地址和第二地址,第一地址的值为0000_000,后级背板接收的第二地址为本背板的第二地址加1,本背板的CPLDI2C从机控制CPLD I2C从机和CPLD I2C主机连通;
S05,循环执行步骤S01-S04,直至整个链路背板上CPLD的I2C地址改写完成。
5.一种级联背板的CPLD I2C通道地址分配系统,基于权利要求1-4任一项 所述方法实现,其特征在于,所述系统包括:
链路主机单元,用于链路主机向链路背板发送控制信号和地址信息;
CPLD I2C从机单元,用于接收控制信号和地址信息,控制前后级背板的连通与断开,以及对背板上CPLD的I2C地址进行复位和改写;
CPLD I2C主机单元,用于向后级背板发送控制信号和地址信息;
寄存器单元,用于存储第一地址和第二地址。
6.根据权利要求5所述的一种级联背板的CPLD I2C通道地址分配系统,其特征在于,所述控制信号包括Start信号和Stop信号,所述地址信息包括第一地址、读写标志位和第二地址。
7.根据权利要求5所述的一种级联背板的CPLD I2C通道地址分配系统,其特征在于,所述CPLD I2C从机单元对背板上CPLD的I2C地址进行复位和改写的判断条件为:
CPLD I2C从机单元接收第一地址,若第一地址为0000_000,则对整个链路背板上CPLD的I2C地址进行复位,若第一地址为默认值,则对链路背板上CPLD的I2C地址进行改写。
8.根据权利要求5所述的一种级联背板的CPLD I2C通道地址分配系统,其特征在于,所述寄存器单元包括第一地址寄存器和第二地址寄存器,所述第一地址寄存器用于存储第一地址,所述第二地址寄存器用于存储第二地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011305371.2A CN112463702B (zh) | 2020-11-19 | 2020-11-19 | 一种级联背板的cpld i2c通道地址分配方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011305371.2A CN112463702B (zh) | 2020-11-19 | 2020-11-19 | 一种级联背板的cpld i2c通道地址分配方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112463702A CN112463702A (zh) | 2021-03-09 |
CN112463702B true CN112463702B (zh) | 2022-11-18 |
Family
ID=74837432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011305371.2A Active CN112463702B (zh) | 2020-11-19 | 2020-11-19 | 一种级联背板的cpld i2c通道地址分配方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112463702B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448402B (zh) * | 2021-05-31 | 2022-03-22 | 山东英信计算机技术有限公司 | 一种支持多背板级联的服务器 |
CN113641613A (zh) * | 2021-08-17 | 2021-11-12 | 西安易朴通讯技术有限公司 | 背板、硬盘池、服务器以及通信方法 |
CN114116576A (zh) * | 2022-01-24 | 2022-03-01 | 中科可控信息产业有限公司 | 背板级联系统、背板编号分配方法和计算机设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739794A (zh) * | 2018-12-19 | 2019-05-10 | 郑州云海信息技术有限公司 | 一种使用cpld实现i2c总线扩展的系统及方法 |
-
2020
- 2020-11-19 CN CN202011305371.2A patent/CN112463702B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739794A (zh) * | 2018-12-19 | 2019-05-10 | 郑州云海信息技术有限公司 | 一种使用cpld实现i2c总线扩展的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112463702A (zh) | 2021-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112463702B (zh) | 一种级联背板的cpld i2c通道地址分配方法及系统 | |
CN101398801B (zh) | 扩展内部集成电路总线的方法及装置 | |
US20130080675A1 (en) | Dual PCI-X/PCI-E Card | |
CN107066746B (zh) | 基于i2c接口通过cpld来实现pca9555功能的方法 | |
EP1181638B1 (en) | Method and apparatus for maintaining load balance on a graphics bus when an upgrade device is installed | |
CN112069107A (zh) | 一种可自动识别外插卡的服务器板卡及外插卡自动识别方法 | |
CN213365380U (zh) | 一种服务器主板及服务器 | |
CN109446145A (zh) | 一种服务器主板i2c通道扩展芯片、电路及控制方法 | |
CN212135417U (zh) | 一种配置从设备地址的装置及单板 | |
US6715019B1 (en) | Bus reset management by a primary controller card of multiple controller cards | |
CN114385527A (zh) | 硬盘兼容平台、主板及控制方法 | |
CN113220614A (zh) | 一种自适应管理i2c和i3c设备的方法、系统及介质 | |
US6675250B1 (en) | Fault tolerant communications using a universal serial bus | |
US6065079A (en) | Apparatus for switching a bus power line to a peripheral device to ground in response to a signal indicating single ended configuration of the bus | |
CN115905096A (zh) | 基于spi的数据通信系统及方法 | |
CN216561773U (zh) | 自动跳线装置及通信设备 | |
CN211628236U (zh) | 一种PCIE Slimline连接器的带宽配置装置 | |
CN107704403B (zh) | 一种优化主背板信号传输的装置及方法 | |
US20040162927A1 (en) | High speed multiple port data bus interface architecture | |
CN217718675U (zh) | Pcie接口、主板以及pcie扩展模块 | |
CN218037986U (zh) | 数据通道切换设备 | |
CN113609035B (zh) | 一种实现硬盘背板线缆防呆的装置及方法 | |
CN1322437C (zh) | 用于供多主机存取储存媒体的多主机存取装置 | |
CN214751838U (zh) | Ssd系统以及ssd控制系统 | |
CN219496987U (zh) | 一种ops装置及显示设备 |
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 |