DPU device and serial communication system based on DPU device

By creating a virtual serial communication port in the DPU device and utilizing the PCIE bus to achieve bidirectional serial communication between the server and the DPU device, the problem of the DPU device being unable to be remotely operated in a data center environment is solved, saving physical ports and simplifying the maintenance process.

CN119127754BActive Publication Date: 2025-11-14CORE YUNSHENG (HANGZHOU) ELECTRONIC TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411014381.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-26
Publication Date
2025-11-14
Estimated Expiration
2044-07-26

AI Technical Summary

Technical Problem

In the existing technology, DPU devices require a physical serial communication port for wired connection, which makes them unsuitable for complex data center environments and cannot be operated remotely.

Method used

A virtual serial communication port is created in the DPU device, and bidirectional serial communication between the server and the DPU device is achieved through the server's PCIe bus, avoiding the use of a physical serial communication port and supporting remote operation.

Benefits of technology

It enables communication with DPU devices in a data center environment without a physical connection, facilitating the maintenance and management of DPU devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119127754B_ABST
    Figure CN119127754B_ABST
Patent Text Reader

Abstract

This application provides a DPU device and a serial communication system based on the DPU device. By creating a second virtual serial communication port in the DPU device corresponding to a first virtual serial communication port of the server, and using the PCIe bus connecting the DPU device to the server as a channel, the first serial communication interface of the NFP chip within the DPU device is connected to the first virtual serial communication port, and the second serial communication interface of the NFP chip within the DPU device is connected to the second virtual serial communication port, thereby realizing bidirectional serial communication between the server and the DPU device. This application saves on the physical serial communication ports of the DPU device, supports remote communication, is more suitable for data centers, and facilitates the maintenance of the DPU device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a DPU device and a serial communication system based on the DPU device. Background Technology

[0002] A Data Processing Unit (DPU) is a processor specifically designed for data-intensive tasks, typically used in data centers to address the high load of network protocol processing. Therefore, a DPU can function as a hardware network device used as a smart network interface card (NIC) to handle tasks including virtualization, networking, storage, and security.

[0003] A DPU device typically includes an independent control chip for running designated system software. This control chip is usually a CPU chip or a System-on-a-Chip (SoC). The SoC can contain various types of processors, such as a Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processor (DSP), and Neural Network Processor. To access and debug the designated system software in the DPU device, a conventional design uses a physical serial communication port of the CPU chip or SoC as a console port. An external computer device can be connected to this console port via a serial cable, and terminal software can be used on the connected computer to establish a connection with the designated system software in the DPU device.

[0004] However, this technical solution requires a separate physical serial communication port on the DPU device, and a serial cable is needed to connect to this physical serial communication port when connecting to external computer devices. This wired connection method is very limited in complex environments such as data centers that house a large number of physical facilities such as servers, network devices, and computer devices; furthermore, in this technical solution, the corresponding DPU device can only be connected and operated on a designated external computer device, and remote operation is not possible. Summary of the Invention

[0005] In view of the shortcomings of the prior art described above, the purpose of this application is to provide a DPU device and a serial communication system based on the DPU device, so as to solve the technical problem that the wired connection of the DPU device and computer equipment in the prior art cannot be applied to data centers and cannot remotely operate the DPU device.

[0006] To achieve the above and other related objectives, a first aspect of this application provides a DPU device for communicating with a server equipped with a first virtual serial communication port. The DPU device includes: a control chip, including a second virtual serial communication port; and an NFP chip, including a first serial communication interface and a second serial communication interface. The first serial communication interface is communicatively connected to the first virtual serial communication port, and the second serial communication interface is communicatively connected to the second virtual serial communication port. The first virtual serial communication port is created by the server calling a preset first serial port driver. The second virtual serial communication port is created by the control chip calling a preset second serial port driver and is used for bidirectional serial communication with the first virtual serial communication port through the second serial communication interface and the first serial communication interface of the NFP chip.

[0007] In some embodiments of the first aspect of this application, the second virtual serial communication port includes: a virtual terminal port, a front-end virtual port, a back-end virtual port, and a network driver port; wherein the virtual terminal port, the front-end virtual port, the back-end virtual port, and the network driver port are sequentially connected in communication, and the network driver port is also connected in communication to the second serial communication interface of the NFP chip.

