IP Library Granted Patent US 12701049
Granted Patent B2
US 12701049 · App. 19/142,854 · Granted Aug 4, 2026

Interactive data transmission method, system and apparatus, storage medium and electronic device

Inventors: Chaofan Chen (Suzhou, CN); Baoyang Liu (Suzhou, CN); Jiaming Huang (Suzhou, CN)
Assignee: SUZHOU METABRAIN INTELLIGENT TECHNOLOGY CO., LTD.
H04L41/083G06F13/4282H04L41/0889
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12701049
App. No.
19/142,854
Granted
Aug 4, 2026
Kind
B2
Abstract

An interactive data transmission method is provided. The method includes: receiving a first interactive command sent by a baseboard management controller of a target device via a first communication interface through a specified logic device, the first interactive command is configured to indicate to send an interactive command of a specified interactive type to a specified accelerator card in the set of accelerator cards; querying a command data set being prestored to obtain target command data, the command data set includes a set of command data corresponding to each accelerator card in the set of accelerator cards, and the target command data is command data of the specified interactive type corresponding to the specified accelerator card; and converting the target command data into a second interactive command through the specified logic device, and sending the second interactive command to the specified accelerator card via the second communication interface.

Claims (60)

1 . An interactive data transmission method, applied to a target device, wherein the target device comprises a baseboard management controller, a specified logic device and a set of accelerator cards, wherein the baseboard management controller sends an interactive command corresponding to the set of accelerator cards to the specified logic device and a communication interface being used is a first communication interface, the specified logic device sends an interactive command to the set of accelerator cards and a communication interface being used is a second communication interface, and the method comprises:

receiving a first interactive command sent by the baseboard management controller via the first communication interface through the specified logic device, wherein the first interactive command is configured to indicate to send an interactive command of a specified interactive type to a specified accelerator card in the set of accelerator cards;

querying a command data set being prestored through the specified logic device to obtain target command data in response to the first interactive command, wherein the command data set comprises a set of command data corresponding to each accelerator card in the set of accelerator cards, and the target command data is command data of the specified interactive type corresponding to the specified accelerator card; and

converting the target command data into a second interactive command through the specified logic device, and sending the second interactive command to the specified accelerator card via the second communication interface through the specified logic device.

2 . The method according to claim 1 , wherein querying the command data set being prestored through the specified logic device to obtain the target command data in response to the first interactive command comprises:

extracting an accelerator card identifier of the specified accelerator card and a specified command code from the first interactive command through the specified logic device in response to the first interactive command, wherein the specified command code is configured to identify the specified interactive type; and

querying the command data set being prestored based on the accelerator card identifier of the specified accelerator card and the specified command code through the specified logic device to obtain the target command data.

3 . The method according to claim 2 , wherein querying the command data set being prestored based on the accelerator card identifier of the specified accelerator card and the specified command code through the specified logic device to obtain the target command data comprises:

querying an address mapping table through the specified logic device based on the accelerator card identifier of the specified accelerator card and the specified command code to obtain first storage location information, wherein the first storage location information is configured to indicate a storage location of the command data of the specified interactive type corresponding to the specified accelerator card, and the address mapping table is configured to store a mapping relationship between a combination of the accelerator card identifier and the command code and the storage location of the command data corresponding to the combination; and

extracting the target command data from the storage location indicated by the first storage location information through the specified logic device.

4 . The method according to claim 3 , wherein querying the address mapping table through the specified logic device based on the accelerator card identifier of the specified accelerator card and the specified command code to obtain the first storage location information comprises:

querying the address mapping table through the specified logic device based on the accelerator card identifier of the specified accelerator card and the specified command code to obtain first starting position information and first data length information, wherein the first starting position information is configured to indicate a starting storage location of the command data of the specified interactive type corresponding to the specified accelerator card, the first data length information is configured to indicate a data length of the command data of the specified interactive type corresponding to the specified accelerator card, and the first storage location information comprises the first starting position information and the first data length information.

5 . The method according to claim 2 , wherein each command data in the command data set is stored in a specified data structure in a specified data structure set, and each specified data structure in the specified data structure set comprises a data header and a data body, wherein the data header comprises a storage location field for storing a storage location of command data, an accelerator card identifier field for storing the accelerator card identifier of the accelerator card and a command code field for storing a command code, and the data body is configured to store the command data, and

