System on chip and related method

By carrying NOC0 internal network information in the target bridge TB1 and the initial bridge IB1 of NOC0, the protocol conversion process is simplified, and the complexity problem of cross-NOC interconnection signals in the prior art is solved, and more efficient signal conversion and chip area are achieved.

CN116711281BActive Publication Date: 2025-08-15HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080108260.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-12-30
Publication Date
2025-08-15
Estimated Expiration
2040-12-30

AI Technical Summary

Technical Problem

In an on-chip network system, the signal protocol conversion process of cross-NOC interconnection in the prior art is complex, resulting in increased chip area and communication delay.

Method used

By carrying NOC0 internal network information in the target bridge TB1 and the initial bridge IB1 of NOC0, the protocol conversion process is simplified, and the NOC0 internal network information is avoided in the context table, thereby improving the signal protocol conversion efficiency.

Benefits of technology

The internal structure of TB1 is simplified, chip area overhead and delay is reduced, and signal protocol conversion efficiency is improved during cross-NOC interconnection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116711281B_ABST
    Figure CN116711281B_ABST
Patent Text Reader

Abstract

A system on chip (SoC) includes a NOC0 (301) and a NOC1 (302); the NOC0 (301) includes an IB1 (303) and a TB1 (304); the NOC1 (302) includes a second initial bridge IB2 (305); the IB1 (303) is used to send a first session request, the first session request including a first session identifier, a first context entry number, and the number of the IB1 (303); the TB1 (304) is used to receive the first session request; based on the first session request, a second session request is generated, and the second session request is sent to the IB2 (305); the second session request includes the second session identifier and the first context entry number; the IB2 (305) is used to receive the second session request; based on the second session request, a first session response is generated, and the first session response is sent to the TB1 (304); the first session response includes the second session identifier and the first context entry number; the first target bridge TB1 (304) is used to receive the first session response and generate the second session response. The system can improve the protocol conversion efficiency of signals in the process of cross-NOC interconnection.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of semiconductor technology, and in particular to a system on chip and related methods. Background Art

[0002] As semiconductor process technology advances into the nanometer stage, integrating hundreds of millions of transistors on a single chip has become a reality. Currently, a single system-on-chip (SOC) can integrate dozens or even more processors. However, traditional bus architectures cannot effectively support this increasing number of processors. Network-on-chip (NOC) is the most effective solution for interconnecting multiple processors.

[0003] NOC refers to an on-chip communication network that integrates a large amount of computing resources and connects these resources on a single chip. The NOC includes multiple subsystems with different functions (such as audio systems, etc.), and these subsystems can be interconnected through the NOC bus. However, if two subsystems are interconnected using a NOC bus, there may be a situation where the code of other subsystems changes due to adjustments to the internal structure of one subsystem (such as adding ports or changing the topology). In order to avoid this situation, independent NOC buses are usually designed for some subsystems according to needs, and they are decoupled from the NOC buses of other subsystems in the system. Then, information is converted between NOC subsystems through interface protocols to achieve cross-NOC interconnection.

[0004] However, in existing inter-NOC interconnection interface protocol designs, signals must undergo complex protocol conversion between the output of a NOC subsystem and the input of another NOC subsystem, increasing chip area and communication latency. Therefore, effectively improving signal protocol conversion during inter-NOC interconnection is an urgent issue. Summary of the Invention

[0005] Embodiments of the present invention provide a system on chip and related methods to improve the efficiency of signal protocol conversion in the process of achieving cross-NOC interconnection.

[0006] In a first aspect, an embodiment of the present invention provides a system on chip, characterized in that the system on chip includes a first network on chip (NOC0) and a second network on chip (NOC1); the NOC0 includes a first initial bridge (IB1) and a first target bridge (TB1), and the NOC1 includes a second initial bridge (IB2); the first initial bridge (IB1) is configured to send a first session request, the first session request including a first session identifier, a first context entry number, and a number of the IB1; the first target bridge (TB1) is configured to receive the first session request; generate a second session request based on the first session request, and send the second session request to the IB2; the second session request includes a second session identifier and the first context entry number; the second session identifier is generated by packaging the first session identifier and the IB1 number; the second initial bridge (IB2) is configured to receive the second session request; generate a first session response based on the second session request, and send the first session response to the TB1; the first session response includes the second session identifier and the first context entry number; the first target bridge (TB1) is further configured to receive the first session response, unpack the second session identifier to obtain the IB1 number, and generate a second session response, the second session response including the IB1 number and the first context entry number.

[0007] In the prior art, since there are independent NOC buses between the on-chip networks, when the first on-chip network NOC0 and the second on-chip network NOC1 communicate across NOCs, the signals need to undergo protocol conversion. Specifically, after TB1 of NOC0 receives the first session request from IB1 of NOC0, which includes NOC0 internal network information, TB1 will store this NOC0 internal network information in the TB1 context table. TB1 then remaps the NOC0 internal session identification information in the NOC0 internal network information to obtain the first NOC0 external session identification information, and then sends a second session request including the first NOC0 external session identification information to IB2 of NOC1. Next, when TB1 receives the first session response to the first session request, it searches the TB1 context table for the corresponding NOC0 internal network information based on the first NOC0 external session identification information in the first session response. In summary, in the prior art, when NOC0 communicates with NOC1, the second session request sent by TB1 to IB2 and the first session response received by TB1 do not carry NOC0 internal network information, while NOC0 internal network information is stored in TB1 context table. Therefore, after TB1 receives the first session response to the first session request, it can only obtain NOC0 internal network information by searching the TB1 context table, which increases the latency of NOC0 accessing NOC1 and also increases the chip area overhead.

[0008] Based on the above, in an embodiment of the present invention, by improving TB1 in NOC0, the aforementioned second session request and first session response carry NOC0 internal network information, thereby simplifying TB1's internal structure and improving the efficiency of signal protocol conversion during cross-NOC interconnection. Specifically, when TB1 receives IB1's first session request, because the first session request includes NOC0 internal network information, including NOC0 internal session identification information, the IB1 context entry number in IB1 used to record the mapping relationship between the requesting device and NOC0 internal session identification information, and IB1 number information, TB1 packages the NOC0 internal session identification information and IB1 number information to obtain second NOC0 external session identification information. TB1 then sends a second session request to IB2 in NOC1, including the second NOC0 external session identification information and the IB1 context entry number, thus carrying the NOC0 internal network information. Subsequently, upon receiving the second session request, IB2 generates a first session response in response to the second session request and then sends the first session response to TB1. After TB1 receives the first session response, because the first session response includes NOC0 internal network information, which includes the second NOC0 external session identifier and the IB1 context entry number, TB1 unpacks the second NOC0 external session identifier to obtain the NOC0 internal session identifier and the IB1 numbering information, and then generates a second session response based on the NOC0 internal session identifier, the IB1 numbering information, and the IB1 context entry number. By implementing this embodiment of the present invention, TB1 is improved so that the second session request and the first session response carry the NOC0 internal network information, avoiding the delay and unnecessary chip area overhead caused by storing and searching the NOC0 internal network information in TB1's context table. This simplifies TB1's internal structure and improves the protocol conversion efficiency of signals during cross-NOC interconnection.

[0009] In one possible implementation, the NOC0 also includes a NOC0 internal network; the NOC0 internal network is used to: receive the first session request sent by the IB1, the first session request also including target node identification information; determine the TB1 that matches the target node identification information based on the target node identification information; and send the first session request to the TB1.

[0010] In an embodiment of the present invention, NOC0 may further include a NOC0 internal network. When a requesting device initiates a request through IB1, IB1 generates a first session request based on the request of the requesting device, and then sends the first session request to the NOC0 internal network. Next, NOC0 sends the first session request to TB1 based on the target node identification information in the first session request, so that TB1 can generate a second session request and send the second session request to IB2 of NOC1, thereby enabling NOC0 to access NOC1 more quickly.

[0011] In one possible implementation, the IB1 stores a first context table, which includes multiple IB1 context entries; the IB1 is also used to: store a mapping relationship between the requesting device session request identifier and the first session identifier in a first context entry among the multiple IB1 context entries; the first context entry is numbered as the first context entry number.

[0012] In this embodiment of the present invention, when IB1 in NOC0 receives a session request from a requesting device, it records the mapping between the requesting device identifier and the NOC0 internal session identifier in IB1's context table. This is because IB1 can receive multiple different session requests consecutively, each of which corresponds to a corresponding session response, and each session request identifier is consistent with its corresponding session response identifier. Therefore, after receiving a session response, IB1 can query the corresponding entry in the session response based on the entry number, obtain the requesting device's session identifier, and use it as the session response identifier, thereby notifying the requesting device that the corresponding request has been responded to.

[0013] In one possible implementation, the IB2 packet stores a second context table, which includes multiple IB2 context entries. The IB2 is further configured to: remap the second session identifier to obtain a third session identifier; store a mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number in a second context entry among the multiple IB2 context entries; the second context entry is numbered the second context entry number; and generate a third session request; the third session request includes the IB2 number, the third session identifier, and the second context entry number.

