Multicast apparatus and method for a switch chip
By introducing a multicast transmission unit, a switching network, an arbitration unit, and an address domain translation unit into the switching chip, the address domain translation and access control problems of existing multicast devices are solved, thereby improving multicast flexibility and bandwidth utilization, and supporting flexible networking and priority control of multiple switching chips.
Patent Information
- Application Number
- CN202511624991.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-07
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2045-11-07
AI Technical Summary
Existing multicast devices for switching chips lack address domain translation and access control, resulting in poor multicast flexibility, failing to meet the multicast requirements of networking multiple switching chips, and lacking control over multicast priorities.
A multicast device for a switching chip is designed, comprising a multicast transmitting unit, a multicast switching network, an arbitration unit, an address domain translation unit, and an inter-chip translation unit. It realizes address domain translation and access control, supports the replication and arbitration of multicast requests, and performs address mapping and priority control between multiple switching chips.
It enables multicast support for devices with different address domains, improves multicast flexibility and bandwidth utilization, supports flexible chip topologies, and can control the priority of multicast behavior to avoid network congestion.
Smart Images

Figure CN121078006B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application relates to a multicast device and method of a switching chip, and belongs to the technical field of switching chips. BACKGROUND
[0002] With the increasing demand for large-scale AI (artificial intelligence) networking, multicast under the interconnection of multiple switching chips can greatly improve data exchange efficiency. The multicast device of the existing switching chip does not have an address domain conversion function, cannot multicast different address domain devices, and has no address domain permission control function, resulting in poor multicast flexibility.
[0003] As disclosed in the publication CN120034508A, a PCIe switch (PCIe is a high-speed serial computer expansion bus standard) multicast processing system and method that takes into account efficiency and resources, the application concentrates the processing of multicast packets on the ingress end (data sending port) of the PCIe port, separates the processing of unicast packets and multicast packets, and opens two parallel processing channels in the multicast control module, and realizes the copying of multicast packets through the rollback FIFO (rollback: rollback operation. FIFO: a first-in, first-out data structure.) read-write pointer mode, simplifying the design, saving resources and improving efficiency. Although the application realizes the separate processing of unicast and multicast, it cannot meet the multicast function of multiple switching chip networking, and lacks multicast priority control processing.
[0004] Based on this, the present application is proposed. SUMMARY
[0005] The application provides a multicast device and method of a switching chip, and the specific technical solutions are as follows:
[0006] In a first aspect, a multicast device of a switching chip includes a multicast transmitting unit, a multicast switching network, an arbitration unit, an address domain conversion unit and an inter-chip conversion unit:
[0007] The multicast transmitting unit constructs a multicast address space according to a configuration space, judges the received request, and considers it a multicast request that can be forwarded when it is judged that the address range falls within the multicast address space and the TLP request type is P type.
[0008] The multicast transmitting unit sends the multicast request to the input buffer unit of the multicast switch network, which first performs multicast distribution, replicates the request multiple times according to the number of multicast destination nodes, and stores the packet header information and data in an internal storage array, each replicated transmission packet header occupying an entry of the storage array, the entry number corresponding to the downstream port number; when the downstream port is available, the request can be sent to the arbitration unit of each target port; each replicated transmission data is placed in the shared buffer through the buffer entry;
[0009] The arbitration unit performs arbitration among multiple TLPs transmitted to the same port, and finally sends the request to the downstream PCIe DSP port;
[0010] The address domain conversion unit is used for address conversion of the multicast request;
[0011] When the multicast switch network is ready to send the multicast request to other connected switch chips, it is first sent to the inter-chip conversion unit.
[0012] Further improvement, the multicast transmitting unit internally constructs two lookup tables, the first lookup table is an information collection lookup table, which is used to collect the multicast enable state and multicast receiving capability information of each port; the second lookup table is a multicast judgment lookup table, according to the information of the information collection lookup table, when the multicast capability of the target port is enabled and the multicast group of the TLP is within the multicast receiving capability range of the destination port, it is judged that it can be sent to the multicast switch network.
[0013] Further improvement, the address domain conversion unit first performs multicast detection, judges the received request, if it is a multicast request, replaces the address segment in the request packet according to the internal address conversion mapping table, maps it to a new address domain, and discards the original check code, generates a new check code according to the new address information, and then forwards it to the downstream PCIe DSP port; if the multicast request itself does not have a check code, then there is no need to regenerate the check code.
[0014] Further improvement, the address domain conversion unit is used for mapping and conversion of bus number, device number, function number and transmission address.
[0015] Secondly, a multicast method of a switch chip, which is implemented by using the multicast device of the switch chip, comprising the following steps:
[0016] Step 1: The host or endpoint device initiates a multicast request, the switch chip port receives and forwards the packet to the multicast transmitting unit, the multicast transmitting unit analyzes the internal information of the TLP packet, and judges whether it is a multicast packet;
[0017] Step 2, if it is a multicast message, a lookup table is inquired to determine the target node; a bypass indication signal is added to the output port to indicate multiple target nodes, and is marked as a multicast request and sent to the input buffer unit of the multicast switching network; after the input buffer unit identifies the multicast message type, the TLP message is copied to the internal storage structure according to the number of target ports, converted into multiple P type messages and sent to the output port for port arbitration; the arbitration unit arbitrates the received message and forwards it to the downstream;
[0018] The address domain conversion unit of the downstream determines whether the received TLP message is a multicast message, if it is a multicast message, the multicast group and multicast receiving configuration information are calculated and judged whether the multicast message receiving condition is met, and the address conversion and checksum regeneration are performed according to the address domain setting; if the multicast message receiving condition is met, a request message is sent to the device connected to the PCIe DSP port;
[0019] Step 3, if it is a unicast message, it is transmitted as a unicast message, the target node is obtained according to the address, the multicast switching network is sent, the multicast switching network is routed to the target node, the output port of the multicast switching network is arbitrated, and a request message is sent to the device connected to the PCIe DSP port.
[0020] Further improvement, in step 2, if it is a multicast message, first query the information collection lookup table, and then query the multicast judgment lookup table to determine the target node.
[0021] Further improvement, in step 3, if it is a unicast message, it is transmitted as a unicast message, the target node is obtained according to the address, the information collection lookup table is first queried, and then the multicast judgment lookup table is queried.
[0022] Thirdly, a switching chip system comprises a host, a plurality of interconnected switching chips, a plurality of downstream operation chips, and the multicast device of the switching chip, wherein the switching chip is a PCIe switching chip, the host communicates with the downstream operation chips and the multicast device of the switching chip through the switching chip to realize data sending and receiving;
[0023] The PCIe USP port of the PCIe switching chip receives the multicast request of the upstream host, sends it to the multicast switching network through the multicast transmitting unit, enters the input buffer unit of the multicast switching network, and forwards it to the destination port through the multicast switching network; according to the port type, it is forwarded to another switching chip or the downstream device of the current switching chip.
[0024] The beneficial effects of the present application are as follows:
[0025] 1. This invention provides an address domain translation function, which can multicast devices with different address domains and has address domain access control function, giving multicast flexibility.
[0026] 2. This invention is highly scalable, supports flexible chip topologies, and multicast between multiple switching chips greatly improves bandwidth utilization.
[0027] 3. The priority of multicast behavior can be controlled on the switching chip to avoid a large number of multicast operations from congesting the entire switching chip interconnection network. Attached Figure Description
[0028] Figure 1 This is a top-level architecture diagram of the switching chip system of the present invention;
[0029] Figure 2 This is a diagram of the multicast structure inside a PCIe switching chip.
[0030] Figure 3 This is a structural diagram of a multicast transmitter unit;
[0031] Figure 4 Here is a diagram of the input buffer unit structure;
[0032] Figure 5 This is a diagram of the address domain translation unit structure;
[0033] Figure 6 This is a diagram of the address mapping table structure within the address domain translation unit;
[0034] Figure 7 This is a flowchart of the multicast request processing of the switching chip. Detailed Implementation
[0035] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0036] Example 1
[0037] The present invention provides a multicast device for a switching chip, which mainly consists of a multicast transmitting unit, a multicast switching network, an arbitration unit, an address domain translation unit, and an inter-chip translation unit.
[0038] A switching chip system including a multicast device of the switching chip described in this invention, such as... Figure 1 As shown, the switching chip system includes a host computer, several interconnected switching chips, and several downstream computing chips. The multicast device of the switching chip described in this invention is located inside the switching chip.
[0039] 1. Switching Chip: The switching chip here mainly refers to the PCIe switching chip, which integrates multiple PCIe USP (Upstream Port) and DSP (Downstream Port) ports. It can expand the PCIe ports of the host machine to connect multiple downstream computing chips. At the same time, switching chips can communicate directly with each other.
[0040] like Figure 2 As shown, the PCIe USP port of the PCIe switching chip receives multicast requests from the upstream host, sends them to the multicast switching network through the multicast transmission unit, enters the input buffer unit of the multicast switching network, is buffered in the multicast switching network input buffer, and is forwarded to the destination port by the multicast switching network. Depending on the port type, it is forwarded to another switching chip or the downstream device of the current switching chip.
[0041] 2. Multicast Transmitting Unit: The multicast transmitting unit constructs a multicast address space based on the configuration space. It judges received requests, and if a request is determined to be multicast, its address range falls within the multicast address space, and its TLP (Transaction Layer Packet) request type is P (Posted), it considers it a multicast request that can be forwarded. For example... Figure 3 As shown, the multicast transmission unit internally constructs two lookup tables. The first lookup table is an information collection lookup table, used to collect multicast enable status and multicast receive capability information for each port. The second lookup table is a multicast decision lookup table. Based on the information collection lookup table, if the multicast capability of the target port is enabled and the TLP's multicast group is within the multicast receive capability range of the target port, it is determined that the data can be sent to the multicast switching network. Furthermore, the multicast transmission unit has the ability to block multicast transmissions. Through configuration space, it is possible to block the transmission of multicast requests. This function can prevent network congestion caused by multicast during specific time periods.
[0042] 3. Multicast Switching Network: The multicast transmitting unit sends multicast requests to the input buffer unit of the multicast switching network, such as... Figure 4As shown, the input buffer unit first performs multicast distribution, which means that the request is copied multiple times and distributed according to the number of multicast destination nodes. The packet header information and data are stored in the internal storage array. Each copied transmission header occupies one entry in the storage array, and the entry number corresponds to the downstream port number. When the downstream port can receive the data, it can be sent to the arbitration unit of each destination port. Each copied transmission data is placed into the shared buffer through a buffer entry (e.g., buffer entries 0-3). Each transmission stored in the buffer array is then converted into a unicast request and transmitted in the multicast switching network, treated the same as other non-multicast requests and sent to the next stage of the multicast switching network pipeline. Each entry within the input buffer unit, as long as it is detected as non-empty, will send a request downstream. After receiving authorization for the request, it can be sent to the arbitration unit.
[0043] 4. Arbitration Unit: This unit arbitrates multiple TLPs transmitted to the same port and ultimately sends the request to the downstream PCIe DSP port. Since the arbitration unit arbitrates both received unicast and multicast requests, and a multicast request requires all its constituent requests to be completed before it can terminate, the arbitration unit uses a weighted round-robin scheduling algorithm. This allows it to give multicast requests a relatively higher priority, increasing multicast efficiency in high-bandwidth scenarios.
[0044] 5. Address Translation Unit: Primarily performs address translation for multicast requests. Since downstream devices may not support multicast requests within the address space defined by the switching chip, it is necessary to perform address translation on received multicast requests and regenerate checksums.
[0045] like Figure 5 As shown, the address translation unit first performs multicast detection. It judges the received request; if it's a multicast request, it replaces the address segment in the request message with a new address field according to its internal address translation mapping table. Simultaneously, it discards the original checksum, regenerates the checksum based on the new address information, and then forwards it to the downstream port (such as a PCIe DSP port). If the multicast request itself does not contain a checksum, then it does not need to regenerate the checksum.
[0046] 6. Inter-chip conversion unit: Multicast requests can be transmitted among multiple peer-to-peer switching chips. Because the address fields of two switching chips are different, when the multicast switching network is about to send a multicast request to other connected switching chips, it will first send it to the inter-chip conversion unit.
[0047] like Figure 6As shown, the main function of the address translation unit is to map and translate the bus number, device number, function number, and transmission address of the data. Taking multicast transmission between switching chip 0 and switching chip 1 as an example, a device in switching chip 0 initiates a multicast transmission and sends it to the address translation unit connected to switching chip 1. The address translation unit refills the packet header and corresponding segments (data packet reassembly) according to its internal address translation mapping table and bus number mapping table (such as bus number mapping table 0 and bus number mapping table N, where N represents a natural number), and performs checksum verification and recalculation before sending it to the peer switching chip. The peer switching chip also has an address translation unit, which routes the data according to the new address and bus device function number (referring to bus number, device number, and function number, uniformly represented by bus number) and forwards it to the multicast switching network.
[0048] pass Figure 6 As can be seen, the present invention has the main feature of address mapping function that other switching chips do not have, and completes the remapping of bus number and address.
[0049] Example 2
[0050] like Figure 7 As shown, the internal processing flow of multicast requests in the switching chip is as follows:
[0051] Step 1: The host or endpoint device initiates a multicast request, and the exchange chip port receives and forwards (processes) the message to the multicast transmission unit (the multicast transmission unit receives the message). The multicast transmission unit parses the information in each part of the TLP message to determine whether it is a multicast message.
[0052] Step 2: If it is a multicast message, the lookup table is consulted (first the information collection lookup table, then the multicast determination lookup table) to determine the target node. Since it is a multicast request, a bypass indication signal needs to be added to the output port to indicate multiple target nodes and mark it as a multicast request, which is then sent to the input buffer unit of the multicast switching network. After the input buffer unit identifies the type of multicast message, it copies the TLP message to the internal storage structure according to the number of target ports, converts it into multiple P-type messages, and sends them to the output port (the arbitration unit of the output port of the multicast switching network) for port arbitration. The arbitration unit needs to arbitrate the received messages before forwarding them downstream.
[0053] Downstream address translation unit needs to determine whether the received TLP message is a multicast message. If it is a multicast message, it needs to calculate and determine whether the multicast group and multicast receive configuration information meet the multicast message receive conditions. At the same time, it performs address translation and regenerates the checksum according to the address field settings. If the multicast message receive conditions are met, it sends a request message to the device connected to the PCIe DSP port.
[0054] Step 3: If it is a unicast message, it is transmitted as a unicast message. The target node is obtained by looking up the address lookup table (first looking up the information collection lookup table, then looking up the multicast determination lookup table), and then sent to the multicast switching network. The multicast switching network routes the message to the target node, arbitrates at the output port of the multicast switching network, and sends a request message to the device connected to the PCIe DSP port.
[0055] In addition, when multiple switching chips are involved in multicast transmission, the inter-chip conversion unit needs to perform address mapping conversion between the switching chips. At this time, the multicast transmission between multiple switching chips is not affected.
[0056] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A multicast device for a switching chip, characterized in that, It includes a multicast transmission unit, a multicast switching network, an arbitration unit, an address domain translation unit, and an inter-chip translation unit: The multicast transmitting unit constructs a multicast address space based on the configuration space, judges the received request, and considers it as a forwarded multicast request when the address range falls within the multicast address space and the TLP request type is P. The multicast transmitting unit sends the multicast request to the input buffer unit of the multicast switching network. The input buffer unit first performs multicast distribution, copying the request multiple times according to the number of multicast destination nodes, and storing the packet header information and data in the internal storage array. Each copied transmission packet header occupies one entry in the storage array, and the sequence number of the entry corresponds to the downstream port number. When the downstream port receives the request, it sends it to the arbitration unit of each destination port. Each copied transmission data is placed into the shared buffer through the buffer entry. The arbitration unit completes the arbitration between multiple TLPs transmitted to the same port, and finally sends the request to the downstream PCIe DSP port; The address domain translation unit is used to translate the addresses of multicast requests; When a multicast switching network is ready to send a multicast request to other connected switching chips, it first sends it to the inter-chip conversion unit.
2. The multicast device for a switching chip according to claim 1, characterized in that: The multicast transmitting unit internally constructs two lookup tables. The first lookup table is an information collection lookup table, which is used to collect the multicast enable status and multicast receiving capability information of each port. The second lookup table is the multicast decision lookup table. Based on the information in the information collection lookup table, if the multicast capability of the target port is enabled and the multicast group of the TLP is within the multicast receiving capability range of the target port, it is determined to send to the multicast switching network.
3. The multicast device for a switching chip according to claim 1, characterized in that: The address domain translation unit first performs multicast detection, judges the received request, and if it is a multicast request, it replaces the address segment in the request message with a new address domain according to the internal address translation mapping table, discards the original checksum, regenerates the checksum according to the new address information, and then forwards it to the downstream PCIe DSP port; if the multicast request itself does not have a checksum, then it is not necessary to regenerate the checksum.
4. The multicast device for a switching chip according to claim 1, characterized in that: The address domain conversion unit is used to perform mapping and conversion of bus number, device number, function number and transmission address for transmission.
5. A multicast method for a switching chip, characterized in that: The multicast device using a switching chip as described in any one of claims 1 to 4 includes the following steps: Step 1: The host or endpoint device initiates a multicast request, and the switching chip port receives and forwards the message to the multicast transmission unit. The multicast transmission unit parses the information in each part of the TLP message to determine whether it is a multicast message. Step 2: If it is a multicast message, the lookup table is queried to determine the target node; a bypass indication signal is added to the output port to indicate multiple target nodes and mark it as a multicast request, which is then sent to the input buffer unit of the multicast switching network; after the input buffer unit identifies the type of multicast message, it copies the TLP message to the internal storage structure according to the number of target ports, converts it into multiple P type messages and sends them to the output port for port arbitration; the arbitration unit arbitrates the received messages and then forwards them to the downstream. The downstream address translation unit determines whether the received TLP message is a multicast message. If it is a multicast message, it calculates and judges whether the multicast group and multicast receive configuration information meet the multicast message reception conditions. At the same time, it performs address translation and regenerates the checksum according to the address field settings. If the multicast message reception conditions are met, it sends a request message to the device connected to the PCIe DSP port. Step 3: If it is a unicast message, it is transmitted as a unicast message. The target node is obtained by looking up the address table and sent to the multicast switching network. The multicast switching network routes the message to the target node. Arbitration is performed at the output port of the multicast switching network, and a request message is sent to the device connected to the PCIe DSP port.
6. The multicast method for a switching chip according to claim 5, characterized in that: In step 2, if it is a multicast message, the information collection lookup table is queried first, and then the multicast determination lookup table is queried to determine the target node.
7. The multicast method for a switching chip according to claim 5, characterized in that: In step 3, if it is a unicast message, it is transmitted as a unicast message. The information collection lookup table is first queried according to the address, and then the multicast determination lookup table is queried to obtain the target node.
8. A switching chip system, comprising a host computer, a plurality of interconnected switching chips, and a plurality of downstream computing chips, wherein the switching chips are PCIe switching chips, characterized in that: It also includes a multicast device for a switching chip as described in any one of claims 1 to 4, wherein the host communicates with the downstream computing chip and the multicast device for the switching chip through the switching chip to realize the sending and receiving of data; The PCIe USP port of the PCIe switching chip receives multicast requests from the upstream host, sends them to the multicast switching network through the multicast transmission unit, enters the input buffer unit of the multicast switching network, and is forwarded to the destination port by the multicast switching network. Depending on the port type, it is forwarded to another switching chip or the downstream device of the current switching chip.
Citation Information
Patent Citations
PCIe switch multicast processing system and method giving consideration to efficiency and resources
CN120034508A
Method of data exchange and equipment
CN101527686A
Artificial intelligence device, operation method thereof, and machine readable storage medium
CN118585482A