Data transmission method and device, electronic equipment and computer storage medium

By combining the release information of area resources with data packets in the data transmission between integrated electrical circuit units, the problem of Tkn total packet occupies space and low transmission efficiency is solved, and more efficient data transmission is achieved.

CN120123286APending Publication Date: 2025-06-10HYGON INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510247028.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-04
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

During the data transmission between integrated circuit units, the Tkn general packet in the prior art can only be transmitted with other request packets during non-data packet transmission, resulting in reduced transmission efficiency and reduced bandwidth.

Method used

By acquiring the release packet of the area resource in the reception queue of the second integrated circuit unit and sending it to the first integrated circuit unit, the request packet and data packet of the transmission queue are determined based on the information packet. At the same time, the first integrated circuit unit receives the second release information general packet and the second release information sub-packet of the area resources in the queue, combines it with the data packet and the request packet, and sends it to the second integrated circuit unit.

Benefits of technology

It improves the release speed of area resources, enhances the bandwidth and efficiency of data transmission, and avoids the problem of Tkn general packet occupying other request packet space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120123286A_ABST
    Figure CN120123286A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method and device, electronic equipment and a computer storage medium, which are applied to a first integrated circuit unit and a second integrated circuit unit. The data transmission method comprises the following steps: acquiring a first release information packet of an area resource in a receiving queue of a second integrated circuit unit and sending the first release information packet to a first integrated circuit unit; determining a request packet of a transmit queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; obtaining a second release information sub-packet of the area resource in the first integrated circuit unit receiving queue, the second release information sub-packet being placed in the data packet; and transmitting the data packet including the second release information sub-packet to the second integrated circuit unit. According to the data transmission method, the release information of the area resource of the receiving queue is combined with the transmission of the data packet, so that the release speed of the area resource is increased, and the bandwidth of data transmission is improved by using limited resources.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure relate to a data transmission method, device, electronic device, and computer storage medium. Background Art

[0002] Chiplet technology is the mainstream solution for large-scale integrated circuit design. The communication between the core integrated circuit units (Die) is particularly critical. The communication bandwidth and data packet transmission efficiency are directly related to the performance of the integrated circuit units. When the integrated circuit units communicate with each other, the storage unit area set up for receiving the transmitted message packets is an important factor affecting the bandwidth and transmission efficiency. Summary of the invention

[0003] At least one embodiment of the present disclosure provides a data transmission method, which is applied to a first integrated circuit unit and a second integrated circuit unit, wherein the data transmission method includes: obtaining a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and sending the first release information packet to the first integrated circuit unit; determining a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; obtaining a second release information total packet and a second release information sub-packet of area resources in the receiving queue of the first integrated circuit unit, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and the data in the data packet whose space is occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet; sending the request packet including the second release information total packet and the data packet including the second release information sub-packet to the second integrated circuit unit.

[0004] For example, in the data transmission method provided by at least one embodiment of the present disclosure, when the second release information general packet is sending the request packet, the first integrated circuit unit receives the release information of the area resources in the queue; when the second release information sub-packet is sending the data packet corresponding to the request packet, the first integrated circuit unit receives the real-time release flag information of the area resources in the queue.

[0005] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the request packet includes multiple types, and each type of request packet corresponds to a group of data packet queues including N data packets.

[0006] The second release information sub-packet is placed in the data packet, including: placing the second release information sub-packet in the first bit field of each data packet in a queue of multiple types of data packets transmitted continuously, wherein N is an integer greater than or equal to 0.

[0007] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the request packet includes multiple types, and each type of request packet corresponds to a group of data packet queues including N data packets.

[0008] The second release information sub-packet is placed in the data packet, including: based on a preset first rule, placing the second release information sub-packet on the first bit field of every n data packets in at least one type of data packet queue for continuous transmission, wherein N is an integer greater than or equal to 0, and n is a positive integer greater than or equal to 0 and less than or equal to N.

[0009] For example, in the data transmission method provided by at least one embodiment of the present disclosure, after sending the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit, the method further includes: parsing the second release information general packet by the second integrated circuit unit to obtain the release information of the area resources of the request packet receiving queue and the data packet receiving queue in the receiving queue of the first integrated circuit unit; and parsing the second release information sub-packet by the second integrated circuit unit to adjust and update the release information of the area resources of the receiving queue of the data packet corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit.

[0010] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the second release information sub-packet includes at least one binary flag bit, wherein the at least one binary flag bit indicates the release information of the receiving queue of the data packet corresponding to at least one request packet type,

[0011] The step of parsing the second release information sub-packet by the second integrated circuit unit to adjust and update the release information of the area resources of the data packet receiving queue corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit includes:

[0012] In response to parsing that at least one binary flag bit of the second release information sub-packet is 0, the number of released area resources of the data packet receiving queue corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is not updated; or

[0013] In response to parsing that at least one binary flag bit of the second release information sub-packet is 1, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased.

[0014] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased, including: based on a preset second rule, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased to m, where m is a positive integer greater than or equal to 1.

[0015] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the request packet including the second release information general packet and the data packet including the second release information sub-packet are sent to the second integrated circuit unit, including: transmitting the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit via a link packet, wherein the transmission priority of the request packet including the second release information general packet is greater than the transmission priority of the data packet including the second release information sub-packet.

[0016] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the step of transmitting the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit through a link packet includes:

[0017] In response to the data bit width of the link packet being less than or equal to the data bit width of any one of the request packet including the second release information general packet and the data packet including the second release information sub-packet, the request packet including the second release information general packet and the data packet including the second release information sub-packet are each formed into a link packet for separate transmission; or

[0018] In response to the data bit width of the link packet being greater than the data bit width of any of the request packet including the second release information general packet and the data packet including the second release information sub-packet, the request packet including the second release information general packet, the complete data packet and the second release information sub-packet are spliced ​​into a link packet for unified transmission.

[0019] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the request packet including the second release information general packet and the data packet including the second release information sub-packet are spliced ​​into a link packet for unified transmission, including: the request packet of the sending queue of the first integrated circuit unit and the data packet corresponding to the request packet are packaged into a link packet, and the second release information is placed in the second bit field of the link packet.

[0020] For example, in the data transmission method provided by at least one embodiment of the present disclosure, the number of request packets including the second release information packet sent to the second integrated circuit unit is K,

[0021] Placing the second release information total packet in at least part of the request packets includes: placing the second release information total packet in the third bit field of every k request packets among the K request packets, where k is a positive integer greater than or equal to 0.

[0022] At least one embodiment of the present disclosure further provides a data transmission device, which is applied to a first integrated circuit unit and a second integrated circuit unit, including: a second integrated circuit unit area resource acquisition module, configured to acquire a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and send the first release information packet to the first integrated circuit unit; a data determination module, configured to determine a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; the first integrated circuit unit area resource acquisition module, configured to acquire a second release information total packet and a second release information sub-packet of area resources in the receiving queue of the first integrated circuit unit, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and the data in the data packet occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet; and a data sending module, configured to send a request packet including the second release information total packet and a data packet including the second release information sub-packet to the second integrated circuit unit.

