Data transmission method and system and vehicle

By dynamically identifying and framing the second channel data in the historical data frame during the AXI to CXS protocol conversion process, combining data requests in the initial data frame, the bandwidth resource utilization of FLIT frames is optimized, and the problem of low bandwidth resource utilization in the prior art is solved, and more efficient data transmission is achieved.

CN120166072APending Publication Date: 2025-06-17GUANGZHOU XIAOPENG MOTORS TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510295621.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-12
Publication Date
2025-06-17

AI Technical Summary

Technical Problem

In the conversion process of the AXI protocol to the CXS protocol in the prior art, the transmission of FLIT frames follows the principle of strict separation of channel data types, resulting in the failure to maximize the utilization of bandwidth resources, resulting in low bandwidth resource utilization of interfaces.

Method used

During the data frame transmission process, the second channel data other than the first channel data in the target signal channel is determined based on the first channel data in the historical data frame, and the multiple target channel data to be framed are determined based on the second channel data and the initial data frame. According to the channel type of the target channel data, the target frame priority is determined, and the target channel data is framed to the initial data frame according to the priority and channel type to form the target data frame, and finally transmit it using the interface signal of the target data frame.

Benefits of technology

By dynamically identifying and framing data from different signal channels, the bandwidth resource utilization of FLIT frames is optimized, the bandwidth resource utilization of the interface is improved, data transmission delay is reduced, and hardware configuration requirements are reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120166072A_ABST
    Figure CN120166072A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method and system and a vehicle. The method comprises the steps that based on at least one kind of first channel data in a historical data frame, at least one kind of second channel data is determined, the first channel data is from a target signal channel, and the second channel data is channel data, except the first channel data, in the target signal channel; based on the second channel data and the initial data frame, multiple target channel data to be framed are determined, the initial data frame is located after the historical data frame, and the multiple target channel data comprise the second channel data; determining a target framing priority of the target channel data based on a channel type corresponding to the target channel data; according to the target framing priority and the channel type, framing the multiple target channel data to the initial data frame to obtain a target data frame; and transmitting the target data frame by using the interface signal corresponding to the target data frame. The technical problem that the bandwidth resource utilization rate of the interface is low is solved or partially solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data transmission, and in particular, to a data transmission method, system, and vehicle. Background Art

[0002] Currently, with the continuous evolution of chip packaging technology, especially the increasing demand for high-speed interconnection between Chiplets or between chips (Chip2Chip), efficient chip-level communication interfaces have become a research hotspot. The Advanced eXtensible Interface (AXI) 4.0 protocol of the Advanced Microcontroller Bus ArCHitecture (AMBA), which is abbreviated as AXI, is the mainstream standard for internal data transmission in chips and provides a flexible and powerful method to meet the requirements of high-speed data exchange.

[0003] However, when it is necessary to convert AXI protocol data into the Chiplet eXCHange Protocol (CXS) suitable for die-to-die or Chip2Chip high-speed communication, the limitations of related technologies become apparent. Specifically, in the AXI-to-CXS (AXI2CXS) conversion scheme in related technologies, data transmission follows a strategy of strict separation based on channel types, that is, the data transmission of the read data channel, write data channel, write address command channel, read address command channel, and write response channel are respectively independently packed into Frame Level Interface Transfer (FLIT) frames for transmission. Even at a certain point in time, if there is still unused space in a certain FLIT frame, it will not be used to transmit data of other channels.

[0004] The above method is mainly to maintain the independence and timing consistency of channel data. Since the FLIT frame is the basic unit for data transmission in the CXS protocol and the number of bits transmitted by each FLIT frame is limited. However, the transmission of FLIT frames in the above method follows the principle of strict separation of channel data types, and this static and inflexible transmission method results in bandwidth resource loss between FLIT frames, that is, the actual available bandwidth resources between connected channels are not maximally utilized. Therefore, there is still a technical problem of low bandwidth resource utilization rate of the interface.

[0005] In view of the above problems, no effective solution has been proposed yet. Summary of the Invention

[0006] Embodiments of the present invention provide a data transmission method, system and vehicle to at least solve or partially solve the technical problem of low utilization rate of bandwidth resources of an interface.

[0007] According to one aspect of the embodiments of the present invention, a data transmission method is provided, and the method may include: determining at least one type of second channel data based on at least one type of first channel data in a historical data frame, where the first channel data comes from a target signal channel, and the second channel data is the channel data in the target signal channel other than the first channel data; determining multiple types of target channel data to be framed based on the second channel data and an initial data frame, where the initial data frame is located after the historical data frame, and the multiple types of target channel data include the second channel data; determining a target framing priority of the target channel data based on the channel type corresponding to the target channel data, where the target framing priority is used to represent the target sequence of framing the target channel data into the initial data frame; framing the multiple types of target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame; and transmitting the target data frame using the interface signal corresponding to the target data frame.

[0008] Optionally, determining the target framing priority of the target channel data based on the channel type corresponding to the target channel data includes: determining an initial framing priority corresponding to the channel type, where different channel types correspond to different initial framing priorities, and the initial framing priority is used to represent the initial sequence of framing the target channel data into the initial data frame; and adjusting the initial framing priority according to the target resource amount required by the target channel data to obtain the target framing priority, where the target framing priority has a positive correlation with the target resource amount.

[0009] Optionally, framing the multiple types of target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame includes: determining the framing position corresponding to the target channel data in the initial data frame based on the target framing priority, the channel type, and the target resource amount required by the target channel data; and respectively framing the multiple types of target channel data in the initial data frame according to the framing positions corresponding to the multiple types of target channel data to obtain the target data frame.

[0010] Optionally, based on the target group frame priority, channel type, and the amount of target resources required by the target channel data, determine the corresponding group frame position of the target channel data in the initial data frame, including: determining the upper-level target channel data with the target channel data among multiple target channel data according to the target group frame priority of the target channel data, where the target group frame priority of the upper-level target channel data is before the target group frame priority of the target channel data; determining the corresponding group frame position of the target channel data in the initial data frame based on the corresponding group frame position of the upper-level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the amount of target resources required by the target channel data.

[0011] Optionally, the amount of target resources includes data storage units. The identification information of the channel type corresponding to the target channel data occupies a first number of data storage units in the initial data frame, and the target channel data occupies a second number of data storage units in the initial data frame. Determining the corresponding group frame position of the target channel data in the initial data frame based on the corresponding group frame position of the upper-level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the amount of target resources required by the target channel data includes: offsetting the corresponding group frame position of the upper-level target channel data in the initial data frame by the first number of data storage units and the second number of data storage units to obtain the corresponding group frame position of the target channel data in the initial data frame.

[0012] Optionally, in the initial data frame, group multiple target channel data according to the corresponding group frame positions of the multiple target channel data respectively to obtain a target data frame, including: in the initial data frame, sequentially group multiple target channel data according to the corresponding group frame positions of the multiple target channel data; in response to at least one data storage unit being in an idle state in the initial data frame after grouping, perform an occupancy operation on the data storage unit to obtain a target data frame.

[0013] Optionally, based on the second channel data and the initial data frame, determine multiple target channel data to be grouped, including: determining the amount of target resources required by the second channel data in the initial data frame; determining the remaining resources except the target resources in the resource amount of the initial data frame; determining multiple target channel data based on the remaining resources and the second channel data.

[0014] Optionally, based on the remaining resource amount and the second channel data, multiple types of target channel data are determined, including: in response to a channel request, detecting multiple target signal channels respectively to obtain at least one third channel data whose total resource amount meets the remaining resource amount, where the third channel data is at least part of the channel data in the corresponding target signal channel, and the amount of channel data in the target signal channel remains unchanged; determining at least one third channel data and the second channel data as multiple types of target channel data.

[0015] Optionally, based on at least one first channel data in a historical data frame, at least one second channel data is determined, including: obtaining from a buffer at least one second channel data determined based on at least one first channel data in the historical data frame; the method further includes: in response to the third channel data being part of the channel data in the corresponding target signal channel, storing the channel data in the target signal channel other than the third channel data into the buffer.

[0016] Optionally, the target data frame is transmitted by using the interface signal corresponding to the target data frame, including: transmitting the target data frame to a receiving end by using the interface signal corresponding to the target data frame, where the target data frame is unpacked by the receiving end according to the channel type corresponding to the target channel data, the target framing priority of the target channel data, and the target resource amount required by the target channel data.

[0017] Optionally, the first channel data and the second channel data comply with the Advanced eXtensible Interface (AXI) protocol, and the interface signal complies with the Chip eXchange Protocol (CXS).

[0018] According to another aspect of the embodiments of the present invention, a data transmission system is further provided. The system may include: a processor, configured to determine at least one second channel data based on at least one first channel data in a historical data frame, where the first channel data comes from a target signal channel, and the second channel data is the channel data in the target signal channel other than the first channel data; determining multiple types of target channel data to be framed based on the second channel data and an initial data frame, where the initial data frame is located after the historical data frame, and the multiple types of target channel data include the second channel data; a framing module, configured to determine the target framing priority of the target channel data based on the channel type corresponding to the target channel data, where the target framing priority is used to represent the target order of framing the target channel data into the initial data frame; framing the multiple types of target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame; a transmission module, configured to transmit the target data frame by using the interface signal corresponding to the target data frame.

[0019] According to another aspect of the embodiments of the present invention, an electronic device is further provided, including: a memory storing an executable program; a processor for running the program, wherein when the program runs, the methods in the various embodiments of the present invention are executed.

[0020] According to another aspect of the embodiments of the present invention, a computer-readable storage medium is further provided. The computer-readable storage medium includes a stored executable program, wherein when the executable program runs, the device where the computer-readable storage medium is located is controlled to execute the methods in the various embodiments of the present invention.

[0021] According to another aspect of the embodiments of the present invention, a computer program product is further provided, including a computer program, wherein when the computer program is executed by a processor, the methods in the various embodiments of the present invention are implemented.

[0022] According to another aspect of the embodiments of the present invention, a computer program product is further provided, including a non-volatile computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, the methods in the various embodiments of the present invention are implemented.

[0023] According to another aspect of the embodiments of the present invention, a computer program is further provided, wherein when the computer program is executed by a processor, the methods in the various embodiments of the present invention are implemented.

[0024] According to another aspect of the embodiments of the present invention, a vehicle is further provided, including a memory and a processor, the memory storing an executable program, and the processor for running the program, wherein when the program runs, the methods in the various embodiments of the present invention are executed.

[0025] In the embodiments of the present invention, during the data frame transmission process, based on the first channel data in the historical data frame, the second channel data other than the first channel data in the target signal channel can be determined. Based on the second channel data and the initial data frame after the historical data frame, various target channel data including the second channel data to be framed can be determined. Through the channel type corresponding to the target channel data, the target framing priority of the target channel data when framing to the initial data frame can be determined, and thus the determined target channel data can be framed into the initial data frame according to the target framing priority and the channel type to obtain a target data frame. The target data frame can be transmitted by using the interface signal corresponding to the target data frame.

[0026] In the embodiments of the present invention, during the process of data frame transmission, the second-channel data (incomplete transmitted channel data) in the historical data frame (previous data frame) can be dynamically identified for cross-data-frame transmission in the initial data frame (current data frame), effectively reducing the idle time of each target signal channel in the data frame during the data transmission process, so as to improve the utilization rate of bandwidth resources. It can also intelligently select which signal channel data needs to be framed preferentially according to the channel types of different target signal channels, achieving dynamic adjustment of the framing order, thereby preferentially transmitting high-priority data within the limited bandwidth resources to ensure the timely transmission of data. Through the above method, the fixed time-sharing transmission of data in each target signal channel is avoided, but as much data as possible is transmitted in the current data frame to reduce the empty load or low load rate of the current data frame, achieving the technical effect of improving the utilization rate of the bandwidth resources of the interface and solving the technical problem of low utilization rate of the bandwidth resources of the interface. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] The drawings described herein are used to provide a further understanding of the present invention, form a part of this application, and the schematic embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation to the present invention. In the drawings:

[0028] Figure 1 is a flowchart of a data transmission method shown according to an embodiment of the present invention;

[0029] Figure 2 is a schematic diagram of a master-slave chip / die communication architecture for general die interconnect in the related art;

[0030] Figure 3 is a schematic diagram of an AXI to CXS protocol conversion data processing architecture in the related art;

[0031] Figure 4 is a schematic diagram of an implementation structure of AXI to CXS protocol conversion in the related art;

[0032] Figure 5 is a schematic diagram of a data transmission process in the related art;

[0033] Figure 6 is a schematic diagram of a data transmission process in another related art;

[0034] Figure 7 is a schematic diagram of an implementation system of AXI to CXS protocol shown according to an embodiment of the present invention;

[0035] Figure 8 is a schematic diagram of an interface signal definition format of AXI256 shown according to an embodiment of the present invention;

[0036] FIG. 9(a) is a schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0037] FIG. 9(b) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0038] FIG. 9(c) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0039] FIG. 9(d) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0040] Figure 10 is a schematic diagram showing a data transmission process according to an embodiment of the present invention;

[0041] FIG. 11(a) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0042] FIG. 11(b) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0043] FIG. 11(c) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0044] FIG. 11(d) is another schematic diagram showing a combination of data of different signal channels occurring within the same frame according to an embodiment of the present invention;

[0045] Figure 12 is a schematic diagram of a multi-chip package module according to an embodiment of the present invention;

[0046] Figure 13 is a system block diagram of a data transmission system according to an embodiment of the present invention;

[0047] Figure 14 is a structural block diagram of a data transmission device according to an embodiment of the present invention;

[0048] Figure 15 is a structural block diagram of an autonomous driving vehicle according to an embodiment of the present invention. Detailed implementation manners

[0049] To enable those skilled in the art to better understand the solution of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the scope of protection of the present invention.

[0050] It should be noted that the terms "first", "second", etc. in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present invention described herein can be implemented in an order different from those illustrated or described herein. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0051] According to an embodiment of the present invention, an embodiment of a data transmission method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. And although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that here.

[0052] Embodiments of the present application provide a data transmission method. This method can be used to provide data transmission services for vehicles in a preset application scenario. The above-mentioned preset application scenario may include the following scenarios in the vehicle field: commuting autonomous driving scenario, artificial intelligence (AI) driving scenario for household cars, automatic parking assist (APA) scenario (such as memory parking for self-owned parking spaces in the garage, intelligent parking for designated parking spaces in the parking lot, etc.), navigation guided pilot (NGP) scenario in urban areas or highway areas. In addition, the above-mentioned preset application scenario may also include, but is not limited to: the autonomous driving scenario that requires the use of augmented reality navigation function for intelligent driving trucks or driverless trucks in the logistics transportation field, the autonomous driving scenario that requires the use of augmented reality navigation function for autonomous driving agricultural vehicles in the agricultural machinery field, the autonomous driving scenario that requires the use of augmented reality navigation function for unmanned aerial vehicles, and the autonomous driving scenario that requires the use of augmented reality navigation function for intelligent robots (such as cleaning robots, service robots, delivery robots, etc.).

[0053] When the above-mentioned preset application scenario is a scenario in other fields except the vehicle field, those skilled in the art should be able to understand that the vehicle in the above-mentioned data transmission method can be replaced with other objects (such as agricultural machinery, unmanned aerial vehicles, robots, etc.). Accordingly, providing data transmission services for vehicles is replaced with providing data transmission services for other objects. On this basis, in the embodiments of the present application, taking the vehicle field as an example, the specific implementation manners of the above-mentioned information interaction data transmission method for vehicles are described by way of example.

[0054] Figure 1 is a flowchart of a data transmission method shown according to an embodiment of the present invention, as Figure 1 shown, the method may include the following steps:

[0055] Step S102, determine at least one second channel data based on at least one first channel data in the historical data frame.

[0056] In the technical solution provided in step S102 of the present invention above, the first channel data comes from the target signal channel. The second channel data is the channel data in the target signal channel except the first channel data.