[0014] In this embodiment of the present invention, since NOC0 and NOC1 communicate across NOCs, the second session request entering NOC1 requires protocol conversion at IB2. Specifically, after TB1 sends the second session request to IB2, since the second session request carries NOC0 internal network information, including the second NOC0 external session identifier and the IB1 context entry number, upon receiving the second session request, IB2 remaps the second NOC0 external session identifier to obtain NOC1 internal session identifier information. It then stores the mapping between the second NOC0 external session identifier and the NOC1 internal session identifier information, along with the second NOC0 external session identifier and the IB1 context entry number, in an IB2 context entry in the IB2 context table. Upon receiving a response signal to the second session request, IB2 searches the IB2 context table for the corresponding NOC0 internal network information based on the IB2 context entry number in the session response. By storing and searching NOC0's internal network information in IB2's context table, the delay and unnecessary chip area overhead caused by storing and searching NOC0's internal network information in TB1's context table are avoided. This simplifies TB1's internal structure and improves the signal protocol conversion efficiency during cross-NOC interconnection.

[0015] In one possible implementation, the NOC1 also includes the NOC1 internal network; the IB2 is further configured to send the third session request to the NOC1 internal network; the NOC1 internal network is configured to: receive the third session request and respond to the third session request; generate a third session response based on the third session request, and send the third session response to the IB2; the third session response includes the second context entry number.

[0016] In this embodiment of the present invention, NOC1 may also include a NOC1 internal network. Upon receiving the second session request sent by NOC0, IB2 generates a third session request and sends it to the NOC1 internal network. Subsequently, the NOC1 internal network responds to the request, generates a third session response, and sends it to IB2. The third session response includes the IB2 context entry number, facilitating IB2's search for the NOC0 internal network information previously stored in the IB2 context table based on the third session response.

[0017] In one possible implementation, the IB2 is further configured to: receive the third session response; search the second context entry in the second context table according to the second context entry number in the third session response; obtain the second session identifier and the first context entry number stored in the second context entry; and generate the first session response based on the second session identifier and the first context entry number.

[0018] In this embodiment of the present invention, after receiving the third session response sent from the NOC1 internal network, IB2 can search the IB2 context table for previously stored NOC0 internal network information based on the IB2 context entry number in the third session response. This NOC0 internal network information includes the NOC0 external session identifier, the NOC1 internal session identifier, the NOC0 external session identifier, and the IB1 context entry number. IB2 can then generate a first session response based on the NOC0 internal network information and send this first response to TB1 of NOC0. Therefore, IB2 can read the NOC0 internal network information from the IB2 context table based on the third session response, avoiding the delay and unnecessary chip area overhead associated with storing and searching the NOC0 internal network information in TB1's context table. This simplifies TB1's internal structure while also improving the efficiency of signal protocol conversion during cross-NOC interconnection.

[0019] In a possible implementation, the TB1 is further configured to send the second session response to the NOC0 internal network; the NOC0 internal network is further configured to receive the second session response and send the second session response to the IB1 according to the number of the IB1.

[0020] In this embodiment of the present invention, after TB1 of NOC0 receives a first session response from IB2 of NOC1, TB1 unpacks the second NOC0-external session identifier in the first session response to obtain the NOC0-internal session identifier and IB1 numbering information, generating a second session response including the NOC0-internal session identifier, IB1 numbering information, and the IB1 context entry number. TB1 then sends this second session response to the NOC0 internal network. The NOC0 internal network then sends the second session response to IB1 based on the IB1 numbering information, notifying IB1 that NOC1 has responded to the first session request. Therefore, the improved TB1 only needs to package and unpack information, avoiding the delay and unnecessary chip area overhead associated with storing and searching NOC0-internal network information in TB1's context table. This simplifies TB1's internal structure while also improving the efficiency of signal protocol conversion during cross-NOC interconnection.

[0021] In one possible implementation, the IB1 is further configured to: receive the second session response, and search the first context table for a mapping relationship between the requesting device session request identifier and the first session identifier based on the first context entry number in the second ring signal; the requesting device session request identifier corresponds to a target requesting device; and send a fourth session response to the target requesting device based on the second session response; the first session response is used to notify the requesting device that the request has been completed.

[0022] In an embodiment of the present invention, after receiving the second session response sent by NOC0's internal network, IB1 of NOC0 searches the IB1 context table for the previously recorded mapping between the requesting device and the NOC0 internal session identifier, based on the IB1 context entry number in the second session response. Based on the second session response, IB1 can then send a fourth session response to the corresponding requesting device, notifying the requesting device that its request has been responded to by NOC1. By implementing the embodiments of the present invention, the delay and unnecessary chip area overhead associated with storing and searching NOC0 internal network information in TB1's context table are avoided. This simplifies TB1's internal structure while improving the efficiency of signal protocol conversion during cross-NOC interconnection, enabling NOC0 to more quickly access NOC1.

[0023] In one possible implementation, the first initial bridge IB1 is specifically configured to: send multiple session requests in a target order, the multiple session requests including the first session request; receive multiple session responses in the target order, the session responses including the second session response; and send processed session responses based on the multiple session responses to multiple requesting devices in the target order, wherein the multiple requesting devices include the target requesting device, and one of the processed session responses is the fourth session response.

[0024] In an embodiment of the present invention, when IB1 receives multiple initial request sessions and these initial session request identifiers are the same, then when IB1 converts them into multiple first request sessions, it requires that the internal session request identifiers of NOC0 are the same, and requires NOC0 and NOC1 to ensure that the same session request identifiers arrive at the internal network of NOC1 in a target order, so that after the request is responded to in the internal network of NOC1, the response sessions are sent to IB1 respectively in the above target order.

[0025] In a second aspect, an embodiment of the present invention provides a system-on-chip communication method, characterized in that the system-on-chip includes a first network-on-chip (NOC0) and a second network-on-chip (NOC1); the NOC0 includes a first initial bridge (IB1) and a first target bridge (TB1), and the NOC1 includes a second initial bridge; the method includes: the first initial bridge (IB1) sending a first session request, the first session request including a first session identifier, a first context entry number, and a number of the IB1; the first target bridge (TB1) receiving the first session request; generating a second session request based on the first session request, and sending the second session request to the IB2; the second session request including a second session identifier and the first context entry number; the second session identifier being generated by packaging the first session identifier and the IB1 number; the second initial bridge (IB2) receiving the second session request; generating a first session response based on the second session request, and sending the first session response to the TB1; the first session response including the second session identifier and the first context entry number; the first target bridge (TB1) receiving the first session response; unpacking the second session identifier to obtain the IB1 number, and generating a second session response, the second session response including the IB1 number and the first context entry number.

[0026] In one possible implementation, the NOC0 also includes a NOC0 internal network; the method also includes: the NOC0 internal network receives the first session request sent by the IB1, the first session request also including target node identification information; based on the target node identification information, determining the TB1 that matches the target node identification information; and sending the first session request to the TB1.

[0027] In one possible implementation, the IB1 stores a first context table, which includes multiple IB1 context entries; the method also includes: the IB1 stores a mapping relationship between the requesting device session request identifier and the first session identifier in a first context entry among the multiple IB1 context entries; the first context entry is numbered as the first context entry number.

[0028] In one possible implementation, the IB2 packet stores a second context table, wherein the second context table includes multiple IB2 context entries. The method further includes: remapping the IB2 according to the second session identifier to obtain a third session identifier; storing a mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number in a second context entry among the multiple IB2 context entries; the second context entry number is the second context entry number; and generating a third session request; the third session request including the IB2 number, the third session identifier, and the second context entry number.

[0029] In one possible implementation, the NOC1 also includes the NOC1 internal network; the method further includes: the IB2 sending the third session request to the NOC1 internal network; the NOC1 internal network receiving the third session request and responding to the third session request; generating a third session response based on the third session request, and sending the third session response to the IB2; the third session response including the second context entry number.

[0030] In one possible implementation, the method further includes: the IB2 receiving the third session response, searching the second context entry in the second context table according to the second context entry number in the third session response, obtaining the second session identifier and the first context entry number stored in the second context entry; and generating the first session response based on the second session identifier and the first context entry number.

[0031] In a possible implementation, the method further includes: the TB1 sending the second session response to the NOC0 internal network; the NOC0 internal network receiving the second session response and sending the second session response to the IB1 according to the number of the IB1.

[0032] In one possible implementation, the method further includes: the IB1 receiving the second session response, and searching the first context table for a mapping relationship between the requesting device session request identifier and the first session identifier based on the first context entry number in the second ring signal; the requesting device session request identifier corresponds to a target requesting device; and sending a fourth session response to the target requesting device based on the second session response; the first session response being used to notify the requesting device that the request has been completed.

[0033] In one possible implementation, the first initial bridge IB1 sends multiple session requests in a target order, where the multiple session requests include the first session request; receives multiple session responses in the target order, where the session responses include the second session response; and sends processed session responses based on the multiple session responses to multiple requesting devices in the target order; the multiple requesting devices include the target requesting device, and one of the processed session responses is the fourth session response.

[0034] In a third aspect, the present application provides a computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of the above claims.

[0035] In a fourth aspect, the present application provides a computer program, characterized in that the computer-readable program includes instructions, which, when the computer program is executed by a processor, enable the processor to execute the method as described in any one of the above claims.

