CN117971748A - 一种通信方法、转换电路及计算机设备 - Google Patents
一种通信方法、转换电路及计算机设备 Download PDFInfo
- Publication number
- CN117971748A CN117971748A CN202410129841.6A CN202410129841A CN117971748A CN 117971748 A CN117971748 A CN 117971748A CN 202410129841 A CN202410129841 A CN 202410129841A CN 117971748 A CN117971748 A CN 117971748A
- Authority
- CN
- China
- Prior art keywords
- data
- controller
- bmc chip
- data memory
- memory
- 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
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 124
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004891 communication Methods 0.000 title claims abstract description 46
- 230000015654 memory Effects 0.000 claims abstract description 218
- 238000012545 processing Methods 0.000 claims description 98
- 230000005540 biological transmission Effects 0.000 claims description 80
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000002093 peripheral effect Effects 0.000 claims description 10
- 230000003993 interaction Effects 0.000 abstract description 17
- 238000007726 management method Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000001960 triggered effect Effects 0.000 description 6
- 238000004806 packaging method and process Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Communication Control (AREA)
Abstract
本申请公开了一种通信方法、转换电路及计算机设备,可应用于I3C总线技术领域,该方法包括:首先获取I3C设备发送的第一数据,并对第一数据进行处理,得到第一预定格式数据。其中,I3C设备遵循I3C协议,第一预定格式数据为I2C协议对应格式的数据。然后将第一预定格式数据存储在读数据存储器中,并在读数据存储器中存在第一预定格式数据的情况下,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。其中,BMC芯片遵循所述I2C协议。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
Description
技术领域
本申请涉及I3C总线技术领域,特别是涉及一种通信方法、转换电路及计算机设备。
背景技术
I3C(Improved Inter Integrated Circuit,串行通信总线协议)总线用于连接集成电路和传感器等设备之间的通信,相比于传统的I2C(Inter-Integrated Circuit,集成电路总线协议)总线,I3C总线具有更高的速度、更低的功耗以及更丰富的功能。它可以在单个总线上同时支持传统的I2C设备和新的I3C设备,实现向下兼容。
CPU(Central Processing Unit,中央处理器)将提供I3C接口,从而获得更快的交互效率,提高管理质量。现有的BMC(Baseboard Management Controller,基板管理控制器)芯片无I3C接口,因此BMC与CPU之间无法实现I3C通信,从而存在交互效率以及管理质量较低的问题。
因此,如何在保证无I3C接口的BMC芯片的交互效率的同时提高管理质量,是本领域技术人员急需解决的问题。
发明内容
基于上述问题,本申请实施例提供了一种通信方法、转换电路及计算机设备,通过外围电路使无I3C接口的BMC芯片可以使用更加先进I3C协议与I3C从设备进行通信,从而解决了现有BMC芯片存在交互效率以及管理质量较低的问题。
第一方面,本申请实施例提供了一种通信方法,包括:获取I3C设备发送的第一数据,I3C设备遵循I3C协议;将第一数据进行处理,得到第一预定格式数据;第一预定格式数据为I2C协议对应格式的数据;将第一预定格式数据存储在读数据存储器中;在读数据存储器中存在第一预定格式数据的情况下,将读数据存储器中存储的第一预定格式数据发送至BMC芯片,BMC芯片遵循I2C协议。如此,本申请实施例通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
在一种可能的实现方式中,获取I3C设备发送的第一数据,包括:获取I3C设备发送的第一数据包;对第一数据包进行解析,并得到第一数据。如此,本申请实施例引入了利用转换电路从第一数据包中解析第一数据的概念,从而提高了数据获取的准确性。
在一种可能的实现方式中,在读数据存储器中存在第一预定格式数据的情况下,将读数据存储器中存储的第一预定格式数据发送至BMC芯片,包括:在读数据存储器中存在第一预定格式数据的情况下,则向BMC芯片发送中断信号,以触发BMC芯片反馈抓取指令;基于抓取指令,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。如此,本申请实施例引入了抓取指令的概念,使转换电路基于BMC芯片反馈的抓取指令进行数据传输,从而提高了数据传输的准确性。
在一种可能的实现方式中,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片之前,还包括:获取所述BMC芯片反馈的所述抓取指令;所述抓取指令指定传输方式或所述抓取指令不指定传输方式;在所述抓取指令指定传输方式的情况下,所述抓取指令包括串行外设接口SPI中断传输指令、I2C传输指令以及串行通用输入输出SGPIO轮询传输指令中的一种;在所述抓取指令不指定传输方式的情况下,所述抓取指令不包括任何传输指令。如此,本申请实施例引入了两种对应不同传输指令的抓取指令,使转换电路既可以自己判断传输数据需要用到的控制器,又可以直接从抓取指令中确定传输数据需要用到的控制器,提高了确定控制器方式的灵活性。
在一种可能的实现方式中,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片,包括:在所述抓取指令指定传输方式的情况下,基于所述抓取指令,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。如此,本申请实施例引入了一种从抓取指令中直接确定传输方式的方法,从而提高了数据传输的效率。
在一种可能的实现方式中,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片,包括:在所述抓取指令不指定传输方式的情况下,利用处理控制器判断所述第一预定格式数据的时序要求,得到判断结果;所述判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种;根据所述判断结果,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;所述第一时序要求级别对应所述SPI控制器;所述第二时序要求级别对应I2C控制器;所述第三时序要求级别对应SGPIO控制器。如此,本申请实施例引入了一种转换电路自行判断传输方式的方法,从而提高了数据传输的准确性。
在一种可能的实现方式中,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片之后,还包括:更新所述读数据存储器。如此,本申请实施例引入了一种读数据存储器的维护方式,通过更新读数据存储器,从而提高了后续数据传输的准确性。
第二方面,本申请实施例提供了一种通信方法,应用于由BMC芯片向I3C设备传输数据;包括:获取所述BMC芯片发送的第二数据,BMC芯片遵循I2C协议;将所述第二数据存储在写数据存储器中;在所述写数据存储器中存在所述第二数据的情况下,将所述第二数据转换成第二预定格式数据,并将所述第二预定格式数据发送至所述I3C设备;所述第二预定格式数据为I3C命令码格式数据。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
在一种可能的实现方式中,所述获取所述BMC芯片发送的第二数据,包括:获取所述BMC芯片发送的第二数据包;对所述第二数据包进行解析,并得到第二数据。如此,本申请实施例引入了利用转换电路从第二数据包中解析第二数据的概念,从而提高了数据获取的准确性。
第三方面,本申请实施例提供了一种转换电路,包括:处理控制器、I3C控制器、I2C控制器、读数据存储器以及写数据存储器;I3C控制器用于获取第一数据,将第一数据转换成I2C协议对应格式的数据并存入读数据存储器;处理控制器用于监控读数据存储器存在数据的情况下,并触发I2C控制器将读数据存储器中的数据发送给BMC芯片。
第四方面,本申请实施例提供了一种转换电路,包括处理控制器、I3C控制器、I2C控制器、读数据存储器、写数据存储器、SPI控制器以及SGPIO控制器;I3C控制器用于获取第一数据,将第一数据转换成I2C协议对应格式的数据并存入读数据存储器;处理控制器用于监控读数据存储器存在数据的情况下,从I2C控制器SPI控制器以及SGPIO控制器中确认一个目标控制器,以使目标控制器将读数据存储器中的数据发送给BMC芯片。
在一种可能的实现方式中,所述处理控制器具体用于监控所述读数据存储器存在数据的情况下,判断所述第一预定格式数据的时序要求,得到判断结果;
所述判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种;
根据所述判断结果,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的目标控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
所述第一时序要求级别对应所述SPI控制器;所述第二时序要求级别对应I2C控制器;所述第三时序要求级别对应SGPIO控制器。
第五方面,本申请实施例提供了一种计算机设备,包括:I3C设备、转换电路和BMC芯片,转换电路连接在I3C设备和BMC芯片之间,转换电路用于:获取I3C设备发送的第一数据,并将第一数据转换成I2C协议对应格式的数据并存入读数据存储器,并将读数据存储器中的数据发送给BMC芯片。
从以上技术方案可以看出,相较于现有技术,本申请实施例具有以下优点:
本申请转换电路首先获取中央处理器发送的第一数据,并对第一数据进行处理,得到第一预定格式数据。然后将第一预定格式数据存储在读数据存储器中,并在读数据存储器中存在第一预定格式数据的情况下,向BMC芯片发送中断信号,以触发BMC芯片反馈抓取指令。最后基于抓取指令,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
附图说明
图1为本申请实施例提供的一种计算机设备的架构示意图;
图2为本申请实施例提供的一种转换电路的结构示意图;
图3为本申请实施例提供的另一种转换电路的结构示意图;
图4为本申请实施例提供的一种通信方法的流程图;
图5为本申请实施例提供的一种中央处理器通过转换电路向BMC芯片发送数据的流程图;
图6为本申请实施例提供的另一种通信方法的流程图;
图7本申请实施例提供的一种BMC芯片通过转换电路向中央处理器发送数据的流程图;
图8为本申请实施例提供的一种通信装置的结构示意图;
图9为本申请实施例提供的另一种通信装置的结构示意图;
图10为本申请实施例提供的一种服务器结构示意图。
具体实施方式
正如前文所述,现有的BMC芯片由于不具有I3C接口与具有I3C接口的CPU之间通信存在交互效率以及管理质量较低的问题。具体的,I3C总线相比于传统的I2C总线具有更高的速度、更低的功耗以及更丰富的功能。现有的无I3C接口的BMC芯片无法通过I3C协议与I3C设备之间进行I3C通信,只能采用降级至I2C的方式进行。其中,I3C设备是具备I3C接口的其他设备,也可以是具备I3C接口的CPU。如此,BMC芯片与具有I3C接口的CPU之间交互时,由于BMC不支持I3C,所以二者在交互时,存在交互效率偏低,且管理软件的能力大打折扣的问题。
为解决上述问题,本申请实施例提供了一种计算机设备,这个计算机设备可以包括管理控制器(BMC)、I3C设备以及转换电路。可以理解的,I3C设备可以为中央处理器(具备I3C接口的CPU),也可以为具备I3C接口其他器件,下文以I3C设备为中央处理器为例进行说明。
图1为本申请实施例提供的一种计算机设备的架构示意图。结合图1所示,转换电路连接在管理控制器与中央处理器之间。中央处理器包括第一接口,管理控制器包括第二接口,转换电路包括第三接口和第四接口,第一接口与第三接口连接,第二接口与第四接口连接,第一接口和第三接口支持(遵循)第一协议,第二接口和第四接口支持(遵循)第二协议,其中,第一协议和第二协议是同类型的协议,第一协议的性能优于第二协议的性能,且第一协议能兼容第二协议。示例的,第一协议为I3c协议,第二协议为I2c协议。
转换电路用于将中央处理器基于第一协议发送的数据转换成第二协议对应格式的数据,然后通过第二协议发送给管理控制器。
转换电路还用于将管理控制器基于第二协议发送数据转换成第一协议对应格式的数据,然后通过第一协议发送给中央处理器。
示例的,计算机设备可以是计算机或服务器等。服务器例如可以为机架服务器、刀片服务器或塔式服务器。
需要说明的是,不同计算机设备对管理控制器有不同的称呼,例如一些计算机设备称为BMC,一些计算机设备称为iLO(Integrated lights-out),另一些计算机设备称为集成戴尔远程控制卡(Integrated Dell Remote Access Controller,iDRAC)。不论是叫BMC,还是叫iLO或iDRAC,都可以理解为是本发明实施例中的BMC。
转换电路有多种实现方式,图2为本申请实施例提供的一种转换电路的结构示意图。结合图2所示,第一种实现方式是转换电路包括处理控制器、I3C控制器、I2C控制器、中断控制器、读数据存储器以及写数据存储器;
处理控制器与I3C控制器、I2C控制器、中断控制器、读数据存储器以及写数据存储器均连接,处理控制器用于监控读数据存储器和写数据存储器中是否存在数据,并控制I2C控制器、I3C控制器或中断控制器进行响应处理。
I3C控制器一端与中央处理器连接,另一端分别与读数据存储器和写数据存储器连接,用于获取中央处理器向BMC芯片发送的数据,然后将该数据转换成第二协议对应格式的数据并存入读数据存储器,以及将写数据存储器中的数据转换成第一协议对应格式的数据,然后通过第一协议发送给中央处理器。
I2C控制器一端与BMC芯片连接,另一端分别与读数据存储器以及写数据存储器连接,用于将BMC芯片向中央处理器发送的数据通过第二协议传输至写数据存储器,以及将读数据存储器中的数据通过第二协议发送给BMC芯片;
中断控制器与BMC芯片连接,用于根据处理控制器控制与BMC芯片通信;
读数据存储器用于存储中央处理器向BMC芯片发送的数据;写数据存储器用于存储BMC芯片向中央处理器发送的数据。
本实施例中,BMC芯片的第二接口包括第一I2C接口和第一中断接口,第四接口包括第二I2C接口和第二中断接口,I2C控制器通过第二I2C接口与第一I2C接口连接,从而实现与BMC芯片连接。中断控制器通过第二中断接口与第一中断接口连接,从而实现与BMC芯片连接。
I3C控制器通过第三接口与第一接口连接从而实现与中央处理器的连接。当BMC芯片向中央处理器传输数据时,BMC芯片将包括该数据的数据包发送给I2C控制器,该数据包符合第二协议。
I2C控制器用于将数据包中的数据发送至写数据存储器;
处理控制器用于监控写数据存储器中是否存在数据,当写数据存储器中存在数据时触发I3C控制器进行数据传输;
I3C控制器用于从写数据存储器中获取数据,并封装成符合第一协议的数据包,并发送至中央处理器。
当中央处理器向BMC芯片发送数据时,中央处理器向I3C控制器发送包括该数据的数据包;
I3C控制器将数据包中的数据重新组包成寄存器地址+寄存器数据格式,并存储至读数据存储器;
处理控制器用于监控读数据存储器中是否存在数据,当读数据存储器中存在数据时触发I2C控制器进行数据读取;
I2C控制器用于从读数据存储器中读取数据,并将数据进行组包并发送至BMC芯片。
图3为本申请实施例提供的另一种转换电路的结构示意图。结合图3所示,第二种情况是转换电路包括处理控制器,I3C控制器、I2C控制器、中断控制器、读数据存储器、写数据存储器、SPI控制器以及SGPIO控制器;
处理控制器与I3C控制器、I2C控制器、SPI控制器、SGPIO控制器、中断控制器、读数据存储器以及写数据存储器均连接,处理控制器用于监控读数据存储器和写数据存储器中是否存在数据,并控制I2C控制器、I3C控制器、SPI控制器、SGPIO控制器或中断控制器进行响应处理。
I3C控制器一端与中央处理器连接,另一端分别与读数据存储器和写数据存储器连接,用于获取中央处理器向BMC芯片发送的数据,然后将该数据转换成第二协议对应格式的数据并存入读数据存储器,以及将写数据存储器中的数据转换成第一协议对应格式的数据,然后通过第一协议发送给中央处理器;
I2C控制器、SPI控制器以及SGPIO控制器中每个控制器的一端都与BMC芯片连接,另一端分别与读数据存储器以及写数据存储器连接,分别用于将BMC芯片向中央处理器发送的数据通过第二协议传输至写数据存储器,以及将读数据存储器中的数据通过第二协议发送给BMC芯片;
中断控制器与BMC芯片连接,用于根据处理控制器控制与BMC芯片通信;
读数据存储器用于存储中央处理器向BMC芯片发送的数据;写数据存储器用于存储BMC芯片向中央处理器发送的数据。
本实施例中,BMC芯片的第二接口包括第一I2C接口、第一SPI接口、第一SGPIO接口和第一中断接口,第四接口包括第二I2C接口、第二SPI接口、第二SGPIO接口和第二中断接口,I2C控制器通过第二I2C接口与第一I2C接口连接,从而实现与BMC芯片连接。SPI控制器通过第二SPI接口与第一SPI接口连接,从而实现与BMC芯片连接。SGPIO控制器通过第二SGPIO接口与第一SGPIO接口连接,从而实现与BMC芯片连接。中断控制器通过第二中断接口与第一中断接口连接,从而实现与BMC芯片连接。
I3C控制器通过第三接口与第一接口连接从而实现与中央处理器的连接。
当BMC芯片向中央处理器传输数据时,BMC芯片将包括该数据的数据包发送给I2C控制器、SPI控制器或SGPIO控制器,该数据包符合第二协议。
I2C控制器、SPI控制器或SGPIO控制器用于将数据包中的数据发送至写数据存储器;
处理控制器用于监控写数据存储器中是否存在数据,当写数据存储器中存在数据时触发I3C控制器进行数据传输;
I3C控制器用于从写数据存储器中获取数据,并封装成符合第一协议的数据包,并发送至中央处理器。
当中央处理器向BMC芯片发送数据时,中央处理器向I3C控制器发送包括该数据的数据包;
I3C控制器将数据包中的数据重新组包成寄存器地址+寄存器数据格式,并存储至读数据存储器;
处理控制器用于监控读数据存储器中是否存在数据,当读数据存储器中存在数据时,判断采用I2C控制器、SPI控制器以及SGPIO控制器中的哪一个进行数据传输,并触发选中的采用I2C控制器、SPI控制器或SGPIO控制器中的任一个控制器进行数据传输;
I2C控制器、SPI控制器或SGPIO控制器用于在处理控制器的控制下,从读数据存储器中读取数据,并将数据发送至BMC芯片。
上述提到的两种转换电路可以是实体电路,也可以用FPGA(Field ProgrammableGate Array,可编程逻辑器件)或CPLD(Programmable Logic Device,可编程逻辑器件)芯片来实现。允许用户通过编程来定义和重新配置其内部的逻辑功能和连接关系。
对应的,本申请实施例提供的通信方法也有两种,一种是基于第一种实现方式的转换电路的,另一种是基于第二种实现方式的转换电路的。
基于第一种转换电路,本申请实施例提供了一种通信方法包括:当BMC芯片向中央处理器传输数据时,转换电路利用I2C控制器接收BMC芯片通过第二协议向中央处理器发送的包含传输数据的数据包,并将该数据包中的数据存储到写数据存储器中。然后利用处理控制器实时监控写数据存储器中是否存在该数据,若存在,则利用I3C控制器从写数据存储器中获取该数据,并将该数据封装成符合第一协议的数据包,并发送至中央处理器;当中央处理器向BMC芯片发送数据时,利用I3C控制器获取中央处理器发送的包括该数据的数据包,并将该数据包中的数据进行重新组包处理,得到第一预定格式数据。其中,第一预定格式数据为寄存器地址+寄存器数据格式的数据。然后利用I3C控制器将第一预定格式数据存储在读数据存储器中,同时利用处理控制器实时监控读数据存储器中是否存在第一预定格式数据,若存在,则向BMC芯片发送中断信号,触发BMC芯片反馈抓取指令。最后基于抓取指令,利用I2C控制器从读数据存储器中读取第一预定格式数据,并将第一预定格式数据发送至BMC芯片。
基于第二种转换电路,本申请实施例提供了另一种通信方法包括:当BMC芯片向中央处理器传输数据时,转换电路的I2C控制器、SPI控制器或SGPIO控制器接收BMC芯片通过第二协议向中央处理器发送的包含传输数据的数据包,并将该数据包中的数据存储到写数据存储器中。然后处理控制器实时监控写数据存储器中是否存在该数据,若存在,则利用I3C控制器从写数据存储器中获取该数据,并将该数据封装成符合第一协议的数据包,并发送至中央处理器;当中央处理器向BMC芯片发送数据时,I3C控制器获取中央处理器发送包括该数据的数据包,并将该数据包中的数据进行重新组包处理,得到第一预定格式数据。其中,第一预定格式数据为寄存器地址+寄存器数据格式的数据。然后利用I3C控制器将第一预定格式数据存储在读数据存储器中,同时处理控制器实时监控读数据存储器中是否存在第一预定格式数据,若存在,则向BMC芯片发送中断信号,触发BMC芯片反馈抓取指令。最后处理控制器判断该数据的时序要求,并基于抓取指令和时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个从读数据存储器中读取第一预定格式数据,并将第一预定格式数据发送至BMC芯片。
当然,其他实施方式中,当BMC芯片向中央处理器传输数据时,转换电路还可以利用处理控制器判断传输数据的时序要求,然后基于时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个控制器来接收BMC芯片通过第二协议向中央处理器发送的包含传输数据的数据包。
需要说明的是,本申请实施例提供的一种通信方法及计算机设备可应用于I3C总线技术领域。上述仅为示例,并不对本申请实施例提供的一种通信方法及计算机设备的应用领域进行限定。
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图4为本申请实施例提供的一种通信方法的流程图。结合图4所示,本申请实施例提供的通信方法可以应用于图1所示的计算机设备、图2中的转换电路或图3中的转换电路,可以包括:
S110:转换电路获取中央处理器发送的第一数据。
需要说明的是,当中央处理器需要与BMC芯片通信时,中央处理器将需要发送给BMC芯片的第一数据基于第一协议封装成第一数据包发送给转换电路。
转换电路在接收到第一数据包之后,通过I3C控制器对第一数据包进行解析得到第一数据,第一数据为I3C命令码格式的数据。
S120:转换电路将第一数据进行处理,得到第一预定格式数据。
示例的,转换电路的I3C控制器将I3C命令码格式的第一数据转换为第一预定格式数据,其中,第一预定格式数据的预定格式为第二协议中规定的数据格式,预定格式为寄存器地址+寄存器数据格式。
S130:将第一预定格式数据存储在读数据存储器中。
可以理解的是,转换电路的I3C控制器可以将第一预定格式数据存储至读数据存储器的缓存队列中,以供后续BMC芯片进行读调度。其中,当转换电路连续获得了多个第一数据包,则根据多个第一数据包分别得到的多个第一预定格式数据的存储时间依次存储在缓存队列中。
S140:在读数据存储器中存在第一预定格式数据的情况下,则向BMC芯片发送中断信号,以触发BMC芯片反馈抓取指令。
转换电路中的处理控制器,可以判断读数据存储器的缓存队列中是否存在数据。如此,利用处理控制器实时对读数据存储器进行监控,判断读数据存储器中是否存入了第一预定数据格式的数据。若不存在,则不会触发BMC芯片的抓取动作;若存在,转换电路便会利用处理控制器触发预先配置的中断控制器向BMC芯片发送中断信号(对应的脉冲或电平信号)。由于BMC芯片中也配备有硬件中断控制器,所以当BMC芯片接收到中断信号时便会被触发从读数据存储器中抓取数据的行为,并向转换电路反馈具体的抓取指令。
可以理解的是,读数据存储器中存储的数据以队列的形式存在,一个中断信号可以触发BMC芯片从读数据存储器中的缓存队列的固定地址获取一次数据。而对于读数据存储器中的缓存队列而言,固定地址可以是处于读数据存储器中的缓存队列队首的一组数据的地址,BMC芯片每抓取一个数据,读数据存储器中的缓存队列中的数据则向队首方向推进一个,然后由中断控制器向BMC芯片发送下一个中断信号,直至读数据存储器中的缓存队列中无数据可以发送为止。另外,一个中断信号也可以触发BMC芯片从读数据存储器中的缓存队列的固定地址不断抓取数据,而对于读数据存储器中的缓存队列而言,BMC芯片每抓取一个数据,读数据存储器中的缓存队列中的数据同样向队首方向推进一个,但中断控制器不会向BMC芯片发送下一个中断信号,直至BMC芯片将读数据存储器中的缓存队列中的数据全部抓取完毕。
S150:基于所述抓取指令,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。
在实际应用中,当转换电路为上述图2所示的转换电路时,转换电路获取到BMC芯片发送的抓取指令后,会基于抓取指令,利用I2C控制器将读数据存储器中存储的第一预定格式数据发送至BMC芯片。当转换电路为图3所示的转换电路时,转换电路会在获取到BMC芯片发送的抓取指令后,利用处理控制器判断第一预定格式数据的时序要求,并基于抓取指令和时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个将第一预定格式数据发送至BMC芯片。
示例的,对于不同的I3C设备而言,其时序要求不同,BMC芯片通过转换电路与I3C设备连接后可以对该I3C设备进行身份识别,从而确定I3C设备是高时序设备、中时序设备或低时序设备中的哪一种,进而确定抓取指令。其中,高时序设备对应的抓取指令中指示采用SPI控制器、中时序设备对应的抓取指令中指示采用I2C控制器,低时序设备对应的抓取指令中指示采用SGPIO控制器。
综上所述,本申请转换电路首先获取中央处理器发送的第一数据,并对第一数据进行处理,得到第一预定格式数据。然后将第一预定格式数据存储在读数据存储器中,并在读数据存储器中存在第一预定格式数据的情况下,向BMC芯片发送中断信号,以触发BMC芯片反馈抓取指令。最后基于抓取指令,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
图5为本申请实施例提供的一种中央处理器通过转换电路向BMC芯片发送数据的流程图。结合图5所示,转换电路通过向中央处理器主动抓取数据或接收中央处理器主动发送的数据从而触发BMC芯片的读数据流程。
具体的,转换电路利用I3C控制器将从中央处理器获取的I3C命令码格式的第一数据转换为第一预设格式数据,并存储在读数据存储器的缓存队列中。转换电路利用处理控制器对读数据存储器的缓存队列进行监控,若发现读数据存储器的缓存队列中存在第一预定格式数据,向BMC芯片发送中断信号,以触发BMC芯片从读数据存储器的缓存队列中抓取数据的行为,并反馈抓取指令。最后转换电路基于抓取指令,将读数据存储器的存储序列中存储的第一预定格式数据发送至BMC芯片。另外,在BMC芯片抓取完数据后由转换电路对读数据存储器的缓存队列中的数据进行刷新。需要注意的是,转换电路对读数据存储器的缓存队列进行监控是实时进行的,若读数据存储器的缓存队列中不存在数据则继续进行监控。
另外,由于抓取指令的传输方式不尽相同,因此本申请实施例可以就一种可能的传输方式进行说明。
在一种情况下,针对如何实现抓取指令的传输。相应的,在上述S150之前,通信方法还可以包括:
获取所述BMC芯片反馈的所述抓取指令;
所述抓取指令指定传输方式或抓取指令不指定传输方式,在抓取指令指定传输方式的情况下,抓取指令包括串行外设接口SPI中断传输指令、集成电路总线协议I2C传输指令以及串行通用输入输出SGPIO轮询传输指令中的一种。在抓取指令不指定传输方式的情况下,抓取指令不包括任何传输指令。
在抓取指令不包括任何传输指令的情况下,转换电路可以通过处理控制器决定数据的传输方式。在抓取指令包括传输指令的情况下,BMC芯片可以根据调度情况自行决定数据的抓取方式。
示例的,以通过BMC芯片发送抓取指令来决定数据的抓取方式为例进行说明。
当转换电路通过预先配置的中断控制器向BMC芯片发送中断信号后,由BMC芯片向转换电路反馈抓取指令。转换电路获取的抓取指令包括串行外设接口SPI中断传输指令、集成电路总线协议I2C传输指令以及串行通用输入输出SGPIO轮询传输指令中的一种。对于不同的I3C设备而言,其时序要求不同,BMC芯片可以通过判断确定I3C设备是高时序设备、中时序设备或低时序设备中的哪一种,从而确定抓取方式。不同种类的抓取指令能够决定转换电路以哪种总线进行数据传输,高时序设备对应串行外设接口SPI中断传输指令、中时序设备对应集成电路总线协议I2C传输指令,低时序设备对应串行通用输入输出SGPIO轮询传输指令。
另外,由于将读数据存储器中存储的第一预定格式数据发送至BMC芯片的方式不尽相同,因此本申请可以就一种可能的发送方式进行说明。
在一种情况下,针对如何向BMC芯片发送第一预定格式数据。相应的,上述S150可以包括:
在抓取指令包括SPI中断传输指令的情况下,基于所述SPI中断传输指令,转换电路的SPI控制器,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
在另一种情况下,针对如何向BMC芯片发送第一预定格式数据。相应的,上述S150可以包括:
在抓取指令包括I2C传输指令的情况下,基于所述I2C传输指令,转换电路的I2C控制器,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
在又一种情况下,针对如何向BMC芯片发送第一预定格式数据。相应的,S150可以包括:
在抓取指令包括SGPIO轮询传输指令的情况下,基于所述SGPIO轮询传输指令,转换电路的SGPIO控制器,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
如此,不同时序要求的数据可以通过不同的接口进行传输,从而提高了交互速率。以转换电路通过处理控制器决定数据的传输方式为例进行说明:
当转换电路通过预先配置的处理控制器向BMC芯片发送中断信号后,由BMC芯片向转换电路反馈抓取指令。转换电路确定抓取指令中不包括传输指令时,执行以下方法:
判断所述第一预定格式数据的时序要求,判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种。其中,第一时序要求级别对应的时序要求极高,第二时序要求级别对应的时序要求较高,而第三时序要求级别对应的时序要求为低,也就是说,第一时序要求级别高于第二时序要求级别高于第三时序要求级别。
具体的,对于不同的I3C设备而言,其时序要求不同,转换电路与I3C设备连接后可以由处理控制器对该I3C设备进行身份识别,从而确定I3C设备是高时序设备、中时序设备或低时序设备中的哪一种,进而确定该I3C设备发送的数据的时序要求级别。其中,第一时序要求级别的数据对应采用SPI控制器进行数据传输,第二时序要求级别的数据对应采用I2C控制器进行数据传输,第三时序要求级别的数据对应采用SGPIO控制器进行数据传输。另外,处理控制器还可以通过I3C设备的安全系统模式,确定传输数据的时序级别等。
当所述第一预定格式数据的时序要求为第一时序要求级别时,通过SPI控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
当所述第一预定格式数据的时序要求为第二时序要求级别时,通过I2C控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
当所述第一预定格式数据的时序要求为第三时序要求级别时,通过SGPIO控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
所述第一时序要求级别高于所述第二时序要求级别高于所述第三时序要求级别。
如此,不同时序要求的数据可以通过不同的接口进行传输,从而提高了交互速率。
另外,由于S150之后,对于读数据存储器的处理方式不尽相同,因此本申请实施例可以就一种可能的处理方式进行说明。
在一种情况下,转换电路需要更新所述读数据存储器。
一种情况中,一个中断触发BMC芯片可以从转换电路的固定地址获取一次数据,当BMC芯片获取到一个数据后,该数据会从读数据存储器的缓存队列中转移,而读数据存储器的缓存队列中的其他数据便会向固定地址的方向推进一个,从而实现读数据存储器的更新。
另外,由于数据传输方向不尽相同,因此本申请实施例可以就一种可能的数据传输方向进行说明。
在一种情况下,针对管理控制器通过转换电路向中央处理器发送第二数据。相应的,图6为本申请实施例提供的另一种通信方法的流程图。结合图6所示,所述通信方法可以应用于图1所示的计算机设备、图2中的转换电路或图3中的转换电路,还包括:
S210,转换电路获取BMC芯片发送的第二数据。
需要说明的是,当BMC芯片需要与中央处理器进行通信时,BMC芯片需要将发送给中央处理器的第二数据基于第二协议封装成第二数据包发送给转换电路。
在转换电路为图2的情况下,转换电路在接收到第二数据包之后,通过I2C控制器对第二数据包进行解析得到第二数据。在转换电路为图3的情况下,一种情况中,BMC芯片直接将第二数据包发送给I2C控制器、SPI控制器或SGPIO控制器中的一个,接收第二数据包的控制器对第二数据包进行解析,并得到第二数据。另一种情况中,转换电路在接收到第二数据包之后,基于时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个对第二数据包进行解析,并得到第二数据。具体的,BMC芯片可以根据调度情况自行决定数据的传输方式,并向转换电路发送传输指令,然后由转换电路基于该传输指令选择SPI控制器、SGPOIO以及I2C控制器中的一个与其对应,对第二数据包进行解析,并完成第二数据的获取;又一种情况中,BMC芯片还可以不发送传输指令,由转换电路直接通过处理控制器判断传输数据的时序要求,并根据时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个控制器对第二数据包进行解析,并得到第二数据。
S220,转换电路将第二数据存储在写数据存储器中。
在转换电路为图2的情况下,转换电路利用I2C控制器将第二数据存储在写数据存储器的缓存队列中。在转换电路为图3的情况下,转换电路利用SPI控制器、SGPOIO以及I2C控制器中获取BMC芯片发送的第二数据的控制器,将第二数据存储在写数据存储器的缓存队列中。
S230,在写数据存储器中存在第二数据的情况下,将第二数据转换成第二预定格式数据,并将第二预定格式数据发送至中央处理器。
所述第二预定格式数据为I3C命令码格式数据。转换电路中的处理控制器,可以判断写数据存储器的缓存队列中是否存在数据。如此,利用处理控制器实时对读数据存储器进行监控,判断读数据存储器中是否存入了第二数据。若不存在,则不会触发I3C控制器进行数据传输;若存在,转换电路便会利用处理控制器触发I3C控制器,由I3C控制器将读数据存储器中的第二数据转换为第二预定数据格式数据,并将依次传输到中央处理器中。
图7本申请实施例提供的一种BMC芯片通过转换电路向中央处理器发送数据的流程图。结合图7所示,BMC芯片主动发送数据从而触发BMC芯片的写数据流程。
具体的,BMC芯片将发送给中央处理器的第二数据基于第二协议封装成第二数据包发送给转换电路,在转换电路为图2的情况下,转换电路在接收到第二数据包之后,通过I2C控制器对第二数据包进行解析得到第二数据并将第二数据写入写数据存储器的写数据缓存队列中。在转换电路为图3的情况下,转换电路在接收到第二数据包之后,基于时序要求从I2C控制器、SPI控制器以及SGPIO控制器中选择一个对第二数据包进行解析,得到第二数据,并将第二数据写入写数据存储器的写数据缓存队列中。然后,转换电路利用处理控制器对写数据存储器的缓存队列进行监控,若发现写数据存储器的缓存队列中存在第二数据,则触发I3C控制器,由I3C控制器从读数据存储器中读取一组第二数据,转换为第二预定数据格式数据并组包,然后将第二预定数据格式数据的数据包传输到中央处理器中,从而实现数据写入。
可以理解的是,结合上述BMC芯片通过转换电路向中央处理器发送数据以及中央处理器通过转换电路向BMC芯片发送数据的流程,转换电路中若同时配置了处理控制器、中断控制器、I2C控制器、读数据存储器、写数据存储器以及I3C控制器,通过转换电路则可同时完成BMC芯片向中央处理器发送数据以及中央处理器向BMC芯片发送数据的流程。
综上所述,本申请转换电路获取BMC芯片发送的第二数据。然后将第二数据存储在写数据存储器中。最后在写数据存储器中存在第二数据的情况下,将第二数据转换成第二预定格式数据,并将第二预定格式数据发送至中央处理器。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
基于上述实施例提供的一种通信方法,本申请还提供了一种通信装置。下面分别结合实施例和附图,对该通信装置进行描述。
图8为本申请实施例提供的一种通信装置的结构示意图。结合图8所示,本申请实施例提供的通信装置200,包括:
获取模块201,用于获取I3C设备发送的第一数据,所述I3C设备遵循I3C协议;
处理模块202,用于将第一数据进行处理,得到第一预定格式数据;第一预定格式数据为I2C协议对应格式的数据;
存储模块203,用于将第一预定格式数据存储在读数据存储器中;
发送模块204,用于在读数据存储器中存在所述第一预定格式数据的情况下,将所述读数据存储器中存储的所述第一预定格式数据发送至BMC芯片,所述BMC芯片遵循所述I2C协议。
作为一种实施方式,针对如何获取I3C设备发送的第一数据,上述获取模块201,具体用于:
获取I3C设备发送的第一数据包;
对第一数据包进行解析,并得到第一数据。
作为一种实施方式,针对如何进行数据传输,上述发送模块204,包括:触发模块以及发送子模块;
触发模块,用于在读数据存储器中存在所述第一预定格式数据的情况下,则向所述BMC芯片发送中断信号,以触发所述BMC芯片反馈抓取指令;
发送子模块,用于基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
作为一种实施方式,上述通信装置200,还包括:获取子模块;
获取子模块,用于获取BMC芯片反馈的抓取指令;
抓取指令指定传输方式或抓取指令不指定传输方式;
在抓取指令指定传输方式的情况下,抓取指令包括串行外设接口SPI中断传输指令、I2C传输指令以及串行通用输入输出SGPIO轮询传输指令中的一种;
在抓取指令不指定传输方式的情况下,抓取指令不包括任何传输指令。
作为一种实施方式,针对如何将第一预定格式数据发送至BMC芯片,上述发送子模块,具体用于:
在抓取指令指定传输方式的情况下,基于抓取指令,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将读数据存储器中存储的第一预定格式数据发送至BMC芯片。
作为一种实施方式,针对如何将第一预定格式数据发送至BMC芯片,上述发送子模块,具体还用于:
在抓取指令不指定传输方式的情况下,利用处理控制器判断第一预定格式数据的时序要求,得到判断结果;
判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种;
根据判断结果,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将读数据存储器中存储的第一预定格式数据发送至BMC芯片;
第一时序要求级别对应SPI控制器;第二时序要求级别对应I2C控制器;第三时序要求级别对应SGPIO控制器。
作为一种实施方式,上述通信装置200,还包括:更新模块;
更新模块,用于更新读数据存储器。
综上,本申请转换电路首先获取中央处理器发送的第一数据,并对第一数据进行处理,得到第一预定格式数据。然后将第一预定格式数据存储在读数据存储器中,并在读数据存储器中存在第一预定格式数据的情况下,向BMC芯片发送中断信号,以触发BMC芯片反馈抓取指令。最后基于抓取指令,将读数据存储器中存储的第一预定格式数据发送至BMC芯片。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
另外,由于数据传输方向不尽相同,因此本申请实施例可以就一种可能的数据传输方向进行说明。
在一种情况下,针对BMC芯片通过转换电路向I3C设备发送第二数据。相应的,图9为本申请实施例提供的另一种通信装置的结构示意图。结合图9所示,本申请实施例提供的另一种通信装置300,包括:
获取模块301,用于获取BMC芯片发送的第二数据;
存储模块302,用于将第二数据存储在写数据存储器中;
发送模块303,用于在写数据存储器中存在第二数据的情况下,将第二数据转换成第二预定格式数据,并将第二预定格式数据发送至I3C设备;第二预定格式数据为I3C命令码格式数据。
作为一种实施方式,针对如何获取第二数据,上述获取模块301,具体可以用于:
获取BMC芯片发送的第二数据包;
对第二数据包进行解析,并得到第二数据。
综上,本申请转换电路获取BMC芯片发送的第二数据。然后将第二数据存储在写数据存储器中。最后在写数据存储器中存在第二数据的情况下,将第二数据转换成第二预定格式数据,并将第二预定格式数据发送至中央处理器。如此,通过转换电路使无I3C接口的BMC芯片可以与具备I3C接口的I3C设备进行通信,从而提高了交互速率和管理质量。
另外,本申请还提供了一种服务器,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述所述通信方法的步骤。
另外,本申请还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述通信方法的步骤。
图10为本申请实施例提供的一种服务器结构示意图,结合图10所示,服务器1000包括处理器1010和存储器1020;其中,所述存储器1020存储有计算机指令,所述处理器1010用于执行所述计算机指令,使得服务器1000执行上文所示基于外围电路实现I3C通信的方法。
在一些实施例中,处理器1010可以是CPU,还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specificintegrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
在一些实施例中,存储器1020可以易失性存储器(volatile memory)或非易失性存储器,例如寄存器等。具体地,易失性存储器是指当电源供应中断后,内部存放的数据便会丢失的存储器。其中,易失性存储器主要是随机存取存储器(random access memory,RAM),包括静态随机存取存储器(static RAM,SRAM)和动态随机存取存储器(dynamic RAM,DRAM)。非易失性存储器是指即使电源供应中断,内部存放的数据也不会因此丢失的存储器。常见的非易失性存储器包括只读存储器(read only memory,ROM)、光盘、磁盘、固态硬盘以及基于闪存(flash memory)技术的各种存储卡等。
在一些实施例中,存储器1020具有可执行代码,存储器1020执行该代码,实现基于外围电路实现I3C通信的方法。
通信接口1030用于与外部通信,例如通信接口1030作为外部接口,外部接口接收创建虚拟机的请求,还可以通过通信接口1030接收创建虚拟机需要的各项参数。
总线可以是外设部件互联标准(Peripheral Component Interconnect,PCI)总线,或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于理解,图10仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,上述服务器仅为示意性表述,在实际使用时,上述服务器可以是独立的物理服务器,也可以由多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN),以及大数据库和人工智能平台等基础云计算服务的云服务器。当上述服务器为由多个物理服务器构成的服务器集群,或者分布式系统时,多个物理服务器可以组成一个区块链,每个物理服务器为该区块链上的节点。服务区的物理类型可以机架服务器、高密服务器、GPU服务器、塔式服务器,还可以为刀片服务器、整机柜服务器等,本申请不具体限定。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种通信方法,其特征在于,所述方法包括:
获取I3C设备发送的第一数据,所述I3C设备遵循I3C协议;
将所述第一数据进行处理,得到第一预定格式数据;所述第一预定格式数据为I2C协议对应格式的数据;
将所述第一预定格式数据存储在读数据存储器中;
在读数据存储器中存在所述第一预定格式数据的情况下,将所述读数据存储器中存储的所述第一预定格式数据发送至BMC芯片,所述BMC芯片遵循所述I2C协议。
2.根据权利要求1所述的方法,其特征在于,所述在读数据存储器中存在所述第一预定格式数据的情况下,将所述读数据存储器中存储的所述第一预定格式数据发送至BMC芯片,包括:
在读数据存储器中存在所述第一预定格式数据的情况下,则向所述BMC芯片发送中断信号,以触发所述BMC芯片反馈抓取指令;
基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
3.根据权利要求2所述的方法,其特征在于,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片之前,还包括:
获取所述BMC芯片反馈的所述抓取指令;
所述抓取指令指定传输方式或所述抓取指令不指定传输方式;
在所述抓取指令指定传输方式的情况下,所述抓取指令包括串行外设接口SPI中断传输指令、I2C传输指令以及串行通用输入输出SGPIO轮询传输指令中的一种;
在所述抓取指令不指定传输方式的情况下,所述抓取指令不包括任何传输指令。
4.根据权利要求3所述的方法,其特征在于,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片,包括:
在所述抓取指令指定传输方式的情况下,基于所述抓取指令,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片。
5.根据权利要求3所述的方法,其特征在于,所述基于所述抓取指令,将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片,包括:
在所述抓取指令不指定传输方式的情况下,利用处理控制器判断所述第一预定格式数据的时序要求,得到判断结果;
所述判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种;
根据所述判断结果,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
所述第一时序要求级别对应所述SPI控制器;所述第二时序要求级别对应I2C控制器;所述第三时序要求级别对应SGPIO控制器。
6.一种通信方法,其特征在于,所述方法包括:
获取BMC芯片发送的第二数据,所述BMC芯片遵循I2C协议;
将所述第二数据存储在写数据存储器中;
在所述写数据存储器中存在所述第二数据的情况下,将所述第二数据转换成第二预定格式数据,并将所述第二预定格式数据发送至所述I3C设备;所述第二预定格式数据为I3C协议对应格式的数据。
7.一种转换电路,其特征在于,所述转换电路包括处理控制器、I3C控制器、I2C控制器、读数据存储器以及写数据存储器;
所述I3C控制器用于获取第一数据,将第一数据转换成I2C协议对应格式的数据并存入读数据存储器;
所述处理控制器用于监控所述读数据存储器存在数据的情况下,并触发所述I2C控制器将读数据存储器中的数据发送给BMC芯片。
8.一种转换电路,其特征在于,所述转换电路包括处理控制器、I3C控制器、I2C控制器、读数据存储器、写数据存储器、SPI控制器以及SGPIO控制器;
所述I3C控制器用于获取第一数据,将第一数据转换成I2C协议对应格式的数据并存入读数据存储器;
所述处理控制器用于监控所述读数据存储器存在数据的情况下,从所述I2C控制器所述SPI控制器以及所述SGPIO控制器中确认一个目标控制器,以使所述目标控制器将读数据存储器中的数据发送给BMC芯片。
9.根据权利要求8所述的转换电路,其特征在于,所述处理控制器具体用于监控所述读数据存储器存在数据的情况下,判断所述第一预定格式数据的时序要求,得到判断结果;
所述判断结果包括第一时序要求级别、第二时序要求级别以及第三时序要求级别中的一种;
根据所述判断结果,从I2C控制器、SPI控制器以及SGPIO控制器中选择一个与之对应的目标控制器将所述读数据存储器中存储的所述第一预定格式数据发送至所述BMC芯片;
所述第一时序要求级别对应所述SPI控制器;所述第二时序要求级别对应I2C控制器;所述第三时序要求级别对应SGPIO控制器。
10.一种计算机设备,其特征在于,包括:I3C设备、转换电路和BMC芯片,所述转换电路连接在所述I3C设备和所述BMC芯片之间,所述转换电路用于:
获取所述I3C设备发送的第一数据,并将所述第一数据转换成I2C协议对应格式的数据并存入读数据存储器,并将读数据存储器中的数据发送给BMC芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410129841.6A CN117971748A (zh) | 2024-01-29 | 2024-01-29 | 一种通信方法、转换电路及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410129841.6A CN117971748A (zh) | 2024-01-29 | 2024-01-29 | 一种通信方法、转换电路及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117971748A true CN117971748A (zh) | 2024-05-03 |
Family
ID=90849068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410129841.6A Pending CN117971748A (zh) | 2024-01-29 | 2024-01-29 | 一种通信方法、转换电路及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117971748A (zh) |
-
2024
- 2024-01-29 CN CN202410129841.6A patent/CN117971748A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111580995B (zh) | 基于mqtt异步通信场景下的分布式云平台与物联网智能终端的同步通信方法与系统 | |
US9774651B2 (en) | Method and apparatus for rapid data distribution | |
US20030188054A1 (en) | Data transfer apparatus and method | |
CN116243995B (zh) | 通信方法、装置、计算机可读存储介质以及电子设备 | |
CN111221759B (zh) | 一种基于dma的数据处理系统及方法 | |
EP4191355A1 (en) | Uds-based communication method, ecu and upper computer | |
CN112261142B (zh) | 一种rdma网络的数据重传方法、装置及fpga | |
US9942120B2 (en) | Technique for monitoring component processing | |
CN115827524A (zh) | 一种数据传输方法以及装置 | |
CN114422617B (zh) | 一种报文处理方法、系统及计算机可读存储介质 | |
CN116225992A (zh) | 一种支持虚拟化仿真设备的NVMe验证平台及方法 | |
US7315913B2 (en) | CPU system, bus bridge, control method therefor, and computer system | |
KR102303424B1 (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
CN113328927A (zh) | 一种具有计算、存储和网络交换功能的工业物联网网关 | |
CN111404842B (zh) | 数据传输方法、装置及计算机存储介质 | |
CN117971748A (zh) | 一种通信方法、转换电路及计算机设备 | |
KR20050080704A (ko) | 프로세서간 데이터 전송 장치 및 방법 | |
CN113032307A (zh) | 一种集成器件访问请求处理方法及相关组件 | |
CN113315846A (zh) | 一种数据传输方法及装置 | |
CN116594951B (zh) | 一种基于fpga的数据传输系统及方法 | |
CN112835823B (zh) | 存储控制器应答发送方法 | |
CN113961489B (zh) | 数据访问的方法、装置、设备及存储介质 | |
CN116389357B (zh) | 基于片上网络的空洞地址处理方法、装置、设备及介质 | |
US20240069754A1 (en) | Computing system and associated method | |
CN114650194B (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 |