[0057] In this embodiment, the historical data frame can be the previous data frame of the current data frame. For example, it can be the previous FLIT frame, also known as the historical FLIT frame. By analyzing the data in each signal channel of the previous FLIT frame, especially paying attention to which signal channel data has been used and which signal channel still has remaining data that has not been framed and transmitted. The target signal channels can be signal channels of types such as read data channel (R Channel, abbreviated as R CH or R), write data channel (W Channel, abbreviated as W CH or W), write address command channel (AW Channel, abbreviated as AW CH or AW), read address command channel (AR Channel, abbreviated as AR CH or AR), and write response channel (B Channel, abbreviated as B CH or B). It should be noted that the above-mentioned multiple different types of signal channels are only examples of multiple signal channels in the embodiments of the present invention for the AXI protocol and the CXS protocol, and no specific limitations are made here.

[0058] This embodiment can analyze the first channel data in the historical data frame to obtain which channel data has been transmitted in the historical data frame and the actual usage of the data in each signal channel. For example, how many bit widths or beacons are occupied. Different target signal channels can be used to transmit different types of data. The second channel data can be the channel data in the target signal channel of the historical data frame other than the first channel data, that is, it can be the data in the signal channel (Channel, abbreviated as CH) that has not been framed in the historical data frame of the current data frame. In summary, the goal of determining the second channel data in this embodiment is to find the channel data that can be merged with the data requested to be transmitted in the current data frame to make full use of the bandwidth resources of the FLIT frame.

[0059] In this embodiment, at least one type of second channel data can be determined based on at least one type of first channel data in the historical data frame. According to the transmission situation of the first channel data in the historical data frame, it can be determined which channel data in the current data frame has not been used, that is, through the first channel data, the data that has not been framed in the historical data frame is determined, so as to obtain the second channel data.

[0060] It should be noted that the above method is not limited to specific signal channels. Any channel data that has not been fully transmitted in the historical data frame can be determined as the second channel data, including but not limited to the data in the R, W, AW, AR, or B channels.

[0061] In the related art, the data of each signal channel is framed independently. Even if the FLIT frame is not full, the data of other signal channels will not be filled in, resulting in waste of bandwidth resources and storage pressure. However, in the embodiments of the present invention, by analyzing the actual transmission situation of the data (channel data) of various signal channels in the historical data frame, the data of the used signal channels, that is, the first channel data, can be identified from the historical data frame. By reviewing the usage of the historical data frame, it can be determined which signal channel data has been transmitted in the historical data frame and which signal channel data has not been completely transmitted. The second channel data is derived from the data that has not been completely transmitted in various signal channels in the historical data frame. For example, if the data of AW in the previous FLIT frame has been completely transmitted, but there is still remaining data in W, then the remaining data in W can be determined as the second channel data. The purpose of the above method is to identify and prepare the data that has not fully utilized the bandwidth resources in the historical data frame for transmission in the data frame after the historical data frame, so as to better utilize the actually available bandwidth resources in each signal channel of the data frame.

[0062] In summary, in the embodiments of the present invention, by allowing the first channel data and the second channel data to share the remaining space of the FLIT frame, the dynamic allocation of bandwidth resources is achieved, thereby improving the utilization rate of the FLIT frame. For example, if the data of the AWChannel only occupies part of the space in the current data frame, then the remaining space in the current data frame can be filled with the second channel data of signal channels such as the WChannel or the R Channel for data transmission.

[0063] Step S104, based on the second channel data and the initial data frame, determine multiple target channel data to be framed.

[0064] In the technical solution provided in step S104 of the present invention above, the initial data frame is located after the historical data frame. The multiple target channel data includes the second channel data.

[0065] In this embodiment, the initial data frame is located after the historical data frame and can also be referred to as the current data frame. For example, it can be the currently processed FLIT frame (current FLIT frame). The initial data frame can provide the first channel data for the next data frame after the initial data frame, that is, provide the data request and the status of the bandwidth resources to be based on for the framing operation to be performed on the next data frame after the initial data frame. The multiple target channel data refers to the data of multiple different types from the AXI protocol to be transmitted in the current FLIT frame, including the second channel data and the data in the corresponding channels generated by the data request of the current data frame, where the data request can be used to indicate the data that needs to be transmitted in the initial data frame.

[0066] In this embodiment, after determining the second-channel data based on the first-channel data in the historical data frame, multiple target-channel data to be framed can be determined based on the second-channel data and the initial data frame. That is, by integrating the data requests of the initial data frame and the second-channel data, multiple target-channel data to be framed are finally determined to maximize the utilization of FLIT frame resources.

[0067] Optionally, based on the determined second-channel data, in combination with the data requests of the initial data frame, it is determined which signal-channel data should be included in the initial data frame for transmission. The above process can consider the current bandwidth resource status of the current FLIT frame, the data volume to be transmitted soon, and the FLIT Credit signal provided by the Universal Chiplet Interconnect Express (UCIE) Controller to ensure that the framed data volume does not exceed the carrying capacity of the FLIT frame.

[0068] It should be noted that the various factors of the current FLIT frame considered in the above process of determining the target-channel data are only for illustrative purposes and are not specifically limited here. As long as the factors can ensure the accuracy of the data to be transmitted by the current FLIT frame and can maximize the utilization of the bandwidth resources of the current FLIT frame, they are within the protection scope of the embodiments of the present invention.

[0069] Optionally, the data requests of the initial data frame can be the key information for determining which signal-channel data can be combined into the current FLIT frame. The data requests reflect the transmission requirements of various AXI protocol signal channels (AW, W, AR, R, B) within the initial data frame (current cycle). That is, the data requests can be used to determine the channel data in the target-channel data of the initial data frame other than the second-channel data. The data requests come from multiple signal channels of the AXI protocol, and the data request of each signal channel represents the data volume that needs to be transmitted by the signal channel within the initial data frame. For example, the data request of the AW Channel can represent the write address command to be sent, and the data request of the W Channel can represent the write data to be transmitted. The data requests can not only include the data type but also the specific data volume information, that is, the number of data bytes or Beacons (Bea) to be transmitted. The above data requests are very important for determining whether the data in the signal channel can be merged into the current FLIT frame. If the data volume requested by a certain signal channel is small and not enough to occupy the entire FLIT frame, this is the time to merge the data in the signal channel with the second-channel data for transmission as the target-channel data.

[0070] Optionally, before framing the target channel data, the remaining bandwidth resources in the initial data frame can be evaluated, including the remaining bit width (number of bits) and FLIT Credit, to determine which signal channel data can be merged into the target channel data for transmission. The data requests of each signal channel in the initial data frame can be analyzed to identify which signal channels have a small amount of requested data and can be merged into the target channel data of the initial data frame for transmission together with the second channel data. Based on the evaluation results of the above bandwidth resources and the analysis results of the data requests, it can be determined which signal channel data should be integrated into the initial data frame to form various target channel data.

[0071] In the embodiments of the present invention, by allowing the data of different types of signal channels to be mixed and transmitted within the same FLIT frame, the bandwidth utilization rate of the FLIT frame can be significantly improved, the delay of data transmission can be reduced, and the overall communication efficiency can be optimized. There is no need to configure independent caches for each signal channel, reducing the hardware configuration requirements and lowering the design complexity and cost. Through the above method, it is possible to flexibly adjust according to the real-time data requests and the status of the current bandwidth resources of the FLIT frame, improving the response speed of data transmission and the flexibility of communication.

[0072] In summary, this embodiment mainly utilizes the data that was not fully transmitted in the historical data frame (i.e., the second channel data), combined with the data requests of the current data frame, to dynamically determine the data of the signal channels to be transmitted in the current data frame, thus avoiding the waste of independent static framing of the data in the signal channels and the bandwidth resources in the related art. Through the above method of the embodiments of the present invention, the utilization of the bandwidth resources of the FLIT frame is optimized, and the overall performance and efficiency of communication are improved. By fully considering the status of the current bandwidth resources of the FLIT frame and the FLIT Credit signal of the UCIE Controller, it is possible to achieve efficient utilization of the FLIT bandwidth without increasing additional storage resources.

[0073] Step S106: Determine the target framing priority of the target channel data based on the channel type corresponding to the target channel data.

[0074] In the technical solution provided in step S106 of the present invention above, the target framing priority is used to represent the target sequence of framing the target channel data into the initial data frame.

[0075] In this embodiment, the channel types (Channel_type) may include channels such as R CH, W CH, AW CH, AR CH, and BCH. It should be noted that the above channel types are only examples of the channel types under the AXI protocol and the CXS protocol in the embodiments of the present invention, and no specific limitations are imposed here. The target framing priority is directly related to the effective organization and transmission order of the data in the FLIT frame. The determination and application of the target framing priority aim to optimize the data transmission process, improve bandwidth utilization, reduce data latency, and ensure the stability and efficiency of data transmission. Different channel types are assigned different target framing priorities due to the differences in their data natures and transmission requirements.

[0076] For example, the data in AW / AR may include address and control information, which is crucial for the initiation and direction setting of data transmission. Therefore, the above AW / AR can be assigned a higher priority to ensure the timely initiation and correct direction of data transmission. W is very important for ensuring the accuracy and response speed of data, so the data of W can also be assigned a higher priority, especially when the write operation has a direct impact on the running state. The priority of the data in R may vary depending on the scenario, but in most cases, the real-time nature and integrity of the data in R are the keys to ensuring the accuracy of subsequent processing, so the data of R can also be assigned a high priority. Although the data in B is crucial for confirming the success of the write operation, it has a lower urgency compared to the address command and data transmission, so the data in B can be assigned a lower priority.

[0077] It should be noted that the above sorting of the target sequence for framing the data in different signal channels is only an example, and no specific limitations are imposed here. As long as it is a process and method that can assign target framing priorities to different signal channels according to the differences in the data natures and transmission requirements of different signal channels, it is only an example, and no specific limitations are imposed here.

[0078] In this embodiment, after determining multiple target channel data to be framed based on the second-channel data and the initial data frame, the target framing priority for framing the data in the corresponding signal channel can be determined according to the channel type of the target channel data. The above steps aim to more effectively manage the data transmission process, ensure that critical (i.e., high-priority / front target sequence) data can be transmitted first, and at the same time maximize the utilization of the bandwidth resources of the FLIT frame.

[0079] Optionally, identify the channel type of the target channel data, that is, the specific signal channel to which the data belongs. Each channel type can be assigned a specific target framing priority, which can be formulated based on the characteristics and transmission requirements of the data in the signal channel corresponding to each channel type. The determination of the target framing priority can also consider the data volume size of the data in the corresponding signal channel, the real-time requirement of the data, and the impact on the overall performance of data transmission.

[0080] It should be noted that the target framing priorities set for different channel types in the embodiments of the present invention can be dynamically adjusted according to the nature of the data and the transmission requirements of the data, so as to ensure that critical data can be preferentially transmitted in the limited FLIT frames, rather than fixed target framing priorities.

[0081] Optionally, the corresponding target framing priorities can be assigned to different signal channels in advance according to the nature and transmission requirements of the data in the signal channels of different channel types. Thus, according to the target framing priorities of each channel type, the order of data transmission in the signal channels of different channel types can be obtained. And based on the remaining capacity in the initial data frame and the FLIT Credit status of the UCIE Controller, the target channel data to be framed and transmitted in the initial data frame can be determined. According to the above order, the target order of framing and transmitting the target channel data in the initial data frame can be determined.

[0082] For example, when the FLIT frame starts framing, the FLIT Credit status and the remaining capacity of the FLIT frame can be checked, and according to the pre-established target framing priorities, framing starts from the target channel data with the highest priority until the capacity of the FLIT frame is fully utilized. If there is still remaining space in the FLIT frame, data will continue to be selected from the target channel data with the next priority for framing until the FLIT frame is full or the target channel data to be transmitted has been framed. If the data volume in a certain signal channel exceeds the remaining capacity of the current FLIT frame, the excess part will be postponed to the next FLIT frame to ensure the continuity and consistency of data transmission.

[0083] In the embodiments of the present invention, by allocating target frame-packing priorities to data of different channel types, the organization and transmission order of data in FLIT frames can be dynamically adjusted, thereby more effectively utilizing the bandwidth resources of FLIT frames. When the amount of data in a certain signal channel is not enough to fill a FLIT frame, data in signal channels of other high-priority channel types can be immediately filled, avoiding the idle of the bandwidth resources of the FLIT frame and significantly improving the utilization rate of the bandwidth resources. Due to the criticality and real-time requirements of high-priority channel data, it can be preferentially frame-packed and transmitted, thus ensuring the coherence and timeliness of data transmission, especially for those data that have a direct impact on the operating state, thereby effectively reducing data latency.

[0084] It should be noted that the target frame-packing priority mechanism of this embodiment provides an orderly management scheme for data transmission. Even in complex communication scenarios, it can ensure the orderly transmission of data, avoid data chaos and errors, and enhance the stability and reliability of communication. Through the flexible frame-packing strategy with target frame-packing priorities, the demand for additional cache resources is reduced, especially for those data that are smaller or can be transmitted with a delay.

[0085] In summary, by introducing the dynamic mechanism of target frame-packing priorities, the optimization of the data transmission process is achieved, the utilization rate of the bandwidth resources of FLIT frames is improved, data latency is reduced, the stability and efficiency of data transmission are ensured, and the flexibility and overall efficiency of the communication process are enhanced.

[0086] Step S108, frame-pack multiple target channel data into an initial data frame according to the target frame-packing priority and channel type to obtain a target data frame.

[0087] In the technical solution provided in step S108 of the present invention above, the target data frame is an optimized data transmission unit formed under the dynamic framing strategy of the embodiments of the present invention. It is a specific form of the FLIT data packet, aiming to efficiently utilize bandwidth resources and reduce data transmission latency. The target data frame is constructed based on the FLIT format and includes a data packet header (abbreviated as the header) and a data body. The data packet header carries control information. For example, the control information may include but is not limited to data source, type, length, etc. The data body may include dynamically selected multiple target channel data according to the definitions of MAP_TYPE and CH_MAP. Among them, MAP_TYPE can be used to indicate the arrangement combination scheme of the AW, AR, W, R, and B channel positions inside a certain data packet within the FLIT, and CH_MAP can be an indication flag of whether the AW, AR, W, R, and B channels of the AXI protocol exist. For example, a FLIT can simultaneously include the address information of the AW Channel, partial data of the W Channel, and response data of the R Channel. The above data can make full use of the transmission capacity of the FLIT.

[0088] It should be noted that the data in the target data frame in the embodiments of the present invention no longer strictly follows a certain specific channel data, but is dynamically integrated according to the remaining bandwidth resources in the current FLIT frame and the actual data requests in various types of signal channels of the AXI protocol. This means that if the data volume of a certain signal channel is not enough to fill the remaining space of the FLIT, the data in other signal channels can be immediately filled into the remaining space without waiting for the formation of the next FLIT frame, realizing the maximization of the utilization of bandwidth resources.

[0089] In this embodiment, after determining multiple target channel data to be framed based on the second channel data and the initial data frame, the multiple target channel data can be framed into the initial data frame according to the target framing priority and channel type to obtain the target data frame. This means that the data is no longer limited by a fixed channel structure, but is flexibly dynamically integrated according to the remaining resources of the current FLIT frame and the actual situation of the data requests. The above mechanism ensures that the bandwidth resources for the transmission of each FLIT frame are maximally utilized, reduces unnecessary idling, and thus improves the efficiency and speed of data transmission.

[0090] Optionally, the determined multiple target channel data is integrated into the current initial data frame (i.e., the FLIT frame of the current cycle), and finally a target data frame is formed. The multiple target channel data is sorted and formatted to adapt to the data structure of the FLIT. For example, according to the target framing priority, the target channel data of the corresponding channel type can be rearranged to fill the remaining space of the FLIT frame, while ensuring the integrity and correctness of the data, to obtain the target data frame.