[0036] In a fifth aspect, the present application provides a network-on-chip interface device, characterized in that the system-on-chip includes a first network-on-chip (NOC0) and a second network-on-chip (NOC1); the NOC0 includes a first initial bridge (IB1) and a first target bridge (TB1), and the NOC1 includes a second initial bridge (IB2); the first initial bridge (IB1) is configured to send a first session request, the first session request including a first session identifier, a first context entry number, and the number of the IB1; the first target bridge (TB1) is configured to receive the first session request; generate a second session request based on the first session request, and send the second session request to the IB2; the second session request includes a second session identifier and the first context entry number; the second session identifier is generated by packaging the first session identifier and the number of the IB1; the second initial bridge (IB2) is configured to receive the second session request; generate a first session response based on the second session request, and send the first session response to the TB1; the first session response includes the second session identifier and the first context entry number; the first target bridge (TB1) is further configured to receive the first session response; unpack the second session identifier to obtain the number of the IB1, and generate a second session response, the second session response including the number of the IB1 and the first context entry number. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1A The figure is a connection diagram of a NOC subsystem in the prior art.

[0038] Figure 1BSchematic diagram of the initial bridge structure in the prior art.

[0039] Figure 1C This is a schematic diagram of protocol conversion signals in the prior art.

[0040] Figure 1D This is a schematic diagram of network signals in the prior art.

[0041] Figure 1E Schematic diagram of the target bridge structure in the prior art.

[0042] Figure 2 A schematic diagram of a network-on-chip structure provided by an embodiment of the present invention.

[0043] Figure 3A A schematic diagram of a system on a chip provided by an embodiment of the present invention.

[0044] Figure 3B A schematic diagram of another system on a chip provided by an embodiment of the present invention.

[0045] Figure 3C A schematic diagram of the internal structure of an IB1 provided in an embodiment of the present invention.

[0046] Figure 3D A schematic diagram of the structure of a TB provided in an embodiment of the present invention.

[0047] Figure 3E A schematic diagram of NOC0 external signals provided in an embodiment of the present invention.

[0048] Figure 3F A schematic diagram of an IB2 structure provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0049] The following will describe embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. The terms "first", "second", "third" and "fourth" in the specification and claims of this application and the drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or devices. Mentioning "embodiment" in this article means that the specific features, structures or characteristics described in conjunction with the embodiment may be included in at least one embodiment of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0050] As used in this specification, the terms "component," "module," "system," and the like are used to represent computer-related entities, hardware, firmware, a combination 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. By way of illustration, both an application running on a computing device and a computing device can be a component. One or more components can reside in a process and / or an execution thread, and a component can be located on a computer and / or distributed between two or more computers. In addition, these components can be executed from various computer-readable media having various data structures stored thereon. Components can communicate, for example, through local and / or remote processes based on information 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 for interacting with other systems via information).

[0051] First, some terms in this application are explained to facilitate understanding by those skilled in the art.

[0052] (1) Network on Chip (NOC) is a new communication method for single-chip system-on-chip (SoC), which is a key component of multi-core technology. The NoC method brings a new on-chip communication method that significantly outperforms the performance of traditional bus systems.

[0053] (2) Protocol conversion: Protocol conversion refers to the process of converting the standard or protocol of one device into a protocol suitable for another device, in order to achieve interoperability between different protocols. Protocols usually appear in the form of software. For example, a router converts the data format and data rate in one network into a protocol suitable for another network. There are many different protocols in the network, which are used in different fields, such as power generation, oil and gas, automation, utilities, remote monitoring, etc. The main protocol conversion messages involve the conversion of data messages, events, commands, and time synchronization.

[0054] First, in order to facilitate understanding of the embodiments of the present invention, the technical problems to be solved by this application are further analyzed and proposed. The following examples list the existing technical solutions for the on-chip network interface protocol.

[0055] like Figure 1A As shown, Figure 1A It is a NOC subsystem connection diagram in the prior art. In the figure, NOC0 includes two initial bridges and two target bridges, wherein the two initial bridges are respectively connected to two master devices (such as central processing unit CPU, etc.), target bridge 022 is connected to slave device 030 (such as memory DDR, etc.), and another target bridge 023 is connected to the initial bridge 061 of NOC1; NOC1 includes two initial bridges and two target bridges, wherein the two target bridges are respectively connected to two slave devices, one initial bridge is connected to master device 070, and the other initial bridge 061 is connected to the target bridge 023 of NOC0. Since the interface protocols between the master device and the NOC subsystem are different, the master device and the NOC subsystem need to use the interface protocol 010 in the figure to perform protocol conversion when communicating; since the interface protocols between the NOC subsystem and the slave device are different, the NOC subsystem needs to use the interface protocol 040 in the figure to perform protocol conversion when communicating with the slave device; since the interface protocols between different NOC subsystems are different, the NOC subsystem needs to use the interface protocol 050 in the figure to perform protocol conversion when communicating between the NOC subsystems. It should be noted that the interface protocol 010, the interface protocol 040 and the interface protocol 050 are three different protocols, but the embodiment of the present invention mainly improves the interface protocol 050, so the following will be based on Figure 1B 、 Figure 1C 、 Figure 1D and Figure 1E The interface protocol 050 in the prior art is described.

[0056] like Figure 1B As shown, Figure 1B This is a schematic diagram of the initial bridge structure in the prior art. It should be noted that: Figure 1A The initial bridge 061 in can be Figure 1BThe initial bridge structure shown in , then it is assumed here that Figure 1A The initial bridge 061 structure in Figure 1B As shown. Figure 1B The structure of the initial bridge may include an address decoder 110, an allocator 120, a context table 130, and an index module 140. Interfaces 150 and 160 of the initial bridge 061 of NOC1 are connected to the target bridge 023 of NOC0, and interfaces 170 and 180 of the initial bridge 061 of NOC1 are connected to the internal network of NOC1.

[0057] The NOC external session request enters the initial bridge 061 of NOC1 from the target bridge 023 of NOC0. Figure 1C As shown, Figure 1C This is a schematic diagram of the protocol conversion signal in the prior art. The specific form of the NOC external session request is: Figure 1C As shown in the information 510 in FIG, the information 510 includes the request operation type information (request_operationalcode, req_opc), the request address information (request_address, req_addr), the request data size information (request_transactionsize, req_tsize), the request data information (request_data, req_data), and the request session identification information (request_transaction identity document, req_tid). After being processed by the initial bridge 061, the NOC external session request obtains the NOC1 internal request information, and the NOC1 internal request information is output from the interface 170 of the initial bridge 061 and enters the NOC1 internal network. It should be noted that, as shown in FIG. Figure 1D As shown, Figure 1D This is a schematic diagram of network signals in the prior art. The specific form of the NOC1 internal session request is: Figure 1DAs shown in information 610 in FIG, information 610 includes network request operation type information (network_request_operationalcode, network_req_opc), network request payload information (network_request_payload, network_req_pld), network request target node identification information (network_request_destinationidentity, network_req_dstid), network request source terminal identifier information (network_request_source identity, network_req_srcid), network request session identification information (network_request_transaction identity document, network_req_tid), and network request return information (network_request_returnmessage, network_req_retmsg). The main process of processing the NOC external session request in the initial bridge 061 and generating the NOC1 internal session request is as follows:

[0058] 1. The address decoder 110 performs address decoding based on the request address information req_addr in the input NOC external session request 510 to generate the network request target node identification information network_req_dstid in the NOC1 internal request information 610.

[0059] 2. The distributor 120 remaps the request session identification information req_tid in the input NOC external session request 510 to generate the network request session identification information network_req_tid in the NOC1 internal session request 610 .

[0060] 3. The allocator 120 allocates the entry entry in the contexttable 130 and assigns the entry number to the network request return information network_req_retmsg in the NOC1 internal session request 610.

[0061] 4. The interface 170 assigns the number of the IB on chip network currently undergoing protocol conversion to the source-end identifier information network_req_srcid.

[0062] After the NOC external session request 510 is processed in the initial bridge 061 through the above steps, a NOC1 internal session request 610 may be generated, so that the NOC0 bus and the NOC1 bus can communicate better.

[0063] During the interconnection process between NOC0 and NOC1, after the target bridge 023 of NOC0 sends a session request to the initial bridge 061 of NOC1, NOC1 will send a session response to NOC0. The session response is sent by the initial bridge 061 of NOC1 to the target bridge 023 of NOC0. Figure 1D As shown in the figure, the specific form of the session response is shown in information 620. The NOC1 internal session response enters the initial bridge 061 through the interface 180 of the initial bridge 061, and then generates a NOC external session response after being processed by the initial bridge 061. The specific form of the NOC external session response is as follows: Figure 1C As shown in signal 520, a further NOC external session response is output from interface 160 of initial bridge 061. It should be noted that information 620 includes network response operation type information (network_respond_operationalcode, network_rsp_opc), network response payload information (network_request_payload, network_req_pld), network response destination node identification information (network_respond_destinationidentity document, network_rsp_dstid), network request source identifier information (network_request_source, network_req_srcid), and network response return information (network_respond_returnmessage, network_rsp_retmsg). Signal 520 also includes response operation type information (respond_operationalcode, rsp_opc), response data information (respond_data, rsp_data), and response session identification information (respond_transactionidentity document, rsp_tid). The main process of processing the NOC1 internal session response in initial bridge 061 and generating the NOC external session response is as follows:

[0064] 1. Index 140 in the initial bridge 061 queries the tid information of the interface 160 in the context table 130 according to the network response return information network_rsp_retmsg input from the interface 180.

[0065] After the NOC1 internal session response is processed in the initial bridge 061 through the above steps, a NOC external session response can be generated, thereby enabling better communication between the NOC0 bus and the NOC1 bus.

[0066] Next, if Figure 1E As shown, Figure 1E This is a schematic diagram of the target bridge structure in the prior art. It should be noted that: Figure 1A The target bridge 023 in can be Figure 1E The target bridge structure shown in , then it is assumed here that Figure 1A The target bridge 023 structure in is Figure 1E As shown. Figure 1E The target bridge 023 structure may include an allocater 210, a context table 220, and an index module 230. The interface 240 and the interface 250 of the target bridge 023 of NOC0 are connected to NOC0, and the interface 260 and the interface 270 of NOC0 are connected to the initial bridge 061 of NOC1. The internal session request of NOC0 enters the target bridge 023 from the interface 240 of the target bridge 023 of NOC0. It should be noted that, if Figure 1D As shown, the specific form of NOC0 internal session request is Figure 1D The signal 610 in the signal 610 includes network request operation type information (network_request_operational code, network_req_opc), network request payload information (network_request_payload, network_req_pld), network request destination node identification information (network_request_destinationidentity document, network_req_dstid), source end identifier information (network_request_source, network_req_srcid), network request session identification information (network_request_transaction identitydocument, network_req_tid), and network request return information (network_request_return message, network_req_retmsg). After being processed by the target bridge 023, the NOC0 internal session request is converted into a NOC external session request, and the NOC external session request is output from the interface 260 of the target bridge 023 to the initial bridge 061. It should be noted that, as Figure 1C As shown, the specific form of NOC external session request is Figure 1CAs shown in information 510 in FIG, information 510 includes request operation type information (request_operational code, req_opc), request address information (request_address, req_addr), request data size information (request_transaction size, req_tsize), request data information (request_data, req_data), and request session identification information (request_transaction identitydocument, req_tid). The main process of processing the NOC0 internal session request in the target bridge 023 and generating the NOC external session request is as follows:

[0067] 1. The distributor 210 decodes the source terminal identifier information network_req_srcid and the network request session identifier information network_req_tid in the NOC0 internal session request 610 to generate the request session identifier information req_tid in the NOC external session request.

[0068] 2. The distributor 210 distributes an entry in the contexttable 220 and records the network request return information network_req_retmsg of the NOC0 internal session request 610 input by the interface 240 in the entry.

[0069] After the NOC0 internal session request 610 is processed in the target bridge 023 through the above steps, a NOC external session request 510 may be generated, thereby enabling better communication between the NOC0 bus and the NOC1 bus.

[0070] During the interconnection process between NOC0 and NOC1, after the target bridge 023 of NOC0 sends a request message to NOC1, NOC1 will send a response message to it. The response message is transmitted from the initial bridge of NOC1 to the target bridge 023 of NOC0. Figure 1CAs shown in the figure, the specific form of the NOC external session response is shown as signal 520. The NOC external session response enters the target bridge 023 through the interface 270 of the target bridge 023, and then is processed by the target bridge 023 to generate a NOC0 internal session response. The specific form of the NOC0 internal session response is shown as signal 620. Further, the NOC0 internal session response is output from the interface 250 of the target bridge 023. It should be noted that signal 520 includes response operation type information (respond_operationalcode, rsp_opc), response data information (respond_data, rsp_data), and response transaction identification information (respond_transaction identity document, rsp_tid); signal 620 includes network response operation type information (network_respond_operational code, network_rsp_opc), network response payload information (network_request_payload, network_req_pld), network response target node identification information (network_respond_destination identity document, network_rsp_dstid), network response source identifier information (network_respond_source, network_req_srcid), and network response return information (network_respond_return message, network_rsp_retmsg). The main process of processing the NOC external session response in the target bridge 023 and generating the NOC0 internal session response is as follows:

[0071] 1. The index 230 of the target bridge 023 queries the network response target node identification information network_rsp_dstid and the network response return information network_rsp_retmsg recorded in the context table 220 according to the response session identification information rsp_tid in the NOC external session response 520 input from the interface 270 of the target bridge 023 .

[0072] After the NOC external session response is processed in the target bridge 023 through the above steps, a NOC0 internal session response can be generated, thereby enabling better communication between the NOC0 bus and the NOC1 bus.

[0073] A drawback of the existing technology: When NOC0 accesses NOC1, information is output from NOC0's target bridge, then undergoes the aforementioned protocol conversion before entering NOC1's initial bridge for another protocol conversion, thereby achieving cross-NOC interconnection. However, the complex protocol conversion process in the existing technology increases latency when NOC0 accesses NOC1 and increases chip area overhead.

[0074] Based on the above existing technology, this application provides a network-on-chip structure, see Figure 2 , Figure 2 This is a schematic diagram of a network-on-chip (NOC) structure provided in an embodiment of the present invention. The system-on-chip (SoC) 20 can be located in any electronic device, such as a computer, mobile phone, tablet, or other device. Specifically, the NOC 20 can be a chip or chipset, or a circuit board equipped with the chip or chipset. The chip or chipset or circuit board equipped with the chip or chipset can operate under the necessary software driver.

[0075] The system on chip 20 includes n+1 network on chip NOCs, and any one of the n+1 NOCs may include one or more initial bridges and one or more target bridges. Figure 2 Taking NOC0 and NOC1 in the example, NOC0 includes initial bridge 111, initial bridge 113, target bridge 112, target bridge 114, and NOC0 bus 110; NOC1 includes initial bridge 211, initial bridge 213, target bridge 212, target bridge 214, and NOC1 bus 210. On NOC0, initial bridge 113 is connected to master device 115, target bridge 112 is connected to slave device 116, target bridge 114 and initial bridge 213 of NOC1 can be connected through NOC0 bus 110 and NOC1 bus 210, and target bridge 212 of NOC1 is connected to slave device 216, so that master device 115 can communicate with slave device 116, and NOC0 can access NOC1. Among them,

[0076] The initial bridge is a protocol conversion bridge that converts the interface protocol of the docking device into the interface protocol of the NOC internal network. In one case, the initial bridge is connected to the main device (such as a graphics processor GPU, etc.). Since the interface protocols of the main device and the NOC internal network are different, when the signal is output from the main device, the signal protocol conversion will be performed in the initial bridge, so that the signal enters the NOC internal network. In another case, when two different NOCs are interconnected across NOCs, for example, NOC0 accesses NOC1, the initial bridge of NOC1 is connected to the target bridge of NOC0. Since the two NOCs have independent NOC buses, the two different NOCs cannot directly transmit signals. At this time, before the signal is output from the target bridge, the signal protocol conversion is performed in the target bridge according to the protocol rules, and the target bridge transmits the signal after protocol conversion to the initial bridge of NOC1. Then the initial bridge will perform another protocol conversion based on the received signal, so that the signal can enter the NOC1 internal network, thereby realizing cross-NOC interconnection.

[0077] The target bridge is a protocol conversion bridge that converts the NOC internal network protocol into the interface protocol of the docking device. In one case, the target bridge is connected to a slave device (such as a memory, etc.). Since the interface protocols of the slave device and the NOC internal network are different, when the signal is output from the NOC internal network, the signal protocol conversion will be performed in the target bridge so that the signal can enter the slave device. In another case, when two different NOCs are interconnected across NOCs, for example, NOC0 accesses NOC1, and the NOC0 target bridge is connected to the initial bridge of NOC1, since NOC0 and NOC1 have independent NOC buses, the two NOCs cannot directly transmit signals. At this time, before the signal is output from the NOC0 target bridge, the signal protocol conversion will be performed in the target bridge according to the protocol rules, and the target bridge will send the signal after protocol conversion to the initial bridge of NOC1. Then the initial bridge of NOC1 will perform another protocol conversion based on the received signal, so that the signal can enter the NOC1 internal network, thereby realizing cross-NOC interconnection.

[0078] It should be noted that the main device connected to the initial bridge in the NOC can be an application processor (AP), a central processing unit (CPU), a graphics processing unit (GPU), a neural-network processing unit (NPU), a modem processor, an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, etc. For example, a GPU obtains image information from the memory and performs mathematical and geometric calculations based on the image information to achieve graphics rendering.

[0079] The slave devices connected to the target bridge in the NOC can be Flash memory (e.g., NAND flash memory, NOR flash memory, etc.), universal flash storage (UFS), embedded multimedia card eMMC, universal flash storage multi-chip package uMCP memory, embedded multimedia card multi-chip package eMCP memory, solid-state drive (SSD), mechanical hard disk drive (HDD), etc. For example, mobile phone operation data can be stored in the corresponding memory to record the operation status of the mobile phone.

[0080] It is understandable that Figure 2 The structure of a system on a chip is only an exemplary implementation in the embodiment of the present application. The structural architecture of the system on a chip in the embodiment of the present application includes but is not limited to the above architecture.

