CN117827714A - 一种基于总线的数据传输电路、系统、方法及装置 - Google Patents
一种基于总线的数据传输电路、系统、方法及装置 Download PDFInfo
- Publication number
- CN117827714A CN117827714A CN202311861370.XA CN202311861370A CN117827714A CN 117827714 A CN117827714 A CN 117827714A CN 202311861370 A CN202311861370 A CN 202311861370A CN 117827714 A CN117827714 A CN 117827714A
- Authority
- CN
- China
- Prior art keywords
- bus
- isolation circuit
- data transmission
- control
- management controller
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000002955 isolation Methods 0.000 claims abstract description 154
- 238000013507 mapping Methods 0.000 claims description 27
- 230000002457 bidirectional effect Effects 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 claims description 3
- 239000000758 substrate Substances 0.000 abstract description 17
- 230000008569 process Effects 0.000 abstract description 16
- 238000004891 communication Methods 0.000 abstract description 12
- 238000007726 management method Methods 0.000 description 70
- 238000010586 diagram Methods 0.000 description 12
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000005611 electricity Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种基于总线的数据传输电路、系统、方法及装置,涉及通信技术领域。隔离电路的第一端通过总线连接中央处理器,隔离电路的第二端通过总线连接基板管理控制器,隔离电路的第三端通过总线连接从设备;隔离电路的控制端连接复杂可编程逻辑器件,复杂可编程逻辑器件分别连接中央处理器和基板管理控制器。将中央处理器和基板管理控制器通过隔离电路进行隔离,使其两个主设备在访问从设备时互不影响,遵从一次访问从设备的过程中只有一个主设备访问,避免主设备同时上电导致的访问冲突以及从设备无法解析传输的数据问题。另外,避免两个主设备互相影响使其电位拉低问题,保证上电的主设备的数据传输工作,提高总线内的数据传输效率。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种基于总线的数据传输电路、系统、方法及装置。
背景技术
交换机的较多器件会通过中央处理器(Central Processing Unit,CPU)和基板管理控制器(Baseboard Management Controller,BMC)共同管理以实现正常的数据通讯,均通过总线访问,BMC和CPU作为主设备(master),共用一条总线,在两侧都有电上拉,保持高电平进行数据通讯。若BMC和CPU同时上电,一个主设备高电平传输数据,另一个主设备低电平传输数据,导致总线内不知道传输何种电平信号,会造成访问冲突,互相传输错误,进而从设备无法解析传输过来的数据。另外,若一个主设备上电,另一个主设备不上电,导致上电的主设备由于不上电的主设备会将其电位拉低,进而影响上电的主设备的数据传输。
因此,如何保证数据正常传输和主设备之间数据传输互不影响是本领域技术人员亟需要解决的技术问题。
发明内容
本发明的目的是提供一种基于总线的数据传输电路、系统、方法及装置,以解决主设备共用一个总线导致的数据访问冲突、传输错误以及上电的主设备数据传输受到不上电的主设备的影响的技术问题。
为解决上述技术问题,本发明提供一种基于总线的数据传输电路,应用于交换机,所述基于总线的数据传输电路包括隔离电路;
所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;
所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器;
所述基板管理控制器,用于获取所述中央处理器和所述基板管理控制器对应的控制标志位,根据所述控制标志位确定控制模式,根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
一方面,所述隔离电路包括第一开关管和第二开关管;
所述第一开关管的控制端和所述第二开关管的控制端均作为所述隔离电路的控制端,且均通过所述总线连接所述复杂可编程逻辑器件;
所述第一开关管的第一端作为所述隔离电路的第一端,且通过所述总线连接所述中央处理器,所述第一开关管的第二端通过所述总线连接所述从设备;
所述第二开关管的第一端作为所述隔离电路的第二端,且通过所述总线连接所述基板管理控制器,所述第二开关管的第二端通过所述总线连接所述从设备。
另一方面,所述隔离电路为多路选择器。
另一方面,还包括单片机;
所述单片机的第一端通过所述总线连接所述从设备,所述单片机的第二端通过所述总线连接所述隔离电路的第三端。
另一方面,还包括内存;
所述内存通过所述总线连接所述隔离电路的第四端;
所述内存,用于存储所述从设备的数据,以便于所述复杂可编程逻辑器件根据所述控制模式获取所述目标从设备的数据;
所述复杂可编程逻辑器件还用于根据所述中央处理器、所述基板管理控制器和所述单片机对应的控制标志位确定对应的控制模式,根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
另一方面,所述总线为双向同步串行总线,还包括第一电阻、第二电阻、第三电阻、第四电阻和第五电阻;
所述第一电阻的第一端连接所述中央处理器,且连接所述隔离电路的第一端;
所述第二电阻的第一端连接所述基板管理控制器,且连接所述隔离电路的第二端;
所述第三电阻的第一端连接所述单片机的第二端,且连接所述隔离电路的第三端;
所述第四电阻的第一端连接所述单片机的第一端,且连接所述从设备;
所述第五电阻的第一端连接所述内存,且连接所述隔离电路的第四端;
所述第一电阻的第二端、所述第二电阻的第二端、所述第三电阻的第二端、所述第四电阻的第二端和所述第五电阻的第二端均连接电源。
为解决上述技术问题,本发明还提供一种基于总线的数据传输系统,包括上述所述的基于总线的数据传输电路。
为解决上述技术问题,本发明还提供一种基于总线的数据传输方法,应用于包括隔离电路的基于总线的数据传输电路,所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器,所述方法包括:
获取所述中央处理器和所述基板管理控制器对应的控制标志位;
根据所述控制标志位确定控制模式;
根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
一方面,所述隔离电路的控制端的数量至少为一个,所述根据所述控制标志位确定控制模式,包括:
在所述隔离电路的控制端的数量为一个时,预先建立所述中央处理器和所述基板管理控制器对应的所述控制标志位与预设的电平信号的第一映射关系,其中,所述中央处理器和所述基板管理控制器对应的电平信号不同;
预先根据各电平信号与预设的控制模式进行绑定确定绑定关系;
根据当前的控制标志位和所述第一映射关系确定所述当前的控制标志位对应的电平信号;
根据确定的电平信号和所述绑定关系确定对应的所述控制模式;
或者,
在所述隔离电路的控制端的数量为多个时,根据所述隔离电路的控制端的数量对所述中央处理器和所述基板管理控制器对应的控制标志位进行设定以确定与所述隔离电路的控制端数量相同的控制标志位的位数;
将所述控制标志位与预设的控制模式进行映射以确定所述控制标志位和所述控制模式对应的第二映射关系;
根据当前的控制标志位和所述第二映射关系确定对应的所述控制模式。
为解决上述技术问题,本发明还提供一种基于总线的数据传输装置,应用于包括隔离电路的基于总线的数据传输电路,所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器,所述装置包括:
获取模块,用于获取所述中央处理器和所述基板管理控制器对应的控制标志位;
第一确定模块,用于根据所述控制标志位确定控制模式;
第二确定模块,用于根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
本发明提供的一种基于总线的数据传输电路,应用于交换机,该电路包括隔离电路;隔离电路的第一端通过总线连接中央处理器,隔离电路的第二端通过总线连接基板管理控制器,隔离电路的第三端通过总线连接从设备;隔离电路的控制端连接复杂可编程逻辑器件,复杂可编程逻辑器件分别连接中央处理器和基板管理控制器。基板管理控制器用于获取中央处理器和基板管理控制器对应的控制标志位,根据控制标志位确定控制模式,根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器或基板管理控制器的总线的数据传输。本发明的有益效果在于将中央处理器和基板管理控制器通过隔离电路进行隔离,使其两个主设备在访问从设备时互不影响,其控制模式遵从一次访问从设备的过程中只有一个主设备访问,避免主设备同时上电导致的访问冲突以及从设备无法解析传输的数据问题。另外,避免两个主设备互相影响使其电位拉低问题,保证上电的主设备的数据传输工作,提高总线内的数据传输效率。
本实施例中基于隔离电路的具体器件,防止总线冲突,达到电平隔离的目的;单片机的连接关系,节省从设备和隔离电路的端口引脚数量的同时,实时获取从设备的数据;在本实施例中,有主设备总线访问从设备对应的两种控制模式,还存在单片机读取数据后存储到内存的一种控制模式,本实施例中基于不同的控制模式对应不同的控制。单片机读取数据后存储到内存的这种控制模式,考虑到如果主设备直接访问从设备,由于总线协议中会先访问读写的寄存器地址,总线协议内的各报文头等才能访问到一个从设备的主要数据,由于存在多个从设备,需要将多个从设备全部访问才确定对应的目标从设备,导致交互次数较多,访问过程较为缓慢。若直接将单片机获取的从设备的数据存储至内存中,通过总线访问内存,则交互次数减少,提高访问效率;在I2C总线的连接过程中均进行上拉电阻以保证数据的正常访问通讯;考虑到隔离电路的控制端的数量不同的情况下,对应的控制标志位确定的控制模式的具体过程,丰富控制模式的确定过程多样性和灵活性。
另外,本发明还提供了一种基于总线的数据传输系统、方法及装置,具有如上述基于总线的数据传输电路相同的有益效果。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为当前中央处理器与基板管理控制器共用总线的电路图;
图2为本发明实施例提供的一种基于总线的数据传输电路的电路图;
图3为本发明实施例提供的一种隔离电路的结构图;
图4为本发明实施例提供的另一个隔离电路的结构图;
图5为本发明实施例提供的另一种基于总线的数据传输电路的电路图;
图6为本发明实施例提供的一种基于总线的数据传输方法的流程图;
图7为本发明实施例提供的一种基于总线的数据传输装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的核心是提供一种基于总线的数据传输电路、系统、方法及装置,以解决主设备共用一个总线导致的数据访问冲突、传输错误以及上电的主设备数据传输受到不上电的主设备的影响的技术问题。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
需要说明的是,交换机产品管理控制模块一般包含CPU和BMC,CPU主要用来对交换机的端口模块及数据模块进行控制管理,BMC作为机箱管理单元,主要监控交换机内部各项参数,对机箱部件进行管理和控制。交换机包含众多器件都经过CPU和BMC共同管理,如电压侦测芯片、复杂可编程逻辑器件(Complex Programming logic device,CPLD)、更换单位(Field Replacement Unit,FRU)等。CPU和BMC都有访问这些器件的功能,且大部分使用双向同步串行总线(Inter-Integrated Circuit,I2C)访问。在使用I2C访问某个器件时,BMC和CPU都作为主设备(master),共用一条I2C总线,在CPU和BMC侧都有电上拉。一般情况下,CPU和BMC都上电,共用的I2C总线经过CPU和BMC两侧的电上拉,可以保持高电平,进行正常的数据通讯。
为了使CPU和BMC都有访问交换机中一些温度传感器、电压电流侦测器件的功能,CPU和BMC都使用I2C访问,并且共用一条总线。在访问某个器件时,BMC和CPU都作为master。在电路中CPU和BMC侧都进行3.3V上拉。一般情况下,CPU和BMC都上电,共用的I2C总线经过CPU和BMC两侧的电上拉,可以保持高电平,进行正常的数据通讯。若其中的一主设备侧在位但并未上电,如BMC在位但不给BMC上电,或CPU在位不给CPU上电。由于BMC和CPU共用一条I2C总线,一侧上电一侧不上电,不上电的一侧可能会把总线上的电平给拉低,影响另一侧的数据通信。图1为当前中央处理器与基板管理控制器共用总线的电路图,如图1所示,中央处理器1不下电,在基板管理控制器2访问从设备3单独下电测量地板上A处的总线链路上的电平,发现电平被拉低到2V左右,给基板管理控制器2上电后电平被拉低的现象消失,若总线为I2C总线,总线的电平被拉低现象拉低到2V不符合I2C总线规范。
另外,由于CPU和BMC两侧共用一条I2C总线,当两侧都作为master通过同一条总线访问该总线下的器件时,可能会造成访问冲突,导致两侧数据通信均失败的情况。本发明提供的基于总线的数据传输电路,可以解决上述技术问题。
图2为本发明实施例提供的一种基于总线的数据传输电路的电路图,如图2所示,应用于交换机,基于总线的数据传输电路包括隔离电路4;
隔离电路4的第一端通过总线连接中央处理器1,隔离电路4的第二端通过总线连接基板管理控制器2,隔离电路4的第三端通过总线连接从设备3;
隔离电路4的控制端连接复杂可编程逻辑器件5,复杂可编程逻辑器件5分别连接中央处理器1和基板管理控制器2;
基板管理控制器2,用于获取中央处理器1和基板管理控制器2对应的控制标志位,根据控制标志位确定控制模式,根据控制模式确定连通的目标从设备3以完成目标从设备3与中央处理器1或基板管理控制器2的总线的数据传输。
具体地,隔离电路的实质是将中央处理器和基板管理控制器的总线进行隔离,即将两个主设备的总线分离开来。对于隔离电路可以是具体的隔离开关,也可以是多路选择器等,对于隔离开关的具体开关类型不做限定,对于多路选择器的具体路数不做限定,可以根据实际情况设定即可。
隔离电路的第一端通过总线连接CPU,第二端通过总线连接BMC,第三端通过总线连接从设备。这里是将隔离电路的不同端对应连接各自的主设备(BMC和CPU),当然,也可以存在其他的主设备,本实施例仅是针对交换机场景下两个主要的主设备进行限定,还可以是其他的应用场景,根据实际情况设定即可。从设备的个数不做限定,可以是一个,也可以是多个,从设备主要包括温度传感器,或者电压电流侦测器件等。在隔离电路内部是将第一端与第三端建立一个通道,第二端与第三端建立一个通道。
本实施例的隔离电路的第三端仅是一个统称,具体的引脚个数可以根据实际情况设定,若从设备数量较少,隔离电路的多个引脚连接对应的多个从设备,即每个引脚连接对应的从设备。
隔离电路的控制端连接CPLD,CPLD分别连接CPU和BMC,可以接收CPU和BMC的当前具体的在位和上电情况,通过控制标志位可以体现,也可以通过其他的电平信号体现等,在此不做限定。对应地控制端的引脚可以是一个,也可以是多个,不做要求。在控制端的引脚为一个的情况时,会考虑两个主设备的控制标志位存在一位数,通过二进制的0或者1,也可以通过高低电平区分等。若控制端的引脚为两个的情况时,可以通过组合方式,例如1和1分别代表两个引脚上的标志位,通过组合方式11代表一个主设备的控制标志位。
CPLD根据控制标志位的具体信息确定对应的控制模式,可以是何种主设备与从设备进行数据通讯。可以理解的是,从设备的数量不做限定,若存在多个的情况下,需要确定对应的目标从设备,关于确定的目标从设备,基于控制模式下选取的读写地址可以确定,也可以通过控制端引脚为多个的情况下,将控制标志位预先与从设备之间形成绑定关系,即通过控制标志位和对应的绑定关系确定对应的目标从设备,在此不做限定。本实施例主要的目的是在两个主设备访问不冲突的情况下完成访问即可。
本发明实施例提供的一种基于总线的数据传输电路,应用于交换机,该电路包括隔离电路;隔离电路的第一端通过总线连接中央处理器,隔离电路的第二端通过总线连接基板管理控制器,隔离电路的第三端通过总线连接从设备;隔离电路的控制端连接复杂可编程逻辑器件,复杂可编程逻辑器件分别连接中央处理器和基板管理控制器。基板管理控制器用于获取中央处理器和基板管理控制器对应的控制标志位,根据控制标志位确定控制模式,根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器或基板管理控制器的总线的数据传输。本发明的有益效果在于将中央处理器和基板管理控制器通过隔离电路进行隔离,使其两个主设备在访问从设备时互不影响,其控制模式遵从一次访问从设备的过程中只有一个主设备访问,避免主设备同时上电导致的访问冲突以及从设备无法解析传输的数据问题。另外,避免两个主设备互相影响使其电位拉低问题,保证上电的主设备的数据传输工作,提高总线内的数据传输效率。
在上述实施例的基础上,在一些实施例中,隔离电路的实质为隔离开关,图3为本发明实施例提供的一种隔离电路的结构图,如图3所示,隔离电路4包括第一开关管6和第二开关管7;
第一开关管6的控制端和第二开关管7的控制端均作为隔离电路4的控制端,且均通过总线连接复杂可编程逻辑器件5;
第一开关管6的第一端作为隔离电路4的第一端,且通过总线连接中央处理器1,第一开关管6的第二端通过总线连接从设备3;
第二开关管7的第一端作为隔离电路4的第二端,且通过总线连接基板管理控制器2,第二开关管7的第二端通过总线连接从设备3。
可以理解的是,本实施例中是针对于两个主设备之间共用的总线,若存在多于两个的主设备共用总线,本发明同样适用,此时的隔离电路内的开关管数量和主设备的数量相同。对应开关管可以是金属-氧化物-半导体(Metal-Oxide-Semiconductor,MOS)管,也可以是其他开关管,在此不做限定。
第一开关管的控制端和第二开关管的控制端均作为隔离电路的控制端,且均通过总线连接CPLD;第一开关管的第一端作为隔离电路的第一端,且通过总线连接CPU,第一开关管的第二端通过总线连接从设备;第二开关管的第一端作为隔离电路的第二端,且通过总线连接BMC,第二开关管的第二端通过总线连接从设备。若CPU上电,BMC不上电,则第一开关管导通,第二开关管截止;相反,BMC上电,CPU不上电,则第一开关管截止,第二开关管导通。需要说明的是,不会存在两个主设备同时导通的情况,但可以存在两个主设备同时截止的情况。
本实施例中的总线可以是控制器局部网(Controller Area Network,CAN)总线,也可以是I2C总线等,在此不做限定,可以根据实际情况设定即可。
在另一些实施例中,隔离电路为多路选择器。
本实施例中的多路选择器(Multiplexer,MUX)可以从多个输入信号中选择一个信号进行输出的器件,对应本实施例的多输入是两个主设备,也可以是在包含两个主设备的输入信号之内的采集从设备的数据的输入信号等,在此不做限定。
本实施例中基于隔离电路的具体器件,防止总线冲突,达到电平隔离的目的。
在一些实施例中,还包括单片机;
单片机的第一端通过总线连接从设备,单片机的第二端通过总线连接隔离电路的第三端。
由于从设备较多,隔离电路的引脚较少,从设备一般对应总线的预留接口也有限,故加入单片机实现实时读取,在单片机内部选择确定的目标从设备,实现读取数据的正常通讯功能。图4为本发明实施例提供的另一个隔离电路的结构图,如图4所示,单片机8每间隔一定时间访问从设备3的器件,以实现任意主设备获取从设备的数据。
本实施例中的单片机的连接关系,节省从设备和隔离电路的端口引脚数量的同时,实时获取从设备的数据。
在一些实施例中,如图4所示,还包括内存9;
内存9通过总线连接隔离电路4的第四端;
内存9,用于存储从设备3的数据,以便于复杂可编程逻辑器件5根据控制模式获取目标从设备的数据;
复杂可编程逻辑器件5还用于根据中央处理器1、基板管理控制器2和单片机8对应的控制标志位确定对应的控制模式,根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器1或基板管理控制器2的总线的数据传输。
需要说明的是,本实施例中CPLD默认将隔离电路的第三端引脚与第四端引脚选通,默认单片机和内存相连接,单片机每间隔一定时间会访问从设备的器件信息,将从设备的信息初步处理后更新到内存中,当任意主设备想获取从器件的信息时,仅需要CPLD控制隔离电路选通道对应的通路,直接获取内存中存储的从设备的数据即可实现访问。本实施例中的内存的存储周期根据实际情况设定即可,可以是当前的时间点逆推的预设周期,将原有的数据被存储周期内的新数据覆盖。
在本实施例中,对应的三种控制模式,有主设备总线访问从设备对应的两种控制模式,还存在单片机读取数据后存储到内存的一种控制模式,本实施例中基于不同的控制模式对应不同的控制。单片机读取数据后存储到内存的这种控制模式,考虑到如果主设备直接访问从设备,由于总线协议中会先访问读写的寄存器地址,总线协议内的各报文头等才能访问到一个从设备的主要数据,由于存在多个从设备,需要将多个从设备全部访问才确定对应的目标从设备,导致交互次数较多,访问过程较为缓慢。若直接将单片机获取的从设备的数据存储至内存中,通过总线访问内存,则交互次数减少,提高访问效率。
在一些实施例中,总线为I2C总线时,在大多数情况下,由于I2C接口采用OpenDrain机制,器件本身只能输出低电平,无法主动输出高电平,只能通过外部上拉电阻将信号线拉至高电平。图5为本发明实施例提供的另一种基于总线的数据传输电路的电路图,如图5所示,本发明还包括第一电阻R1、第二电阻R2、第三电阻R3、第四电阻R4和第五电阻R5;
第一电阻R1的第一端连接中央处理器1,且连接隔离电路4的第一端;
第二电阻R2的第一端连接基板管理控制器2,且连接隔离电路4的第二端;
第三电阻R3的第一端连接单片机8的第二端,且连接隔离电路4的第三端;
第四电阻R4的第一端连接单片机8的第一端,且连接从设备3;
第五电阻R5的第一端连接内存9,且连接隔离电路4的第四端;
第一电阻R1的第二端、第二电阻R2的第二端、第三电阻R3的第二端、第四电阻R4的第二端和第五电阻R5的第二端均连接电源。
在I2C总线的连接过程中均进行上拉电阻以保证数据的正常访问通讯。
进一步地,本发明还提供了一种基于总线的数据传输系统,包括上述的基于总线的数据传输电路。由于系统部分的实施例与上述的实施例相互对应,因此系统部分的实施例请参照上述电路部分的实施例描述,在此不再赘述。
对于本发明提供的一种基于总线的数据传输系统的介绍请参照上述方法实施例,本发明在此不再赘述,其具有上述基于总线的数据传输电路相同的有益效果。
进一步地,本发明还提供了一种基于总线的数据传输方法,图6为本发明实施例提供的一种基于总线的数据传输方法的流程图,如图6所示,该方法应用于包括隔离电路的基于总线的数据传输电路,隔离电路的第一端通过总线连接中央处理器,隔离电路的第二端通过总线连接基板管理控制器,隔离电路的第三端通过总线连接从设备;隔离电路的控制端连接复杂可编程逻辑器件,复杂可编程逻辑器件分别连接中央处理器和基板管理控制器,方法包括:
S11:获取中央处理器和基板管理控制器对应的控制标志位;
S12:根据控制标志位确定控制模式;
S13:根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器或基板管理控制器的总线的数据传输。
需要说明的是,本实施例中的控制标志位的设定不做限定,可以采用电平信号,也可以采用二进制的0和1表示,可以根据实际情况设定即可。控制标志位和控制模式预先建立映射关系,以便于基于当前的控制标志位和映射关系确定对应的控制模式,以此确定连通的目标从设备实现总线的数据传输。
本发明提供的一种基于总线的数据传输方法,获取中央处理器和基板管理控制器对应的控制标志位,根据控制标志位确定控制模式,根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器或基板管理控制器的总线的数据传输。本发明的有益效果在于将中央处理器和基板管理控制器通过隔离电路进行隔离,使其两个主设备在访问从设备时互不影响,其控制模式遵从一次访问从设备的过程中只有一个主设备访问,避免主设备同时上电导致的访问冲突以及从设备无法解析传输的数据问题。另外,避免两个主设备互相影响使其电位拉低问题,保证上电的主设备的数据传输工作,提高总线内的数据传输效率。
在一些实施例中,隔离电路的控制端的数量至少为一个,根据控制标志位确定控制模式,包括:
在隔离电路的控制端的数量为一个时,预先建立中央处理器和基板管理控制器对应的控制标志位与预设的电平信号的第一映射关系,其中,中央处理器和基板管理控制器对应的电平信号不同;
预先根据各电平信号与预设的控制模式进行绑定确定绑定关系;
根据当前的控制标志位和第一映射关系确定当前的控制标志位对应的电平信号;
根据确定的电平信号和绑定关系确定对应的控制模式;
或者,
在隔离电路的控制端的数量为多个时,根据隔离电路的控制端的数量对中央处理器和基板管理控制器对应的控制标志位进行设定以确定与隔离电路的控制端数量相同的控制标志位的位数;
将控制标志位与预设的控制模式进行映射以确定控制标志位和控制模式对应的第二映射关系;
根据当前的控制标志位和第二映射关系确定对应的控制模式。
具体地,在隔离电路的控制端的引脚数量为一个时,可以通过电平信号进行区分,如CPU和BMC一个是高电平有效,一个是低电平有效,两个主设备的电平信号不同即可。基于电平信号和预设的控制模式建立绑定关系,以根据当前的控制标志位对应的电平信号和绑定关系确定对应的控制模式。
在隔离电路的控制端的引脚数量为多个时,可以通过二进制0和1表示,例如控制端的引脚为2个,则每个引脚上以0和1确定对应的组合方式,如10的控制标志位对应哪个主设备的控制标志位,对应何种控制模式(选通具体的从设备)。通过控制标志位与控制模式建立的第二映射关系和当前的控制标志位确定对应的控制模式。
在另一些实施例中,考虑到单片机与内存之间的默认选通,为此开启的数据存储的控制模式,结合上述实施例,对应的控制模式确定过程具体包括:
隔离电路的控制端的数量为一个时,预先建立中央处理器和基板管理控制器对应的控制标志位与预设的电平信号的映射关系,其中,中央处理器和基板管理控制器对应的电平信号不同,且预设的电平信号为高电平或者低电平;
预先设置单片机对应的控制标志位对应的电平信号为中间电平;
预先根据各电平信号与预设的控制模式进行绑定确定绑定关系;
根据当前的控制标志位对应的电平信号和绑定关系确定对应的控制模式。
或者,隔离电路的控制端的数量为多个时,根据控制标志位确定控制模式,包括:
根据隔离电路的控制端的数量对中央处理器、基板管理控制器和单片机对应的控制标志位进行设定以确定与隔离电路的控制端数量相同的控制标志位的位数;
将控制标志位与预设的控制模式进行映射以确定控制标志位和控制模式对应的映射关系;
根据当前的控制标志位和映射关系确定对应的当前的控制模式。
可以理解的是,在加入单片机的控制模式后,对应的电平信号加入以单片机控制模式对应的中间电平信号,其余方式和上述实施例相同。对应地在隔离电路的控制端数量为多个的情况下,和上述实施例相同。
本发明实施例考虑到隔离电路的控制端的数量不同的情况下,对应的控制标志位确定的控制模式的具体过程,丰富控制模式的确定过程多样性和灵活性。
上述详细描述了基于总线的数据传输方法对应的各个实施例,在此基础上,本发明还公开与上述方法对应的基于总线的数据传输装置,图7为本发明实施例提供的一种基于总线的数据传输装置的结构图。应用于包括隔离电路的基于总线的数据传输电路,隔离电路的第一端通过总线连接中央处理器,隔离电路的第二端通过总线连接基板管理控制器,隔离电路的第三端通过总线连接从设备;隔离电路的控制端连接复杂可编程逻辑器件,复杂可编程逻辑器件分别连接中央处理器和基板管理控制器,如图7所示,该装置包括:
获取模块11,用于获取中央处理器和基板管理控制器对应的控制标志位;
第一确定模块12,用于根据控制标志位确定控制模式;
第二确定模块13,用于根据控制模式确定连通的目标从设备以完成目标从设备与中央处理器或基板管理控制器的总线的数据传输。
在一些实施例中,隔离电路的控制端的数量至少为一个,根据控制标志位确定控制模式,包括:
第一建立子模块,用于在隔离电路的控制端的数量为一个时,预先建立中央处理器和基板管理控制器对应的控制标志位与预设的电平信号的第一映射关系,其中,中央处理器和基板管理控制器对应的电平信号不同;
第一绑定子模块,用于预先根据各电平信号与预设的控制模式进行绑定确定绑定关系;
第一确定子模块,用于根据当前的控制标志位和第一映射关系确定当前的控制标志位对应的电平信号;
第二确定子模块,用于根据确定的电平信号和绑定关系确定对应的控制模式;
或者,
第一设定子模块,用于在隔离电路的控制端的数量为多个时,根据隔离电路的控制端的数量对中央处理器和基板管理控制器对应的控制标志位进行设定以确定与隔离电路的控制端数量相同的控制标志位的位数;
第三确定子模块,用于将控制标志位与预设的控制模式进行映射以确定控制标志位和控制模式对应的第二映射关系;
第四确定子模块,用于根据当前的控制标志位和第二映射关系确定对应的控制模式。
由于装置部分的实施例与上述的实施例相互对应,因此装置部分的实施例请参照上述方法部分的实施例描述,在此不再赘述。
对于本发明提供的一种基于总线的数据传输装置的介绍请参照上述方法实施例,本发明在此不再赘述,其具有上述基于总线的数据传输方法相同的有益效果。
以上对本发明所提供的一种基于总线的数据传输电路、系统、方法及装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种基于总线的数据传输电路,其特征在于,应用于交换机,所述基于总线的数据传输电路包括隔离电路;
所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;
所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器;
所述基板管理控制器,用于获取所述中央处理器和所述基板管理控制器对应的控制标志位,根据所述控制标志位确定控制模式,根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
2.根据权利要求1所述的基于总线的数据传输电路,其特征在于,所述隔离电路包括第一开关管和第二开关管;
所述第一开关管的控制端和所述第二开关管的控制端均作为所述隔离电路的控制端,且均通过所述总线连接所述复杂可编程逻辑器件;
所述第一开关管的第一端作为所述隔离电路的第一端,且通过所述总线连接所述中央处理器,所述第一开关管的第二端通过所述总线连接所述从设备;
所述第二开关管的第一端作为所述隔离电路的第二端,且通过所述总线连接所述基板管理控制器,所述第二开关管的第二端通过所述总线连接所述从设备。
3.根据权利要求1所述的基于总线的数据传输电路,其特征在于,所述隔离电路为多路选择器。
4.根据权利要求2或3所述的基于总线的数据传输电路,其特征在于,还包括单片机;
所述单片机的第一端通过所述总线连接所述从设备,所述单片机的第二端通过所述总线连接所述隔离电路的第三端。
5.根据权利要求4所述的基于总线的数据传输电路,其特征在于,还包括内存;
所述内存通过所述总线连接所述隔离电路的第四端;
所述内存,用于存储所述从设备的数据,以便于所述复杂可编程逻辑器件根据所述控制模式获取所述目标从设备的数据;
所述复杂可编程逻辑器件还用于根据所述中央处理器、所述基板管理控制器和所述单片机对应的控制标志位确定对应的控制模式,根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
6.根据权利要求5所述的基于总线的数据传输电路,其特征在于,所述总线为双向同步串行总线,还包括第一电阻、第二电阻、第三电阻、第四电阻和第五电阻;
所述第一电阻的第一端连接所述中央处理器,且连接所述隔离电路的第一端;
所述第二电阻的第一端连接所述基板管理控制器,且连接所述隔离电路的第二端;
所述第三电阻的第一端连接所述单片机的第二端,且连接所述隔离电路的第三端;
所述第四电阻的第一端连接所述单片机的第一端,且连接所述从设备;
所述第五电阻的第一端连接所述内存,且连接所述隔离电路的第四端;
所述第一电阻的第二端、所述第二电阻的第二端、所述第三电阻的第二端、所述第四电阻的第二端和所述第五电阻的第二端均连接电源。
7.一种基于总线的数据传输系统,其特征在于,包括权利要求1至6任意一项所述的基于总线的数据传输电路。
8.一种基于总线的数据传输方法,其特征在于,应用于包括隔离电路的基于总线的数据传输电路,所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器,所述方法包括:
获取所述中央处理器和所述基板管理控制器对应的控制标志位;
根据所述控制标志位确定控制模式;
根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
9.根据权利要求8所述的基于总线的数据传输方法,其特征在于,所述隔离电路的控制端的数量至少为一个,所述根据所述控制标志位确定控制模式,包括:
在所述隔离电路的控制端的数量为一个时,预先建立所述中央处理器和所述基板管理控制器对应的所述控制标志位与预设的电平信号的第一映射关系,其中,所述中央处理器和所述基板管理控制器对应的电平信号不同;
预先根据各电平信号与预设的控制模式进行绑定确定绑定关系;
根据当前的控制标志位和所述第一映射关系确定所述当前的控制标志位对应的电平信号;
根据确定的电平信号和所述绑定关系确定对应的所述控制模式;
或者,
在所述隔离电路的控制端的数量为多个时,根据所述隔离电路的控制端的数量对所述中央处理器和所述基板管理控制器对应的控制标志位进行设定以确定与所述隔离电路的控制端数量相同的控制标志位的位数;
将所述控制标志位与预设的控制模式进行映射以确定所述控制标志位和所述控制模式对应的第二映射关系;
根据当前的控制标志位和所述第二映射关系确定对应的所述控制模式。
10.一种基于总线的数据传输装置,其特征在于,应用于包括隔离电路的基于总线的数据传输电路,所述隔离电路的第一端通过总线连接中央处理器,所述隔离电路的第二端通过所述总线连接基板管理控制器,所述隔离电路的第三端通过所述总线连接从设备;所述隔离电路的控制端连接复杂可编程逻辑器件,所述复杂可编程逻辑器件分别连接所述中央处理器和所述基板管理控制器,所述装置包括:
获取模块,用于获取所述中央处理器和所述基板管理控制器对应的控制标志位;
第一确定模块,用于根据所述控制标志位确定控制模式;
第二确定模块,用于根据所述控制模式确定连通的目标从设备以完成所述目标从设备与所述中央处理器或所述基板管理控制器的所述总线的数据传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311861370.XA CN117827714A (zh) | 2023-12-29 | 2023-12-29 | 一种基于总线的数据传输电路、系统、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311861370.XA CN117827714A (zh) | 2023-12-29 | 2023-12-29 | 一种基于总线的数据传输电路、系统、方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117827714A true CN117827714A (zh) | 2024-04-05 |
Family
ID=90523780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311861370.XA Pending CN117827714A (zh) | 2023-12-29 | 2023-12-29 | 一种基于总线的数据传输电路、系统、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117827714A (zh) |
-
2023
- 2023-12-29 CN CN202311861370.XA patent/CN117827714A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6233635B1 (en) | Diagnostic/control system using a multi-level I2C bus | |
US7861110B2 (en) | System, method, and adapter for creating fault-tolerant communication busses from standard components | |
US5949982A (en) | Data processing system and method for implementing a switch protocol in a communication system | |
US6256700B1 (en) | Bus/port switching system and method for a computer | |
US20060212724A1 (en) | System and method for supporting operations of advanced power over ethernet system | |
US20020147876A1 (en) | Universal serial bus circuit | |
CN110798324B (zh) | 以太网供电方法、系统、供电端设备和可读存储介质 | |
TW201835775A (zh) | 記憶卡存取模組及記憶卡存取方法 | |
CN111198795A (zh) | 基板控制器获取内存温度的方法以及装置 | |
KR100299149B1 (ko) | I/o핀이n이하인n-비트데이타버스폭을갖는마이크로콘트롤러와그방법 | |
CN109446145A (zh) | 一种服务器主板i2c通道扩展芯片、电路及控制方法 | |
WO2023061052A1 (zh) | 自动跳线装置及通信设备 | |
TWI474179B (zh) | 多設備連接系統 | |
CN105549696A (zh) | 具有机箱管理功能的机架式服务器系统 | |
CN101163308B (zh) | 智能平台管理控制器 | |
US6438624B1 (en) | Configurable I/O expander addressing for I/O drawers in a multi-drawer rack server system | |
CN117827714A (zh) | 一种基于总线的数据传输电路、系统、方法及装置 | |
JP2012008785A (ja) | バス接続回路を備えた半導体装置及びそのバス接続方法 | |
CN216561773U (zh) | 自动跳线装置及通信设备 | |
CN115473749A (zh) | 基于单片机控制实现网卡bypass功能的方法及电路 | |
JP2015018408A (ja) | 入出力制御回路及び入出力制御回路における同期制御方法 | |
CN113778363A (zh) | 一种显示终端及其级联系统、控制方法 | |
CN112947287A (zh) | 一种控制方法、控制器及电子设备 | |
US20050033894A1 (en) | Physical layer circuit and interface circuit | |
US9509633B2 (en) | Multi-switching device and multi-switching method thereof |
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 |