[0023] At least one embodiment of the present disclosure also provides an electronic device, comprising: a processing device; and a storage device, comprising one or more computer program modules; wherein the one or more computer program modules are stored in the storage device and configured to be executed by the processing device, and the one or more computer program modules are used to execute the data transmission method described in any of the above embodiments.

[0024] At least one embodiment of the present disclosure further provides a non-temporary storage medium that non-temporarily stores computer-executable instructions, wherein when the computer-executable instructions are executed by a computer, the data transmission method described in any of the above embodiments is executed. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings of the embodiments will be briefly introduced below. Obviously, the drawings in the following description only relate to some embodiments of the present disclosure, but are not intended to limit the present disclosure.

[0026] Figure 1A schematic diagram of a use scenario of data transmission is shown;

[0027] Figure 2 for Figure 1 A schematic diagram of the data transmission process between the conversion modules shown;

[0028] Figure 3 A schematic diagram of the structure of a link packet in data transmission is shown;

[0029] Figure 4 A schematic diagram showing a flow chart of a data transmission method provided by at least one embodiment of the present disclosure;

[0030] Figure 5 A schematic diagram showing the structure of a link packet in a data transmission method provided by at least one embodiment of the present disclosure is shown;

[0031] Fig. 6A A schematic diagram showing the structure of a portion of link packets in another data transmission method provided by at least one embodiment of the present disclosure is shown;

[0032] Figure 6B based on Fig. 6A A schematic diagram showing the structure of another part of link packets in another data transmission method provided by at least one embodiment of the present disclosure is shown;

[0033] Figure 7 A schematic block diagram of a data transmission device provided by at least one embodiment of the present disclosure is shown;

[0034] Figure 8 A schematic block diagram of an electronic device provided by at least one embodiment of the present disclosure is shown; and

[0035] Fig. 9 A schematic block diagram of a computer storage medium provided by at least one embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0036] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings of the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, not all of the embodiments. Based on the described embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present disclosure.

[0037] Unless otherwise defined, the technical terms or scientific terms used in the present disclosure should be understood by people with ordinary skills in the field to which the present disclosure belongs. The "first", "second" and similar words used in the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. Similarly, similar words such as "one", "one" or "the" do not indicate quantity restrictions, but indicate that there is at least one. Similar words such as "include" or "comprise" mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. Similar words such as "connect" or "connected" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.

[0038] In integrated circuit design, the size of the storage unit area directly affects the number of message packets it can accommodate. The larger the area, the more data can be stored, but this also increases power consumption and cost. Therefore, under the constraints of power consumption and cost, a balance needs to be found to ensure that the storage unit area can meet communication needs without excessively consuming resources.

[0039] When the storage unit area is determined, its recycling speed is also critical. If the recycling speed is slow, even if the area is large, it will not be able to release space in time to receive new message packets, resulting in problems such as reduced bandwidth. Therefore, optimizing the recycling speed of the storage unit area is an important means to improve transmission efficiency.

[0040] In large-scale integrated circuit design, in order to achieve normal data transmission between various integrated circuit units, a storage unit area is set in each integrated circuit unit to receive the transmitted message packet. The idle storage unit area can be represented by a token (Tkn for short), which means a numerical embodiment of the size of the area resource in the receiving queue of each integrated circuit unit. A message packet may include, for example, a request packet (Cmd Packet) or a data packet (Data Packet), wherein a request packet may include, for example, a request instruction (Request), a response instruction (Response), and a capture instruction (Snoop), etc.; a data packet may include, for example, write data, read response data, and other data packets.

[0041] During the data transmission process between each integrated circuit unit, each integrated circuit unit releases the idle area resources of each type of receiving queue of itself to the receiving queue of the other end through a letter of credit (TknRls), for example, it may include a request instruction letter of credit release (Request Token Release, referred to as RequestTknRls), a response instruction letter of credit release (Response Token Release, referred to as ResponseTknRls), etc. Specifically, at present, each integrated circuit unit will integrate all types of letter of credit release (TknRls) into a letter of credit release package (Tkn package), which represents the collection of the release of idle area resources of various types of receiving queues. During the period when no data packets are transmitted between each integrated circuit unit, the above-mentioned letter of credit release package will be packaged together with other request packets for transmission, so that the idle area resources of each type of receiving queue of itself are given to the receiving queue of the other end through the letter of credit release package for reference and use by the sending queue of the other end. It should be noted that data can only be successfully transmitted when the data sending end determines that there are idle area resources in the data receiving queue of the other end.

[0042] Figure 1 A schematic diagram of a usage scenario of data transmission is shown.

[0043] like Figure 1 As shown, for example, the use scenario may include a first integrated circuit unit 100 and a second integrated circuit unit 200. The first integrated circuit unit 100 includes a network-on-chip (NoC) 110, a conversion module 120, and a deserializer (SerDes) 130; the second integrated circuit unit 200 also includes a network-on-chip (NoC) 210, a conversion module 220, and a deserializer (SerDes) 230.

[0044] For example, the on-chip network 110 in the first integrated circuit unit 100 can read data from the memory and generate relevant routing to transmit the read data to the deserializer 230 in the second integrated circuit unit 200 after parallel-to-serial conversion through the conversion module 120 and the deserializer 130. The deserializer 230 then converts the received data from serial to parallel and transmits it to the conversion module 220. The data is then transmitted from the conversion module 220 to the on-chip network 210 via the routing generated by the on-chip network 210 for interactive operations on related data.

[0045] Figure 2 for Figure 1 Schematic diagram of the data transmission process between conversion modules shown.

[0046] For example, Figure 2 As shown, the following is introduced by taking the first integrated circuit unit as the data sending unit and the second integrated circuit unit as the data receiving unit as an example, and vice versa.

[0047] The data sent via the on-chip network in the first integrated circuit unit enters the data sending queue of the conversion module 120. For example, the data sending queue may include a type 1 request packet sending queue, ..., a type n (n is an integer greater than or equal to 0) request packet sending queue, and a data packet sending queue corresponding to the various types of request packet sending queues. The type 1 request packet sending queue, ..., and the type n request packet sending queue read the request packet data to be sent from each sending queue according to the value in the letter of credit sending counter (SendTokenCount, referred to as SndTknCnt) 150. It should be noted that before reading a type of request packet data, it is necessary to determine whether the letter of credit value of the type of request packet in the letter of credit sending counter 150 is greater than 0. Only when the letter of credit value of the type of request packet is greater than 0, the reading can be successful, and the corresponding letter of credit number of the type of request packet is adjusted according to the released space. When the letter of credit number of the type of request packet is 0, the reading of the type of request packet will be stopped. Because the letter of credit value of the data packet corresponding to each type of request packet data is determined before reading the data packet data of that type, there is no need for the above-mentioned letter of credit value determination process for each type of data packet sending queue (not shown in the figure).