[0091] Optionally, data framing is no longer limited by the boundaries of a specific signal channel, but based on the target framing priority and channel type, dynamically selects which data can be framed and transmitted together. This means that if the data volume of a certain channel (such as the AW or AR channel) is small and not enough to fill the FLIT frame, the remaining space of the FLIT frame will immediately be used to transmit the data of other channels (such as the W or R channel) without waiting for the generation of the next FLIT frame. By the above method, the waiting time for data transmission is significantly reduced, and the overall transmission speed and efficiency are improved.

[0092] Optionally, during the process of framing the target channel data into the initial data frame, the arrangement and existence status of the data of different signal channels in the FLIT frame can also be indicated based on the definitions of MAP_TYPE and CH_MAP. During the framing process, the size of the FLIT frame, the availability of the FLIT Credit of the UCIE Controller, and the judgment result of the remaining bandwidth resources of the FLIT can also be considered. By framing the target channel data, a target data frame is formed. The target data frame contains the data efficiently selected and combined from the multiple target channel data, and the target channel data in the target data frame is optimally distributed throughout the FLIT frame.

[0093] It should be noted that the above process and method of framing the target channel data into the initial data frame are only for illustrative purposes and are not specifically limited here. In the embodiments of the present invention, not only can the sequential framing be performed according to the target framing priorities of different channel types, but also the target channel data can be framed into the initial data frame according to the pre-defined MAP_TYPE and CH_MAP.

[0094] In the embodiments of the present invention, by combining the second-channel data in the historical data frame and the data request in the current data frame, the bandwidth resources of the FLIT frame can be maximally utilized, the generation of empty frames can be reduced, and the efficiency of data transmission can be improved. The dynamic framing strategy allows the incompletely transmitted data (second-channel data) to be transmitted immediately when there are idle bandwidth resources. By the above method, the waiting time of data can be significantly reduced and the transmission delay can be lowered. By dynamically combining the data of different signal channels in the FLIT frame, the need for independent caching of signal channels is reduced. In summary, by framing the data of multiple target channels to form a target data frame, the efficient utilization of the bandwidth resources of the FLIT frame is achieved, and the bandwidth resources and delay of data transmission are optimized.

[0095] It should be noted that the framing method in the above embodiments of the present invention reflects the dynamics and flexibility of data transmission, breaking the fixed framing method of channel data in data transmission in the related art. The above method of the embodiments of the present invention allows different types of data to be dynamically merged within the FLIT frame according to the actual data request and the usage of bandwidth resources, thereby avoiding the waste of bandwidth resources in the FLIT frame and improving the utilization rate of bandwidth resources.

[0096] Step S110: Transmit the target data frame by using the interface signal corresponding to the target data frame.

[0097] In the technical solution provided in step S110 of the present invention above, the interface signal can be a CXS interface signal.

[0098] In this embodiment, after framing multiple target-channel data into an initial data frame according to the target framing priority and channel type to obtain a target data frame, the target data frame can be transmitted by using the interface signal corresponding to the target data frame.

[0099] Optionally, to transfer the target data frame from the source chip or module to the target chip or module, specific interface signals can be used. In the embodiments of the present invention, the above interface signals can be CXS interface signals. The CXS interface signals are standard signals based on the CXS protocol and are used for data transmission under the UCIE protocol. The CXS interface signals contain the necessary information for transmitting data, control signals, and status signals. The transmission of the target data frame depends on the interface signals corresponding to the target data frame. The interface signals can include signals such as the CXS valid signal (CXSVALID), the CXS data signal (CXSDATA), the CXS control signal (CXSCNTL), and the CXS credit grant signal (CXSCRDGNT). The above interface signals work together to ensure that the target data frame can be correctly and efficiently transmitted through the Physical Layer of the Port (PHY) of the UCIE port. The CXSCNTL signal carries control information, such as the type and length of the data. The CXSCRDGNT reflects the Credit status and is used to determine the sending timing and rate of the FLIT frame. The UCIE Controller controls the sending of the FLIT frame according to the CXSCRDGNT to ensure that it does not exceed the processing capacity of the target buffer and avoid data loss or buffer overflow. The CXSDATA signal carries the actual data content, and the above information is crucial for the receiving end to parse the data frame. The synchronous encoding and transmission of CXSDATA and CXSCNTL enable the receiving end to correctly decode the target data frame and identify the specific data of the AW, AR, W, R, and B channels.

[0100] Optionally, in the case where data requests exist simultaneously for multi-channel data, the transmission of the CXS interface signals also needs to rely on an arbitration mechanism to determine which signal channel's data is preferentially encapsulated and transmitted. The UCIE Controller performs arbitration and scheduling based on the indications of MAP_TYPE and CH_MAP, as well as the judgment of the available bandwidth resources of the FLIT and the status of the FLIT Credit, to ensure efficient data combination and sending. During the transmission process, the CXS interface signals ensure the integrity and sequentiality of the target data frame, avoiding data disorder or loss.

[0101] In the embodiments of the present invention, through the above method with the help of the CXS interface signals, the target data frame is effectively transferred from the source chip or module (such as the main chip / main die) to the target chip or module (such as the slave chip / slave die). The above process not only involves signal encoding, synchronization, and control but also includes an arbitration and scheduling mechanism, ensuring the efficiency, accuracy, and integrity of data transmission, while maximizing the utilization of the bandwidth resources in the FLIT frame under the UCIE protocol and reducing the consumption of additional storage resources.

[0102] In the above steps S102 to S110 of the embodiment of the present invention, during the data frame transmission, based on the first channel data in the historical data frame, the second channel data other than the first channel data in the target signal channel can be determined. Based on the second channel data and the initial data frame after the historical data frame, various target channel data including the second channel data to be framed can be determined. Through the channel type corresponding to the target channel data, the target framing priority of the target channel data when framing to the initial data frame can be determined, so that the determined target channel data can be framed into the initial data frame according to the target framing priority and the channel type to obtain the target data frame. The target data frame can be transmitted by using the interface signal corresponding to the target data frame. Through the above method, the fixed time-sharing transmission of data in each target signal channel is avoided, but more data is filled in the current data frame as much as possible to reduce the empty load or low load rate of the current data frame, achieving the technical effect of improving the utilization rate of the bandwidth resources of the interface and solving the technical problem of low utilization rate of the bandwidth resources of the interface.

[0103] The following further describes the process of determining the target framing priority of the target channel data based on the channel type corresponding to the target channel data in this embodiment.

[0104] As an optional implementation manner, step S106, determining the target framing priority of the target channel data based on the channel type corresponding to the target channel data, includes: determining the initial framing priority corresponding to the channel type, where different channel types correspond to different initial framing priorities, and the initial framing priority is used to represent the initial sequence of framing the target channel data into the initial data frame; adjusting the initial framing priority according to the target resource amount required by the target channel data to obtain the target framing priority, where the target framing priority has a positive correlation with the target resource amount.

[0105] In this embodiment, in the process of determining the target framing priority of the target channel data based on the channel type corresponding to the target channel data, the initial framing priority corresponding to the channel type can be determined. The initial framing priority is adjusted according to the amount of target resources required by the target channel data to obtain the target framing priority. Among them, different channel types correspond to different initial framing priorities. The initial framing priority can be the framing priority that is pre-established according to different channel types without considering the actual framing process at present, and can also be called the priority sequence of the channel type. For example, it can be pre-established as R, B, AR, AW, and W, where R has the highest priority and W has the lowest priority. The target resource amount can refer to the number of BEACONs occupied by the target channel data in the FLIT frame, which reflects the actual demand for data transmission. In the case of limited resources, data that occupies a larger amount of resources often requires a higher transmission priority to ensure the efficiency and timeliness of data transmission.

[0106] Optionally, this embodiment elaborates on how to dynamically determine the target framing priority of the target channel data based on its channel type to optimize the data organization and transmission within the FLIT frame. The above process is divided into two key steps: determining the initial framing priority and adjusting the priority according to the target resource amount.

[0107] Optionally, in the process of determining the initial framing priority, a fixed priority value can be assigned to each channel type, and this priority value reflects the importance of the data in the signal channel of this channel type and the urgency of the transmission requirement. For example, R can be assigned the highest priority because R is directly related to the real-time nature of the data and the accuracy of subsequent processing; W comes second because the data transmission of W is crucial for updating the state of data transmission; while B may be assigned the lowest initial priority due to its relatively low real-time requirement.

[0108] Optionally, the initial framing priorities can be arranged in a predefined order. For example, the priority sequence of the channel type can be set as R, B, AR, AW, W. The above sorting is based on the adjustment of data properties and communication requirements to ensure that high-priority data can obtain the transmission opportunity earlier.

[0109] Optionally, the initial framing priority is dynamically adjusted according to the amount of target resources required by the target channel data to obtain the final target framing priority. The above adjustment process follows the principle that the larger the target resource amount, the higher the priority, that is, the target resource amount and the target framing priority are positively correlated. This means that in the case of limited bandwidth resources in the FLIT frame, data that occupies a larger amount of target resources can be preferentially selected for transmission, thereby maximizing the utilization of bandwidth resources and improving the efficiency of data transmission.

[0110] For example, assume that there is still a large amount of remaining space in the current FLIT frame, and the data volume of W is much higher than that of other channels. According to the rule of adjusting priorities based on the target resource amount, even if the initial priority of W is lower than that of R and B, the target grouped frame priority of W will be increased due to its high demand for bandwidth resources, so as to be preferentially transmitted in the current FLIT frame.

[0111] In the embodiment of the present invention, by adjusting priorities based on the target resource amount, it is possible to more intelligently manage the data organization within the FLIT frame, reduce the idle resources, and improve the bandwidth utilization rate. Data with high resource requirements is preferentially transmitted in the FLIT frame, reducing the waiting time, thereby overall reducing the latency of data transmission. The dynamic priority adjustment mechanism can adapt to changing communication requirements, ensuring efficient and stable data transmission in various data transmission scenarios. The above mechanism not only improves the efficiency and speed of data transmission, but also ensures the timely transmission of critical data, thereby enhancing the overall communication performance.

[0112] In summary, by determining the initial grouped frame priority related to the channel type and dynamically adjusting the priority according to the resource amount required by the target channel data, the optimization of data transmission is achieved, improving the utilization rate of the FLIT frame and the efficiency of data transmission, which has a significant performance improvement for communication applications that require high bandwidth resources and low latency.

[0113] Next, in this embodiment, the process of grouping multiple target channel data into the initial data frame according to the target grouped frame priority and channel type will be further described.

[0114] As an optional implementation manner, step S108, grouping multiple target channel data into the initial data frame according to the target grouped frame priority and channel type to obtain the target data frame, includes: determining the grouped frame position corresponding to the target channel data in the initial data frame based on the target grouped frame priority, channel type, and the target resource amount required by the target channel data; in the initial data frame, grouping multiple target channel data respectively according to the grouped frame positions corresponding to the multiple target channel data to obtain the target data frame.

[0115] In this embodiment, in the process of grouping the target channel data into the initial data frame according to the target grouped frame priority and channel type, the grouped frame position corresponding to the target channel data in the initial data frame can be determined based on the target grouped frame priority, channel type, and the target resource amount required by the target channel data. In the initial data frame, grouping can be performed according to the grouped frame positions corresponding to different target channel data to obtain the target data frame.

[0116] Optionally, this embodiment describes efficiently framing multiple target channel data into an initial data frame according to the optimized target framing priority and channel type, and finally forming a target data frame. The above process ensures efficient data transmission and maximized utilization of bandwidth resources.

[0117] Optionally, the framing position of each target channel data in the initial data frame is determined based on the target framing priority, channel type and target amount of resources required to be occupied by the target channel data. The above process is dynamic, and the framing position of the target channel data is no longer fixed, but is flexibly adjusted according to the position of the channel type corresponding to the target channel data in the priority sequence and the bandwidth resources currently available to the FLIT frame. For example, according to the target framing priority, data with higher priority can be selected for framing first; at the same time, considering the target amount of resources required to be occupied by the target channel data, data with a larger amount of target resources are organized at the starting position of the FLIT frame to ensure that the above data with a larger amount of target resources can be transmitted in a timely manner.

[0118] Optionally, after determining the framing position of each target channel data, start framing in the initial data frame. The above process follows the following principles: check the remaining space of the FLIT frame and the bandwidth resource requirements of the target channel data to be transmitted, and dynamically select the data with higher priority for framing to make full use of the bandwidth resources of the FLIT frame. According to the framing position corresponding to each channel data, the data is written into the FLIT frame segment by segment. In the above process, the writing of data can be accurately controlled to ensure that the position of the data in the FLIT frame is correct, and the integrity of the data is also taken into account to avoid data overflow or improper data packet segmentation during the data framing process. When the space of a FLIT frame is fully utilized, or the target channel data to be transmitted currently has been fully framed, a target data frame will be formed, and the target data frame will be sent to the next-level communication module or physical layer for transmission.

[0119] In the embodiment of the present invention, by dynamically determining the framing position, it can be ensured that high-priority and high-resource-demand data can be transmitted first, reducing the waiting time for data transmission and improving the overall efficiency of data transmission. Since data framing is no longer limited to a fixed structure, but is dynamically adjusted according to the real-time bandwidth resource demand, each bit resource of the FLIT frame can be more effectively utilized, avoiding the waste of bandwidth resources and improving the utilization rate of the bandwidth resources of the communication link. The dynamic framing mechanism can flexibly adapt to different data transmission scenarios, whether it is a scenario with a large amount of data and urgent transmission demand, or a scenario with a small amount of data and low transmission demand, it can achieve efficient and stable data transmission by dynamically adjusting the framing order of the data.

[0120] In summary, by dynamically determining the framing position of the target channel data and framing the data at the optimized framing position in the initial data frame, the optimization of data transmission is achieved, the utilization rate of the bandwidth resources of the FLIT frame is improved, the data latency is reduced, the hardware configuration requirements are lowered, and the adaptability and competitiveness in complex communication environments are enhanced.

[0121] Next, in this embodiment, the process of determining the framing position corresponding to the target channel data in the initial data frame based on the target framing priority, channel type, and the amount of target resources required by the target channel data will be further described.

[0122] As an optional implementation manner, determining the framing position corresponding to the target channel data in the initial data frame based on the target framing priority, channel type, and the amount of target resources required by the target channel data includes: determining the upper-level target channel data with the target channel data among multiple target channel data according to the target framing priority of the target channel data, where the target framing priority of the upper-level target channel data is before the target framing priority of the target channel data; determining the framing position corresponding to the target channel data in the initial data frame based on the framing position corresponding to the upper-level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the amount of target resources required by the target channel data.

[0123] In this embodiment, in the process of determining the framing position of the target channel data in the initial data frame based on the target framing priority, channel type, and the amount of target resources required by the target channel data, the upper-level target channel data with the target channel data can be determined according to the target framing priority of the target channel data. Based on the framing position corresponding to the upper-level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the amount of target resources required by the target channel data, the framing position is determined. Among them, the target framing priority of the upper-level target channel data is before the target framing priority of the target channel data.

[0124] Optionally, this embodiment elaborates on how to determine the framing position of the target channel data in the initial data frame based on the target framing priority, channel type, and the amount of target resources required by the target channel data, which is the key to achieving efficient data transmission.

[0125] Optionally, after identifying the target frame priority of the target channel data, the upper-level target channel data of the target channel data can be determined according to the target frame priority. Herein, "upper-level" in the upper-level target channel data refers to the channel data that is before the current target channel data in the priority sequence corresponding to the target frame priority. For example, if the target channel data is AR and the priority sequence is R>B>AR>AW>W, then the data in B will be the upper-level target channel data. By identifying the upper-level target channel data, the starting position of the current target channel data can be determined based on the previous data framing situation.