[0008] In some embodiments of the first aspect of this application, the method by which the server performs serial communication with the DPU device includes: when there is a need for the server to transmit data to the DPU device, sending first communication data generated by the server to the first serial communication interface of the NFP chip through the server's first virtual serial communication port; forwarding the first communication data to the back-end virtual port through the network driver port via the second serial communication interface of the NFP chip; decrypting the received first communication data according to a specified communication protocol through the back-end virtual port, and sending the decrypted first communication data to the front-end virtual port; and forwarding the decrypted first communication data to the virtual terminal port through the front-end virtual port, so that the virtual terminal port can parse the communication data and execute corresponding tasks.

[0009] In some embodiments of the first aspect of this application, the DPU device performs serial communication with the server in the following manner: when there is a need for the DPU device to transmit data to the server, the second communication data generated by the control chip is sent to the front-end virtual port and forwarded to the back-end virtual port through the virtual terminal port; the received second communication data is encapsulated according to a specified communication protocol through the back-end virtual port, and the encapsulated second communication data is sent to the second serial communication interface of the NFP chip through the network driver port; the encapsulated second communication data is sent to the first virtual serial communication port of the server through the first serial communication interface of the NFP chip, so that the server can parse the communication data and execute corresponding tasks.

[0010] In some embodiments of the first aspect of this application, the virtual terminal port is created by the control chip by calling a preset remote access service, for interacting with the control chip and performing specified tasks, and for remote communication.

[0011] In some embodiments of the first aspect of this application, the front-end virtual port and the back-end virtual port are built on a console paravirtualization framework to support communication connection between the second virtual serial communication port and the second serial communication interface.

[0012] In some embodiments of the first aspect of this application, the first serial communication interface is communicatively connected to the first virtual serial communication port via a PCIe bus; the second serial communication interface is communicatively connected to the second virtual serial communication port via a PCIe bus.

[0013] To achieve the above and other related objectives, a second aspect of this application provides a serial communication system based on a DPU device. The DPU-based serial communication system includes: a server, comprising: a first virtual serial communication port; and a DPU device, comprising: a control chip and an NFP chip; wherein the control chip includes: a second virtual serial communication port; and the NFP chip includes: a first serial communication interface and a second serial communication interface; wherein the first serial communication interface is communicatively connected to the first virtual serial communication port, and the second serial communication interface is communicatively connected to the second virtual serial communication port; the first virtual serial communication port is created by the server calling a preset first serial port driver; and the second virtual serial communication port is created by the control chip calling a preset second serial port driver, and is used for bidirectional serial communication with the first virtual serial communication port through the second serial communication interface and the first serial communication interface of the NFP chip.

[0014] In some embodiments of the second aspect of this application, the server is equipped with terminal software; the terminal software is used to access the first virtual serial communication port and the second virtual serial communication port to connect to the DPU device and to access and manage the DPU device.

[0015] In some embodiments of the second aspect of this application, the server is also communicatively connected to an external personal computer device for bidirectional serial communication between the external personal computer device and the DPU device.

[0016] As described above, this application provides a DPU device and a serial communication system based on the DPU device. By creating a second virtual serial communication port in the DPU device corresponding to a first virtual serial communication port on the server, and utilizing the PCIe bus connecting the DPU device to the server as a channel, the first serial communication interface of the NFP chip within the DPU device is connected to the first virtual serial communication port, and the second serial communication interface of the NFP chip within the DPU device is connected to the second virtual serial communication port, thereby achieving bidirectional serial communication between the server and the DPU device. Therefore, this application has the following advantages: it saves on the physical serial communication ports of the DPU device and solves the technical problem that wired connections cannot be used in data centers and cannot remotely communicate with the DPU device, making the maintenance of DPU devices in data centers more convenient. Attached Figure Description

[0017] Figure 1 The diagram shown is a schematic representation of a serial communication system based on a DPU device according to an embodiment of this application.

[0018] Figure 2 The diagram shown is a structural schematic of the second virtual serial communication port of the DPU device in one embodiment of this application. Detailed Implementation

[0019] The following specific examples illustrate the implementation of this application. Those skilled in the art can easily understand other advantages and effects of this application from the content disclosed in this specification. This application can also be implemented or applied through other different specific embodiments, and various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of this application. It should be noted that, unless otherwise specified, the following embodiments and features in the embodiments can be combined with each other.

[0020] Before providing a further detailed description of the present invention, the nouns and terms used in the embodiments of the present invention are explained, and the nouns and terms used in the embodiments of the present invention are subject to the following interpretations:

[0021] <1> CPU (Central Processing Unit): The core component of a computer, responsible for executing instructions and processing data in programs.

[0022] <2> SOC (System on a Chip): A technology that integrates multiple components from a traditional computer or other electronic system onto a single integrated circuit (chip), such as integrating a processor core, memory, input / output ports, and possibly other functions (such as graphics processing units, network interfaces, etc.) onto a single chip to optimize space, cost, power consumption, and performance.

[0023] <3> NFP (Network Function Processor): A network function processor is a hardware device specifically designed to process network traffic and perform network functions. Typically found in high-performance network systems such as data centers, routers, switches, and load balancers, it can accelerate network operations, improve packet processing efficiency, and reduce the burden on the main CPU.

[0024] <4> HVC (Hypervisor Virtual Console): A virtual serial communication port, a virtual console interface in the Linux kernel that allows users to interact with virtual machines through the virtual machine monitor (hypervisor), providing a standard method for accessing and controlling virtual machines.

[0025] <5> PCIe (Peripheral Component Interconnect Express): Peripheral Component Interconnect Fast Serial Bus, a universal serial connection standard used for connecting computer hardware devices, especially for high-speed data transmission between internal computer hardware devices and the motherboard.

[0026] <6> Systemd: A system and service manager for the Linux operating system that provides a unified way to handle the startup, operation, monitoring, and shutdown processes of the system.

[0027] <7> agetty: A program used in Unix and Unix-like systems to set the terminal type. The getty program (getty is short for "get TTY") is started at system startup or as needed to handle interaction with the terminal.

[0028] <8> Virtio-console: A virtual console device used in a virtualization environment, and part of the Virtio framework; Virtio is a standardized framework for virtualization environments that defines a set of common device and driver interfaces, enabling virtual machines to interact efficiently with the host machine; Virtio-console is specifically designed to provide standard input / output functionality for virtual machines.

[0029] <9> minicom: A text-based modem control and file transfer program for Linux, used to communicate with computer hardware devices via a serial port.

[0030] The technical solutions of this application can be applied to various communication systems, such as: Long Term Evolution (LTE) systems, LTE Frequency Division Duplex (FDD) systems, future 5th Generation (5G) communication systems, new radio access technology (NR), LTE Time Division Duplex (TDD), Worldwide Interoperability for Microwave Access (WiMAX), Universal Mobile Telecommunication System (UMTS), and vehicle-to-XV2X. V2X can include vehicle to network (V2N), vehicle to vehicle (V2V), vehicle to infrastructure (V2I), vehicle to pedestrian (V2P), Long Term Evolution-Vehicle (LTE-V), vehicle-to-everything (V2X), machine-type communication (MTC), Internet of Things (IoT), Long Term Evolution-Machine (LTE-M), and machine to machine (M2M).

[0031] To address the problems mentioned above, this invention provides a DPU device and a serial communication system based on the DPU device. It aims to solve the technical problem that wired connections between the DPU device and computer equipment in the prior art prevent its application in data centers and remote operation. By implementing a virtual serial communication port at the software level, without relying on physical hardware, the invention saves the physical serial communication port of the DPU device, supports remote communication, and facilitates the maintenance of the DPU device in the data center.

[0032] Meanwhile, to make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for explaining the present invention and are not intended to limit the present invention.

[0033] like Figure 1 The diagram illustrates a schematic representation of a serial communication system based on a DPU device according to an embodiment of the present invention. The serial communication system based on the DPU device includes: a server 1 and a DPU device 2.

[0034] The server 1 is equipped with a first virtual serial communication port 11.

[0035] The DPU device 2 is used to communicate with the server 1, which has a first virtual serial communication port 11. The DPU device 2 includes a control chip 21 and an NFP chip 22. The control chip 21 is typically a CPU chip or a SOC chip. The control chip 21 includes a second virtual serial communication port 211; the NFP chip 22 includes a first serial communication interface 221 and a second serial communication interface 222.

[0036] The first serial communication interface 221 is connected to the first virtual serial communication port 11, and the second serial communication interface 222 is connected to the second virtual serial communication port 211.

[0037] In one specific embodiment, the first serial communication interface 221 is communicatively connected to the first virtual serial communication port 11 via a PCIe bus; the second serial communication interface 222 is communicatively connected to the second virtual serial communication port 211 via a PCIe bus. Thus, based on the NFP chip 22, two PCIe paths can be formed, one connected to the control chip 21 and the other connected to the server 1. Preferably, when the NFP chip 22 is connected to the server 1, a gold finger component can be used for connection.