[0081] Based on the above-mentioned on-chip network structure and in combination with the embodiment of the on-chip system provided in this application, the technical problems raised in this application are specifically analyzed and solved. Figure 3A , Figure 3A A schematic diagram of a system on a chip provided by an embodiment of the present invention is shown in FIG. Figure 3A As shown, the system on chip 30 includes: a first network on chip NOC0 301 and a second network on chip NOC1 302. It should be noted that NOC0 301 includes a first initial bridge IB1 303 and a first target bridge TB1 304, and NOC1 302 includes a second initial bridge IB2 305.

[0082] The first initial bridge IB1 303 is configured to send a first session request, which includes a first session identifier, a first context entry number, and the number of IB1 303. It should be noted that the first initial bridge IB1 303 is a protocol conversion bridge that sends the initial session request from the requesting device to the NOC0 internal network 306. After the initial session request passes through IB1 303, a first session request is generated. The first session request includes the requesting session identifier (e.g., the first session identifier), the number of the first context entry that records the request process in IB1 303, and the number of IB1 303. For example, when the requesting device is a GPU, the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data from NOC1 302. In this case, the on-chip network of NOC1 302 is a register subsystem that stores multiple image data. The GPU sends the initial session request to IB1 303. When the initial session request enters IB1, a signal protocol conversion is performed to generate the first session request. Optionally, the first session request may include NOC0 internal network request operation type information network0_req_opc, NOC0 internal network request payload information network0_req_pld, NOC0 internal network request target node identification information network0_req_dstid, NOC0 internal network request source end identifier information network0_req_srcid, NOC0 internal network request session identification information network0_req_tid, and NOC0 internal network request return information network0_req_retmsg. It should be noted that, when the GPU accesses NOC1 302 through NOC0 301, the network0_req_opc information is the request read operation information, the network0_req_pld information carries other request information, the network0_req_dstid information can instruct the NOC0 internal network 306 to send the first session request to the TB corresponding to network0_req_dstid, the network0_req_srcid is the number information of the IB1 mentioned above, the network0_req_tid is the first session identifier mentioned above, and the network0_req_retmsg is the first context entry number mentioned above. It should be noted that, as Figure 3C As shown, Figure 3CThis is a schematic diagram of the internal structure of IB1 provided in an embodiment of the present invention. In the figure, the initial session request enters IB1 303 through interface 1500. The address decoder 1100 of IB1 303 decodes the target address information in the initial session request to obtain network0_req_dstid. The allocator 1200 in IB1 303 remaps the device identifier of the initial request to obtain network0_req_tid. At the same time, the allocator 1200 allocates an entry in the first context table 308 for recording the request process information. At this time, IB1 303 can obtain network0_req_retmsg based on the entry number used to record the request process in the first context table.

[0083] In one possible implementation, Figure 3B As shown, Figure 3B Another system-on-chip (SoC) diagram according to an embodiment of the present invention shows IB1 303 storing a first context table 308, which includes multiple IB1 303 context entries. IB1 303 is further configured to store, in a first context entry 308 among the multiple IB1 303 context entries, a mapping between a requesting device's session request identifier and the first session identifier. The first context entry 308 is numbered as the first context entry number. Specifically, when IB1 303 in NOC0 301 receives a session request from a requesting device, it records the mapping between the requesting device identifier and the NOC0 301 internal session identifier in IB1 303 first context table 308. This is because IB1 can receive multiple different session requests consecutively, each of which corresponds to a corresponding session response, and each session request identifier is consistent with its corresponding session response identifier. Therefore, when IB1 303 receives a session response, it can locate the corresponding requesting device based on the NOC0 301 internal session identifier in the session response, thereby notifying the requesting device that the request has been responded to. For example, when the requesting device is a GPU, in the scenario where the GPU accesses the NOC1 302 on-chip network through NOC0 301 and reads data in NOC1 302, the NOC1 302 on-chip network is a register subsystem in which multiple image data are stored. Figure 3C As shown in the figure, IB1303 includes a first context table 308. The allocator 1200 in IB1 303 will allocate entries in the first context table 308 for recording request process information. At this time, IB1 303 can obtain network0_req_retmsg according to the entry number used to record the request process in the first upper context table. It should be noted that network0_req_retmsg is the first context entry number mentioned above.

[0084] In one possible implementation, Figure 3B As shown in the figure, NOC0 301 further includes a NOC0 internal network 306. The NOC0 internal network 306 is configured to: receive the first session request sent by IB1 303, the first session request also including target node identification information; determine, based on the target node identification information, the TB1 304 that matches the target node identification information; and send the first session request to TB1 304. Specifically, NOC0 301 may further include NOC0 internal network 306. When a requesting device initiates a request through IB1 303, IB1 303 generates a first session request based on the requesting device's request and then sends the first session request to NOC0 internal network 306. Subsequently, NOC0 301 sends the first session request to TB1 304 based on the target node identification information in the first session request, enabling TB1 304 to generate a second session request and send the second session request to IB2 305 of NOC1 302, thereby enabling NOC0 301 to access NOC1 302 more quickly. For example, when the requesting device is a GPU, in the scenario where the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data in NOC1 302, the on-chip network of NOC1 302 is a register subsystem in which multiple image data are stored. The first session request also includes target node identification information, such as Figure 3C As shown in the figure, the interface 1700 in IB1 303 sends a first session request to the NOC0 internal network 306, and then the NOC0 internal network 306 sends the first session request to the TB corresponding to the target node identification information according to the target node identification information.

[0085] The first target bridge TB1 304 is configured to receive the first session request; generate a second session request based on the first session request, and send the second session request to the IB2; the second session request includes a second session identifier and the first context entry number; the second session identifier is generated by packaging the first session identifier and the IB1 number. Specifically, Figure 3D As shown, Figure 3DThis is a schematic diagram of the structure of a TB provided in an embodiment of the present invention. In the figure, TB1 304 includes a packaging module 3500 and an unpacking module 3600. When TB1 304 receives a first session request input from interface 3100, packaging module 3500 packages the first session identifier in the first session request with the number of IB1 to obtain a second session identifier, then generates a second session request carrying the second session identifier, and sends the second session request to IB2 305 of NOC1 302 via interface 3300. For example, when the requesting device is a GPU, and the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data from NOC1 302, the on-chip network of NOC1 302 is a register subsystem, which stores multiple image data. Optionally, the first session request sent by IB1 303 of NOC0 301 to TB1 304 includes NOC0 internal network request operation type information network0_req_opc, NOC0 internal network request payload information network0_req_pld, NOC0 internal network request target node identification information network0_req_dstid, NOC0 internal network request source end identifier information network0_req_srcid, NOC0 internal network request session identification information network0_req_tid, and NOC0 internal network request return information network0_req_retmsg. When the first session request enters TB1 through interface 3100 of TB1304, TB1 The packaging module 3500 of 304 will package the NOC0 internal network request source identifier information network0_req_srcid and the NOC0 internal network request session identifier information network0_req_tid to obtain the NOC0 external session identifier information, thereby generating a second session request carrying the NOC0 external session identifier information, and send the second session request to IB2 305 of NOC1 302 through interface 3300.

[0086] The second initial bridge IB2 305 is configured to receive the second session request; generate a first session response based on the second session request, and send the first session response to the TB1; the first session response includes the second session identifier and the first context entry number. Specifically, after receiving the second session request from the TB1 304 of the NOC0 301, the IB2 305 of the NOC1 302 may generate a first session response based on the second session request and send the first session response to the TB1 304. Optionally, Figure 3E As shown, Figure 3EA schematic diagram of a NOC0 external signal provided in an embodiment of the present invention shows that the second session request may include the information shown in signal 810 in the figure, including NOC0 external request operation type information req_opc, NOC0 external request address information req_addr, NOC0 external request data information req_data, NOC0 external request session identification information req_tid, and NOC0 external request return information req_retmsg. The first session response may include the information shown in signal 820 in the figure, including NOC0 external response operation type information rsp_opc, NOC0 external response data information rsp_data, NOC0 external response session identification information rsp_tid, and NOC0 external response rsp_retmsg return information. It should be noted that the NOC0 external request session identification information req_tid and the NOC0 external response session identification information rsp_tid are the second session identification mentioned above, and the NOC0 external request return information req_retmsg and the NOC0 external response rsp_retmsg return information are the first context entry number mentioned above.