[0048] The read request packet data of each type are respectively composed of request packet sending packets of each type, and the request packet sending packets of each type are packaged together with the credit release total packet sending packet (i.e., Tkn total packet sending packet) of the first integrated circuit unit obtained from the credit receiving counter (ReceiveTokenCount, RcvTknCnt for short) 160 into a request packet and sent to the arbitrator 140. At the same time, the data packet sending packets corresponding to the request packets of each type are also sent to the arbitrator 140 one by one.

[0049] The arbiter 140 selects a request packet or a data packet sending packet corresponding to a certain type of request packet according to a preset algorithm logic and transmits it to the conversion module 220 of the second integrated circuit unit through a link packet (PCS Packet). It should be noted that the transmission priority of the request packet and the transmission priority of the data packet sending packet corresponding to the type of request packet can be flexibly configured, and the present disclosure does not limit this. As an example, the transmission priority of the request packet of an embodiment of the present disclosure is higher than the transmission priority of the data packet sending packet corresponding to the type of request packet. For example, the request packet is transmitted first, and then the type 1 data packet sending packet, ..., and the type n data packet sending packet are transmitted. Among them, the request packet includes a type 1 request packet sending packet, ..., and a type n request packet sending packet, and the transmission priorities of the type 1 data packet sending packet, ..., and the type n data packet sending packet have no order of priority.

[0050] The conversion module 120 of the second integrated circuit unit unpacks the received link packet (e.g., request packet) data to obtain type 1 request packet receiving packets, ..., and type n request packet receiving packets. At the same time, it also unpacks to obtain the letter of credit release total packet receiving packet (i.e., Tkn total packet receiving packet) of the first integrated circuit unit. It should be noted that the conversion module 120 also unpacks the received various types of data packet sending packets to obtain various types of data packet receiving packets (not shown in the figure).

[0051] For the unpacked request packet, on the one hand, the received packets of each type of request packet will be transmitted to the receiving queue of each type of request packet, and then as the sending queue, the request packets of each type will be transmitted to the next level integrated circuit unit (for example, the third integrated circuit unit, not shown in the figure) in the above-mentioned manner for data interaction. At the same time, since the request packet data is transmitted to the next level integrated circuit unit, the storage area resources of the second integrated circuit unit are released, that is, the credit value of each type of request packet will be released (for example, the credit value of each type of request packet is adjusted according to the released space). The credit value of each type of request packet will be stored in the credit receiving counter (ReceiveTokenCount, referred to as RcvTknCnt) 260 to indicate the size of the idle area resources of the receiving queue of each type of request packet in the second integrated circuit unit, and the data packet can be verified in the same way. On the other hand, the received total credit release packet used to indicate the size of the idle area resources of the receiving queue in the first integrated circuit unit will be stored in the credit sending counter (SendTokenCount, referred to as SndTknCnt) 250. Then, the second integrated circuit unit is used as the data sending unit and the first integrated circuit unit is used as the data receiving unit to repeat the above data transmission process, which will not be described in detail here. In this way, the cyclic transmission of data between each integrated circuit unit (for example, two) is realized.

[0052] It should be noted that the initial values ​​of the letter of credit sending counter 150 in the first integrated circuit unit and the letter of credit sending counter 250 in the second integrated circuit unit are determined by the storage unit area size (ie, hardware transmission capability) of each integrated circuit unit when no data is transmitted.

[0053] Figure 3 A schematic diagram of the structure of a link packet in data transmission is shown.

[0054] like Figure 3 As shown, a link packet can generally be composed of two types of data packets. One is a link packet composed of a letter of credit release general packet (Tkn general packet) and various types of request packets; the other is a link packet composed of data packets corresponding to various types of request packets. For example, the bit field of the Tkn general packet in the link packet depends on the specific situation. For example, the Tkn general packet is placed in the low bit field of the link packet.

[0055] The inventors have noticed that, at present, in the data transmission process between integrated circuit units, the Tkn total packet can only be packaged and transmitted together with other types of request packets during the non-data packet transmission period, and then the letter of credit values ​​of each type (such as the request packet and the data packet corresponding to the request packet) can be sent to the other end. On the one hand, the data transmission method uses the Tkn total packet to occupy the space of at least some types of request packets, which reduces the types of request packets transmitted and thus affects the data transmission efficiency; on the other hand, in actual application scenarios, in the data transmission process between integrated circuit units, if the data transmission efficiency of one end is relatively large (that is, the number of transmission packets of the data packets corresponding to each type of request packet is relatively large), and considering that the Tkn total packet is limited to be packaged and transmitted during the non-data packet transmission period, this will cause the interval time between the Tkn packets received by the other end to be too long, that is, the letter of credit (Tkn) value is released slowly, which in turn affects the data transmission bandwidth and transmission efficiency of the other end. And considering that the Tkn total packet will occupy the space of other types of request packets, it is also impossible to simply increase the number of Tkn total packets to increase the release of the letter of credit (Tkn).

[0056] At least one embodiment of the present disclosure provides a data transmission method, which is applied to a first integrated circuit unit and a second integrated circuit unit, wherein the data transmission method includes: obtaining a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and sending the first release information packet to the first integrated circuit unit; determining a request packet in a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; obtaining a second release information total packet and a second release information sub-packet of area resources in the receiving queue of the first integrated circuit unit, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and the data in the data packet occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet; and sending the request packet including the second release information total packet and the data packet including the second release information sub-packet to the second integrated circuit unit. Here, "first integrated circuit unit" and "second integrated circuit unit" are used to refer to any two integrated circuit units as description objects among a plurality of integrated circuit units.

[0057] At least one embodiment of the present disclosure provides a data transmission method based on the above Figure 2 The data receiving and sending logic of the integrated circuit unit conversion module shown combines the release information of area resources with the transmission of data packets, which not only improves the release speed of area resources without affecting the transmission of other types of request packets, but also uses limited resources to increase the bandwidth of data transmission, thereby improving the efficiency of data transmission.

[0058] The embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.

[0059] Figure 4 FIG. 1 is a flow chart of a data transmission method provided by at least one embodiment of the present disclosure. Figure 4 As shown, the data transmission method provided by the embodiment of the present disclosure includes steps S410 to S440.

[0060] Step S410: Acquire a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and send the first release information packet to the first integrated circuit unit.

[0061] Step S420: Determine a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet.

[0062] Step S430: Obtain a second release information packet and a second release information sub-packet of area resources in the first integrated circuit unit receiving queue, wherein the second release information sub-packet is placed in the data packet, the second release information packet is placed in at least part of the request packet, and the data in the data packet occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet.

[0063] Step S440: Sending the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit.

[0064] For step S410, for example, the first release information packet indicates the size of the area resources in each type of receiving queue in the second integrated circuit unit, that is, the size of the Tkn value, which is used to characterize the data receiving capability of each type of receiving queue (for example, the Request receiving queue, the Response receiving queue, etc.). For example, the Tkn value can be any one of 4 / 6 / 8 / 10, etc., based on the specific data receiving capability of the hardware in the integrated circuit unit, and the present disclosure does not limit this.