[0038] The purpose of this design in this embodiment is to utilize the PCIE bus connecting the DPU device 2 to the server 1 as a channel, thereby eliminating the need for additional external computer equipment and saving physical serial communication ports. This allows the first virtual serial communication port 11 to connect to the second virtual serial communication port 211, thereby enabling bidirectional serial communication between the server 1 and the DPU device 2.

[0039] It should be noted that the first virtual serial communication port 11 is created by the server 1 calling a preset first serial port driver. The second virtual serial communication port 211 is created by the control chip 21 calling a preset second serial port driver, and is used for bidirectional serial communication with the first virtual serial communication port 11 through the second serial communication interface 222 and the first serial communication interface 221 of the NFP chip 22.

[0040] A virtual serial communication port, or HVC (Hypervisor Virtual Console) serial port, is a virtual serial port used in Linux environments. It allows users to interact with virtual machines through a virtual machine monitor, similar to a traditional serial console, but it is implemented entirely at the software level and does not depend on physical hardware. This invention improves upon existing technical solutions that require separate physical serial communication ports on the DPU device, necessitating wired connections with other computer devices. This saves on physical serial communication ports on the DPU device and effectively solves the technical problem that wired connections cannot be used in data centers and cannot enable remote communication with the DPU device, thus facilitating the maintenance of DPU devices in data centers.

[0041] In one embodiment, such as Figure 2 As shown, the second virtual serial communication port 211 includes: a virtual terminal port, a front-end virtual port, a back-end virtual port, and a network driver port. The virtual terminal port, the front-end virtual port, the back-end virtual port, and the network driver port are sequentially connected in communication, and the network driver port is also connected in communication to the second serial communication interface 222 of the NFP chip 22.

[0042] The virtual terminal port is created by the control chip 22 by calling a preset remote access service. It is used to interact with the control chip 22, execute specified tasks, and for remote communication. In one specific embodiment, the control chip can use a Linux operating system. The virtual terminal port can be implemented on the second virtual serial communication port 211 through the agetty service in the Systemd service manager.

[0043] It should be understood that Systemd is a system and service manager for the Linux operating system, providing a unified way to handle the system's startup, operation, monitoring, and shutdown processes. agetty is a command-line tool for the Linux operating system. Its function is to open a terminal tty, prompt the user for a login name, and invoke the ` / bin / login` command for user authentication. Furthermore, agetty supports hardware flow control, which can be enabled via the `--flow-control` option to control data flow. Specifically, the agetty service can be started and stopped using Systemd commands. For example, `systemctl start getty@hvc0.service` starts the agetty service on ` / dev / hvc0`, and `systemctl stop getty@hvc0.service` stops the service.

[0044] The front-end virtual port and the back-end virtual port are built based on a console paravirtualization framework and are used to support the communication connection between the second virtual serial communication port 211 and the second serial communication interface 222. In a specific embodiment, the second virtual serial communication port 211 uses the Virio-console console paravirtualization framework to implement the HVC serial port. Virtio is a standardized framework for virtualization environments that defines a set of common device and driver interfaces, enabling virtual machines to interact efficiently with the host machine. Virtio-console is specifically designed to provide standard input / output functions for virtual machines and can establish a communication mechanism between the virtual machine and the virtual machine monitor. Virtio-console can support up to 16 ports, each of which can be used for different virtual terminal or console sessions. Virtio-console provides virtual terminal or console access functions for virtual machines, enabling administrators and users to interact with the virtual machines.

[0045] The network driver port is used to send and receive communication data. In one specific embodiment, the first serial communication interface 221 is communicatively connected to the first virtual serial communication port 11 via a PCIe bus; the second serial communication interface 222 is communicatively connected to the second virtual serial communication port 211 via a PCIe bus; in this case, the network driver port can provide the ability to send and receive communication data conforming to the PCIe communication protocol.

[0046] The present invention realizes bidirectional serial communication between the server 1 and the DPU device 2 by creating a second virtual serial communication port 211 in the DPU device 2 that corresponds to the first virtual serial communication port 11 of the server 1.