[0087] In one possible implementation, Figure 3BAs shown in the figure, the IB2 305 packet stores a second context table 309, which includes multiple IB2 context entries. The IB2 305 is further configured to: remap the second session identifier to obtain a third session identifier; store the mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number in a second context entry 309 among the multiple IB2 context entries; the second context entry number is the second context entry number; and generate a third session request; the third session request includes the IB2 305 number, the third session identifier, and the second context entry number. Specifically, because NOC0 301 and NOC1 302 communicate across NOCs, the second session request entering NOC1 302 requires protocol conversion in IB2 305. After TB1 304 sends a second session request to IB2 305, because the second session request carries NOC0 internal network information, including the second NOC0 external session identifier and the IB1 context entry number, IB2 305, upon receiving the second session request, remaps the second NOC0 external session identifier to obtain NOC1 internal session identifier information. It then stores the mapping between the second NOC0 external session identifier and the NOC1 internal session identifier information, along with the second NOC0 external session identifier and the IB1 context entry number, in the IB2 context entry of the IB2 context table. Upon receiving a response signal to the second session request, IB2 305 searches the IB2 305 context table for the corresponding NOC0 internal network information based on the IB2 context entry number in the session response. By storing and searching NOC0 internal network information in the context table of IB2 305, the delay and unnecessary chip area overhead caused by storing and searching NOC0 internal network information in the context table of TB1 304 are avoided, thereby simplifying the internal structure of TB1 304 and improving the protocol conversion efficiency of signals in the cross-NOC interconnection process. For example, when the requesting device is a GPU, in the scenario where the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data in NOC1 302, the on-chip network of NOC1 302 is a register subsystem, in which multiple image data are stored. Next, combined with Figure 3F To explain, Figure 3FThis is a schematic diagram of an IB2 structure provided in an embodiment of the present invention. In the diagram, after IB2 305 receives a second session request through interface 4500, IB2 305 generates a third session request based on the second session request and outputs the third session request through interface 4700. Optionally, the second session request may include NOC0 external request operation type information req_opc, NOC0 external request address information req_addr, NOC0 external request data information req_data, NOC0 external request session identifier information req_tid, and NOC0 external request return information req_retmsg. Optionally, the third session request may include NOC1 internal network request operation type information network1_req_opc, NOC1 internal network request payload information network1_req_pld, NOC1 internal network request target node identification information network1_req_dstid, NOC1 internal network request source end identifier information network1_req_srcid, NOC1 internal network request session identification information network1_req_tid, and NOC1 internal network request return information network1_req_retmsg. Specifically, address decoder 4100 of IB2 305 decodes req_addr to obtain network1_req_dstid. Allocator 4200 of IB2 305 remaps req_tid to obtain network1_req_tid. Allocator 4200 also allocates an entry in second context table 309 to store req_tid, the mapping between req_tid and network1_req_tid, and req_retmsg, and obtains network1_req_retmsg based on the entry number. It should be noted that req_tid is the aforementioned second session identifier, network1_req_tid is the aforementioned third session identifier, req_retmsg is the aforementioned first context entry number, and network1_req_retmsg is the aforementioned second context entry number.

[0088] In one possible implementation, Figure 3BAs shown in the figure, NOC1 302 further includes NOC1 internal network 307; IB2 305 is further configured to send the third session request to NOC1 internal network 307; NOC1 internal network 307 is configured to: receive the third session request, respond to the third session request; generate a third session response based on the third session request, and send the third session response to IB2 305; the third session response includes the second context entry number. Specifically, NOC1 302 may also include NOC1 internal network 307. Upon receiving the second session request sent by NOC0 301, IB2 305 generates a third session request and sends the third session request to NOC1 internal network 307. Subsequently, NOC1 internal network 307 responds to the request, generates a third session response, and sends the third session response to IB2 305. The third session response includes the IB2 context entry number. This facilitates IB2 305 to retrieve the NOC0 internal network information previously stored in the IB2 context table based on the third session response after receiving it. For example, when the requesting device is a GPU, the GPU accesses the NOC1 302 network-on-chip (NOC) through NOC0 301 and reads data from NOC1 302. In this scenario, the NOC1 302 NOC is a register subsystem that stores multiple image data. NOC1 302 may also include a NOC1 internal network 307. After IB2 305 generates a third session request based on the second session request, it can send the third session request to the NOC1 internal network 307, instructing the NOC1 internal network 307 to read the image data from the corresponding registers. Upon receiving the third request, the NOC1 internal network 307 reads the image data from the corresponding registers and generates a third session response. Optionally, the third session response may include: NOC1 internal network response operation type information network1_rsp_opc; NOC1 internal network response payload information network1_rsp_pld; NOC1 internal network response target node identification information network1_rsp_dstid; NOC1 internal network response source end identifier information network1_rsp_srcid; and NOC1 internal network response return information network1_rsp_retmsg. It should be noted that network1_rsp_retmsg is the second context entry number mentioned above. This third session response is used to notify IB2 305 that the NOC1 internal network 307 has responded to the third session request.

[0089] In one possible implementation, IB2 305 is further configured to: receive the third session response; based on the second context entry number in the third session response, search the second context entry in the second context table based on the second context entry number to obtain the second session identifier and the first context entry number stored in the second context entry; and generate the first session response based on the second session identifier and the first context entry number. Specifically, after receiving the third session response sent by NOC1 internal network 307, IB2 305 may search the IB2 context table for previously stored NOC0 internal network information based on the IB2 context entry number in the third session response, where the NOC0 internal network information includes NOC0 external session identifier information, NOC1 internal session identifier information, NOC0 external session identifier information, and the IB1 context entry number. IB2 305 may then generate a first session response based on the NOC0 internal network information and send the first response to TB1 304 of NOC0 301. Therefore, based on the third session response, IB2 305 can retrieve NOC0's internal network information from the IB2 context table, avoiding the delay and unnecessary chip area overhead associated with storing and looking up NOC0's internal network information in TB1 304's context table. This simplifies TB1 304's internal structure while also improving the efficiency of signal protocol conversion during cross-NOC interconnection. For example, when the requesting device is a GPU, the GPU accesses NOC1 302's on-chip network through NOC0 301 and reads data from NOC1 302. In this scenario, NOC1 302's on-chip network is a register subsystem, which stores multiple image data. After NOC1's internal network 307 reads the data from the corresponding registers according to the request in the third session request, it sends a third session response to IB2 305. After receiving the third session response, IB2 305 generates a first session response. Optionally, the third session response may include NOC1 internal network response operation type information network1_rsp_opc, NOC1 internal network response payload information network1_rsp_pld, NOC1 internal network response target node identification information network1_rsp_dstid, NOC1 internal network response source terminal identifier information network1_rsp_srcid, and NOC1 internal network response return information network1_rsp_retmsg. Optionally, the first session response may include NOC0 external response operation type information rsp_opc, NOC0 external response data information rsp_data, NOC0 external response session identification information rsp_tid, and NOC0 external response rsp_retmsg return information. Figure 3FIn the example, the third session response enters IB2 305 via interface 4800. Indexing module 4400 in IB2 305 retrieves rsp_tid and rsp_retmsg information from second context table 309 based on network1_rsp_retmsg in the third session response, thereby generating a first response message. This first response message is used to notify TB1 304 that the second session request has been responded to by NOC1 302. It should be noted that req_tid is the aforementioned second session identifier, network1_req_tid is the aforementioned third session identifier, req_retmsg is the aforementioned first context entry number, and network1_req_retmsg is the aforementioned second context entry number.

[0090] The first target bridge TB1 304 is further configured to receive the first session response, unpack the second session identifier to obtain the IB1 number, and generate a second session response, which includes the IB1 number and the first context entry number. For example, when the requesting device is a GPU, the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data from NOC1 302. In this case, the on-chip network of NOC1 302 is a register subsystem, which stores multiple image data. After NOC1 302 reads the data from NOC1 internal network 307 according to the session request, IB2 305 of NOC1 302 sends the first session response to TB1 304 of NOC0 301. After receiving the first session response, TB1 304 generates a second session response. Optionally, the first session response includes NOC0 external response operation type information rsp_opc, NOC0 external response data information rsp_data, NOC0 external response session identification information rsp_tid, and NOC0 external response rsp_retmsg return information. Optionally, the second session response includes NOC0 internal network response operation type information network0_rsp_opc, NOC0 internal network response payload information network0_rsp_pld, NOC0 internal network response target node identification information network0_rsp_dstid, NOC0 internal network response source terminal identifier information network0_rsp_srcid, and NOC0 internal network response return information network0_rsp_retmsg. Specifically, as Figure 3DAs shown, after TB1304 receives the first session response through interface 3400, TB1304's depacketization module 3600 depackets rsp_tid to obtain network0_rsp_dstid information, thereby generating a second session response carrying network0_rsp_dstid and network0_rsp_retmsg. Optionally, network0_rsp_srcid is the number information of TB1304 on NOC0. In this case, network0_rsp_srcid can be a fixed value. It should be noted that rsp_tid is the aforementioned second session identifier, network0_rsp_dstid is the aforementioned IB1 number, and network0_rsp_retmsg is the aforementioned first context entry number.

[0091] In one possible implementation, TB1 304 is further configured to send the second session response to the NOC0 internal network 306; and NOC0 internal network 306 is further configured to receive the second session response and send the second session response to IB1 303 based on the number of IB1 303. Specifically, after TB1 304 of NOC0 301 receives the first session response sent by IB2 305 of NOC1 302, TB1 304 decompresses the second NOC0 external session identifier in the first session response to obtain the NOC0 internal session identifier and IB1 number information, and generates a second session response including the NOC0 internal session identifier, the IB1 number information, and the IB1 context entry number. Next, TB1 304 will send the second session response to the NOC0 internal network 306, and then the NOC0 internal network 306 will send the second session response to IB1 303 according to the IB1 number information, notifying IB1 303 that the request of the first session request has been responded to on NOC1 302. Therefore, the improved TB1 304 only needs to pack and unpack the information, avoiding the delay and unnecessary chip area overhead caused by storing and searching the NOC0 internal network information in the TB1 303 context table, thereby simplifying the internal structure of TB1303 while also improving the protocol conversion efficiency of signals during cross-NOC interconnection. For example, when the requesting device is a GPU, in the scenario where the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads the data in NOC1 302, the on-chip network of NOC1 302 is a register subsystem, in which multiple image data are stored. After TB1 304 generates the second session response, through Figure 3DInterface 3200 in the NOC0 internal network 306 sends a second session response. Optionally, the second session response includes NOC0 internal network response operation type information network0_rsp_opc, NOC0 internal network response payload information network0_rsp_pld, NOC0 internal network response target node identification information network0_rsp_dstid, NOC0 internal network response source end identifier information network0_rsp_srcid, and NOC0 internal network response return information network0_rsp_retmsg. NOC0 internal network 306 sends the second session response to the IB corresponding to network0_rsp_dstid based on network0_rsp_dstid to notify it that its request has been responded to by NOC1 302. It should be noted that network0_rsp_dstid is the number information of IB1 303 mentioned above.

