Baseboard management controller chip, CAN data frame processing method and apparatus
By integrating a CAN controller and CAN transceiver module into the BMC chip, and converting it to the ESPI protocol for transmission to the server CPU when the data throughput is high, the problem of insufficient communication capability of the BMC chip is solved, enabling wider application and efficient data processing.
Patent Information
- Application Number
- CN202411193169.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-28
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2044-08-28
AI Technical Summary
The existing BMC chip has insufficient communication capabilities with external devices, which cannot meet the growing demand for data exchange and limits its application potential in a wider range of scenarios.
The BMC chip integrates a CAN controller module and a CAN transceiver module, which transmit CAN data frames through the system bus. When the data throughput is too large, the ESPI controller, CPLD conversion module and logic switch module are used to perform protocol conversion and transmit the data to the server CPU for processing.
It improves the communication capabilities of BMC chips with external devices, expands their application scope, and improves data processing efficiency and reduces the risk of server downtime, especially in large-scale data interaction scenarios such as industrial control and intelligent driving.
Smart Images

Figure CN119383028B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of chip technology, and in particular to a substrate management controller chip, a method and apparatus for processing CAN data frames. Background Technology
[0002] The Baseboard Management Controller (BMC) chip, a key component integrated on the server motherboard, has a built-in independent firmware system and performs multiple functions, including monitoring server system status, enabling remote control, and assisting in the installation of the server host system. This technology is widely used in various server products due to its maturity and stability. However, within the technical framework of the BMC chip, there exists a low-speed bus—the LPC (Low Pin Count) bus—for communication with low-bandwidth devices on the host. Since its introduction in 1998, this bus has served as a crucial bridge connecting the BMC chip to external devices.
[0003] With continuous technological advancements and improved server performance, the low bandwidth characteristic of the LPC bus has gradually revealed its limitations. When faced with other high-speed bandwidth devices on the host machine, the LPC bus's transmission capacity proves insufficient, failing to meet the ever-increasing data exchange demands. This bottleneck affects the communication efficiency between the BMC chip and external high-speed devices, thus limiting the BMC chip's application potential in a wider range of scenarios.
[0004] Therefore, how to effectively improve the communication capabilities between the baseboard management controller chip and external devices, and expand the application scope of the baseboard management controller chip, is an urgent technical problem to be solved. Summary of the Invention
[0005] In view of the above-mentioned problems in the prior art, the present invention provides a baseboard management controller chip, a method and apparatus for processing CAN data frames, so as to effectively improve the communication capability between the baseboard management controller chip and external devices and expand the application scope of the baseboard management controller chip.
[0006] This invention provides a baseboard management controller chip, including a CAN controller module and a CAN transceiver module; wherein, the CAN controller module is mounted on the system bus of the baseboard management controller chip, and the CAN controller module is connected to the CAN transceiver module; the CAN transceiver module is used to communicate with a CAN peripheral connected to the baseboard management controller chip to obtain CAN data frames collected by the CAN peripheral; the CAN controller module is used to obtain the CAN data frames from the CAN transceiver module, and to transmit the CAN data frames to a shared FIFO module through the system bus, so that the core of the baseboard management controller chip can read and process the CAN data frames from the shared FIFO module.
[0007] According to a baseboard management controller chip provided by the present invention, the baseboard management controller chip further includes an ESPI controller, a CPLD conversion module, and a logic switch module; wherein, the logic switch module is mounted on the system bus, and the ESPI controller and the logic switch module are connected through the CPLD conversion module; the CPLD conversion module is used to convert CAN data frames into data in the ESPI protocol format; the logic switch module is used to acquire CAN data frames from the system bus when the size of a single CAN data frame transmitted into the shared FIFO module exceeds a preset threshold, and transmit the acquired CAN data frames to the ESPI controller through the CPLD conversion module; the ESPI controller is used to transmit the received CAN data frames to a server CPU connected to the baseboard management controller chip, so that the server CPU, in conjunction with the baseboard management controller chip, processes the received CAN data frames.
[0008] This invention provides a method for processing CAN data frames, comprising the following steps.
[0009] In response to a data reception request from the CAN transceiver module, the CAN controller module receives a CAN data frame from the CAN transceiver module; the CAN controller module then transmits the CAN data frame to the shared FIFO module via the system bus; the core of the baseboard management controller chip reads and processes the CAN data frame from the shared FIFO module.
[0010] According to a method for processing CAN data frames provided by the present invention, the CAN data frames are industrial control sensor data; the core of the baseboard management controller chip reads and processes the CAN data frames from the shared FIFO module, including: the core of the baseboard management controller chip reads the CAN data frames from the shared FIFO module; processes the CAN data frames to convert them into web page format data, so that a web page interface with the baseboard management controller chip can obtain the web page format data and display it.
[0011] The present invention provides another method for processing CAN data frames, comprising the following steps.
[0012] In response to a data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module. The CAN controller module then transmits the CAN data frames to the shared FIFO module via the system bus. If the size of a single CAN data frame transmitted into the shared FIFO module exceeds a preset threshold, the logic switch module acquires CAN data frames from the system bus and transmits the acquired CAN data frames to the ESPI controller via the CPLD conversion module. The ESPI controller then transmits the received CAN data frames to the server CPU connected to the baseboard management controller chip, so that the server CPU, in conjunction with the baseboard management controller chip, processes the received CAN data frames.
[0013] This invention provides a CAN data frame processing device, comprising the following modules:
[0014] The module is configured to receive CAN data frames from the CAN transceiver module in response to a data reception request from the CAN transceiver module; the module is configured to transmit the CAN data frames to the shared FIFO module via the system bus; and the module is configured to enable the core of the baseboard management controller chip to read and process the CAN data frames from the shared FIFO module.
[0015] The present invention also provides a further CAN data frame processing apparatus, comprising the following modules:
[0016] A receiving module is configured to respond to a data receiving request from a CAN transceiver module, enabling the CAN controller module to receive CAN data frames from the CAN transceiver module; a first transmission module is configured to enable the CAN controller module to transmit the CAN data frames to a shared FIFO module via a system bus; a second transmission module is configured to respond to a CAN data frame size exceeding a preset threshold in a single transmission to the shared FIFO module, enabling a logic switch module to acquire CAN data frames from the system bus and transmit the acquired CAN data frames to the ESPI controller via the CPLD conversion module; a third transmission module is configured to enable the ESPI controller to transmit the received CAN data frames to a server CPU connected to the baseboard management controller chip, so that the server CPU, in conjunction with the baseboard management controller chip, processes the received CAN data frames.
[0017] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the CAN data frame processing method described above.
[0018] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the CAN data frame processing method as described above.
[0019] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the CAN data frame processing method described above.
[0020] The baseboard management controller chip provided by this invention includes a CAN controller module and a CAN transceiver module. The CAN controller module is mounted on the system bus of the baseboard management controller chip. The CAN controller module is connected to the CAN transceiver module. The CAN transceiver module communicates with CAN peripherals connected to the baseboard management controller chip to acquire CAN data frames collected by the CAN peripherals. The CAN controller module acquires CAN data frames from the CAN transceiver module and transmits the CAN data frames to a shared FIFO module via the system bus, so that the core of the baseboard management controller chip reads and processes the CAN data frames from the shared FIFO module. Because it integrates the CAN controller module and the CAN transceiver module, the application range of the baseboard management controller chip is effectively expanded. The baseboard management controller chip provided by this invention can be directly applied in the industrial control field to process industrial control data acquired by the CAN transceiver module. This effectively improves the communication capability between the baseboard management controller chip and external devices, expanding its application range. Attached Figure Description
[0021] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0022] Figure 1 This is a schematic diagram of the structure of the baseboard management controller chip provided by the present invention.
[0023] Figure 2 This is one of the flowcharts illustrating the CAN data frame processing method provided by the present invention.
[0024] Figure 3 This is a flowchart illustrating the method for processing CAN data frames by the core of the baseboard management controller chip provided by the present invention.
[0025] Figure 4 This is the second flowchart illustrating the CAN data frame processing method provided by the present invention.
[0026] Figure 5 This is a schematic diagram of the data processing flow of the baseboard management controller chip provided by the present invention.
[0027] Figure 6 This is a schematic diagram of the intelligent driving data processing framework provided by the present invention.
[0028] Figure 7 This is a schematic diagram of the intelligent driving data processing process inside the baseboard management controller chip provided by the present invention.
[0029] Figure 8 This is one of the structural schematic diagrams of the CAN data frame processing device provided by the present invention.
[0030] Figure 9 This is the second schematic diagram of the CAN data frame processing device provided by the present invention.
[0031] Figure 10 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation
[0032] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0033] The following is combined with Figure 1 The present invention describes a baseboard management controller chip.
[0034] Figure 1 This is a schematic diagram of the structure of the baseboard management controller chip provided by the present invention.
[0035] like Figure 1 As shown, the baseboard management controller chip includes a CAN controller module and a CAN transceiver module.
[0036] CAN (Controller Area Network) is a widely used fieldbus. The CAN protocol is a serial asynchronous data communication protocol, widely used in automotive and industrial control fields due to its high-speed communication and mature mechanisms for handling error conditions and error frames.
[0037] In practical implementation, various types of CAN controller modules can be used. For example, the CAN controller can be the NXP TJA144x series CAN controller. This controller supports the CAN FD protocol and is compatible with traditional CAN 2.0 communication. It can transmit more data in a single transmission than ordinary CAN protocols, with a speed of up to 5 Mbits / s, which is 5 times faster than traditional CAN controllers.
[0038] like Figure 1 As shown, the CAN controller module is mounted on the system bus of the baseboard management controller chip, and the CAN controller module is connected to the CAN transceiver module.
[0039] Communication between the CAN controller module and the CAN transceiver module is a highly coordinated process involving multiple stages such as signal generation, transmission, reception, conversion, and error handling. Through close cooperation, these two modules jointly achieve efficient and reliable data transmission on the CAN bus.
[0040] The CAN transceiver module is used to communicate with the CAN peripheral connected to the baseboard management controller chip to obtain CAN data frames acquired by the CAN peripheral.
[0041] The CAN controller module is used to acquire CAN data frames from the CAN transceiver module and transmit CAN data frames to the shared FIFO module via the system bus, so that the core of the baseboard management controller chip can read and process the CAN data frames from the shared FIFO module.
[0042] A shared FIFO (First In, First Out) queue is a mechanism for sharing data among multiple processes or threads, commonly used to implement inter-process communication (IPC) or inter-thread communication. A FIFO is a special type of queue in which elements are removed in the order they are added. In a shared FIFO, multiple processes or threads can access the same FIFO queue for writing and reading data. Data written to the FIFO is stored in the order it is written and maintains this order when subsequently read.
[0043] In practical implementation, since the amount of data acquired by industrial control sensors is relatively small, the industrial control data acquired by the CAN transceiver module can be processed using a baseboard management controller chip, or the industrial control data acquired by the CAN transceiver module can be processed using a CAN controller module, without being limited by the description in this manual.
[0044] In some embodiments, such as Figure 1 As shown, the substrate management controller chip also includes an ESPI controller, a CPLD conversion module, and a logic switch module.
[0045] like Figure 1 As shown, the logic switch module is mounted on the system bus, and the ESPI controller and the logic switch module are connected through the CPLD conversion module.
[0046] ESPI (Enhanced Serial Peripheral Interface) offers higher bandwidth and communication speeds compared to the LPC bus, while remaining compatible with LPC communication specifications. Furthermore, the ESPI bus can convert all Out-of-Band and Sideband GPIO (General Purpose Input / Output) signals into in-band GPIO. This means that different types of signals that previously required multiple physical lines can now be transmitted via ESPI bus in the form of data packets. Because of its more efficient data transmission method, the ESPI bus reduces the number of physical pins connecting the PCH (Platform Controller Hub) and the board management controller chip. This simplifies hardware design and reduces manufacturing costs. By reducing the required electrical components and physical connections, the ESPI bus helps conserve valuable resources such as PCB space and power supply. This is particularly important for server design, as servers typically handle large amounts of data and complex communication tasks.
[0047] The CPLD conversion module is used to convert data formats between the ESPI and CAN protocols, transforming CAN data frames from the logic switch module into ESPI protocol format data.
[0048] In practical implementation, a CPLD (Complex Programmable Logic Device) can be used to design CAN receiving logic to receive data frames from the CAN bus; parse the CAN data frames to extract the data parts that need to be converted; convert the extracted data into the ESPI protocol format according to the requirements of the ESPI protocol; and design ESPI transmitting logic to send the converted data out through the ESPI interface.
[0049] The logic switch module is used to acquire CAN data frames from the system bus when the size of the CAN data frame transmitted into the shared FIFO module in a single transmission exceeds a preset threshold, and then transmits the acquired CAN data frames to the ESPI controller through the CPLD conversion module.
[0050] In practice, the logic switch module can be implemented through firmware, and is not limited to the description in this manual.
[0051] As an example only, the logic switch module can periodically read the status register of the shared FIFO module to obtain the size of the CAN data frame transmitted into the shared FIFO module in a single transmission, and compare the read data with a preset threshold to determine the throughput of the CAN data frame transmission.
[0052] The ESPI controller is used to transmit the received CAN data frames to the server CPU connected to the baseboard management controller chip, so that the server CPU can work with the baseboard management controller chip to process the received CAN data frames.
[0053] In the specific implementation process, such as Figure 5 As shown, if the data throughput is too high, the logic switch module can be used to convert the CAN data frames to a different protocol format via the CPLD conversion module, and then transmit them to the server's main CPU for shared processing via the ESPI bus. If the data throughput is low, the logic switch module does not transmit CAN data frames; instead, the core of the baseboard management controller chip processes the CAN data frames itself. This achieves flexible processing of CAN data frames and effectively balances the data load between the server CPU and the baseboard management controller chip.
[0054] The baseboard management controller chip provided by this invention integrates a CAN controller module and a CAN transceiver module, along with an ESPI controller, a CPLD conversion module, and a logic switch module. This allows for protocol conversion of the CAN data frames via the CPLD conversion module before sending them to the server CPU via the ESPI controller, effectively reducing the burden on the baseboard management controller chip when handling high-throughput CAN data frames. It also overcomes the low-speed communication problem caused by using the LPC bus, improving data processing efficiency. Furthermore, due to the high security of the CAN bus, it can also avoid server downtime caused by data format errors.
[0055] The following is combined with Figures 2-3 This invention describes a method for processing CAN data frames.
[0056] Figure 2 This is one of the flowcharts illustrating the CAN data frame processing method provided by the present invention.
[0057] In this embodiment, the data throughput of the CAN data frames acquired by the CAN transceiver module is less than a preset threshold, such as... Figure 2 As shown, the method includes the following:
[0058] Step 201: In response to the data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module.
[0059] Step 202: The CAN controller module transmits CAN data frames to the shared FIFO module via the system bus.
[0060] Step 203: The core of the baseboard management controller chip reads and processes CAN data frames from the shared FIFO module.
[0061] In the embodiments provided by this invention, in response to a data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module; the CAN controller module then transmits the CAN data frames to the shared FIFO module via the system bus; the core of the baseboard management controller chip reads and processes the CAN data frames from the shared FIFO module. Because the baseboard management controller chip directly processes industrial control data, its communication capabilities with external devices can be effectively improved, expanding the application range of the baseboard management controller chip.
[0062] Figure 3 This is a flowchart illustrating the method for processing CAN data frames by the core of the baseboard management controller chip provided by the present invention.
[0063] In this embodiment, the CAN data frame is industrial control sensor data, such as... Figure 3 As shown, the method includes the following:
[0064] Step 301: The core of the baseboard management controller chip reads CAN data frames from the shared FIFO module.
[0065] Step 302: Process the CAN data frame and convert it into web page format data so that the web page terminal that interfaces with the baseboard management controller chip can obtain the web page format data and display it.
[0066] In practice, users can remotely log in to the web interface of the baseboard management controller chip by entering the network address provided by the chip on the maintenance terminal (e.g., host or laptop). They can then monitor the status of the industrial control sensors connected to the chip via the web interface, making it easier for maintenance personnel to monitor and manage the industrial control sensors.
[0067] The following is combined with Figures 4-6 Another method for processing CAN data frames according to the present invention is described.
[0068] Figure 4 This is the second flowchart illustrating the CAN data frame processing method provided by the present invention.
[0069] In this embodiment, the CAN transceiver module acquires a large data throughput of CAN data frames, such as... Figure 4 As shown, the method includes the following:
[0070] Step 401: In response to the data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module.
[0071] Step 402: The CAN controller module transmits CAN data frames to the shared FIFO module via the system bus.
[0072] Step 403: In response to the fact that the size of the CAN data frame transmitted into the shared FIFO module in a single transmission exceeds a preset threshold, the logic switch module obtains the CAN data frame from the system bus and transmits the obtained CAN data frame to the ESPI controller through the CPLD conversion module.
[0073] Step 404: The ESPI controller transmits the received CAN data frame to the server CPU connected to the baseboard management controller chip, so that the server CPU can work with the baseboard management controller chip to process the received CAN data frame.
[0074] The baseboard management controller chip provided by this invention integrates an ESPI controller, a CPLD conversion module, and a logic switch module, and can be applied to scenarios requiring large-scale data interaction, such as intelligent driving, industrial internet, and smart furniture control in hotel rooms.
[0075] In large-scale data throughput applications, such as in the Industrial Internet where the CAN controller module needs to process large amounts of data, steps 401 to 404 can be used to enable the baseboard management controller chip and the server main CPU to share data processing, thereby effectively improving data processing efficiency.
[0076] For example only, such as Figure 6 and Figure 7 As shown, in the field of intelligent driving, the baseboard management controller chip provided by this invention can be applied in application scenarios involving large amounts of data, such as monitoring the vehicle status of intelligent vehicles, data generated by LiDAR and maps, and calculations for assisted driving. By using steps 401 to 404, the server CPU and the baseboard management controller chip can work together to obtain the vehicle status more quickly and reduce the time required to provide assisted driving calculations.
[0077] In the embodiments provided by this invention, in response to a data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module; the CAN controller module transmits the CAN data frames to the shared FIFO module via the system bus; in response to a CAN data frame size exceeding a preset threshold in a single transmission to the shared FIFO module, the logic switch module acquires CAN data frames from the system bus and transmits the acquired CAN data frames to the ESPI controller via the CPLD conversion module; the ESPI controller transmits the received CAN data frames to the server CPU connected to the baseboard management controller chip, so that the server CPU, in collaboration with the baseboard management controller chip, processes the received CAN data frames. By utilizing the ESPI controller, CPLD conversion module, and logic switch module, even when the data throughput of the CAN data frames received by the baseboard management controller chip is large, the CAN data frames can be protocol-converted via the CPLD conversion module and then sent to the server CPU via the ESPI controller, effectively reducing the burden on the baseboard management controller chip in processing large-throughput CAN data frames.
[0078] The CAN data frame processing apparatus provided by the present invention will be described below. The CAN data frame processing apparatus described below and the CAN data frame processing method described above can be referred to in correspondence.
[0079] Figure 8 This is one of the structural schematic diagrams of the CAN data frame processing device provided by the present invention, such as... Figure 8 As shown, the device 800 includes the following modules.
[0080] The acquisition module 810 is used to respond to the data reception request of the CAN transceiver module and enable the CAN controller module to receive CAN data frames from the CAN transceiver module.
[0081] The transmission module 820 is used to enable the CAN controller module to transmit the CAN data frame to the shared FIFO module via the system bus.
[0082] The processing module 830 is used to enable the core of the baseboard management controller chip to read and process the CAN data frame from the shared FIFO module.
[0083] Figure 9 This is a second schematic diagram of the CAN data frame processing device provided by the present invention, as shown below. Figure 9 As shown, the device 900 includes the following modules.
[0084] The receiving module 910 is used to respond to the data receiving request of the CAN transceiver module, and enable the CAN controller module to receive CAN data frames from the CAN transceiver module.
[0085] The first transmission module 920 is used to enable the CAN controller module to transmit the CAN data frame to the shared FIFO module via the system bus.
[0086] The second transmission module 930 is used to respond to the fact that the size of the CAN data frame transmitted into the shared FIFO module in a single transmission exceeds a preset threshold, so that the logic switch module obtains the CAN data frame from the system bus and transmits the obtained CAN data frame to the ESPI controller through the CPLD conversion module.
[0087] The third transmission module 940 is used to enable the ESPI controller to transmit the received CAN data frame to the server CPU connected to the baseboard management controller chip, so that the server CPU can cooperate with the baseboard management controller chip to process the received CAN data frame.
[0088] Figure 10 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 10 As shown, the electronic device may include a processor 1010, a communications interface 1020, a memory 1030, and a communication bus 1040, wherein the processor 1010, the communications interface 1020, and the memory 1030 communicate with each other via the communication bus 1040. The processor 1010 can call logic instructions in the memory 1030 to execute a CAN data frame processing method, which includes: in response to a data reception request from the CAN transceiver module, the CAN controller module receiving a CAN data frame from the CAN transceiver module; the CAN controller module transmitting the CAN data frame to a shared FIFO module via a system bus; and the core of the baseboard management controller chip reading and processing the CAN data frame from the shared FIFO module.
[0089] Furthermore, the logical instructions in the aforementioned memory 1030 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0090] On the other hand, the present invention also provides a computer program product, the computer program product including a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer is able to execute the CAN data frame processing method provided by the above methods. The method includes: in response to a data reception request from a CAN transceiver module, a CAN controller module receiving a CAN data frame from the CAN transceiver module; the CAN controller module transmitting the CAN data frame to a shared FIFO module via a system bus; and the core of the baseboard management controller chip reading and processing the CAN data frame from the shared FIFO module.
[0091] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements a method for processing CAN data frames provided by the methods described above. The method includes: in response to a data reception request from a CAN transceiver module, a CAN controller module receiving a CAN data frame from the CAN transceiver module; the CAN controller module transmitting the CAN data frame to a shared FIFO module via a system bus; and the core of the baseboard management controller chip reading and processing the CAN data frame from the shared FIFO module.
[0092] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0093] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0094] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A substrate management controller chip, characterized in that, It includes a CAN controller module and a CAN transceiver module, an ESPI controller, a CPLD conversion module, and a logic switch module; wherein, the CAN controller module is mounted on the system bus in the baseboard management controller chip, and the CAN controller module is connected to the CAN transceiver module; the logic switch module is mounted on the system bus, and the ESPI controller and the logic switch module are connected through the CPLD conversion module; The CAN transceiver module is used to communicate with the CAN peripheral connected to the baseboard management controller chip to obtain CAN data frames collected by the CAN peripheral. The CAN controller module is used to obtain the CAN data frame from the CAN transceiver module and transmit the CAN data frame to the shared FIFO module through the system bus, so that the core of the baseboard management controller chip can read and process the CAN data frame from the shared FIFO module. The CPLD conversion module is used to convert CAN data frames into data in the ESPI protocol format; The logic switch module is used to acquire a CAN data frame from the system bus when the size of the CAN data frame transmitted into the shared FIFO module in a single transmission exceeds a preset threshold, and then transmit the acquired CAN data frame to the ESPI controller through the CPLD conversion module. The ESPI controller is used to transmit the received CAN data frames to the server CPU connected to the baseboard management controller chip, so that the server CPU can work with the baseboard management controller chip to process the received CAN data frames.
2. A method for processing CAN data frames, characterized in that, The method, applied to the baseboard management controller chip as described in claim 1, comprises: In response to a data reception request from the CAN transceiver module, the CAN controller module receives CAN data frames from the CAN transceiver module; The CAN controller module transmits the CAN data frames to the shared FIFO module via the system bus; The core of the baseboard management controller chip reads and processes the CAN data frames from the shared FIFO module; In response to the CAN data frame size being transmitted into the shared FIFO module in a single transmission exceeding a preset threshold, the logic switch module obtains the CAN data frame from the system bus and transmits the obtained CAN data frame to the ESPI controller through the CPLD conversion module. The ESPI controller transmits the received CAN data frames to the server CPU connected to the baseboard management controller chip, so that the server CPU can work with the baseboard management controller chip to process the received CAN data frames.
3. The method for processing CAN data frames according to claim 2, characterized in that, The CAN data frame is industrial control sensor data; The core of the baseboard management controller chip reads and processes the CAN data frames from the shared FIFO module, including: The core of the baseboard management controller chip reads the CAN data frame from the shared FIFO module; The CAN data frame is processed and converted into web page format data so that the web page interface with the baseboard management controller chip can obtain and display the web page format data.
4. A CAN data frame processing device, characterized in that, The device, disposed in the substrate management controller chip as described in claim 1, comprises: The receiving module is used to respond to the data receiving request from the CAN transceiver module, enabling the CAN controller module to receive CAN data frames from the CAN transceiver module; The first transmission module is used to enable the CAN controller module to transmit the CAN data frame to the shared FIFO module via the system bus; The second transmission module is used to respond to the fact that the size of the CAN data frame transmitted into the shared FIFO module in a single transmission exceeds a preset threshold, so that the logic switch module obtains the CAN data frame from the system bus and transmits the obtained CAN data frame to the ESPI controller through the CPLD conversion module. The third transmission module is used to enable the ESPI controller to transmit the received CAN data frame to the server CPU connected to the baseboard management controller chip, so that the server CPU can work with the baseboard management controller chip to process the received CAN data frame.
5. An electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the CAN data frame processing method as described in any one of claims 2 to 3.
6. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the CAN data frame processing method as described in any one of claims 2 to 3.
7. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the CAN data frame processing method as described in any one of claims 2 to 3.
Citation Information
Patent Citations
Server starting device and method based on ESPI bus
CN111966626A
Complex programmable logic device and communication method of complex programmable logic device and substrate management controller
CN117093522A