[0065] For example, in a possible implementation, sending the first release information packet to the first integrated circuit unit includes: Figure 2 The data transmission method sends the Tkn total package of the second integrated circuit unit to the first integrated circuit unit. It should be noted that the first release information of the second integrated circuit unit can be the Tkn total package of the second integrated circuit unit.

[0066] For example, in a possible implementation, sending the first release information packet to the first integrated circuit unit may further include: when data transmission has not started, manually configuring the initial Tkn value of the second integrated circuit unit stored in the first integrated circuit unit based on the transmission performance of the hardware. Similarly, the initial Tkn value of the first integrated circuit unit stored in the second integrated circuit unit may also be manually configured.

[0067] For step S420, determining the request packet of the sending queue of the first integrated circuit unit and the data packet corresponding to the request packet based on the first release information packet includes: Figure 2In the data transmission method, the first release information packet (i.e., Tkn value) is stored in the letter of credit sending counter 150, and after the sending queues of each type of request packets in the first integrated circuit unit judge the Tkn value of each type of request packets in the letter of credit sending counter 150, they read the corresponding request packet data of each type to form a sending packet of each type of request packets and transmit it to the arbitrator 140. It should be noted that, since the Tkn value of the data packet corresponding to the type of request packet data stored in the letter of credit sending counter 150 is judged before reading the data of each type of request packet, it is not necessary to judge the Tkn value of the data packet of each type of data packet.

[0068] For example, in a possible implementation, it is determined that the Tkn value of each type of request packet is greater than 0, and then each type of request packet is read successfully, and the corresponding Tkn value of each type of request packet is adjusted according to the released space. Alternatively, it is determined that the Tkn value of each type of request packet is 0, and the reading operation of each type of request packet is stopped, and the data transmission is resumed after receiving the new first release information packet sent by the second integrated circuit unit.

[0069] For step S430, for example, the second release information packet is the release information of the area resources in the first integrated circuit unit receiving queue when sending the request packet. The second release information packet includes the release information of all types of data packets, for example, it may include the release information of all types of request packets and the data packets corresponding to all types of request packets, that is, the Tkn packet mentioned above. For example, the type of request packet may include request instructions (Request), response instructions (Response), capture instructions (Snoop) and any other instructions related to data interaction operations, and the present disclosure does not limit this.

[0070] It should be noted that, in actual application scenarios, each type of request packet corresponds to a group of data packet queues including N data packets, where N is an integer greater than or equal to 0, and the specific value is based on the data transmission efficiency and bandwidth. For example, in one possible implementation, if the data packet transmission efficiency corresponding to the current type of request packet is relatively large, the request packet may correspond to a group of data packet queues including multiple data packets, for example, including 2, 4, 6, 7, etc., depending on the specific situation, and the present disclosure does not limit the size of the data packet queue. It should also be noted that the size of the data packet queue corresponding to each type of request packet can be the same or different, and the specific size is based on the actual transmission efficiency requirements of the data packets corresponding to each type of request packet, and the present disclosure does not limit this.

[0071] The second release information sub-packet is the real-time release mark information of the area resources in the first integrated circuit unit receiving queue when the data packet corresponding to the sending request packet is sent. Different from the second release information total packet, the second release information sub-packet (i.e., Tkn sub-packet) does not include the specific values ​​of the area resource sizes in each type of receiving queue.

[0072] For example, in a possible implementation, the second release information sub-packet includes at least one binary flag, wherein the at least one binary flag indicates the release information of the receiving queue of the data packet corresponding to at least one request packet type. It should be noted that the number of the binary flags is based on the data packet transmission efficiency corresponding to each type of request packet. For example, if there is only one instruction (request instruction) in the entire data packet transmission queue corresponding to a large number of data packets (for example, the number of packets is 6), that is, the transmission efficiency is relatively high, then the second release information sub-packet has only one binary flag to indicate the release information of the receiving queue of the data packet corresponding to the request instruction; if there are three instructions (for example, request instruction (Request), response instruction (Response) and capture instruction (Snoop)) corresponding to multiple data packets respectively, then the second release information sub-packet includes 3 binary flags to indicate the release information of the receiving queue of the data packet corresponding to the request instruction (Request), response instruction (Response) and capture instruction (Snoop), and so on.

[0073] For example, placing the second release information sub-packet in the data packet includes: placing the second release information sub-packet in the first bit field of each data packet in a queue of multiple types of data packets that are transmitted continuously.

[0074] For example, in one possible implementation, the bit width of the data packet is 512 bits. If the second release information sub-packet includes 3 binary flag bits, then the 3 binary flag bits can be placed on the low-order field of each data packet in the queue of multiple types of data packets transmitted continuously (for example, on the 0th to 2nd bits or on the 0th, 3rd, and 7th bits). It should be noted that the first bit field can be any area in the data packet (such as the low-order field, the middle-order field, the high-order field, and the area between any two areas, etc.), and the present disclosure does not limit this. And the arrangement of each binary flag bit (if the number is greater than 1) can be continuous or discontinuous, and the present disclosure does not limit this. It should also be noted that when each binary flag bit (if the number is greater than 1) is arranged continuously, the order of arrangement has no priority, and can be flexibly adjusted and configured manually, and the present disclosure does not limit this.

[0075] For example, the request packets include multiple types, each type of request packet corresponds to a group of data packet queues including N data packets, and the second release information sub-packet is placed in the data packet, and also includes: based on a preset first rule, the second release information sub-packet is placed in the first bit field of every n data packets in at least one type of data packet queue that is continuously transmitted, wherein N is an integer greater than or equal to 0, and n is a positive integer greater than or equal to 0 and less than or equal to N.

[0076] For example, in a possible implementation, not all types of request packets have a high data packet transmission efficiency. For example, the number of data packets corresponding to the request instruction is 7, and the number of data packets corresponding to the response instruction is 2. Since the data packet transmission efficiency corresponding to the response instruction is low, the area resources of the data packet receiving queue released from the second release information total packet (Tkn total packet) are sufficient to meet the transmission of the data corresponding to the response instruction from the second integrated circuit unit to the first integrated circuit unit. In this case, there is no need to put the second release information sub-packet in the data packet corresponding to the response instruction of the first integrated circuit unit, so as to avoid excessive occupation of the bit width of the request packet. For the data packets corresponding to the request instruction with a relatively high transmission efficiency, on the basis of meeting the data transmission bandwidth and efficiency (considering the area resources released by the Tkn total packet), in order to minimize the occupation of the request packet bit width resources, the Tkn sub-packet can be placed on the first bit field of every n data packets in the data packet queue corresponding to the request instruction based on the preset first rule. For example, n can be any integer greater than or equal to 0 and less than or equal to 7, and the present disclosure does not limit this. Assuming that n is given as 0, the Tkn sub-packet is placed on each data packet in the data packet queue corresponding to the request instruction. For example, if n is given as 1, the data packet queue corresponding to the request instruction includes 1 data packet (corresponding to data packet number 0), then the Tkn sub-packet is placed on data packet 0; if the data packet queue corresponding to the request instruction includes 2 data packets (corresponding to data packet number 0 and data packet 1), then the Tkn sub-packet is only placed on data packet 0; if the data packet queue corresponding to the request instruction includes 3 data packets (corresponding to data packet number 0, data packet 1, and data packet 3), then the Tkn sub-packet is placed on data packet 0 and data packet 2; and so on.