[0092] In one possible implementation, IB1 303 is further configured to: receive the second session response; and, based on the first context entry number in the second ring signal, search the first context table for a mapping between the requesting device session request identifier and the first session identifier; the requesting device session request identifier corresponds to a target requesting device; and send a fourth session response to the target requesting device based on the second session response; the first session response being used to notify the requesting device that the request has been completed. Specifically, upon receiving the second session response from NOC0 internal network 306, IB1 303 of NOC0 301 searches the IB1 context table for a previously recorded mapping between the requesting device session request identifier and the NOC0 internal session identifier, based on the IB1 context entry number in the second session response. IB1 303 can then send the fourth session response to the corresponding requesting device based on the second session response, notifying the requesting device that its request has been responded to by NOC1 302. By implementing the embodiments provided by the present invention, the delay and unnecessary chip area overhead caused by storing and searching NOC0 internal network information in the context table of TB1 304 are avoided. This simplifies the internal structure of TB1 304 while also improving the efficiency of signal protocol conversion during cross-NOC interconnection, enabling NOC0 303 to more quickly access NOC1 304. For example, when the requesting device is a GPU, and the GPU accesses the on-chip network of NOC1 302 through NOC0 301 and reads data from NOC1 302, the on-chip network of NOC1 302 is a register subsystem, which stores multiple image data. When IB1 receives the second session response, optionally, the second session response includes NOC0 internal network response operation type information network0_rsp_opc, NOC0 internal network response payload information network0_rsp_pld, NOC0 internal network response target node identification information network0_rsp_dstid, NOC0 internal network response source terminal identifier information network0_rsp_srcid, NOC0 internal network response return information network0_rsp_retmsg, such as Figure 3C As shown, the index module 1400 of IB1 303 in the figure can query the previous request record in the first context table 308 according to network0_rsp_retmsg, so as to facilitate the subsequent notification of the requesting device that the corresponding session request has been responded to in the NOC1 internal network 307.

[0093] In one possible implementation, the first initial bridge IB1 is specifically configured to: send multiple session requests in a target order, wherein the multiple session requests include the first session request; receive multiple session responses in the target order, wherein the session responses include the second session response; and send processed session responses to multiple requesting devices based on the multiple session responses in the target order; wherein the multiple requesting devices include the target requesting device, and one of the processed session responses is the fourth session response. Specifically, when IB1 receives multiple initial request sessions, and these initial session request identifiers are the same, then when converting them into multiple first request sessions, IB1 requires that the internal session request identifiers of NOC0 are the same, and requires NOC0 and NOC1 to ensure that the same session request identifiers arrive at the internal network of NOC1 in the target order, so that after the requests are responded to in the internal network of NOC1, the response sessions are sent to IB1 in the above-mentioned target order. For example, IB1 receives 100 request sessions sent from the master device, and these initial session request identifiers are the same. After IB1 receives the 100 request sessions, it should be noted that when IB1 converts these 100 initial session requests into multiple first request sessions, it requires that the internal session request identifiers of NOC0 are the same. Next, IB1 will send the request sessions to NOC1 in the request order of these 100 request sessions. When the requests are responded to on NOC1, the corresponding response sessions will also be received in the initial request order of these 100 request sessions.

[0094] Therefore, in an embodiment of the present invention, by improving TB1 304 in NOC0, the aforementioned second session request and first session response carry NOC0 internal network information, thereby simplifying the internal structure of TB1 304 and improving the efficiency of signal protocol conversion during cross-NOC interconnection. Specifically, after TB1 304 receives the first session request from IB1 303, because the first session request includes NOC0 internal network information, where the NOC internal network information includes NOC0 internal session identification information, the IB1 context entry number used to record the mapping relationship between the requesting device and the NOC0 internal session identification information in IB1 303, and the IB1 number information, TB1 304 packages the NOC0 internal session identification information and the IB1 number information to obtain second NOC0 external session identification information. TB1 304 then sends a second session request to IB2 305 of NOC1 302. The second session request includes the second NOC0 external session identification information and the IB1 context entry number, thereby carrying the NOC0 internal network information. Next, after receiving the second session request, IB2 305 generates a first session response for the second session request and then sends the first session response to TB1 304. After receiving the first session response, TB1 304 unpacks the second NOC0 external session identifier to obtain the NOC0 internal session identifier and IB1 number information, because the first session response includes NOC0 internal network information, which includes the second NOC0 external session identifier and the IB1 context entry number. Then, TB1 304 generates a second session response based on the NOC0 internal session identifier, the IB1 number information, and the IB1 context entry number. By implementing this embodiment of the present invention, TB1 304 is improved so that the second session request and the first session response carry the NOC0 internal network information. This avoids the delay and unnecessary chip area overhead caused by storing and searching the NOC0 internal network information in TB1 304's context table. This simplifies TB1 304's internal structure and improves the signal protocol conversion efficiency during cross-NOC interconnection.

[0095] The above describes in detail the apparatus according to the embodiment of the present invention. The following provides related methods according to the embodiment of the present invention.

[0096] An embodiment of the present invention provides a system-on-chip (SoC) communication method, characterized in that the SoC includes a first network-on-chip (NOC0) and a second network-on-chip (NOC1); the NOC0 includes a first initial bridge (IB1) and a first target bridge (TB1), and the NOC1 includes a second initial bridge. The method includes: the first initial bridge (IB1) sending a first session request, the first session request including a first session identifier, a first context entry number, and a number of the IB1; the first target bridge (TB1) receiving the first session request; generating a second session request based on the first session request, and sending the second session request to the IB2; the second session request including a second session identifier and the first context entry number; the second session identifier being generated by packaging the first session identifier and the IB1 number; the second initial bridge (IB2) receiving the second session request; generating a first session response based on the second session request, and sending the first session response to the TB1; the first session response including the second session identifier and the first context entry number; the first target bridge (TB1) receiving the first session response; unpacking the second session identifier to obtain the IB1 number, and generating a second session response, the second session response including the IB1 number and the first context entry number.

[0097] In one possible implementation, the NOC0 also includes a NOC0 internal network; the method also includes: the NOC0 internal network receives the first session request sent by the IB1, the first session request also including target node identification information; based on the target node identification information, determining the TB1 that matches the target node identification information; and sending the first session request to the TB1.

[0098] In one possible implementation, the IB1 stores a first context table, which includes multiple IB1 context entries; the method also includes: the IB1 stores a mapping relationship between the requesting device session request identifier and the first session identifier in a first context entry among the multiple IB1 context entries; the first context entry is numbered as the first context entry number.

[0099] In one possible implementation, the IB2 packet stores a second context table, wherein the second context table includes multiple IB2 context entries. The method further includes: remapping the IB2 according to the second session identifier to obtain a third session identifier; storing a mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number in a second context entry among the multiple IB2 context entries; the second context entry number is the second context entry number; and generating a third session request; the third session request including the IB2 number, the third session identifier, and the second context entry number.

[0100] In one possible implementation, the NOC1 also includes the NOC1 internal network; the method further includes: the IB2 sending the third session request to the NOC1 internal network; the NOC1 internal network receiving the third session request and responding to the third session request; generating a third session response based on the third session request, and sending the third session response to the IB2; the third session response including the second context entry number.

[0101] In one possible implementation, the method further includes: the IB2 receiving the third session response, searching the second context entry in the second context table according to the second context entry number in the third session response, obtaining the second session identifier and the first context entry number stored in the second context entry; and generating the first session response based on the second session identifier and the first context entry number.

[0102] In a possible implementation, the method further includes: the TB1 sending the second session response to the NOC0 internal network; the NOC0 internal network receiving the second session response and sending the second session response to the IB1 according to the number of the IB1.

[0103] In one possible implementation, the method further includes: the IB1 receiving the second session response, and searching the first context table for a mapping relationship between the requesting device session request identifier and the first session identifier based on the first context entry number in the second ring signal; and sending a fourth session response to the requesting device based on the second session response; the first session response being used to notify the requesting device that the request has been completed.

[0104] It should be noted that the implementation of each step in the system-on-chip communication method described in the embodiment of the present invention is completed in the pattern spot conversion device in the device embodiment, and will not be repeated here.

[0105] The present application provides a computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements the method described in any one of the above claims.

[0106] The present application provides a computer program, characterized in that the computer-readable program includes instructions, and when the computer program is executed by a processor, the processor is caused to perform the method according to any one of the above claims.