[0047] In one embodiment, the serial communication method between the server 1 and the DPU device 2 includes: when there is a need for the server 1 to transmit data to the DPU device 2, the server 1 sends first communication data generated by the server 1 to the first serial communication interface 221 of the NFP chip 22 through the first virtual serial communication port 11 of the server 1; the server 1 forwards the first communication data to the back-end virtual port via the network driver port through the second serial communication interface 222 of the NFP chip 22; the server 1 decrypts the received first communication data based on a specified communication protocol (such as the PCIE communication protocol) through the back-end virtual port, and sends the decrypted first communication data to the front-end virtual port; the server 1 forwards the decrypted first communication data to the virtual terminal port through the front-end virtual port, so that the virtual terminal port can parse the communication data and execute corresponding tasks.

[0048] In one embodiment, the serial communication method between the DPU device 2 and the server 1 includes: when there is a need for the DPU device 2 to transmit data to the server 1, sending the second communication data generated by the control chip 21 to the front-end virtual port and forwarding it to the back-end virtual port through the virtual terminal port; encapsulating the received second communication data based on a specified communication protocol (such as the PCIE communication protocol) through the back-end virtual port, and sending the encapsulated second communication data to the second serial communication interface 222 of the NFP chip 22 via the network driver port; and sending the encapsulated second communication data to the first virtual serial communication port 11 of the server 1 through the first serial communication interface 221 of the NFP chip 22, so that the server 1 can parse the communication data and execute the corresponding task.

[0049] In one embodiment, the server 1 is equipped with terminal software, such as minicom; the terminal software is used to access the first virtual serial communication port 11 and the second virtual serial communication port 211 to connect to the DPU device 2 and to access and manage the DPU device 2.

[0050] In one embodiment, the server 1 is also communicatively connected to an external personal computer device, enabling bidirectional serial communication between the external personal computer device and the DPU device 2. Specifically, the external personal computer device can remotely communicate with the server 1 via terminal control software, and access the second virtual serial communication port 211 in the corresponding DPU device 2 by controlling the terminal software in the server 1. The purpose of this design in this embodiment is to achieve remote communication between the external personal computer device and the DPU device 2 without requiring multiple wired connections to the external computer device, thus not limiting the usage scenarios of the external computer device. This allows users to directly control the DPU device from their own computer device, such as modifying / debugging the software program installed on the DPU device's control chip, updating the DPU device's configuration file, and receiving operation logs, debugging logs, or other communication data returned by the DPU device. This is particularly suitable for complex environments with diverse physical configurations, such as data centers.

[0051] In the embodiments of this application, terms such as "first" and "second" are used to distinguish identical or similar items with essentially the same function and effect. For example, "first XX" and "second XX" are merely used to distinguish different XXs and do not limit their order. Those skilled in the art will understand that terms such as "first" and "second" do not limit the quantity or execution order, and that terms such as "first" and "second" do not necessarily imply that they are different.

[0052] It should be noted that, in the embodiments of this application, the words "exemplary" or "for example" indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.

[0053] In this application embodiment, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.

[0054] As used in this specification, the terms "component," "module," "system," etc., are used to refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. As illustrated, applications running on computing devices and computing devices can both be components. One or more components may reside in a process and / or an execution thread, and components may be located on a single computer and / or distributed among two or more computers. Furthermore, these components can be executed from various computer-readable media on which various data structures are stored. Components can communicate, for example, via local and / or remote processes based on signals having one or more data packets (e.g., data from two components interacting with another component between a local system, a distributed system, and / or a network, such as the Internet interacting with other systems via signals).

[0055] Those skilled in the art will recognize that the various illustrative logical blocks and steps described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.

[0056] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0057] 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 units can be selected to achieve the purpose of this embodiment according to actual needs.

[0058] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0059] In the above embodiments, the functions of each functional unit can be implemented entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. A computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., high-density digital video discs, DVDs), or semiconductor media (e.g., solid-state disks, SSDs, etc.).

[0060] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, 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 of the various embodiments of this application. 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.

[0061] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0062] In summary, this application provides a DPU device and a serial communication system based on the DPU device. By creating a second virtual serial communication port in the DPU device corresponding to a first virtual serial communication port on the server, and utilizing the PCIe bus connecting the DPU device to the server as a channel, the first serial communication interface of the NFP chip within the DPU device is connected to the first virtual serial communication port, and the second serial communication interface of the NFP chip within the DPU device is connected to the second virtual serial communication port, thereby achieving bidirectional serial communication between the server and the DPU device. This application saves on the physical serial communication port of the DPU device and solves the technical problems that wired connections cannot be used in data centers and cannot achieve remote communication with the DPU device, making the maintenance of the DPU device in the data center more convenient. Therefore, this application effectively overcomes the various shortcomings of the prior art and has high industrial application value.