[0126] Optionally, based on the framing position of the upper-level target channel data in the initial data frame, combined with the channel type of the target channel data and the amount of target resources required, the framing position of the current target channel data is determined. The above process depends on the completion of the framing of the upper-level channel data because the framing position of the current target channel data must be immediately after the upper-level channel data or at the first available position after the framing position of the upper-level channel data. For example, if BChannel has occupied the first 8 BEACONs, then the framing of AR Channel starts from the 9th BEACON until all the target resources it requires are filled.

[0127] Optionally, the channel type and the amount of target resources required of the target channel data also have an important impact on the framing position: Different channel types can have different data formats and communication requirements, which will affect the arrangement order and framing method of the data of the signal channels of different channel types in the FLIT frame. For example, AW / AR channels may be framed prior to the data transmission channels (W and R) because AW / AR is responsible for initializing data transmission. Channel data with a larger amount of resources may require a more forward framing position to ensure timely transmission. For example, if the amount of data of W is particularly large, it may need to occupy most of the space in the FLIT frame. Therefore, the data in W can be preferentially arranged to be framed at the front end of the data frame to make full use of the transmission capacity of the frame.

[0128] Optionally, the above process reflects the flexibility of dynamically adjusting the framing strategy. Determining the position of the data in the FLIT frame in real time according to the target frame priority, channel type and resource amount of the target channel data helps to maximize the utilization of bandwidth resources and reduce data transmission latency. For example, if the AW and AR channel data have been arranged in the current FLIT frame, the remaining space will be checked, and the framing positions of the data in W and R will be dynamically determined according to the resource requirements and priorities of W and R to avoid wasting the transmission capacity of the FLIT frame.

[0129] In the embodiments of the present invention, through the dynamic framing strategy, it is ensured that the bandwidth resources of each FLIT frame are fully utilized, reducing spatial idle and improving data transmission efficiency. High-priority and high-resource-demand data obtain priority positions in the FLIT frame, reducing waiting time and lowering the latency of data transmission. By intelligently arranging the position of data in the FLIT frame, the demand for additional cache resources is reduced.

[0130] In summary, determining the framing position of target channel data based on the target framing priority, channel type, and target resource amount is a key step in achieving dynamic data integration and efficient data transmission. The above mechanism ensures the priority transmission of critical data by dynamically adjusting the framing order of data, and at the same time optimizes the resource utilization of the FLIT frame, which has significant practical significance for application scenarios that require high bandwidth and low-latency communication, such as high-performance computing, data center networks, and high-speed inter-chip communication.

[0131] The following further describes the process of determining the framing position of target channel data in the initial data frame based on the framing position of the upper-level target channel data corresponding to the initial data frame, the channel type corresponding to the target channel data, and the target resource amount required by the target channel data.

[0132] As an alternative embodiment, the target resource amount includes data storage units. The identification information of the channel type corresponding to the target channel data occupies a first number of data storage units in the initial data frame, and the target channel data occupies a second number of data storage units in the initial data frame. Determining the framing position of the target channel data in the initial data frame based on the framing position of the upper-level target channel data corresponding to the initial data frame, the channel type corresponding to the target channel data, and the target resource amount required by the target channel data includes: offsetting the framing position of the upper-level target channel data corresponding to the initial data frame by the first number of data storage units and the second number of data storage units to obtain the framing position of the target channel data in the initial data frame.

[0133] In this embodiment, in the process of determining the framing position of the target channel data in the initial data frame based on the framing position of the upper-level target channel data corresponding to the initial data frame, the channel type, and the target resource amount, the framing position of the upper-level target channel data corresponding to the initial data frame can be offset by the first number of data storage units and the second number of data storage units to obtain the framing position of the target channel data in the initial data frame. Among them, the target resource amount includes data storage units. The identification information of the channel type corresponding to the target channel data occupies a first number of data storage units in the initial data frame. The target channel data occupies a second number of data storage units in the initial data frame.

[0134] Optionally, this embodiment illustrates how to dynamically determine the framing position of the target channel data in the initial data frame based on the framing position of the upper-level target channel data in the initial data frame, the channel type of the target channel data, and the amount of target resources required by the target channel data. The above process realizes efficient data transmission and bandwidth resource utilization by intelligently offsetting the data storage unit.

[0135] Optionally, in the FLIT frame, the channel type identification information corresponding to the target channel data needs to occupy a certain number of data storage units, which is referred to as the first number of data storage units. For example, if the channel type identification information occupies 4 BEACONs, then the first number is 4. The above partial identification information is used to inform the receiving end of the source channel of the data in the current FLIT frame, which is a prerequisite for unpacking and correctly processing the data.

[0136] Optionally, the space occupied by the target channel data in the FLIT frame is referred to as the second number of data storage units, which reflects the actual size of the target channel data and is usually measured in the number of BEACONs. For example, the W Channel may occupy 76 BEACONs, while the AR Channel may occupy 25 BEACONs. The above number of BEACONs is the actual manifestation of the data transmission volume and determines the load capacity of the FLIT frame.

[0137] Optionally, identify the framing position of the upper-level target channel data in the initial data frame, and calculate the starting position of the current channel data in the FLIT frame based on the channel type identification information corresponding to the target channel data (occupying the first number of data storage units) and the actual occupied space of the target channel data itself (occupying the second number of data storage units).

[0138] Optionally, offset the framing position of the upper-level channel data backward by the first number and the second number of data storage units to ensure that the identification information and data content of the current channel data can be correctly placed in the FLIT frame. The above dynamic offset mechanism allows for efficient organization of data within the limited FLIT frame space. Even when the data volume and transmission requirements change, it can flexibly adjust the data position to ensure timely data transmission.

[0139] For example, assume that the data of the upper-level channel is AR Channel, which occupies 25 BEACONs in the current FLIT frame, and the channel type identification information occupies 4 BEACONs, that is, the first quantity is 4. If the data of the current target channel is WChannel, it needs to occupy 76 BEACONs, that is, the second quantity is 76. Then, the end position of AR Channel will be identified, and then offset backward by 4 BEACONs plus 76 BEACONs to determine the start position of W Channel, so as to ensure that the data of W Channel can be correctly framed and placed at the appropriate position in the FLIT frame.

[0140] Optionally, in the above embodiment, when the previous Channel_type is known, it is easy to calculate the BEACON serial number of the current Channel_type in the FLIT through the corresponding Channel length. When the previous Channel_type is known, it is easy to calculate the BEACON serial number of the current Channel_type in the FLIT through the corresponding Channel length.

[0141] In the embodiment of the present invention, through precise control of the spatial allocation of the channel type identification information and the actual channel data, the intelligent utilization of the FLIT frame resources is realized, the space waste is reduced, and the data transmission efficiency is improved. Based on the framing situation of the upper-level channel data, the position of the current channel data is dynamically offset, so that the framing strategy can flexibly adapt to different data transmission requirements, and no matter how large the data volume is, it can be transmitted in a timely and accurate manner. The dynamic offset mechanism helps to ensure that the data transmission volume in the FLIT frame reaches the maximum value, improves the bandwidth utilization rate of the communication link, and is particularly important for application scenarios that require high bandwidth.

[0142] To sum up, by dynamically offsetting the data position based on the framing position of the upper-level target channel data, the channel type identification information of the target channel data, and the actual occupied space of the data, the efficient utilization of the FLIT frame resources and the optimization of data transmission are realized. The above mechanism has significant technical advantages for improving the efficiency, flexibility, and bandwidth utilization rate of data transmission, and is particularly suitable for high-speed data transmission and bandwidth-sensitive application scenarios, such as high-performance computing, data center networks, and high-speed inter-chip communications.

[0143] Next, in this embodiment, the process of framing multiple target channel data according to the corresponding framing positions in the initial data frame will be further described.

[0144] As an alternative embodiment, in the initial data frame, the multiple target channel data are framed according to the respective framing positions corresponding to the multiple target channel data to obtain a target data frame, including: in the initial data frame, the multiple target channel data are sequentially framed according to the respective framing positions corresponding to the multiple target channel data; in response to at least one data storage unit in the initial data frame after framing being in an idle state, a placeholder operation is performed on the data storage unit to obtain a target data frame.

[0145] In this embodiment, in the process of framing the target channel data according to the framing position corresponding to the target channel data in the initial data frame to obtain a target data frame, in the initial data frame, the target channel data can be sequentially framed according to the framing position corresponding to the target channel data. If there are still data storage units in the initial data frame after framing that are in an idle state, a placeholder operation can be performed on the idle data storage units to obtain a target data frame.

[0146] Optionally, this embodiment illustrates how to frame multiple target channel data according to the optimized framing positions in the initial data frame, and how to handle the possibly idle data storage units after framing. The above process ensures the efficiency of data transmission and the full utilization of FLIT frame resources.

[0147] Optionally, in the initial data frame, according to the previously determined framing positions, the multiple target channel data are framed in sequence. The above process follows the dynamically adjusted target framing priorities and channel type identification information to ensure that each target channel data is placed in the appropriate framing position in the FLIT frame. For example, the data of the AW Channel can be placed at the starting position of the FLIT frame according to its framing position first, and then the data of the AR Channel, W Channel, and R Channel are placed in sequence until the multiple target channel data are all framed into the FLIT frame. The above sequential framing process reflects the consideration of data transmission priorities and resource occupancy, which helps to improve the efficiency and accuracy of data transmission.

[0148] Optionally, after framing multiple target channel data, if there are data storage units in the initial data frame in an idle state that are not occupied, a placeholder operation is performed to ensure the integrity and transmission efficiency of the FLIT frame. The placeholder operation may involve filling the above-mentioned BEACONs in the idle state with invalid data or special identifiers. For example, a placeholder BEACON is defined (such as BEACON sequence numbers 68 to 95) to indicate that the space of the data storage unit in the idle state is not actually used in the current transmission. The above placeholder operation helps prevent incorrect reading or interpretation of data, and also avoids waste of resources at the receiving end when processing the FLIT frame, because the receiving end can accurately identify which BEACONs are actual transmitted data and which are placeholders.

[0149] Optionally, during the framing process of the FLIT frame, due to fluctuations in data volume and changes in transmission requirements, there may be a situation where some data storage units are idle. If these idle units are not processed, it may lead to a decrease in transmission efficiency and increase the complexity of data unpacking at the receiving end. The placeholder operation ensures the structural integrity of the FLIT frame and also provides a clear starting position for framing data in the next FLIT frame, which helps improve the coherence and efficiency of data transmission.

[0150] In the embodiment of the present invention, through the above implementation manner, multiple target channel data can be efficiently organized and transmitted in the initial data frame, while handling the data storage units in the idle state well. The data is transmitted according to the optimized framing positions, reducing transmission delays and data errors caused by data overflow or improper segmentation. The placeholder operation ensures the integrity and clear structure of the FLIT frame, avoiding waste of resources caused by unprocessed idle units. Since the data storage units in the idle state are clearly placeholdered, the receiving end can more accurately identify and process the valid data in the FLIT frame, reducing the complexity of data unpacking.

[0151] In summary, by sequentially framing the target channel data in the initial data frame according to the optimized framing positions and performing a placeholder operation on the data storage units in the idle state, efficient and stable data transmission and full utilization of FLIT frame resources are achieved, while simplifying the data processing flow at the receiving end. This mechanism has significant practical application value for application scenarios that require high bandwidth, low latency, and stable data transmission, such as high-performance computing, data center networks, and high-speed inter-chip communication.

[0152] Next, the process of determining multiple target channel data to be framed based on the second channel data and the initial data frame in this embodiment is further described.

[0153] As an alternative implementation, in step S104, based on the second-channel data and the initial data frame, determine multiple target channel data to be framed, including: determining the target resource amount required by the second-channel data in the initial data frame; determining the remaining resource amount in the resource amount of the initial data frame except for the target resource amount; and determining multiple target channel data based on the remaining resource amount and the second-channel data.

[0154] In this embodiment, in the process of determining multiple target channel data to be framed based on the second-channel data and the initial data frame, the target resource amount required by the second-channel data in the initial data frame can be determined. And the remaining resource amount in the resource amount of the initial data frame except for the target resource amount can be determined. Then, based on the remaining resource amount and the second-channel data, the target channel data can be determined. Among them, the target resource amount refers to the FLIT resource amount that is expected or calculated to be occupied when the data in a specific signal channel is transmitted in the FLIT frame, according to the data volume size of the FLIT frame and the FLIT frame format. The target resource amount can be used to evaluate the occupancy of each piece of data in the second-channel data in the FLIT frame. The remaining resource amount can be the resource amount of the remaining bandwidth resource, or can also be called the remaining space. The resource amount refers to the number of bits or bytes. That is to say, the embodiments of the present invention can dynamically determine the data of different signal channels to be combined according to the remaining space of the FLIT frame, so as to accurately determine the target channel data.

[0155] Optionally, under the dynamic framing strategy, based on the target resource amount, it is determined whether the second-channel data can share the same FLIT frame with the data of other signal channels, or whether it needs to wait for the next FLIT frame. The target resource amount can be calculated based on the size of the channel data and the structure of the FLIT frame. For example, if the AW Channel data needs to occupy 25 Beacons, and the W Channel data needs to occupy 76 Beacons, so their target resource amounts are 100 bits (25×4 bits) and 304 bits (76×4 bits) respectively.

[0156] Optionally, the remaining resource amount can be the FLIT remaining resource. The remaining resource amount refers to the amount of resources remaining in the FLIT frame that can be used to transmit data of other channels after part of the channel data has been transmitted, and is also measured in bits or bytes. The remaining resource amount is a key parameter in the dynamic framing strategy that determines whether data of other channels can be added to the current FLIT frame. The remaining resource amount ensures that the bandwidth resources of the FLIT frame are fully utilized and avoids waste of bandwidth resources. During the dynamic framing process, the transmission of address command channel data such as the AW Channel and AR Channel can be determined. According to the remaining resource amount and the actual data requests of signal channels such as the R Channel and W Channel, it is decided whether data of the above types of signal channels can be immediately combined into the current FLIT frame. For example, if 25 Beacons are occupied by the AW Channel and 75 Beacons are left unused in the FLIT frame, then it can be checked whether the data of the R Channel or W Channel can exactly fill or partially fill the remaining resources in the above FLIT frame, so as to achieve the reuse of bandwidth resources.

[0157] Optionally, during the formation of the FLIT frame, the target resource amount is used to estimate the resource requirements of each piece of channel data, while the remaining resource amount reflects the available resource status of the current FLIT frame. By dynamically evaluating the remaining resource amount and comparing it with the target resource amount, it can be immediately decided whether to combine data of different signal channels in the same FLIT frame and how to combine them, thereby improving the utilization rate of the bandwidth resources of the FLIT frame. The evaluation of the remaining resource amount can be affected by the FLIT credit status in the UCIE Controller.

[0158] Optionally, through the precise management of the target resource amount and the remaining resource amount, the embodiments of the present invention achieve the flexible combination of the data to be transmitted in the channel FLIT frame and avoid waste of the bandwidth resources of the FLIT frame. This embodiment illustrates how to dynamically combine different AXI channel data in the FLIT frame to maximize the utilization of the bandwidth resources of the FLIT frame.

[0159] Optionally, based on the second channel data, determine the target resource amount required by the second channel data in the initial data frame. The target resource amount refers to the FLIT resources that the second channel data needs to occupy in order to be transmitted in the FLIT frame, that is, bits or bytes. For example, if the W Channel data requires 76 Beacons (each Beacon is 4 bits), then the target resource amount is 304 bits (76 * 4 bits).

[0160] Optionally, after determining the target resource amount of the second channel data, the remaining resource amount in the initial data frame can be evaluated. The remaining resource amount refers to how much bandwidth resource is left for transmitting data in additional signal channels after the data already allocated to other signal channels (such as AW Channel, AR Channel, etc.) in the FLIT frame. For example, if the total resources of the FLIT frame are 512 bit and AW and AR Channel have occupied 100 bit, then the remaining resource amount is 412 bit.