querying the command data set being prestored based on the accelerator card identifier of the specified accelerator card and the specified command code through the specified logic device to obtain the target command data comprises:

sequentially querying the accelerator card identifier field and the command code field of the data header of the each specified data structure based on the accelerator card identifier of the specified accelerator card and the specified command code through the specified logic device;

extracting second storage location information from the storage location field of the data header of a target data structure through the specified logic device in response to finding the target data structure, wherein the accelerator card identifier stored in the accelerator card identifier field of the data header of the target data structure is the same as the accelerator card identifier of the specified accelerator card, the command code stored in the command code field of the data header of the target data structure is the same as the specified command code, and the second storage location information is configured to indicate a storage location of the command data stored in the target data structure; and

extracting the target command data from the storage location indicated by the second storage location information through the specified logic device.

6 . The method according to claim 5 , wherein the storage location field comprises a starting position field for storing a starting storage location of the command data and a data length field for storing a data length of the command data, and

extracting the second storage location information from the storage location field of the data header of the target data structure through the specified logic device in response to finding the target data structure comprises:

extracting second starting position information from the starting position field of the data header of the target data structure and extracting second data length information from the data length field through the specified logic device in response to finding the target data structure, wherein the second starting position information is configured to indicate a starting storage location of command data corresponding to the target data structure, the second data length information is configured to indicate a data length of the command data corresponding to the target data structure, and the second storage location information comprises the second starting position information and the second data length information.

7 . The method according to claim 5 , wherein the each specified data structure further comprises a check data section for storing check data of the command data, and the method further comprises:

extracting first check data from the check data section of the target data structure through the specified logic device in response to finding the target data structure; and

checking the target command data based on the first check data through the specified logic device,

wherein converting the target command data into the second interactive command is performed in the case where the target command data is successfully checked.

8 . The method according to claim 2 , wherein extracting the accelerator card identifier of the specified accelerator card and the specified command code from the first interactive command through the specified logic device in response to the first interactive command comprises:

extracting an accelerator card number of the specified accelerator card and the specified command code from the first interactive command through the specified logic device in response to the first interactive command, wherein the accelerator card identifier of the specified accelerator card comprises the accelerator card number of the specified accelerator card, the specified command code belongs to a set of preset command codes, and the specified interactive type belongs to a set of preset interactive types, wherein preset command codes in the set of preset command codes correspond to preset interactive types in the set of preset interactive types one by one, and are the same as preset command codes of command data of the same interactive type corresponding to different accelerator cards in the set of accelerator cards.

9 . The method according to claim 8 , wherein before querying the command data set being prestored based on the accelerator card identifier of the specified accelerator card and the specified command code through the specified logic device to obtain the target command data, the method further comprises:

searching a command code mapping table corresponding to the accelerator card number of the specified accelerator card based on the specified command code through the specified logic device, and updating the specified command code to a found command code to obtain an updated specified command code, wherein the command code mapping table is configured to store a mapping relationship between each preset command code in the set of preset command codes and the command code configured for the specified accelerator card.

10 . The method according to claim 1 , wherein before converting the target command data into the second interactive command through the specified logic device, the method further comprises:

obtaining second check data of the target command data from check data of each command data in the command data set being prestored through the specified logic device; and

checking the target command data based on the second check data through the specified logic device,

wherein converting the target command data into the second interactive command is performed in the case where the target command data is successfully checked.

11 . The method according to claim 1 , wherein querying the command data set being prestored through the specified logic device to obtain the target command data in response to the first interactive command comprises:

querying the command data set prestored in an electrically erasable programmable read only memory of the target device through the specified logic device to obtain the target command data in response to the first interactive command;

receiving the first interactive command sent by the baseboard management controller via the first communication interface through the specified logic device comprises:

receiving the first interactive command sent by the baseboard management controller via a first communication bus via the first communication interface through the specified logic device, wherein the first communication interface comprises an inter-integrated circuit (I2C) interface, and the first communication bus comprises an I2C bus; and

sending the second interactive command to the specified accelerator card via the second communication interface through the specified logic device comprises:

sending the second interactive command to the specified accelerator card via a second communication bus via the second communication interface through the specified logic device, wherein the second communication interface comprises an inter-integrated circuit (I2C) interface, and the second communication bus comprises an I2C bus.

12 . The method according to claim 11 , wherein querying the command data set being prestored through the specified logic device to obtain the target command data in response to the first interactive command comprises:

sending a data query command to a specified memory via the second communication bus through the specified logic device in response to the first interactive command, and receiving the target command data returned by the specified memory via the second communication bus, wherein the command data set is prestored in the specified memory, and the data query command is configured to query the command data of the specified interactive type corresponding to the specified accelerator card.

13 . The method according to claim 11 , wherein the second interactive command carries an accelerator card address of the specified accelerator card, and after sending the second interactive command to the specified accelerator card via the second communication interface through the specified logic device, the method further comprises:

receiving the second interactive command from the second communication bus via the I2C interface of the specified accelerator card through the specified accelerator card, and extracting the accelerator card address carried in the second interactive command;

extracting the target command data from the second interactive command through the specified accelerator card in response to determining that the accelerator card address carried in the second interactive command is the same as the accelerator card address of the specified accelerator card; and

converting first response data of the target command data into a first response command through the specified accelerator card in response to the target command data, and sending the first response command to the specified logic device via the second communication bus through the I2C interface of the specified accelerator card to enable the specified logic device to send the first response data carried in the first response command to the baseboard management controller.

14 . The method according to claim 1 , wherein after sending the second interactive command to the specified accelerator card via the second communication interface through the specified logic device, the method further comprises:

receiving a second response command returned by the specified accelerator card in response to the second interactive command through the specified logic device;

performing command parsing on the second response command through the specified logic device to obtain second response data in response to the second response command; and

transmitting the second response data to the baseboard management controller through the specified logic device.

15 . The method according to claim 14 , wherein transmitting the second response data to the baseboard management controller through the specified logic device comprises:

setting a state of a general purpose input/output interface between the specified logic device and the baseboard management controller through the specified logic device to inform the baseboard management controller that there is response data to be obtained based on a change of the state of the general purpose input/output interface;

receiving a response data obtaining command sent by the baseboard management controller through the specified logic device, wherein the response data obtaining command is configured to obtain response data sent to the baseboard management controller; and

sending the second response data to the baseboard management controller through the specified logic device in response to the response data obtaining command.

16 . The method according to claim 15 , wherein after setting the state of the general purpose input/output interface between the specified logic device and the baseboard management controller through the specified logic device, the method further comprises:

detecting the state of the general purpose input/output interface through the baseboard management controller, triggering an interrupt of the general purpose input/output interface based on a detected state of the general purpose input/output interface, and sending the response data obtaining command to the specified logic device.

17 . The method according to claim 1 , wherein the specified logic device comprises a complex programmable logic device, the set of accelerator cards comprise artificial intelligence accelerator cards, and the interactive command of the specified interactive type comprises one of following commands: a firmware version obtaining command, a temperature obtaining command, a power consumption obtaining command and a manufacturer information obtaining command.

18 . A computer non-transitory readable storage medium, wherein the computer non-transitory readable storage medium stores a computer program, wherein the computer program, when executed by a processor, causes the processor to implement the method described in claim 1 .

19 . An electronic device, comprising: a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the computer program, when executed by the processor, causes the processor to implement the method described in claim 1 .

20 . An interactive data transmission system, comprising: a baseboard management controller, a specified logic device and a set of accelerator cards, wherein the baseboard management controller sends an interactive command corresponding to the set of accelerator cards to the specified logic device and a communication interface being used is a first communication interface, the specified logic device sends an interactive command to the set of accelerator cards and a communication interface being used is a second communication interface, wherein

the baseboard management controller is configured to send a first interactive command to the specified logic device via the first communication interface, wherein the first interactive command is configured to indicate to send an interactive command of a specified interactive type to a specified accelerator card in the set of accelerator cards; and

the specified logic device is configured to receive the first interactive command, query a command data set being prestored to obtain target command data in response to the first interactive command, convert the target command data into a second interactive command, and send the second interactive command to the specified accelerator card via the second communication interface, wherein the command data set comprises a set of command data corresponding to each accelerator card in the set of accelerator cards, and the target command data is command data of the specified interactive type corresponding to the specified accelerator card.