[0077] For example, in a possible implementation, the preset first rule can be manually configured at the software level by the unpacking logic of the receiving end. For example, it is sufficient to ensure that the receiving end unpacks and parses the Tkn sub-packet every n data packets corresponding to the above request instruction, where n can be any value including 0-7, and the present disclosure does not limit this.

[0078] For example, in a possible implementation, the data in the data packet whose space is occupied by the second release information sub-packet can be placed at any position of the request packet corresponding to the data packet, and the present disclosure does not impose any limitation on this.

[0079] For step S440, for example, sending a request packet including a second release information general packet and a data packet including a second release information sub-packet to a second integrated circuit unit includes: transmitting the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit via a link packet, wherein the transmission priority of the request packet including the second release information general packet is greater than the transmission priority of the data packet including the second release information sub-packet.

[0080] For example, in one possible implementation, the link packet may be a communication system based on packet switching (Packet Switching System, PCS for short), where the data is divided into a group of separate data packets at the sending end, each data packet is transmitted independently in the network, and then reassembled into complete information at the receiving end. For example, in one possible implementation, the data packet including the second release information sub-packet can only be transmitted after the request packet including the second release information total packet is completely transmitted to the second integrated circuit unit by forming a link packet. In the implementation of the present disclosure, there is no order of priority in the transmission of data packets corresponding to each type of request packet, but it is necessary to ensure that the data packet queue corresponding to the next type of request packet can only be transmitted after the data packet queue corresponding to one type of request packet is completely transmitted, until the data packet queues corresponding to all types of request packets are transmitted, and the next round of request packets are transmitted as described above. However, it should be noted that the specific transmission order of each type of request packet and data packet can be dynamically configured at the hardware and software levels based on actual conditions, and the present disclosure does not limit this.

[0081] For example, a request packet including a second release information general packet and a data packet including a second release information sub-packet are transmitted to a second integrated circuit unit via a link packet, including: in response to the data bit width of the link packet being less than or equal to the data bit width of any of the request packet including the second release information general packet and the data packet including the second release information sub-packet, the request packet including the second release information general packet and the data packet including the second release information sub-packet are each formed into a link packet for separate transmission.

[0082] For example, in one possible implementation, the data bit width of the link packet is 512 bits (i.e., its maximum single-time data transmission capacity is 512 bits), and the data bit widths of the request packet including the second release information general packet and the data packet including the second release information sub-packet are generally the same, or they may be different. For example, the data bit widths of the request packet including the second release information general packet and the data packet including the second release information sub-packet are both 600 bits, which exceeds the data bit width of the link packet of 512 bits. At this time, the data bit widths of the request packet including the second release information general packet and the data packet including the second release information sub-packet can be compressed to 512 bits through algorithms such as data compression, so that each forms a link packet for transmission. It should be noted that in this scenario, the request packet and the data packet are transmitted separately and the request packet needs to be transmitted before the data packet.

[0083] For example, transmitting a request packet including a second release information general packet and a data packet including a second release information sub-packet to a second integrated circuit unit via a link packet also includes: in response to the data bit width of the link packet being greater than the data bit width of the request packet including the second release information general packet and the data packet including the second release information sub-packet, splicing the request packet including the second release information general packet, the complete data packet and the second release information sub-packet into a link packet for unified transmission.

[0084] For example, a request packet including a second release information general packet, a complete data packet and a second release information sub-packet are spliced ​​into a link packet for unified transmission, including: packing a request packet of a sending queue of at least one first integrated circuit unit and a data packet corresponding to the at least one request packet into a link packet, and placing the second release information sub-packet on the second bit field of the link packet.

[0085] For example, in a possible implementation, the data bit width of the link packet is 700 bits (i.e., its maximum single data transmission capacity is 700 bits), the data bit width of each type of request packet is the same (66 bits), and the data bit width of the data packet is 500 bits. As an example, the data bit width of the request instruction, response instruction, and capture instruction are all 66 bits, and the data bit width of the data packets corresponding to each of them is 500 bits. The request instruction, response instruction, capture instruction, and the data packet corresponding to the request instruction are packaged to form a link packet, and then the second release information sub-packet is placed in the second bit field of the link packet (i.e., the remaining space of the link packet, for example, the second release information sub-packet includes 2 binary flag bits, occupying 2 bits of space). In this way, the link packet includes 3 types of request packets, a complete data packet corresponding to a request packet, and the second release information sub-packet (i.e., Tkn sub-packet), so that all the space of the link packet can be filled to maximize the use of the data transmission space of the link packet and improve the data transmission efficiency.

[0086] For example, the data bit widths of request packets of different types may also be different, and it is only necessary to ensure that the total data bit width after splicing does not exceed the data bit width of the link packet. The present disclosure does not limit the specific data structure in the link packet.

[0087] It should be noted that the arrangement of each data packet in the spliced ​​link packet can be adjusted at will. Specifically, the second bit field can be any area in the link packet. It is only necessary to make adaptive adjustments to the unpacking logic at the software level at the receiving end. The present disclosure does not impose any restrictions on this.

[0088] For example, in a possible implementation, the second release information packet (Tkn packet) may be spliced ​​into the link packet as needed, and the present disclosure does not limit the arrangement position of the second release information packet.

[0089] It should be noted that, in various implementations, regardless of whether the data bit width of the link packet is greater than, less than or equal to the data bit width of the protocol layer in the integrated circuit unit, we can introduce a compression algorithm to compress each type of request packet and data packet separately, and reassemble the request packet (compressed and original versions) and data packet (compressed and original versions), the second release information sub-packet (placed inside the data packet or directly placed on each link packet) and the original Tkn total packet into a link packet with a fixed bit width according to certain rules for transmission.

[0090] For example, after step S440, it may also include: parsing the second release information packet through the second integrated circuit unit to obtain the release information of the area resources of the request packet receiving queue and the data packet receiving queue in the receiving queue of the first integrated circuit unit; and parsing the second release information sub-packet through the second integrated circuit unit to adjust and update the release information of the area resources of the receiving queue of the data packet corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit.

[0091] For example, the second integrated circuit unit parses the second release information sub-packet to adjust and update the release information of the area resources of the receiving queue of the data packets corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit, including: in response to at least one binary flag bit of the parsed second release information sub-packet being 0, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is not updated; or in response to at least one binary flag bit of the parsed second release information sub-packet being 1, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased.

[0092] For example, in one possible implementation, the binary flag in the second release information sub-packet may be 0 or 1. 0 indicates that the area resources of the data packet receiving queue corresponding to at least one request packet type of the first integrated circuit unit are not released, and the Tkn value of the data packet in the total Tkn reception packet of the second integrated circuit unit is not updated; 1 indicates that the area resources of the data packet receiving queue corresponding to at least one request packet type of the first integrated circuit unit are released, and the Tkn value of the data packet corresponding to at least one request packet in the total Tkn reception packet of the second integrated circuit unit is increased.