[0161] Optionally, by utilizing the remaining resource amount in the initial data frame, the data of other signal channels (R Channel, B Channel, etc.) that can be transmitted in the current FLIT frame can be further determined. If the remaining resource amount is large enough to carry the data of the additional signal channels, then the data of the above-mentioned additional signal channels can be added to the current FLIT frame. For example, if the R Channel data requires 71 Beacon and the remaining resource amount of the current FLIT frame can meet this requirement, then the R Channel data can be added to the FLIT frame and transmitted together with the W Channel data.

[0162] Optionally, by dynamically evaluating the remaining resource amount of the FLIT frame, it is possible to intelligently decide which signal channels' data can be combined in the current FLIT frame, thus avoiding waste of bandwidth resources and improving the utilization rate of the bandwidth resources of the FLIT frame. It is no longer limited to the combination of fixed signal channels, but flexibly selects the combination scheme according to the actual situation of each FLIT frame. The above flexibility improves the data transmission efficiency. When determining the target channel data of the frame to be grouped, the FLIT Credit status in the UCIE Controller can also be considered to ensure that the data transmission does not exceed the processing capacity of the buffer, avoiding data loss or buffer overflow.

[0163] In the embodiment of the present invention, by intelligently evaluating the available resources of the FLIT frame and dynamically determining which signal channels' data can be combined and transmitted in the current FLIT frame, the data transmission efficiency and the utilization rate of the bandwidth resources of the FLIT frame are significantly improved.

[0164] Next, the process of determining multiple target channel data based on the remaining resource amount and the second channel data in this embodiment will be further explained.

[0165] As an alternative implementation, based on the remaining resource amount and the second channel data, a variety of target channel data is determined, including: in response to a channel request, detecting a variety of target signal channels respectively to obtain at least one third channel data whose total resources meet the remaining resource amount, where the third channel data is at least part of the channel data in the corresponding target signal channel, and the amount of channel data in the target signal channel remains unchanged; determining at least one third channel data and the second channel data as a variety of target channel data.

[0166] In this embodiment, in the process of determining the target channel data based on the remaining resource amount and the second channel data, if a channel request is detected, a variety of target signal channels can be detected respectively to obtain at least one third channel data whose total resources meet the remaining resource amount. Determining the third channel data and the second channel data as the target channel data. Wherein, the third channel data is at least part of the channel data in the corresponding target signal channel. The amount of channel data in the target signal channel remains unchanged. The channel request can be the current Channel request. The channel request can refer to a signal sent by a hardware module of the AXI protocol layer, requesting to transmit the data in the signal channel. When a data transmission request (data request / channel request) is detected for a certain signal channel, the data in the signal channel indicated by the channel request that meets the remaining resource amount can be marked as the third channel data.

[0167] Optionally, this embodiment elaborates on the process of dynamically determining a variety of target channel data based on the remaining resource amount and the existing second channel data to achieve the maximum utilization of FLIT frame resources and the efficiency of data transmission. The above process mainly includes three key links: response to channel requests, resource detection, and determination of target channel data.

[0168] Optionally, responding to a channel request from the AXI protocol layer means that a certain signal channel (such as AW, AR, W, R, or B Channel) issues a data transmission request to transmit the data in the signal channel to the other end of the communication link. Responding to the channel request, a variety of target signal channels can be detected to evaluate the data transmission requirements and resource occupancy of the variety of target signal channels. The above detection process is the basis for determining which channel data can be integrated into the current FLIT frame.

[0169] Optionally, during the detection of the target signal channel, data whose total resources meet the remaining resources of the current FLIT frame is identified. This part of the data is called the third-channel data. The third-channel data is at least part of the channel data corresponding to the target signal channel, and its feature is that it allows partial transmission of the channel data. That is, when the space of the current FLIT frame permits, a part of the channel data can be selected for transmission while keeping the integrity of the channel data unchanged, leaving space for the transmission of subsequent FLIT frames. For example, if the total data volume of the W Channel is 76 BEACONs and the remaining space of the current FLIT frame is 60 BEACONs, then the first 60 BEACONs in the W Channel can be selected for transmission as the third-channel data, and the remaining 16 BEACON data will be transmitted in subsequent FLIT frames.

[0170] Optionally, based on the result of resource detection, the third-channel data that meets the remaining resources is integrated with the second-channel data (the determined channel data with higher priority) to determine multiple types of target channel data. By integrating the second-channel data and the third-channel data, it is ensured that the transmission content of the FLIT frame includes both high-priority data and other channel data that can utilize the remaining resources, thereby improving the utilization rate of the bandwidth resources of the FLIT frame and the efficiency of data transmission.

[0171] In the embodiment of the present invention, by dynamically determining and integrating multiple types of target channel data based on the remaining resources and the second-channel data, the resource utilization rate of the FLIT frame is improved. By integrating the third-channel data that meets the remaining resources, every bit of resources in the FLIT frame can be fully utilized, avoiding resource waste caused by data volume fluctuations. The second-channel data with higher priority and the third-channel data that can utilize the remaining resources are framed simultaneously, which can reduce the waiting time of other channel data while ensuring the timely transmission of key data, reducing the overall data transmission delay. The mechanism of dynamically detecting and integrating channel data can flexibly adjust the data transmission strategy according to real-time communication requirements and resource conditions, enhancing the adaptability in complex communication environments.

[0172] In summary, by based on channel requests, detecting the resource requirements of the target signal channel, and integrating the third-channel data that meets the remaining resources with the second-channel data, the efficient utilization of FLIT frame resources and the optimization of data transmission are achieved.

[0173] Next, the process of determining the second-channel data based on the first-channel data in the historical data frame in this embodiment will be further described.

[0174] As an alternative implementation, in step S102, determining at least one type of second channel data based on at least one type of first channel data in a historical data frame includes: obtaining from a buffer at least one type of second channel data determined based on at least one type of first channel data in the historical data frame; the method further includes: in response to the third channel data being partial channel data in a corresponding target signal channel, storing the channel data in the target signal channel other than the third channel data into the buffer.

[0175] In this embodiment, in the process of determining second channel data based on first channel data in a historical data frame, second channel data determined based on first channel data in the historical data frame can be obtained from a buffer in a controller. If the third channel data is partial channel data in a target signal channel, then the channel data in the target signal channel other than the third channel data can be stored into the buffer. Among them, the grant signal comes from the controller. The controller can be a UCIEController. The buffer in the controller can be a retry buffer.

[0176] Optionally, this embodiment illustrates how to determine second channel data for a current or upcoming FLIT frame based on first channel data in a historical data frame under the UCIE protocol framework. The above process involves the intelligent use of the retry buffer of the UCIEController.

[0177] Optionally, the historical data frame refers to a previously transmitted FLIT frame, which contains data of various AXI signal channels (such as AW, W, AR, R, B Channel). In UCIE communication, the transmission of each frame of data does not always meet the requirements. Sometimes, due to reasons such as insufficient credit, limited buffer space at the receiving end, and link failures, the data of some signal channels may not be successfully transmitted. The above untransmitted data becomes the first channel data in the historical data frame and needs to be sent again in a future FLIT frame.

[0178] Optionally, the Retry Buffer in the UCIE Controller is specifically used to store the first channel data that fails to be successfully transmitted. The Retry Buffer serves as a short-term storage location, waiting for a more suitable transmission opportunity. When the credit mechanism allows, or when there is enough space in the buffer at the receiving end, the previously stored first channel data can be re-extracted from the RetryBuffer and combined with the second channel data to be merged into a new FLIT frame for transmission.

[0179] Optionally, under the management of the UCIE Controller, when constructing a new FLIT frame, it is possible to check whether there is uncompleted first-channel data in the RetryBuffer. If it exists, the Controller will select appropriate uncompleted data from the Retry Buffer according to the current credit status, the remaining space of the FLIT frame, and the priority of the data, and merge it into the new FLIT frame as second-channel data. The above mechanism ensures the continuity and integrity of data transmission, reduces the number of data retransmissions, and thus optimizes the communication efficiency and the utilization rate of bandwidth resources.

[0180] Optionally, in response to the third-channel data being only partial-channel data in the target signal channel, the remaining partial-channel data in the target signal channel that is not selected as the third-channel data is stored in the buffer. The above operation ensures the continuity and integrity of the data, avoids data loss during transmission, and also optimizes the space utilization of the FLIT frame.

[0181] Optionally, when some data is selected from multiple target signal channels as the third-channel data for transmission based on the remaining resource amount, this means that the data in the target signal channel is not fully transmitted. For example, the data volume of the AW Channel is 26 BEACONs, but only 16 BEACONs can be transmitted in the current FLIT frame. Then the data of these 16 BEACONs is the third-channel data, and the remaining 10 BEACON data becomes the unselected data.

[0182] Optionally, after identifying the remaining partial-channel data in the target signal channel that is not selected as the third-channel data, this part of the data is stored in the buffer. The buffer plays the role of data staging in the embodiments of the present invention. The buffer can temporarily store the data that cannot be fully transmitted in the current FLIT frame, leaving space for the transmission of subsequent FLIT frames. For example, assume that 10 unselected BEACON data in the AW Channel are stored in the buffer. Then, during the framing process of the next FLIT frame, this part of the data can be given priority consideration to ensure the continuity and integrity of the data transmission of the AW Channel.

[0183] Optionally, by storing the data that has not been fully transmitted in the target signal channel, the buffer ensures the continuity of data transmission. Even if the amount of data in the current FLIT frame exceeds the available resources, it can guarantee the complete transmission of data in subsequent frames. The buffer avoids setting up independent SFIFO buffer resources for each target signal channel and instead dynamically uses them when necessary, saving hardware resources and simplifying the design of the data transmission system. The use of the buffer allows for flexible adjustment of the data transmission strategy in the face of fluctuating data volumes and changing transmission requirements, improving adaptability in complex communication environments.

[0184] In the embodiment of the present invention, by caching the channel data that has not been fully transmitted, the continuity of data transmission is ensured, data interruption and loss are avoided, and the reliability and integrity of data transmission are improved. Using the buffer instead of separate SFIFO resources reduces the consumption of hardware resources, lowers the design complexity and cost. The mechanism of dynamically caching data can flexibly adjust the data transmission strategy according to real-time communication requirements and resource conditions, improving adaptability in complex communication environments. In summary, in response to the processing mechanism that the third-channel data is only part of the channel data in the target signal channel, by caching the remaining channel data, the continuity and integrity of data transmission are ensured, resource utilization is optimized, and the flexibility and adaptability of data transmission are improved. The above mechanism has significant practical application value for application scenarios that require high bandwidth, low latency, and stable data transmission, such as high-performance computing, data center networks, and high-speed inter-chip communication.

[0185] In the embodiment of the present invention, through the intelligent use of the Retry Buffer, the bandwidth resources of the FLIT frame are ensured to be maximally utilized. The data that has not been completed in transmission can be timely supplemented into the new FLIT frame, reducing the number of additional data transmission rounds and saving communication resources. There is no longer a need to configure additional caches for each AXI Channel. Instead, through the Retry Buffer of the UCIEController, the hardware design is simplified and the implementation complexity is reduced. In summary, in the communication under the UCIE protocol, determining the second-channel data based on the first-channel data in the historical data frame is achieved through the intelligent use of the retry buffer of the UCIEController. The above mechanism not only improves the reliability of data transmission but also optimizes resource utilization and reduces communication latency.

[0186] The following further describes the process of transmitting the target data frame by using the interface signals corresponding to the target data frame in this embodiment.

[0187] As an alternative embodiment, in step S110, the target data frame is transmitted by using the interface signal corresponding to the target data frame, including: transmitting the target data frame to the receiving end by using the interface signal corresponding to the target data frame, where the target data frame is unpacked by the receiving end according to the channel type corresponding to the target channel data, the target framing priority of the target channel data, and the target resource amount required by the target channel data.

[0188] In this embodiment, in the process of transmitting the target data frame by using the interface signal corresponding to the target data frame, the target data frame can be transmitted to the receiving end by using the interface signal corresponding to the target data frame. Among them, the target data frame can be unpacked by the interface end according to the channel type corresponding to the target channel data, the target framing priority of the target channel data, and the target resource amount required by the target channel data.

[0189] Optionally, this embodiment describes how to use the interface signal corresponding to the target data frame to transmit data to the receiving end and ensure that the receiving end can correctly unpack and process this data. The above process is a crucial step in the entire implementation of the AXI-to-CXS protocol, directly related to the accuracy of data transmission and the efficiency of data processing at the receiving end.

[0190] Optionally, the framed target data frame is transmitted to the receiving end through the CXS interface signal. The interface signals in the embodiments of the present invention may include CXSVALID, CXSDATA[511:0], CXSCNTL[17:0], and CXSCRDGNT, etc. The above interface signals jointly carry the actual content and control information of the data in the FLIT frame, ensuring the correct transmission of data at the physical layer. Through the above interface signals, the target data frame is sent to the receiving end, and the receiving end identifies and receives the data based on the interface signals.

[0191] Optionally, after the receiving end receives the target data frame, the data frame is unpacked according to the channel type identification information in the target data frame, the target framing priority of the target channel data, and the target resource amount required by the target channel data. The above process includes the following key links: The receiving end first parses the channel type identification information in the target data frame to determine the channel type to which each data segment belongs; Parse priority and resource occupancy: The receiving end further analyzes the target framing priority of the target channel data and the target resource amount required, and determines the transmission order of the data and the size of the data segment through the above information. For example, the channel data with high priority and high resource requirements will be processed first. Based on the identified channel type, priority, and resource occupancy, the receiving end unpacks and reorganizes the data segments in the target data frame according to the original channel type and timing, and restores them into a data stream in the AXI protocol format for further processing by the upper-layer hardware and software.

[0192] In an embodiment of the present invention, data transmission is performed by using the interface signal corresponding to the target data frame, and it is ensured that the receiving end can perform correct unpacking processing according to the channel type, priority, and resource occupancy. The control information and data content in the target data frame are accurately transmitted to the receiving end through the CXS interface signal, ensuring the accuracy of data reception and improving the efficiency of data transmission at the same time. The receiving end can flexibly adjust the data unpacking and processing strategy according to the channel type, priority, and resource occupancy information. Even in the case of data volume fluctuations and changes in transmission requirements, the correct processing of data can be guaranteed. By including the channel type, priority, and resource occupancy information in the target data frame, the data unpacking process at the receiving end is simplified, the complexity of error handling is reduced, and the overall performance of data processing is improved.

[0193] In summary, using the interface signal corresponding to the target data frame for data transmission and ensuring that the receiving end can perform correct unpacking processing according to the channel type, priority, and resource occupancy are key steps to achieve efficient data transmission and processing of the AXI-to-CXS protocol. The above mechanism improves the performance of communication and the resource utilization efficiency by optimizing the data transmission and unpacking processes.

[0194] Next, the protocols satisfied by the first-channel data and the second-channel data in this embodiment will be further described.

[0195] As an optional implementation manner, the first-channel data and the second-channel data satisfy the Advanced eXtensible Interface (AXI) protocol, and the interface signal satisfies the Chip eXchange Protocol (CXS).

[0196] In this embodiment, the first-channel data and the second-channel data satisfy the Advanced eXtensible Interface (AXI) protocol. The interface signal satisfies the Chip eXchange Protocol (CXS).

[0197] Optionally, this manner describes the transmission standards of two key channel data (the first-channel data and the second-channel data) and the protocol requirements followed by the interface signal in the UCIE and CXS protocol communication architecture.

[0198] Optionally, the AXI protocol is an advanced interface standard defined for the design of a System on a Chip (SoC), used to efficiently and flexibly transfer data between modules within a data transfer system. The first-channel data and the second-channel data refer to specific types of data communicated through the AXI interface, such as channels like AW (write address), W (write data), AR (read address), R (read data), B (write response), etc. The above data is transmitted according to the timing, handshake signal rules, and data format of the AXI protocol. When the UCIE Controller constructs a FLIT frame, it converts the data conforming to the AXI protocol into the format of the CXS protocol while preserving the characteristics and functions of the data under the AXI protocol.