[0107] The present application provides a network-on-chip interface device, characterized in that the system-on-chip includes a first network-on-chip (NOC0) and a second network-on-chip (NOC1); the NOC0 includes a first initial bridge (IB1) and a first target bridge (TB1), and the NOC1 includes a second initial bridge (IB2); the first initial bridge (IB1) is configured to send a first session request, the first session request including a first session identifier, a first context entry number, and a number of the IB1; the first target bridge (TB1) is configured to receive the first session request; generate a second session request based on the first session request, and send the second session request to the IB2; the second session request includes a second session identifier and the first context entry number; the second session identifier is generated by packaging the first session identifier and the IB1 number; the second initial bridge (IB2) is configured to receive the second session request; generate a first session response based on the second session request, and send the first session response to the TB1; the first session response includes the second session identifier and the first context entry number; the first target bridge (TB1) is further configured to receive the first session response, unpack the second session identifier to obtain the IB1 number, and generate a second session response, the second session response including the IB1 number and the first context entry number.

[0108] An embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium may store a program, and when the program is executed by a multi-core processor, the program includes part or all of the steps of any one of the above method embodiments.

[0109] An embodiment of the present invention further provides a computer program, which includes instructions. When the computer program is executed by a multi-core processor, the multi-core processor can execute part or all of the steps of any processing method of the multi-core processor.

[0110] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0111] It should be noted that for the aforementioned method embodiments, for simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this application.

[0112] In the several embodiments provided in this application, it should be understood that the disclosed devices can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the above-mentioned units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical or other forms.

[0113] The units described above as separate components may or may not be physically separate, and 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 these units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0114] In addition, the functional units in the embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0115] If the above-mentioned integrated unit is implemented in the form of 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 the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server or a network device, etc., specifically a processor in a computer device) to execute all or part of the steps of the above-mentioned methods of each embodiment of the present application. Among them, the aforementioned storage medium may include: U disk, mobile hard disk, magnetic disk, optical disk, read-only memory (Read-Only Memory, abbreviated: ROM) or random access memory (Random Access Memory, abbreviated: RAM) and other media that can store program codes.

[0116] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A system on chip, characterized in that: The system on chip includes a first network on chip NOC0 and a second network on chip NOC1; the NOC0 includes a first initial bridge IB1 and a first target bridge TB1, and the NOC1 includes a second initial bridge IB2; The first initial bridge IB1 is configured to send a first session request, where the first session request includes a first session identifier, a first context entry number, and a number of the IB1; The first target bridge TB1 is configured to receive the first session request; generating a second session request based on the first session request, and sending the second session request to the IB2; The second session request includes a second session identifier and the first context entry number; The second session identifier is generated by packaging the first session identifier and the number of IB1; The second initial bridge IB2 is configured to receive the second session request; generating a first session response based on the second session request, and sending the first session response to the TB1; the first session response including the second session identifier and the first context entry number; The first target bridge TB1 is further configured to receive the first session response; unpack the second session identifier to obtain the number of the IB1, and generate a second session response, where the second session response includes the number of the IB1 and the first context entry number.

2. The system on chip according to claim 1, wherein: The NOC0 also includes a NOC0 internal network; the NOC0 internal network is used to: receiving the first session request sent by the IB1, where the first session request further includes target node identification information; Determining, according to the target node identification information, the TB1 that matches the target node identification information; The first session request is sent to the TB1.

3. The system on chip according to claim 1, wherein: The IB1 stores a first context table including a plurality of IB1 context entries. The IB1 is further configured to: A mapping relationship between the requesting device session request identifier and the first session identifier is stored in a first context entry among the multiple IB1 context entries; the number of the first context entry is the first context entry number.

4. The system on chip according to any one of claims 1 to 3, wherein: The IB2 packet stores a second context table, which includes a plurality of IB2 context entries; the IB2 is further used to: Remapping according to the second session identifier to obtain a third session identifier; A mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number are stored in a second context entry among the multiple IB2 context entries; the second context entry number is the second context entry number; a third session request is generated; the third session request includes the IB2 number, the third session identifier, and the second context entry number.

5. The system on chip according to claim 4, wherein: The NOC1 also includes the NOC1 internal network; the IB2 is further configured to send the third session request to the NOC1 internal network; The NOC1 internal network is used to: receiving the third session request, and responding to the third session request; A third session response is generated based on the third session request, and the third session response is sent to the IB2; the third session response includes the second context entry number.

6. The system on chip according to claim 5, wherein: The IB2 is also used for: receiving the third session response, searching the second context entry in the second context table according to the second context entry number in the third session response, and obtaining the second session identifier and the first context entry number stored in the second context entry; The first session response is generated based on the second session identifier and the first context entry number.

7. The system on chip according to claim 6, wherein: The TB1 is further configured to send the second session response to the NOC0 internal network; The NOC0 internal network is also used for: The second session response is received, and the second session response is sent to the IB1 according to the number of the IB1.

8. The system on chip according to claim 7, wherein: The IB1 is also used to: receiving the second session response, and searching, in a first context table, for a mapping relationship between a requesting device session request identifier and the first session identifier according to the first context entry number in the second session response; The requesting device session request identifier corresponds to the target requesting device; sending a fourth session response to the target requesting device based on the second session response; The first session response is used to notify the requesting device that the request has been completed.

9. The system on chip according to claim 8, wherein: The first initial bridge IB1 is specifically used for: sending a plurality of session requests in a target order, the plurality of session requests including the first session request; receiving a plurality of session responses in the target order, the session responses including the second session response; The processed session responses are respectively sent to a plurality of requesting devices based on the plurality of session responses in the target order; the plurality of requesting devices include the target requesting device, and one of the processed session responses is the fourth session response.

10. A system-on-chip communication method, characterized in that: The system on chip includes a first network on chip NOC0 and a second network on chip NOC1; the NOC0 includes a first initial bridge IB1 and a first target bridge TB1, and the NOC1 includes a second initial bridge; the method includes: The first initial bridge IB1 sends a first session request, where the first session request includes a first session identifier, a first context entry number, and the number of the IB1; The first target bridge TB1 receives the first session request; generates a second session request based on the first session request, and sends the second session request to the IB2; the second session request includes a second session identifier and the first context entry number; the second session identifier is generated by packaging the first session identifier and the number of the IB1; The second initial bridge IB2 receives the second session request; generates a first session response based on the second session request, and sends the first session response to the TB1; the first session response includes the second session identifier and the first context entry number; The first target bridge TB1 receives the first session response; unpacks the second session identifier to obtain the number of the IB1, and generates a second session response, where the second session response includes the number of the IB1 and the first context entry number.

11. The method according to claim 10, characterized in that The NOC0 also includes a NOC0 internal network; the method further includes: The NOC0 internal network receives the first session request sent by the IB1, wherein the first session request further includes target node identification information; determines the TB1 matching the target node identification information according to the target node identification information; and sends the first session request to the TB1.

12. The method according to claim 10, characterized in that The IB1 stores a first context table, wherein the first context table includes a plurality of IB1 context entries; the method further includes: The IB1 stores a mapping relationship between the requesting device identifier and the first session identifier in a first context entry among the multiple IB1 context entries; the number of the first context entry is the first context entry number.

13. The method according to any one of claims 10 to 12, characterized in that: The IB2 packet stores a second context table, wherein the second context table includes a plurality of IB2 context entries; The method further comprises: The IB2 remaps the second session identifier to obtain a third session identifier; stores a mapping relationship between the second session identifier and the third session identifier, the second session identifier, and the first context entry number in a second context entry among the multiple IB2 context entries; the second context entry is numbered as the second context entry number; and generates a third session request; the third session request includes the IB2 number, the third session identifier, and the second context entry number.

14. The method according to claim 13, characterized in that The NOC1 further includes the NOC1 internal network; and the method further includes: The IB2 sends the third session request to the NOC1 internal network; The NOC1 internal network receives the third session request, responds to the third session request, generates a third session response based on the third session request, and sends the third session response to the IB2; the third session response includes the second context entry number.

15. The method according to claim 14, characterized in that The method further comprises: The IB2 receives the third session response, searches the second context entry in the second context table according to the second context entry number in the third session response, obtains the second session identifier and the first context entry number stored in the second context entry, and generates the first session response based on the second session identifier and the first context entry number.

16. The method according to claim 15, characterized in that The method further comprises: The TB1 sends the second session response to the NOC0 internal network; The NOC0 internal network receives the second session response and sends the second session response to the IB1 according to the number of the IB1.

17. The method according to claim 16, characterized in that The method further comprises: The IB1 receives the second session response, and searches, in a first context table, for a mapping relationship between a requesting device session request identifier and the first session identifier based on the first context entry number in the second session response; the requesting device session request identifier corresponds to a target requesting device; and sends a fourth session response to the target requesting device based on the second session response; the first session response is used to notify the requesting device that the request has been completed.

18. The method according to claim 17, characterized in that The method comprises: The first initial bridge IB1 sends multiple session requests in a target order, the multiple session requests including the first session request; receives multiple session responses in the target order, the session responses including the second session response; and sends processed session responses to multiple requesting devices based on the multiple session responses in the target order; the multiple requesting devices include the target requesting device, and one of the processed session responses is the fourth session response.

19. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the method according to any one of claims 10 to 18.

20. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the processor is caused to perform the method according to any one of claims 10 to 18.

Citation Information

Patent Citations

  • Path creation method and device for network-on-chip and electronic equipment

    CN111382115A

  • Network on chip switch interconnect

    US10243882B1