[0093] For example, increasing the number of released area resources of the receiving queue of data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit includes: based on a preset second rule, increasing the number of released area resources of the receiving queue of data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit to m, where m is a positive integer greater than or equal to 1.

[0094] For example, in a possible implementation, based on the preset first rule mentioned above, the second release information sub-packet is placed on the first bit field of the nth data packet in at least one type of data packet queue for continuous transmission. Therefore, not every continuously transmitted data packet received by the second integrated circuit unit contains the second release information, that is, the second integrated circuit unit cannot update the Tkn value of the data packet receiving queue in the first integrated circuit unit in real time. For example, at this time, based on the preset second rule, when the second integrated circuit unit receives the second release information, the Tkn value of the data packet receiving queue in the first integrated circuit unit is increased by at least 1 (for example, it can be 2 / 4 / 6, etc., depending on the actual release situation, and the embodiments of the present disclosure are not limited to this). On the one hand, this method avoids the hidden danger of reducing the data transmission efficiency of the sending end due to the fact that the sending end cannot update the area resources of the data packet receiving queue of the opposite end in real time; on the other hand, it also reduces the space occupied by the opposite end data packet for the corresponding request packet, thereby improving the efficiency of the data transmission of the opposite end.

[0095] It should be noted that the amount of the Tkn value increase can be flexibly adjusted and configured manually, depending on the actual data transmission situation between the two integrated circuit units, and the present disclosure does not limit this. Based on the actual transmission situation, the number of Tkn values ​​released by the data packet receiving queue corresponding to different types of request packets can also be different, and it can be dynamically configured at the software level to achieve the best transmission effect.

[0096] Figure 5 A schematic diagram of the structure of a link packet in a data transmission method provided by at least one embodiment of the present disclosure is shown.

[0097] like Figure 5 As shown, the link packet includes two data structures, namely, a request packet and a data packet. Among them, the Tkn subpacket is placed at the low-order field of the data packet. It should be noted that the Tkn subpacket can also be placed in any area of ​​the data packet, and the present disclosure does not limit this. With respect to the request packet, the request packet is divided into n areas, each of which stores a type of request packet, for example, the type 1 field stores the type 1 request packet, the type 2 field stores the type 2 field request packet, and so on and so forth. The data occupied by the Tkn subpacket in the data packet corresponding to the type 1 request packet is placed at the low-order field of the type 1 request packet, and the data occupied by the Tkn subpacket in the data packet corresponding to the type 2 request packet is placed at the low-order field of the type 2 request packet, and so on and so forth. For example, it is also possible to reduce the placement of one type of request packet to place the Tkn total packet at the type n field of the request packet to transmit the area resource release information of its own receiving queue to the other end. For example, the arrangement order of the type 1 field to the type n field in the request packet can be random or sequential, and the present disclosure does not limit this. Based on the original data transmission implementation logic, the data transmission method provided by at least one embodiment of the present disclosure puts the area resource release information of the data packet with higher data transmission efficiency into the data packet and transmits it to the other end, so that the other end can obtain the area resource release information of the data packet with higher transmission efficiency in time, thereby ensuring the data transmission efficiency under high bandwidth conditions.

[0098] for Figure 4 In step S440, the number of request packets including the second release information packet sent to the second integrated circuit unit is K, and the second release information packet is placed in at least part of the request packets, including: placing the second release information packet in the third bit field of every k request packets among the K request packets, where k is a positive integer greater than or equal to 0.

[0099] Below through Fig. 6A and Figure 6B This method will be described.

[0100] Fig. 6A A schematic diagram showing the structure of a portion of link packets in another data transmission method provided by at least one embodiment of the present disclosure is shown; Figure 6B based on Fig. 6A A schematic diagram of the structure of another part of a link packet in another data transmission method provided by at least one embodiment of the present disclosure is shown.

[0101] like Fig. 6A As shown above, based on Figure 5 The data structure described above does not include the Tkn total packet in the request packet, that is, the type n domain contains the type n request packet, relative to Figure 5 A new type n request packet is added, and a Tkn subpacket is placed in the type n data packet. Figure 6BThe data structure shown is similar to Figure 5 The same as shown, no further details are given here. For example, in one possible implementation, since the data volume of the request packet itself is small and only one packet is transmitted, the area resource consumption rate of the request packet receiving queue is slow, which does not affect the transmission efficiency of the request packet sent by the other end. Therefore, there is no need to place the Tkn total packet in each request packet, thereby increasing the number of types of request packet transmissions by reducing the placement of the Tkn total packet in the request packet, thereby transmitting more types of request packet instructions to improve data transmission efficiency. For example, the Tkn total packet can be placed on the third bit field of the request packet of every 2 request packets in 10 request packets, that is, the Tkn total packet can be placed on the third bit field of the 1st, 4th, 7th and 10th request packets. The specific value depends on the data transmission needs, and the present disclosure does not limit this. Among them, the third bit field can be any area in the request packet, and the present disclosure does not limit this. At least one embodiment of the present disclosure is based on the transmission logic of the original Tkn total packet. The data space of a part of the request packet is released by transmitting the Tkn total packet with an interval packet (for example, several request packets). While ensuring that the other end can obtain the area resource release information of the data packet with higher transmission efficiency in time, the number of request packet types in data transmission is increased, thereby greatly improving the efficiency of data transmission between integrated circuit units.

[0102] It should be noted that, in the embodiments of the present disclosure, the process of the data transmission method provided by the above-mentioned embodiments of the present disclosure may include more or fewer operations, and these operations may be performed sequentially or in parallel. Although the process of the data transmission method described above includes multiple operations that appear in a specific order, it should be clearly understood that the order of multiple operations is not limited. The data transmission method described above can be performed once or multiple times according to predetermined conditions.

[0103] The data transmission method provided by the above-mentioned embodiment of the present disclosure combines the release information of area resources with the transmission of data packets, thereby improving the release speed of area resources without affecting the transmission of other types of request packets, and using limited resources to increase the bandwidth of data transmission, thereby improving the efficiency of data transmission.

[0104] At least one embodiment of the present disclosure further provides a data transmission device, Figure 7 A schematic block diagram of a data transmission device provided by at least one embodiment of the present disclosure is shown.

[0105] like Figure 7As shown, the data transmission device 700 includes a second integrated circuit unit area resource acquisition module 710, a data determination module 720, a first integrated circuit unit area resource acquisition module 730, and a data sending module 740. For example, these units can be implemented by hardware (e.g., circuit) modules or software modules, etc. The following embodiments are the same and will not be repeated. For example, these units can be implemented by a central processing unit (CPU), a graphics processing unit (GPU), a tensor processing unit (TPU), a field programmable gate array (FPGA), or other forms of processing units with data processing capabilities and / or instruction execution capabilities and corresponding computer instructions.

[0106] The second integrated circuit unit area resource acquisition module 710 is configured to acquire a first release information packet of the area resource in the receiving queue of the second integrated circuit unit, and send the first release information packet to the first integrated circuit unit. For example, the second integrated circuit unit area resource acquisition module 710 can implement step S410, and its specific implementation method can refer to the relevant description of step S410, which will not be repeated here.