[0199] Optionally, CXS is a communication protocol defined under the UCIE framework for inter-die data exchange. The interface signals generated by the UCIE Controller, such as CXSVALID, CXSDATA, CXSCNTL, CXSCRDGNT, etc., follow the specifications of the CXS protocol and are used for data transmission between dies in the UCIE architecture. The above signals include not only data content but also control information, credit information, and other necessary information for ensuring correct data transmission. When generating the above interface signals, the UCIE Controller takes into account the resource occupancy situation, credit status, and mixed transmission of the first-channel data and the second-channel data of the current FLIT frame to ensure that the converted data can meet the requirements of the CXS protocol and achieve efficient data exchange.

[0200] Optionally, the UCIE Controller not only needs to process the input data of the AXI protocol but also needs to generate output signals conforming to the CXS protocol. Therefore, the conversion logic from the AXI protocol to the CXS protocol needs to be implemented inside the Controller. This includes reformatting the AXI channel data into a FLIT frame while ensuring that the construction of the FLIT frame follows the rules of the CXS protocol, such as the size, format, credit management mechanism, etc., of the FLIT. The UCIE Controller realizes the effective conversion of AXI data into a CXS FLIT frame through a dynamic framing strategy and a resource judgment module, ensuring the efficiency of data transmission and the optimal utilization of resources.

[0201] In the embodiment of the present invention, by ensuring that the first-channel data and the second-channel data meet the AXI protocol and the generated interface signals meet the CXS protocol, the UCIE Controller can seamlessly transfer data between different protocol layers, improving the reliability and efficiency of data transmission. At the same time, the above conversion strategy simplifies the hardware design, reduces costs, and improves integration by reducing the demand for additional cache resources, and is one of the key technologies for realizing a high-performance inter-die communication system.

[0202] In summary, under the UCIE and CXS protocol frameworks, it is ensured that the data on the first channel and the data on the second channel meet the AXI protocol, and the interface signals generated by the UCIE Controller meet the CXS protocol. The above embodiments effectively implement the conversion from the on-chip protocol (AXI) to the inter-chip protocol (CXS), improve the efficiency of data communication and resource utilization, simplify the hardware design, and reduce the implementation complexity.

[0203] The technical solutions of the embodiments of the present invention will be illustrated below in conjunction with preferred embodiments.

[0204] Currently, UCIE is an advanced communication interface for chip die2die and Chip2Chip, but generally the UCIE Controller is embodied as a CXS communication protocol interface. Figure 2 It is a schematic diagram of a master-slave chip / grain communication architecture for general chiplet interconnection in related technologies, as Figure 2 shown. Communication can be carried out between the master chip / master grain 201 and the slave chip / slave grain 202 through UCIE. If the ARM AMBA AXI4.0 protocol is used as the protocol layer of the interface and UCIE is used as the physical layer of the interface to realize the mutual access of two dies or two Chips, the following structure is usually adopted. According to the regulations of the AMBA AXI4.0 protocol, the communication of the five channels AW, W, AR, B, and R is independent of each other and not affected by each other.

[0205] Figure 3 It is a schematic diagram of an AXI to CXS protocol conversion data processing architecture in related technologies, as Figure 3 shown. When using the ARM AMBA AXI4.0 protocol as the protocol layer of the interface and UCIE as the physical layer of the interface to realize the mutual access of two dies or two Chips, the architecture shown in Figure 3 is usually adopted. According to the regulations of the AMBA AXI4.0 protocol, the communication of the five channels AW, W, AR, B, and R is independent of each other and not affected by each other. Figure 3Disclosed is a chip interconnection architecture based on the AXI and CXS protocols, involving signal transmission and conversion among multiple modules, aiming to achieve efficient and low-latency die-to-die communication. The AXI master module 0 (AXI_MASTER0) serves as the initiator of communication, receiving the master module output (MasterOutput, abbreviated as M0), AW, and CH signals from other parts. The above signals are organized and transmitted according to the AXI protocol. The output of AXI_MASTER0 is connected to the AXI2CXS conversion module, which processes the conversion of AXI protocol data into CXS protocol data. The AXI2CXS module receives the output of AXI_MASTER0 and converts it into the signal format required by the CXS protocol, including CXSVALID, CXSDATA[511:0], CXSCNTL[17:0], and CXSCRDGNT, where CXSDATA is 512-bit data, CXSCNTL contains control signals, and CXSVALID and CXSCRDGNT are used to indicate data validity and credit grant respectively. The UCIE Controller receives the CXS protocol signals output by the AXI2CXS module, processes and stores the above signals, and then outputs them to the UCIE PHY module.

[0206] As Figure 3 shown, the UCIE PHY module is a physical layer interface responsible for actual signal transmission. The UCIE PHY module receives the output of the UCIE Controller, sends data to another chip or die through the physical interface, and simultaneously receives feedback signals from the receiving end. There are two AXI_MASTER modules (AXI_MASTER0 and AXI_MASTER1) and two AXI slave modules (AXI_SLAVE) (AXI_SLAVE_VE1 and AXI_SLAVE_VE0) in this architecture, indicating that this architecture supports two-way communication, that is, the sending and receiving of data. The AXI2CXS module and the CXS2AXI module are respectively used for signal protocol conversion. The AXI2CXS module converts AXI signals into CXS signals, and the CXS2AXI module converts CXS signals back into AXI signals. The buffer (BUFF) is used to store data during signal transmission to ensure the continuity of communication and the integrity of data.

[0207] With the FLIT bit width in the CXS protocol being 512 bits, Figure 4 is a schematic diagram of an implementation structure for AXI to CXS protocol conversion in a related technology, as Figure 4As shown in the figure, it is a common implementation structure of the AXI2CXS conversion module in the related technology. In the related technology, in order to simplify the CXS FLIT framing implementation process, the R Channel, WDATA Channel, and AW / AR / B Channel of the AXI protocol are separated to frame FLITs, and the relevant control signals of CXS are synchronously packed, thus forming a 10*8B data format. Under the selection of the arbiter, the three FLIT custom data frames of the R Channel, WDATA Channel, and AW / AR / B Channel are sequentially sent to the UCIE Controller, and then sent to another Die or Chip by the UCIE Controller and the PHY. The AXI_MASTER module is the initiator of the AXI protocol and is responsible for sending control and data signals. It can contain multiple channels for processing different types of AXI protocol data: the Master Output Address Write Channel (abbreviated as MO AW CH), the Master Output Write Data Channel (abbreviated as MO W CH), the Master Output Address Read Channel (abbreviated as MO AR CH), the Master Input Burst Channel (abbreviated as MI B CH), and the Master Input Read Data Channel (abbreviated as MI R CH).

[0208] As Figure 4As shown, each channel data passes through the SFIFO module, and after further processing, it is sent to the Packet Formatter (FLIT FORMATER) module for formatting the FLIT frames. The FLIT FORMATER module is responsible for converting the data sent from the AXI_MASTER into the FLIT frame format of the CXS protocol. The FLIT FORMATER module consists of three sub-modules: the Read Channel Packetizer (R_CH_Packetizer) for processing the data of the R Channel (read data channel) and packing it into FLIT frames; the Mixed Channel Data Packetizer (AW / AR / B_MIX_Packetizer) for processing the data of the AW Channel, AR Channel, and B Channel and performing mixed packing; and the Write Channel Packetizer (W_CH_Packetizer) for processing the data of the W Channel and packing it into FLIT frames. The total width of the data output by each of the above sub-modules is 10 * 8B (i.e., 80 bytes or 640 bits).

[0209] As Figure 4 shown, the arbitration module receives the data from the FLIT FORMATER and decides which FLIT frames will be given priority for transmission based on the available credits of the current CXS interface and the transmission requirements of the FLIT frames. Through arbitration, it ensures the orderly and efficient transmission of multi-channel data on the CXS interface and avoids data conflicts. The role of the AXI2CXS conversion module is to convert the FLIT frames from the FLITFORMATER module, through the arbitration module, into a data format that meets the requirements of the CXS protocol interface. The AXI2CXS conversion module adapts the FLIT frames to the control signals of the CXS protocol for the transmission of data between the UCIE Controller and the UCIE PHY. The CXS interface is the interface for inter-die communication in the UCI E protocol and consists of two parts: the UCIE Controller, which is responsible for the high-level control logic of the CXS protocol, including credit management, arbitration, error detection, etc., and contains a BUFF for storing the data to be sent through the physical layer or the data received temporarily before processing; and the UCIE PHY, which is responsible for the physical layer transmission of the CXS protocol, including the Transceiver module (TRANSIVER) responsible for the actual physical layer transmission of data, including signal sending and receiving.

[0210] Figure 5 is a schematic diagram of the data transmission process in a related technology, as Figure 5As shown, T0 to T7 can be used to represent 8 data transmission cycles for transmitting data. The signal channels can include AR CH, R CH, B CH, AW CH, and WCH. The implementation method of the related technology is relatively simple. For example, in the T0 cycle, there is data to be transmitted in the three signal channels of AR CH, AW CH, and W CH, while there is no data to be transmitted in the two signal channels of R CH and B CH. As a result, the bandwidth resources of the above two signal channels cannot be utilized in the T0 cycle, causing resource waste. That is, each signal channel requires additional bandwidth resources of the SFIFO as a buffer, and the R CH, W CH, and AW / AR / B CH are framed separately, so that the bandwidth resources within the FLIT are not multiplexed, and the bandwidth resources between the FLITs are not multiplexed, resulting in an access indication on the AXI MASTER interface. Figure 5 The squares filled with the same format in different cycles in Figure 5 are different parts of the same data indicated by the same data transmission requirement. Therefore, as Figure 5 shown, the data transmitted by different channels in each cycle comes from the same data requirement, rather than the data to be transmitted in the same cycle coming from different data indicated by different data transmission requirements. The related technology cannot dynamically adjust the transmission process of the data indicated by different data transmission requirements for different data transmission situations.

[0211] Figure 6 Figure Figure 6 is a schematic diagram of the data transmission process in another related technology. As Figure 6 shown, T0 to T15 can be used to represent 16 FLIT frames for transmitting data, that is, 16 data transmission cycles. The 16 data transmission cycles correspond to 15 FLIT frames, that is, F0 to F14. The signal channels can include AR CH, R CH, B CH, AW CH, and WCH. After implementing the related technology solution as Figure 5 shown, the access operations of different Channels on the CXS interface are sent to the UCIE Controller through FLIT frames at different times. Assuming that it takes one cycle for the first data to come out of the SFIFO, Figure 6 the interface backpressure caused by the FLIT TX CREDIT BUFFER being full on the UCIE CXS interface is not considered. Figure 6 The squares filled with the same format in different cycles in Figure 6 are different parts of the same data indicated by the same data transmission requirement. Figure 6In the data transmission process, for the data indicated by the same data transmission requirement, it may take two frames, or even three frames, to transmit. For example, for the data corresponding to the blank squares, not only is part of it transmitted through AR CH and AW CH in frame F0 during cycle T1, but the remaining part is also transmitted through W CH in frame F1 during cycle T2. The above data transmission process not only makes the data transmission cycle longer, but also results in a more serious waste of unused bandwidth resources.

[0212] Optionally, in the related art, when converting the data of the AXI protocol into the FLIT frame of the CXS protocol, the data of the RChannel, W Channel, AW Channel, AR Channel, and B Channel are usually framed independently. This means that each type of AXI channel data will form its own FLIT frame, and even if there is still remaining space in the current FLIT frame, it will not be utilized by the data of other channels. In addition, in order to cache the data of different signal channels, the existing technical solutions will add an SFIFO between each AXIChannel and the CXS protocol adapter to store and process the data during FLIT framing to ensure the integrity of the data.

[0213] However, the related art has problems of non-optimized utilization of FLIT bandwidth resources and consumption of additional storage resources. Specifically, each part of the FLIT (such as the R Channel, W Channel, etc.) is transmitted strictly by type and time division. Even if the data volume of some channels is small, it may occupy the entire FLIT frame, resulting in a waste of resources within the FLIT frame. For example, the data volumes of the R Channel and WChannel may not be sufficient to fill the FLIT frame, but the different channels are still transmitted in separate FLIT frames, so that the data bits in the FLIT are not fully utilized. Adding an SFIFO cache for each AXI Channel, although it helps with the smooth transmission of data, increases the complexity of the hardware design and the consumption of storage resources. Especially in the chip design with limited resources, the additional SFIFO cache may become a bottleneck, affecting the overall efficiency and cost of the chip.

[0214] In summary, the related technical solutions transmit the R Channel and W Channel strictly by type and time division with AW / AR / B. Due to the different data bit numbers occupied in the actual FLIT, the bandwidth resources of the FLIT interface of the CXS cannot be effectively utilized. And an SFIFO is added for each AXI Channel without using the FLIT RETRY BUF of the UCIE Controller, resulting in a waste of storage resources. Therefore, there is still a technical problem of low utilization rate of the interface bandwidth resources.

[0215] However, in the embodiments of the present invention, a dynamic framing strategy is adopted. Instead of strictly transmitting the data of the AXI Channel by type in a time-sharing manner into the FLIT frame, the data of different signal channels are dynamically combined within the same FLIT frame according to the remaining space of the FLIT frame and the actual requests of the AXI Channel data. This means that if there is still unused space in the FLIT frame after the data of the AW Channel is transmitted, the data of the R Channel or the W Channel can be immediately filled into the remaining space without waiting for the formation of the next FLIT frame. In addition, this embodiment makes full use of the FLIT TX Retry Buffer inside the UCIE Controller, avoiding adding additional SFIFO caches for each AXI Channel. When the data volume of a certain channel exceeds the capacity of the current FLIT frame, the untransmitted data will be saved in the FLIT TX Retry Buffer and sent when the next FLIT frame is formed, thus reducing the storage resource requirements in the hardware design.

[0216] The embodiments of the present invention achieve technical effects such as optimizing the utilization of FLIT bandwidth resources, reducing resource storage consumption, and simplifying the hardware design through the above methods. By allowing the mixed transmission of different types of AXI Channel data within the same FLIT frame, the utilization rate of the bandwidth resources of the FLIT frame can be significantly improved. The FLIT free resource judgment module will evaluate the available space in the FLIT frame, and then, according to the FLIT Credit grant signal of the UCIE Controller, decide which AXI Channel data can be merged into the current FLIT frame, thus avoiding the idleness of channel data and the waste of FLIT frame resources. By not adding additional SFIFO caches but using the FLIT TX Retry Buffer in the UCIE Controller, the storage resource consumption in the hardware implementation is effectively reduced. The above design not only reduces the hardware cost but also simplifies the overall architecture, improving the integration and performance of the chip. The use of the dynamic framing strategy and the FLIT TX Retry Buffer simplifies the hardware design complexity of AXI to CXS. There is no need to configure independent caches for each AXI Channel, reducing unnecessary complexity and resource allocation problems in the design. The technical effect of improving the bandwidth resource utilization rate of the interface is achieved, and the technical problem of low bandwidth resource utilization rate of the interface is solved.

[0217] The method of the embodiments of the present invention will be further illustrated by examples below.

[0218] Figure 7It is a schematic diagram of an implementation system for the AXI-to-CXS protocol according to an embodiment of the present invention. As Figure 7 shown, the system may include an AXI_MASTER, an AXI protocol adapter 701, a FLIT free resource judgment module 702, a FLIT packet assembly 703, a CXS protocol adapter 704, a UCIE Controller, and a UCIE PHY. Through ingenious design, the system aims to optimize the FLIT bandwidth resources, reduce the consumption of storage resources, and simplify the hardware design complexity. The AXI_MASTER module serves as the data source of the entire system and is responsible for issuing read / write requests and control signals based on the AXI protocol. The above requests and signals will be converted into FLIT frames of the CXS protocol to achieve efficient data transmission across chips or wafers. The function of the AXI protocol adapter 701 module is to convert the signals issued by the AXI_MASTER into a format suitable for further processing, and dynamically select the source of the Channel signal participating in the FLIT framing according to the indication of the FLIT free resource judgment module 702 and the credit grant signal CXSCRGGNT of the UCIE Controller to ensure the consistency of data transmission.