[0063] The above embodiments are merely illustrative of the principles and effects of this application and are not intended to limit this application. Any person skilled in the art can modify or alter the above embodiments without departing from the spirit and scope of this application. Therefore, all equivalent modifications or alterations made by those skilled in the art without departing from the spirit and technical concept disclosed in this application should still be covered by the claims of this application.

Claims

1. A DPU device for communicating with a server equipped with a first virtual serial communication port, characterized in that, include: The control chip includes: a second virtual serial communication port; The NFP chip includes: a first serial communication interface and a second serial communication interface; Wherein, the first serial communication interface is connected to the first virtual serial communication port via a PCIe bus, and the second serial communication interface is connected to the second virtual serial communication port via a PCIe bus. The first virtual serial communication port is created by the server calling a preset first serial port driver; The second virtual serial communication port is created by the control chip by calling a preset second serial port driver, and is used for bidirectional serial communication with the first virtual serial communication port through the second serial communication interface and the first serial communication interface of the NFP chip.

2. The DPU device according to claim 1, characterized in that, The second virtual serial communication port includes: a virtual terminal port, a front-end virtual port, a back-end virtual port, and a network driver port; The virtual terminal port, the front-end virtual port, the back-end virtual port, and the network driver port are sequentially connected in communication, and the network driver port is also connected in communication to the second serial communication interface of the NFP chip.

3. The DPU device according to claim 2, characterized in that, The server communicates serially with the DPU device in the following ways: When there is a need for the server to transmit data to the DPU device, the first communication data generated by the server is sent to the first serial communication interface of the NFP chip through the first virtual serial communication port of the server. The first communication data is forwarded to the back-end virtual port via the network driver port through the second serial communication interface of the NFP chip. The received first communication data is decrypted based on a specified communication protocol through the backend virtual port, and the decrypted first communication data is sent to the frontend virtual port. The first communication data after decryption is forwarded to the virtual terminal port through the front-end virtual port, so that the virtual terminal port can parse the communication data and execute the corresponding tasks.

4. The DPU device according to claim 2, characterized in that, The DPU device communicates serially with the server in the following ways: When there is a need for the DPU device to transmit data to the server, the second communication data generated by the control chip is sent to the front-end virtual port and forwarded to the back-end virtual port through the virtual terminal port; The received second communication data is encapsulated based on a specified communication protocol through the back-end virtual port, and the encapsulated second communication data is sent to the second serial communication interface of the NFP chip via the network driver port. The packaged second communication data is sent to the server's first virtual serial communication port through the first serial communication interface of the NFP chip, so that the server can parse the communication data and execute the corresponding task.

5. The DPU device according to claim 2, characterized in that, The virtual terminal port is created by the control chip by calling a preset remote access service, and is used to interact with the control chip and execute specified tasks, as well as for remote communication.

6. The DPU device according to claim 2, characterized in that, The front-end virtual port and the back-end virtual port are built on a console semi-virtualization framework and are used to support the communication connection between the second virtual serial communication port and the second serial communication interface.

7. A serial communication system based on a DPU device, characterized in that, include: The server includes: a first virtual serial communication port; The DPU device includes: a control chip and an NFP chip; wherein, the control chip includes: a second virtual serial communication port; the NFP chip includes: a first serial communication interface and a second serial communication interface; Wherein, the first serial communication interface is connected to the first virtual serial communication port via a PCIe bus, and the second serial communication interface is connected to the second virtual serial communication port via a PCIe bus. The first virtual serial communication port is created by the server calling a preset first serial port driver; The second virtual serial communication port is created by the control chip by calling a preset second serial port driver, and is used for bidirectional serial communication with the first virtual serial communication port through the second serial communication interface and the first serial communication interface of the NFP chip.

8. The serial communication system based on a DPU device according to claim 7, characterized in that, include: The server is equipped with terminal software; the terminal software is used to access the first virtual serial communication port and the second virtual serial communication port to connect to the DPU device and to access and manage the DPU device.

9. The serial communication system based on a DPU device according to claim 7, characterized in that, The server also communicates with external personal computer devices to enable bidirectional serial communication between the external personal computer devices and the DPU device.

Citation Information

Patent Citations

  • Virtual configuration management method and device based on DPU, equipment and medium

    CN116257320A

  • Data processing unit providing remote management and extended network processing capabilities

    CN217157280U