[0107] The data determination module 720 is configured to determine the request packet of the transmission queue of the first integrated circuit unit and the data packet corresponding to the request packet based on the first release information packet. For example, the data determination module 720 can implement step S420, and its specific implementation method can refer to the relevant description of step S420, which will not be repeated here.

[0108] The first integrated circuit unit area resource acquisition module 730 is configured to acquire the second release information total packet and the second release information sub-packet of the area resource in the first integrated circuit unit receiving queue, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and the data occupied by the second release information sub-packet in the data packet is placed in the request packet corresponding to the data packet. For example, the first integrated circuit unit area resource acquisition module 730 can implement step S430, and its specific implementation method can refer to the relevant description of step S430, which will not be repeated here.

[0109] The data sending module 740 is configured to send a request packet including a second release information general packet and a data packet including a second release information sub-packet to the second integrated circuit unit. For example, the data sending module 740 can implement step S440, and its specific implementation method can refer to the relevant description of step S440, which will not be repeated here.

[0110] For example, in one possible embodiment, the data transmission device 700 also includes a parsing module 750 (not shown in the figure), which is configured to parse the second release information packet through the second integrated circuit unit to obtain the release information of the area resources of the request packet receiving queue and the data packet receiving queue in the receiving queue of the first integrated circuit unit; and parse the second release information sub-packet through the second integrated circuit unit to adjust and update the release information of the area resources of the receiving queue of the data packet corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit.

[0111] It should be noted that, for the sake of clarity and brevity, the embodiments of the present disclosure do not provide all the components of the data transmission device 700. To implement the necessary functions of the data transmission device 700, those skilled in the art may provide and set other components not shown according to specific needs, and the embodiments of the present disclosure are not limited to this.

[0112] At least one embodiment of the present disclosure further provides an electronic device, which includes the data transmission device of any of the above embodiments. Figure 8 A schematic block diagram of an electronic device provided by at least one embodiment of the present disclosure. Figure 8 As shown, the electronic device includes: a processing device 810; a storage device 880, including one or more computer program modules; wherein the one or more computer program modules are stored in the storage device 880 and are configured to be executed by the processing device 810, and the one or more computer program modules are used to execute the data transmission method provided by any embodiment of the present disclosure.

[0113] For example, the processing device 810 may be a central processing unit (CPU), a digital signal processor (DSP), a graphics processing unit (GPU), a general-purpose graphics processing unit (GPGPU), or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may be a general-purpose processor or a special-purpose processor, and may control other components in the electronic device to perform desired functions.

[0114] For example, the storage device 880 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, a random access memory (RAM) and / or a cache memory (cache), etc. The non-volatile memory may include, for example, a read-only memory (ROM), a hard disk, a flash memory, etc. One or more computer program instructions may be stored on a computer-readable storage medium, and the processing device may run the program instructions to implement the functions (implemented by the processing device) in the embodiment of the present disclosure and / or other desired functions, such as a data transmission method, etc. Various applications and various data may also be stored in the computer-readable storage medium, such as a first release information packet, a second release information total packet, a second release information sub-packet, and various data used and / or generated by the application, etc.

[0115] For example, the electronic devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 8 The electronic device 800 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0116] For example, Figure 8 As shown, in some examples, the processing device 810 may include a processor of any of the above-mentioned embodiments, which may perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 820 or a program loaded from a storage device 880 to a random access memory (RAM) 830. Various programs and data required for the operation of the computer system are also stored in the RAM 830. The processing device 810, the ROM 820, and the RAM 830 are connected to each other via a bus 840. An input / output (I / O) interface 850 is also connected to the bus 840.

[0117] For example, the following components may be connected to the I / O interface 850: an input device 860 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 870 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 880 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 890 which may also include, for example, a network interface card such as a LAN card, a modem, etc. The communication device 890 may allow the electronic device 800 to communicate with other devices wirelessly or by wire to exchange data, and perform communication processing via a network such as the Internet. Although Figure 8 The electronic device 800 is shown to include various devices, but it should be understood that it is not required to implement or include all the devices shown. More or fewer devices may be implemented or included instead.

[0118] For example, the electronic device 800 may further include a peripheral interface (not shown in the figure), etc. The peripheral interface may be various types of interfaces, such as a USB interface, a lightning interface, etc. The communication device 890 may communicate with a network and other devices through wireless communication, such as the Internet, an intranet and / or a wireless network such as a cellular phone network, a wireless local area network (LAN) and / or a metropolitan area network (MAN). Wireless communication may use any of a variety of communication standards, protocols, and techniques, including, but not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Wi-Fi (e.g., based on IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n standards), Voice over Internet Protocol (VoIP), Wi-MAX, protocols for email, instant messaging, and / or Short Message Service (SMS), or any other suitable communication protocol.

[0119] For example, the electronic device 800 can be any device such as a mobile phone, a tablet computer, a laptop computer, an e-book, a game console, a television, a digital photo frame, a navigator, a server, etc., or it can be any combination of data processing devices and hardware, and the embodiments of the present disclosure are not limited to this.

[0120] At least one embodiment of the present disclosure further provides a computer storage medium for storing non-transitory computer program executable code (e.g., computer executable instructions). When the non-transitory computer program executable code is executed by a computer (e.g., including one or more processors), the data transmission method of any embodiment of the present disclosure can be implemented.

[0121] Fig. 9 FIG. 1 is a schematic diagram of a computer storage medium provided by at least one embodiment of the present disclosure. Fig. 9 As shown, the computer storage medium 900 non-temporarily stores computer executable instructions 910. For example, when the computer executable instructions 910 are executed by a computer (eg, including one or more processors), the data transmission method provided according to any embodiment of the present disclosure may be executed.

[0122] For example, the storage medium may be any combination of one or more computer-readable storage media, for example, one computer-readable storage medium includes a computer-readable program code for obtaining a first release information packet of area resources in a receiving queue of the second integrated circuit unit and sending the first release information packet to the first integrated circuit unit, another computer-readable storage medium includes a computer-readable program code for determining a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet, and another computer-readable storage medium includes a computer-readable program code for obtaining a second release information total packet and a second release information sub-packet of area resources in a receiving queue of the first integrated circuit unit and sending a request packet including the second release information total packet and a data packet including the second release information sub-packet to the second integrated circuit unit. For example, when the program code is read by a computer, the computer may execute the program code stored in the computer storage medium to execute, for example, the data transmission method provided in any embodiment of the present disclosure.

[0123] For example, the storage medium may include a memory card of a smart phone, a storage component of a tablet computer, a hard disk of a personal computer, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a portable compact disk read-only memory (CD-ROM), flash memory, or any combination of the above storage media, or other applicable storage media.

[0124] For example, the computer storage medium 900 can be applied to the above-mentioned data transmission device. For another example, the computer storage medium 900 can be Figure 8 The read-only memory 820 in the electronic device 800 is shown. For example, the relevant description of the computer storage medium 900 can be referred to Figure 8 The corresponding description of the read-only memory 820 in the electronic device 800 is not repeated here.