[0219] As Figure 7As shown in the figure, the FLIT free resource judgment module 702 is one of the core components of the system, responsible for evaluating the unoccupied resources in the current FLIT frame and deciding which AXI Channel data can be merged into the current FLIT frame. By judging the remaining space of the FLIT frame and the actual requests of the AXI Channel data, the FLIT free resource judgment module 702 can effectively improve the utilization rate of the bandwidth resources of the FLIT frame. The FLIT packet assembly 703 can complete the composition of the FLIT frame according to the predefined MAP_TYPE and CH_MAP. The FLIT packet assembly 703 frames the data packet in the format required by the CXS protocol and provides the resource occupancy information of the FLIT frame so that the CXS protocol adaptation 704 can correctly generate the CXS interface signal. The CXS protocol adaptation 704 module forms the final CXS interface signal based on the information provided by the FLIT packet assembly module 703 and the credit grant signal CXSCRGGNT of the UCIE Controller. The CXS protocol adaptation 704 module ensures that the FLIT frame can be transmitted following the rules of the CXS protocol. The UCIE Controller is responsible for controlling the communication of the entire UCIE interface, including credit management, protocol control, and data flow scheduling. Based on the signals sent by the CXS protocol adaptation 704, as well as its own status and the requirements of the CXS protocol, it manages the transmission of the FLIT frame to ensure the orderliness of data transmission. The UCIE PHY physical layer module, responsible for the actual signal transmission, can receive the data sent from the UCIE Controller and convert it into a signal format suitable for transmission over the physical medium, and then send it to the UCIE PHY at the opposite end through the physical medium (such as wires, optical fibers, etc.).

[0220] Different from the strict type-based time-sharing transmission in the related technologies, the above system in the embodiment of the present invention adopts a dynamic framing strategy, allowing data from different AXI Channels to be mixed and transmitted within the same FLIT frame. The above mechanism makes full use of the remaining space of the FLIT frame, avoids waste of resources, and improves the utilization rate of the FLIT bandwidth resources. At the same time, this technical solution no longer adds an additional SFIFO buffer for each AXI Channel, but uses the Buff inside the UCIE Controller, effectively reducing the consumption of storage resources, simplifying the hardware design, and improving the system efficiency and cost-effectiveness. Through the dynamic framing strategy, the utilization rate of the bandwidth resources of the FLIT frame can be significantly improved, and unnecessary resource waste between FLITs can be reduced. Without adding an additional SFIFO buffer, the storage resource requirements in the hardware design are effectively reduced, and the design cost and hardware complexity are lowered. The simplified design and efficient resource utilization strategy improve the integration and performance of the chip and reduce the communication delay.

[0221] Optionally, the AXI protocol adaptation module dynamically selects the source of the Channel signal participating in FLIT framing based on the FLIT remaining resource indication information sent by the FLIT remaining resource judgment module and the CXS Credit grant signal CXSCRGGNT given by the UCIE Controller, and generates the Channel-level handshake signal according to the AXI protocol timing. The FLIT remaining resource judgment module generates the request / reply signal of the AXI protocol adaptation module based on the Channels that were not framed in the previous data frame and the combination relationship requested by the current Channel, and after completing the current FLIT packet assembly, records the Channels that were not packetized at the current moment. The FLIT packet assembly module assembles the FLIT according to the predefined MAP_TYPE and CH_MAP, and provides the occupancy information of the current FLIT resource to the CSX adaptation module for generating the CXS interface signal. The CXS adaptation module generates the corresponding CXS interface signal based on the information provided by the FLIT packet assembly module and the CXS Credit grant signal CXSCRGGNT given by the UCIE Controller.

[0222] It should be noted that the embodiments of the present invention are described with an AXI DATA WIDTH of 256 bit width, and the same method is also applicable to AXI DATA WIDTH of 128 or 512 bit widths.

[0223] Figure 8 It is a schematic diagram showing the definition format of the interface signals of AXI256 according to the embodiments of the present invention, as Figure 8As shown, the above-defined AXI256 interface signal format is based on the standard AXI4 protocol and is extended and optimized for the CXS (CXS is the name of the communication layer in the UCIE protocol, representing the CXS protocol) in UCIE or similar Chip2Chip communication scenarios to meet the transmission requirements of FLIT frames. Channel_type[2:0] is introduced, which is a 3-bit field used to indicate which AXI Channel type the data in the current FLIT frame belongs to. For example, 000 indicates data of the B Channel; 001 indicates data of the AR Channel; 010 indicates data of the AW Channel; 011 indicates data of the R Channel; 100 indicates data of the W Channel; 111 indicates the placeholder BEACON, which is used to fill the unused FLIT frame space. The B occupies 8 Bea, the R occupies 72 Bea, the AR occupies 26 Bea, the AW occupies 26 Bea, and the W occupies 77 Bea. Each 4-bit (BEACON) represents a transmission unit. Therefore, 1 FLIT frame contains 512 bits, which is equivalent to 128 BEACON units; 1 / 4 FLIT contains 128 bits, which is equivalent to 32 BEACON units. The above definition allows the integration of data from different AXI Channels in the same FLIT frame, and different channel data is distinguished by Channel_type[2:0].

[0224] By integrating the data of multiple AXI Channels into one FLIT frame, the efficiency of data transmission and the utilization rate of bandwidth can be improved. Especially in scenarios where the data volume fluctuates and the transmission requirements change greatly, this flexible resource allocation and data integration method can significantly enhance the communication performance, reduce latency and resource waste. At the same time, by using the placeholder BEACON, the integrity of the FLIT frame structure can be ensured. Even when the data volume of some channels is small or not fully utilized, the receiving end can accurately identify and process the data in each BEACON unit, thus achieving more efficient and stable data transmission and processing.

[0225] Optionally, for different combinations of AW, AR, B, R, and W Channels that occur within one cycle, a dynamic group FLIT packet method is adopted, that is, the position of each Channel in the FLIT is not fixed, but the FLIT packets are formed in the order of decreasing priority of R, B, AR, AW, and W. Since the number of BEACONs occupied by each Channel is fixed, when the current Channel_type is known, it is easy to calculate the BEACON sequence number of the next Channel_type in the FLIT based on the corresponding Channel length, so as to obtain the corresponding Channel type information.

[0226] Figure 9(a) is a schematic diagram showing a combination of data for different signal channels appearing within the same frame. As shown in Figure 9(a), starting from BEACON 0, the first 8 transmission units (BEACONs) are used to transmit B Channel data. This part of the data is used to confirm whether the write operation in the AW Channel is successfully completed and may contain information such as response status. Starting from BEACON 8, the next 26 BEACONs are used to transmit AR Channel data. This part of the data is used to initiate a read operation and contains the target address and attributes of the read operation, etc. Starting from BEACON 34, 26 BEACONs are used to transmit AW Channel data for initiating a write operation, which contains the target address and attributes of the write operation, etc. Starting from BEACON 60, 68 placeholder BEACONs are used. The placeholder is used to fill the unused data space in the current FLIT frame to ensure the integrity of the FLIT frame.

[0227] Figure 9(b) is another schematic diagram showing a combination of data for different signal channels appearing within the same frame. As shown in Figure 9(b), it shows the dynamic arrangement of channel data in the FLIT N frame. The BChannel uses the first 8 BEACONs in the FLIT N frame. Then comes the AR Channel, occupying 26 BEACONs. Then comes the AWChannel, occupying 26 BEACONs. Then the data in the R Channel is divided into two parts for transmission. The first part of the data occupies 68 BEACONs for data transmission.

[0228] Figure 9(c) is another schematic diagram showing a combination of data for different signal channels appearing within the same frame. As shown in Figure 9(c), it shows the dynamic arrangement of channel data in the FLIT N+1 frame. The RChannel occupies 4 BEACONs, which is the remaining part of the R Channel data and only 4 BEACONs are used. Then comes the ARChannel, occupying 26 BEACONs for transmission. Then the AW Channel occupies 26 BEACONs to continue the transmission. Then the R Channel occupies 72 BEACONs for data transmission.

[0229] FIG. 9(d) is a schematic diagram showing another combination of data from different signal channels appearing within the same frame according to an embodiment of the present invention. As shown in FIG. 9(d), it shows the dynamic arrangement of channel data in the FLIT N+2 frame. The ARChannel occupies 26 BEACONs for transmission. Then, the W Channel occupies 77 BEACONs for data transmission. Then, there are 25 BEACONs for placeholders, that is, the remaining 25 BEACONs in the Flit N+2 frame are used as placeholders to maintain the integrity of the FLIT frame and the consistency of the structure.

[0230] In addition, FLIT framing is performed for a predefined MAP, which has many benefits and uses later during unpacking (i.e., parsing and processing data at the receiving end). Specifically, the predefined MAP provides a clear FLIT structure framework for the receiving end, enabling the UCIE Controller to quickly determine the AXI Channel data type and position included in each FLIT frame based on the MAP_TYPE and CH_MAP when receiving data. This simplifies the design of the unpacking module and reduces the complexity of logical processing. The definitions of MAP_TYPE and CH_MAP make the positions of different types of AXI Channel data fixed in the FLIT frame, allowing the receiving end to quickly locate and extract the required data. For example, in map0, the receiving end can directly skip the placeholder fields and extract the data of ARCH and R CH without an additional search or judgment mechanism, thereby improving the data parsing speed. When the FLIT frame is efficiently utilized at the sending end, the resources at the receiving end (such as buffers and decoding logic) can also be optimized. The predefined MAP ensures that the data bits in the FLIT frame are reasonably occupied, reducing unnecessary resource allocation in the unpacking module. For example, in map3, AWCH is placed after R CH, and the receiving end can process the R CH data first and then the AW CH data without an additional buffer to store the AW CH data.

[0231] In summary, the predefined MAP plays a key role in the FLIT framing and unpacking processes. It not only simplifies the unpacking logic, improves the unpacking efficiency, but also optimizes resource allocation and reduces errors. During FLIT framing, instead of fixedly transmitting by R Channel and W Channel strictly by type and time-sharing with AW / AR / B Channel, it is dynamically framed to maximize the utilization of FLIT bandwidth resources.

[0232] In terms of the implementation structure, the Retry Buffer in the UCIE Controller is fully utilized. In the embodiments of the present invention, no additional SFIFO buffer is added. The timing is defined through the AXI protocol. When the R Channel, W Channel, and AW / AR / B Channel need to send the next FLIT, the corresponding handshake Ready signal is controlled to suppress the signals of the relevant Channels. The Channel spanning two time instants in the figure indicates that at this time, due to the limited number of bits that can be accommodated in the FLIT, the signals of the relevant Channels are suppressed and delayed until the next FLIT for transmission.

[0233] Figure 10 It is a schematic diagram of a data transmission process shown according to the embodiments of the present invention. As Figure 10 shown, T0 to T7 can be used to represent 8 FLIT frames for transmitting data, that is, 8 data transmission cycles. 8 data transmission cycles correspond to 7 FLIT frames, that is, F0 to F7. The signal channels can include AR CH, R CH, B CH, AW CH, and W CH. In terms of the implementation structure, the Retry Buffer in the UCIE Controller is fully utilized in the embodiments of the present invention, no additional SFIFO buffer is added, the timing is defined through the AXI protocol. When the R CH, W CH, and AW / AR / B CH need to send the next FLIT, the corresponding handshake Ready signal is controlled to suppress the signals of the relevant Channels. The Channel spanning two time instants in the figure indicates that at this time, due to the limited number of bits that can be accommodated in the FLIT, the signals of the relevant Channels are suppressed and delayed until the next FLIT for transmission. Figure 6 The squares filled with the same format in different cycles in the figure are different parts of the same data indicated by the same data transmission requirement. For example, Figure 6 when the data corresponding to the solid black square is transmitted in the F1 frame, all the signal channels are utilized for transmission, but the transmission is still not complete and some data remains. The remaining data can still utilize the AW CH and W CH for data transmission in the F2 frame of the T2 cycle to avoid waste of bandwidth resources due to no data to be transmitted on the AW CH and W CH channels in the F2 frame. In the embodiments of the present invention, by removing the SFIFO, the storage resources in the logical implementation are reduced, different MAP_TYPE and CH_MAP are defined, and the CXS FLIT bandwidth resources are maximally utilized, which also facilitates the implementation of the CXS2AXI unpacking logic at the opposite end.

[0234] In the embodiments of the present invention, HEADER information can also be added to each FLIT data packet to indicate the arrangement order of each AXI Channel in the current FLIT packet, and in effect obtain the data packet information within the FLIT packet. PACKET_HEADER: contains 4 groups of Channel_Type information, and a maximum of 4 AXI Channels can be mapped in one FLIT.

[0235] By adding PACKET_HEADER information at the beginning of each FLIT data packet, the arrangement order and packet information of each AXI Channel data within the current FLIT packet are indicated, thereby realizing the maximized utilization of the bandwidth resources inside the FLIT.

[0236] FIG. 11(a) is a schematic diagram showing another combination of data of different signal channels appearing in the same frame according to an embodiment of the present invention. As shown in FIG. 11(a), B CH uses the first 7 Bea, occupying 28 bits. AR CH follows BCH and uses 25 Bea, occupying 100 bits. AW CH is after ARCH and uses 25 Bea, also occupying 100 bits. Finally, 67 Bea are used as placeholders to fill the remaining space of the current FLIT frame to ensure the structural integrity of the FLIT frame. In this FLIT frame, PACKET_HEADER not only clarifies the arrangement order of the channel data, but also ensures the accurate transmission of the channel data through BEACONs of a fixed size. Even in the presence of placeholders, the bandwidth resources of the FLIT frame can be efficiently utilized.

[0237] FIG. 11(b) is a schematic diagram showing another combination of data of different signal channels appearing in the same frame according to an embodiment of the present invention. As shown in FIG. 11(b), it shows the dynamic allocation and transmission of the data channels of the FLIT N+3 frame. BCH uses the first 7 Bea, a total of 28 bits. AR CH then uses 25 Bea, a total of 100 bits. AW CH continues to use 25 Bea, also 100 bits. The data of R CH is divided into two parts (part1 and part2) for transmission. Part1 uses 67 Bea, a total of 268 bits. However, since BEACON3 is 0011, indicating the R Channel, and actually 67 Bea are used, this indicates that there is no additional channel inserted between the previous channel (AW CH) and R CH part1, that is, the transmission of R CH part1 directly starts after AW CH.

[0238] Figure 11(c) is a schematic diagram showing another combination of data from different signal channels appearing within the same frame according to an embodiment of the present invention. As shown in Figure 11(c), it demonstrates the dynamic allocation and transmission of the data channels of FLIT N+4 frame. RCH part2 follows immediately after R CH part1 of Flit N+3 frame, using 4 Bea (i.e., 16 bits) to complete the remaining transmission of the R Channel data. AR CH follows after R CH part2, using 25 Bea, a total of 100 bits. AW CH follows after AR CH, using 25 Bea, also 100 bits. Although the data transmission of R CH part1 has started in Flit N+3, in Flit N+4, the R CH part includes the remaining 70 Bea of part1 (i.e., part1 actually occupies 67 Bea, plus 70 Bea before part2), as well as the complete AR CH and AW CH. This indicates that the remaining part of R CH part1 is integrated with the data of AR CH and AW CH and transmitted within the same FLIT, rather than waiting for the next FLIT frame.

[0239] Figure 11(d) is a schematic diagram showing another combination of data from different signal channels appearing within the same frame according to an embodiment of the present invention. As shown in Figure 11(d), it demonstrates the dynamic allocation and transmission of the data channels of FLIT N+5 frame. RCH part2 uses 1 Bea to complete the last transmission unit of the R Channel data, that is, the transmission of the R CH data is finally completed in Flit N+5. AR CH then uses 25 Bea, a total of 100 bits, to transmit the read address information. W CH uses 76 Bea, a total of 304 bits, to transmit the write data information. Finally, 12 Bea are used as placeholders to fill the unused space of the current FLIT frame, ensuring the integrity of the FLIT frame structure and the maximization of resource utilization.

[0240] In summary, the PACKET_HEADER mechanism can dynamically allocate and transmit data of different AXI channels in multiple FLIT frames. Through the above method, even in scenarios with fluctuating data volume and frequent changes in transmission requirements, it can ensure that the bandwidth resources of each FLIT frame are maximally utilized. At the same time, by using PACKET_HEADER to indicate the allocation and arrangement order of the channel data, the receiving end can accurately unpack the data in the FLIT frame and restore it to the original AXI channel data format, thereby improving the efficiency and flexibility of data transmission.

[0241] Figure 12 is a schematic diagram of a multi-chip packaging module shown according to an embodiment of the present invention, as Figure 12, showing the components and relationships between a chip-to-chip adapter and a universal die-to-die interconnect. Figure 12 There are chip-to-chip adapters (Die-to-Die Adapter) at both ends, which are interface devices connecting different chips (chip-11 and chip-12) and are responsible for data transmission and reception. Chip-11 and chip-12 include Peripheral Component Interconnect Express (PCIe), Compute Express Link (CXL), and Streaming, respectively. The universal chip interconnect side channel transmitter is located next to the chip-to-chip adapter. The above transmitter is responsible for sending data through the side channel. The universal chip interconnect side signal receiver (UCIE Sideband RX), corresponding to the transmitter, is responsible for receiving data transmitted through the side channel. The forwarding clock (Fwd Clock) and side channel data (Sideband Data, SB Data for short) are transmitted between the universal chip interconnect side channel transmitters (UCIE Sideband TX) of the two chips. The validity and tracking of the forwarding clock transmitted between the Universal Chip Interconnect Main Band TX (UCIE Main Band TX) of the two chips, as well as the x64 / x16 Main Band Data (MB Data for short).

[0242] In an embodiment of the present invention, during the data frame transmission process, the second channel data other than the first channel data in the target signal channel can be determined based on the first channel data in the historical data frame. A plurality of target channel data including the second channel data to be framed can be determined based on the second channel data and the initial data frame after the historical data frame. The target framing priority of the target channel data when framing to the initial data frame can be determined by the channel type corresponding to the target channel data, so that the target channel data determined above can be framed to the initial data frame according to the target framing priority and the channel type to obtain the target data frame. The target data frame can be transmitted using the interface signal corresponding to the target data frame. By the above method, the fixed time-sharing transmission of data in each target signal channel is avoided, but more data is filled in the current data frame as much as possible to reduce the no-load or low-load rate of the current data frame, so as to achieve the technical effect of improving the bandwidth resource utilization of the interface and solve the technical problem of low bandwidth resource utilization of the interface.

[0243] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data that have been authorized by the user or fully authorized by all parties. Moreover, the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or reject.

[0244] According to another aspect of the embodiments of the present invention, corresponding to the embodiments of the above data transmission method, this specification also provides a data transmission system. Figure 13 It is a system block diagram of a data transmission system shown according to the embodiments of the present invention, as Figure 13 shown. The data transmission system 1300 may include: a processor 1302, a framing module 1304, and a transmission module 1306.

[0245] The processor 1302 is configured to determine at least one type of second-channel data based on at least one type of first-channel data in a historical data frame, where the first-channel data comes from a target signal channel, and the second-channel data is the channel data in the target signal channel other than the first-channel data; and determine multiple types of target-channel data to be framed based on the second-channel data and an initial data frame, where the initial data frame is located after the historical data frame, and the multiple types of target-channel data include the second-channel data.

[0246] The framing module 1304 is configured to determine the target framing priority of the target-channel data based on the channel type corresponding to the target-channel data, where the target framing priority is used to represent the target sequence of framing the target-channel data into the initial data frame; and frame the multiple types of target-channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame.

[0247] The transmission module 1306 is configured to transmit the target data frame by using the interface signal corresponding to the target data frame.

[0248] In the data transmission system 1300 of this embodiment, by dynamically selecting the Channel signals participating in FLIT framing, the present invention can significantly improve the utilization rate of the bandwidth resources of FLIT frames, reduce the idle of bandwidth resources between FLITs, and thus improve the overall efficiency of data transmission. By using the FLIT TX Retry Buffer of the UCIE Controller, it is avoided to add an additional SFIFO buffer for each AXI Channel, simplifying the hardware design of the data transmission system, reducing the consumption of storage resources, and improving the integration and performance of the chip. Compared with the method in the related art of fixedly framing the data of different Channels independently, the combination of the processor 1202, the framing module 1204, and the transmission module 1206 proposed in the embodiment of the present invention realizes the dynamic management and optimization of data transmission, and more effectively utilizes the bandwidth resources of the communication interface.

[0249] In summary, the data transmission system 1200 of the embodiment of the present invention, through the analysis and decision-making of the processor, the flexible framing of the framing module, and the efficient transmission of the transmission module, achieves the optimization of multi-channel data transmission, realizes the technical effect of improving the utilization rate of the bandwidth resources of the interface, and solves the technical problem of low utilization rate of the bandwidth resources of the interface.

[0250] According to another aspect of the embodiment of the present invention, corresponding to the embodiment of the above data transmission method, the present specification further provides a data transmission device. Figure 14 It is a structural block diagram of a data transmission device shown according to an embodiment of the present invention. As Figure 14 shown, the data transmission device 1400 may include: a first determination unit 1402, a second determination unit 1404, a third determination unit 1406, a framing unit 1408, and a transmission unit 1410.

[0251] The first determination unit 1402 is configured to determine at least one type of second channel data based on at least one type of first channel data in the historical data frame.

[0252] The second determination unit 1404 is configured to determine multiple types of target channel data to be framed based on the second channel data and the initial data frame.

[0253] The third determination unit 1406 is configured to determine the target framing priority of the target channel data based on the channel type corresponding to the target channel data.

[0254] The framing unit 1408 is configured to frame multiple types of target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame.

[0255] The transmission unit 1410 is configured to transmit the target data frame by using the interface signal corresponding to the target data frame.

[0256] In this embodiment, a first determining unit 1402 determines at least one type of second channel data based on at least one type of first channel data in a historical data frame; a second determining unit 1404 determines multiple types of target channel data to be framed based on the second channel data and an initial data frame; a third determining unit 1406 determines a target framing priority of the target channel data based on the channel type corresponding to the target channel data; a framing unit 1408 frames the multiple types of target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame; and a transmission unit 1410 transmits the target data frame by using an interface signal corresponding to the target data frame, thereby achieving the technical effect of improving the utilization rate of the bandwidth resources of the interface and solving or partially solving the technical problem of low utilization rate of the bandwidth resources of the interface.

[0257] An embodiment of the present application further provides a vehicle, including: a memory storing an executable program; and a processor configured to run the program, wherein when the program runs, it executes the methods in the various embodiments of the present invention.

[0258] Figure 15 is a structural block diagram of an autonomous vehicle shown according to an embodiment of the present invention, as Figure 15 shown, the components of the autonomous vehicle 1500 include but are not limited to a memory 1510 and a processor 1520. The processor 1520 and the memory 1510 are connected through a bus 1530, and a database 1560 is used to store data.

[0259] The autonomous vehicle 1500 may also include an access device 1540 that enables the autonomous vehicle 1500 to communicate via one or more networks 1550. Examples of such networks include the Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 1540 may include one or more of any type of wired or wireless network interface (e.g., a network interface controller (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) wireless interface, a Worldwide Interoperability for Microwave Access (WiMAX) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.

[0260] In one embodiment of the present disclosure, the above components of the autonomous vehicle 1500 and Figure 15 other components not shown may also be connected to each other, for example, via a bus. It should be understood that Figure 15 the block diagram of the autonomous vehicle shown is for illustrative purposes only and is not a limitation on the scope of the present disclosure. Those skilled in the art may add or replace other components as needed.

[0261] Embodiments of the present application also provide a computer-readable storage medium that includes a stored executable program. When the executable program runs, it controls the device where the computer-readable storage medium is located to execute the methods in various embodiments of the present invention.

[0262] Embodiments of the present application also provide a computer program product that includes a computer program which, when executed by a processor, implements the methods in various embodiments of the present invention.

[0263] Embodiments of the present application also provide a computer program product, including a non-volatile computer-readable storage medium for storing a computer program, where the computer program, when executed by a processor, implements the methods in various embodiments of the present invention.

[0264] Embodiments of the present application also provide a computer program, where the computer program, when executed by a processor, implements the methods in various embodiments of the present invention described above.

[0265] In the above embodiments of the present invention, the descriptions of the various embodiments have their own emphases. For parts not detailed in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.

[0266] In the several embodiments provided by the present application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are merely illustrative. For example, the division of the units can be a logical function division, and there can be other division methods in actual implementation. For example, 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 displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces, and the indirect couplings or communication connections of the units or modules can be in electrical or other forms.

[0267] The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they can be located in one place or distributed to multiple units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0268] In addition, in various embodiments of the present invention, the functional units can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.

[0269] When the 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 such understanding, the technical solution of the present invention, in essence, 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. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The foregoing storage medium includes: various media that can store program codes, such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), mobile hard disks, magnetic disks, or optical discs.

[0270] The foregoing are only the preferred embodiments of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and refinements can be made, and these improvements and refinements should also be regarded as the protection scope of the present invention.

Claims

1. A data transmission method, characterized in that: include: Determine at least one second channel data based on at least one first channel data in the historical data frame, wherein the first channel data comes from a target signal channel, and the second channel data is channel data in the target signal channel other than the first channel data; Determining a plurality of target channel data to be framed based on the second channel data and an initial data frame, wherein the initial data frame is located after the historical data frame, and the plurality of target channel data includes the second channel data; Determine a target framing priority of the target channel data based on the channel type corresponding to the target channel data, wherein the target framing priority is used to indicate a target sequence for framing the target channel data into the initial data frame; According to the target framing priority and the channel type, framing the multiple target channel data into the initial data frame to obtain a target data frame; The target data frame is transmitted using an interface signal corresponding to the target data frame.

2. The method according to claim 1, characterized in that Determining a target framing priority of the target channel data based on a channel type corresponding to the target channel data includes: Determine an initial framing priority corresponding to the channel type, wherein different channel types correspond to different initial framing priorities, and the initial framing priority is used to indicate an initial sequence of framing the target channel data into the initial data frame; According to the target amount of resources required to be occupied by the target channel data, the initial framing priority is adjusted to obtain the target framing priority, wherein the target framing priority is positively correlated with the target amount of resources.

3. The method according to claim 1, characterized in that According to the target framing priority and the channel type, framing the multiple target channel data into the initial data frame to obtain a target data frame, including: Determine a framing position corresponding to the target channel data in the initial data frame based on the target framing priority, the channel type, and the target amount of resources required to be occupied by the target channel data; In the initial data frame, the multiple target channel data are framed according to the frame positions corresponding to the multiple target channel data to obtain the target data frame.

4. The method according to claim 3, characterized in that Determining a framing position corresponding to the target channel data in the initial data frame based on the target framing priority, the channel type, and the target amount of resources required to be occupied by the target channel data includes: According to the target framing priority of the target channel data, determining the upper-level target channel data of the target channel data among the multiple target channel data, wherein the target framing priority of the upper-level target channel data is before the target framing priority of the target channel data; The framing position corresponding to the previous level target channel data in the initial data frame is determined based on the framing position corresponding to the previous level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the target amount of resources required to be occupied by the target channel data.

5. The method according to claim 4, characterized in that The target resource amount includes a data storage unit, the identification information of the channel type corresponding to the target channel data occupies a first number of the data storage units in the initial data frame, and the target channel data occupies a second number of the data storage units in the initial data frame, and based on the framing position corresponding to the upper-level target channel data in the initial data frame, the channel type corresponding to the target channel data, and the target resource amount required to be occupied by the target channel data, determining the framing position corresponding to the target channel data in the initial data frame, including: For the framing position corresponding to the previous level target channel data in the initial data frame, the first number of data storage units and the second number of data storage units are offset to obtain the framing position corresponding to the target channel data in the initial data frame.

6. The method according to claim 3, characterized in that In the initial data frame, framing the multiple target channel data respectively according to the framing positions corresponding to the multiple target channel data to obtain the target data frame, including: In the initial data frame, the multiple target channel data are framed in sequence according to the framing positions corresponding to the multiple target channel data; In response to the existence of at least one data storage unit in an idle state in the initial data frame after framing, a placeholder operation is performed on the data storage unit to obtain the target data frame.

7. The method according to claim 1, characterized in that Based on the second channel data and the initial data frame, a plurality of target channel data to be framed are determined, including: Determining a target amount of resources that the second channel data needs to occupy in the initial data frame; Determine, in the resource amount of the initial data frame, the remaining resource amount other than the target resource amount; The plurality of target channel data are determined based on the remaining resource amount and the second channel data.

8. The method according to claim 7, characterized in that Determining the plurality of target channel data based on the remaining resource amount and the second channel data includes: In response to the channel request, the plurality of target signal channels are detected respectively to obtain at least one third channel data whose total resource amount satisfies the remaining resource amount, wherein the third channel data is at least part of the channel data in the corresponding target signal channel, and the channel data amount in the target signal channel remains unchanged; The at least one third channel data and the second channel data are determined as the plurality of target channel data.

9. The method according to claim 8, characterized in that Determining at least one second channel data based on at least one first channel data in the historical data frame includes: Acquire, from a buffer, at least one type of second channel data determined based on at least one type of first channel data in the historical data frame; The method further includes: in response to the third channel data being part of the channel data in the corresponding target signal channel, storing the channel data in the target signal channel except the third channel data in the buffer.

10. The method according to any one of claims 1 to 9, characterized in that Transmitting the target data frame using an interface signal corresponding to the target data frame includes: The target data frame is transmitted to the receiving end by using the interface signal corresponding to the target data frame, wherein the target data frame is unpacked by the receiving end according to the channel type corresponding to the target channel data, the target framing priority of the target channel data, and the target amount of resources required to be occupied by the target channel data.

11. The method according to any one of claims 1 to 9, characterized in that: The first channel data and the second channel data meet the advanced expansion interface AXI protocol, and the interface signal meets the chip exchange protocol CXS.

12. A data transmission system, characterized in that: include: The processor is configured to determine at least one second channel data based on at least one first channel data in the historical data frame, wherein the first channel data is from a target signal channel, and the second channel data is channel data in the target signal channel other than the first channel data; and determine a plurality of target channel data to be framed based on the second channel data and an initial data frame, wherein the initial data frame is located after the historical data frame, and the plurality of target channel data includes the second channel data; a framing module, configured to determine a target framing priority of the target channel data based on a channel type corresponding to the target channel data, wherein the target framing priority is used to indicate a target sequence for framing the target channel data into the initial data frame; and to frame the multiple target channel data into the initial data frame according to the target framing priority and the channel type to obtain a target data frame; The transmission module is used to transmit the target data frame by using the interface signal corresponding to the target data frame.

13. A vehicle, characterized in that: include: A memory storing an executable program; A processor, configured to run the program, wherein the program executes the method according to any one of claims 1 to 11 when running.

Citation Information

Cited By

  • Data transmission method based on UCIe, storage medium and artificial intelligence chip

    CN120750496A

  • UCIe-based data transmission methods, storage media, and artificial intelligence chips

    CN120750496B