[0125] Although the disclosure has been described in detail above with general descriptions and specific implementation methods, it is obvious to those skilled in the art that some modifications or improvements may be made to the embodiments of the disclosure. Therefore, these modifications or improvements made without departing from the spirit of the disclosure are within the scope of protection claimed by the disclosure.

[0126] In addition to the above exemplary description, the following points need to be explained for this disclosure:

[0127] (1) The drawings of the embodiments of the present disclosure only relate to the structures related to the embodiments of the present disclosure. Other structures may refer to the general design.

[0128] (2) For the sake of clarity, in the drawings used to describe the embodiments of the present disclosure, the thickness of layers or regions is enlarged or reduced, that is, these drawings are not drawn according to the actual scale.

[0129] (3) In the absence of conflict, the embodiments of the present disclosure and the features therein may be combined with each other to obtain new embodiments.

[0130] The above description is only a specific implementation of the present disclosure, but the protection scope of the present disclosure is not limited thereto. The protection scope of the present disclosure shall be based on the protection scope of the claims.

Claims

1. A data transmission method, applied to a first integrated circuit unit and a second integrated circuit unit, wherein: The data transmission method comprises: Acquire a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and send the first release information packet to the first integrated circuit unit; Determine a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; Acquire a second release information total packet and a second release information sub-packet of area resources in the receiving queue of the first integrated circuit unit, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and data in the data packet occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet; A request packet including the second release information general packet and a data packet including the second release information sub-packet are sent to the second integrated circuit unit.

2. The data transmission method according to claim 1, wherein: The second release information general packet is the release information of the area resources in the queue received by the first integrated circuit unit when the request packet is sent; the second release information sub-packet is the real-time release flag information of the area resources in the queue received by the first integrated circuit unit when the data packet corresponding to the request packet is sent.

3. The data transmission method according to claim 1, wherein: The request packets include multiple types, and each type of request packet corresponds to a group of data packet queues including N data packets. The second release information sub-packet is placed in the data packet, including: The second release information sub-packet is placed on the first bit field of each data packet in a queue of multiple types of data packets to be transmitted continuously, wherein N is an integer greater than or equal to 0.

4. The data transmission method according to claim 1, wherein: The request packets include multiple types, and each type of request packet corresponds to a group of data packet queues including N data packets. The second release information sub-packet is placed in the data packet, including: Based on a preset first rule, the second release information sub-packet is placed on the first bit field of every n data packets in at least one type of data packet queue for continuous transmission, where N is an integer greater than or equal to 0, and n is a positive integer greater than or equal to 0 and less than or equal to N.

5. The data transmission method according to claim 1, wherein: After sending the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit, the method further includes: parsing the second release information packet through the second integrated circuit unit to obtain release information of area resources of the request packet receiving queue and the data packet receiving queue in the receiving queue of the first integrated circuit unit; and The second release information sub-packet is parsed by the second integrated circuit unit to adjust and update the release information of the area resources of the receiving queue of the data packet corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit.

6. The data transmission method according to claim 5, wherein: The second release information sub-packet includes at least one binary flag bit, wherein the at least one binary flag bit indicates release information of a receiving queue of a data packet corresponding to at least one request packet type, The step of parsing the second release information sub-packet by the second integrated circuit unit to adjust and update the release information of the area resources of the data packet receiving queue corresponding to at least one request packet type in the receiving queue of the first integrated circuit unit includes: In response to parsing that at least one binary flag bit of the second release information sub-packet is 0, the number of released area resources of the data packet receiving queue corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is not updated; or In response to parsing that at least one binary flag bit of the second release information sub-packet is 1, the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased.

7. The data transmission method according to claim 6, wherein: The increasing the number of released area resources of the receiving queue of the data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit includes: Based on a preset second rule, the number of released area resources of the receiving queue of data packets corresponding to at least one request packet type of the first integrated circuit unit obtained by the second integrated circuit unit is increased to m, where m is a positive integer greater than or equal to 1.

8. The data transmission method according to claim 1, wherein: The step of sending the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit comprises: A request packet including the second release information general packet and a data packet including the second release information sub-packet are transmitted to the second integrated circuit unit via a link packet, wherein the transmission priority of the request packet including the second release information general packet is greater than the transmission priority of the data packet including the second release information sub-packet.

9. The data transmission method according to claim 8, wherein: The step of transmitting the request packet including the second release information general packet and the data packet including the second release information sub-packet to the second integrated circuit unit through a link packet comprises: In response to the data bit width of the link packet being less than or equal to the data bit width of any one of the request packet including the second release information general packet and the data packet including the second release information sub-packet, the request packet including the second release information general packet and the data packet including the second release information sub-packet are each formed into a link packet for separate transmission; or In response to the data bit width of the link packet being greater than the data bit width of any of the request packet including the second release information general packet and the data packet including the second release information sub-packet, the request packet including the second release information general packet, the complete data packet and the second release information sub-packet are spliced ​​into a link packet for unified transmission.

10. The data transmission method according to claim 9, wherein: The step of splicing the request packet including the second release information total packet, the complete data packet, and the second release information sub-packet into a link packet for unified transmission includes: The request packet of at least one sending queue of the first integrated circuit unit and the data packet corresponding to the request packet are packaged into a link packet, and the second release information sub-packet is placed in the second bit field of the link packet.

11. The data transmission method according to claim 1, wherein: The number of request packets including the second release information packet sent to the second integrated circuit unit is K, The second release information total packet is placed in at least part of the request packet, including: The second release information total packet is placed in the third bit field of every k request packets among the K request packets, where k is a positive integer greater than or equal to 0.

12. A data transmission device, applied to a first integrated circuit unit and a second integrated circuit unit, comprising: A second integrated circuit unit area resource acquisition module, configured to acquire a first release information packet of area resources in a receiving queue of the second integrated circuit unit, and send the first release information packet to the first integrated circuit unit; a data determination module, configured to determine a request packet of a sending queue of the first integrated circuit unit and a data packet corresponding to the request packet based on the first release information packet; A first integrated circuit unit area resource acquisition module is configured to acquire a second release information total packet and a second release information sub-packet of area resources in a receiving queue of the first integrated circuit unit, wherein the second release information sub-packet is placed in the data packet, the second release information total packet is placed in at least part of the request packet, and data in the data packet occupied by the second release information sub-packet is placed in the request packet corresponding to the data packet; as well as The data sending module is configured to send a request packet including the second release information general packet and a data packet including the second release information sub-packet to the second integrated circuit unit.

13. An electronic device, comprising: Processing device; a storage device comprising one or more computer program modules; The one or more computer program modules are stored in the storage device and configured to be executed by the processing device, and the one or more computer program modules are used to execute the data transmission method according to any one of claims 1-11.

14. A non-transitory storage medium that non-transitory stores computer-executable instructions, wherein: When the computer executable instructions are executed by a computer, the data transmission method according to any one of claims 1 to 11 is performed.