Uci e-based data transmission method, system, medium, and electronic device

By classifying low-speed buses and using time-division multiplexing for data transmission, the problems of low efficiency and high power consumption in cross-chiplet transmission on low-speed buses are solved, achieving efficient data transmission and bandwidth management.

CN118708520BActive Publication Date: 2025-12-26CORE YUNSHENG (HANGZHOU) ELECTRONIC TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410662735.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-05-27
Publication Date
2025-12-26
Estimated Expiration
2044-05-27

AI Technical Summary

Technical Problem

Existing low-speed bus-to-Chiplet transmission methods suffer from low data transmission efficiency and high power consumption.

Method used

By classifying multiple low-speed buses to be transmitted, the classified low-speed buses are obtained using a preset processing method, and the time intervals corresponding to each classified low-speed bus are determined based on time-division multiplexing, thus achieving efficient data transmission.

Benefits of technology

It reduces the number of invalid data transmissions, improves data transmission efficiency, and has strong scalability by flexibly adjusting the time interval to allocate UCIe user-side bandwidth.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118708520B_ABST
    Figure CN118708520B_ABST
Patent Text Reader

Abstract

The application provides a data transmission method, system, medium and electronic equipment based on UCIe, the data transmission method is applied to a sending end, and the method comprises the following steps: classifying a plurality of low-speed buses to be transmitted based on a preset processing mode, and obtaining classified low-speed buses; determining time intervals corresponding to the classified low-speed buses based on a preset time division multiplexing mode, and transmitting transmission data of each classified low-speed bus to a receiving end according to the time intervals. Through the classification and processing of multiple low-speed buses in different ways, the number of transmission times of invalid data can be reduced, and the purpose of improving transmission efficiency is achieved; through the time division multiplexing mode, each low-speed bus performs data transmission in the allocated time interval, the UCIe user side bandwidth can be allocated according to the actual situation, the time interval can be flexibly adjusted through the configuration mode, and the expansibility is high.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer, in particular to a data transmission method and system based on UCIe, a medium and an electronic device. BACKGROUND

[0002] UCIe (Universal Chiplet Interconnect Express) is a universal, open, and multi-protocol (CXL / PCIe / other custom) supported standard for interconnection and intercommunication between Chiplets (a pre-manufactured wafer (Die) with specific functions and can be integrated).

[0003] In a single chip design, multiple buses are used to connect various islands (a certain subsystem or core on the chip with specific properties) in the chip to form different ring or tree topologies to complete the transmission of instructions, reading, and transmission of island state. When multiple Chiplets are involved, the ring or tree topology of these buses needs to cross Chiplets, and the corresponding data flow also needs to be transmitted across Chiplets.

[0004] The existing low-speed bus cross-Chiplet transmission method is to directly package and transmit data, and parallelly occupy the user-side interface of UCIe. However, this method has the problems of relatively low transmission efficiency of data and high power consumption during cross-Die transmission. SUMMARY

[0005] In view of the above problems, the present application is proposed to provide a data transmission method, device, electronic equipment and medium based on UCIe to overcome the above problems or at least partially solve the above problems.

[0006] To achieve the above object and other related objects, the present application provides a data transmission method based on UCIe, which is applied to a sending end, and the method comprises:

[0007] Classifying a plurality of low-speed buses to be transmitted based on a preset processing mode to obtain classified low-speed buses;

[0008] Determining the time gap corresponding to each classified low-speed bus based on a preset time division multiplexing mode, and transmitting the transmission data of each classified low-speed bus to a receiving end according to the time gap.

[0009] In an embodiment of the present application, the classified low-speed buses include one or more of the following types: low-speed buses with transmission interaction, low-speed buses with time-varying validity, and low-speed buses with validity at certain time.

[0010] In an embodiment of the present application, the sending of the transmission data of each classified low-speed bus to the receiving end according to the time interval comprises:

[0011] In the case that the classified low-speed bus is a low-speed bus with transmission interaction, detecting the current state of the low-speed bus with transmission interaction;

[0012] If the current state is detected as a transmission state, the transmission data of the low-speed bus with state control and the transmission state are buffered by a first conversion module of the sending end, and the transmission data and the transmission state are sent to the first time division module;

[0013] The transmission data and the transmission state are sent to the receiving end by the first time division module in the time interval corresponding to the low-speed bus with transmission interaction.

[0014] In an embodiment of the present application, the sending of the transmission data of each classified low-speed bus to the receiving end according to the time interval comprises:

[0015] In the case that the classified low-speed bus is a low-speed bus valid at variable time, performing variable detection on the transmission data of the low-speed bus valid at variable time;

[0016] When the transmission data is detected as variable, the transmission data is updated, and the updated transmission data is buffered by a second conversion module of the sending end, and the updated transmission data is sent to the first time division module;

[0017] The updated transmission data is sent to the receiving end by the first time division module in the time interval corresponding to the low-speed bus valid at variable time.

[0018] In an embodiment of the present application, the sending of the transmission data of each classified low-speed bus to the receiving end according to the time interval comprises:

[0019] In the case that the classified low-speed bus is a low-speed bus valid at certain time, detecting whether the transmission data of the low-speed bus valid at certain time is accompanied by a data valid bit;

[0020] If the transmission data is detected as accompanied by a data valid bit, the transmission data and the data valid bit are processed by a third conversion module of the sending end, and the processed data is buffered by the third conversion module, and the processed data is sent to the first time division module;

[0021] The low-speed bus corresponding to the time gap in which the first time division module is effective at the certain time is used to send the parallel processed data to a receiving end.

[0022] To achieve the above object and other related objects, the application further provides a data transmission method based on UCIe, which is applied to a receiving end, and the method comprises the following steps of:

[0023] receiving transmission data sent by a sending end; wherein the transmission data is obtained by classifying a plurality of low-speed buses to be transmitted based on a preset processing mode, and the transmission data of each classified low-speed bus is sent according to a preset time division multiplexing mode and a time gap corresponding to each classified low-speed bus;

[0024] analyzing and processing the transmission data.

[0025] In an embodiment of the application, the analyzing and processing the transmission data comprises the following steps of:

[0026] when the second time division module of the receiving end receives transmission data of a low-speed bus with transmission interaction, the transmission data is sent to the first recovery module of the receiving end through the second time division module;

[0027] when it is detected that the state of the low-speed bus with transmission interaction is in a transmission state, the transmission data is synchronously received through the first recovery module according to the transmission state.

[0028] In an embodiment of the application, the analyzing and processing the transmission data comprises the following steps of:

[0029] when the second time division module receives transmission data of a low-speed bus with a change, the transmission data is sent to the second recovery module of the receiving end through the second time division module, and the transmission data is directly read through the second recovery module.

[0030] In an embodiment of the application, the analyzing and processing the transmission data comprises the following steps of:

[0031] when the second time division module receives transmission data of a low-speed bus with a change, the transmission data is sent to the second recovery module of the receiving end through the second time division module, and the transmission data is directly read through the second recovery module.

[0032] To achieve the above object and other related objects, the application further provides a data transmission system based on UCIe, which comprises the following steps of:

[0033] The sending end is configured to classify a plurality of low-speed buses to be transmitted based on a preset processing mode, and obtain classified low-speed buses.

[0034] The sending end is further configured to determine time slots corresponding to the classified low-speed buses based on a preset time division multiplexing mode, and send transmission data of the classified low-speed buses to the receiving end according to the time slots.

[0035] The receiving end is configured to receive the transmission data sent by the sending end.

[0036] The receiving end is further configured to parse and process the transmission data.

[0037] To achieve the above object and other related objects, the present application provides a computer readable storage medium as described above, which stores a computer program, and the program is executed by a processor to implement the steps of the UCIe-based data transmission method.

[0038] To achieve the above object and other related objects, the present application provides an electronic device as described above, which comprises a memory and a processor, wherein the memory is configured to store a computer program, and the processor is configured to load and execute the computer program to enable the electronic device to perform the steps of the UCIe-based data transmission method.

[0039] As described above, the UCIe-based data transmission method, system, medium and electronic device of the present application, the method comprises: classifying a plurality of low-speed buses to be transmitted based on a preset processing mode, and obtaining classified low-speed buses; determining time slots corresponding to the classified low-speed buses, and sending transmission data of the classified low-speed buses to the receiving end according to the time slots. The present application can reduce the transmission frequency of invalid data by classifying a plurality of low-speed buses in different ways, and can improve the transmission efficiency. By means of time division multiplexing, each low-speed bus can transmit data in the allocated time slot, and the UCIe user side bandwidth can be allocated according to the actual situation, and the time slot can be flexibly adjusted by configuration, which has strong expansibility. BRIEF DESCRIPTION OF DRAWINGS

[0040] Figure 1 The figure shows the overall design schematic of the UCIe-based data processing system in an embodiment of the present application;

[0041] Figure 2 The figure shows the flow schematic of the UCIe-based data processing method in an embodiment of the present application;

[0042] Figure 3 The figure shows the working schematic of the first time division module of the sending end in an embodiment of the present application;

[0043] Figure 4 Figure 9 shows a schematic diagram of time slot allocation of a transmitting end according to an embodiment of the present application;

[0044] Figure 5 Figure 10 shows a schematic diagram of transmission state of a first conversion module of a transmitting end according to an embodiment of the present application;

[0045] Figure 6 Figure 11 shows a schematic diagram of transmission of a second conversion module of a transmitting end according to an embodiment of the present application;

[0046] Figure 7 Figure 12 shows a schematic diagram of serial-to-parallel conversion of a third conversion module according to an embodiment of the present application;

[0047] Figure 8 Figure 13 shows a schematic diagram of state of a first recovery module of a receiving end according to an embodiment of the present application;

[0048] Figure 9 Figure 14 shows a schematic diagram of deserializing of a third recovery module of a receiving end according to an embodiment of the present application;

[0049] Figure 10 Figure 15 shows a schematic diagram of functional modules of a data transmission system based on UCIe according to an embodiment of the present application. The implementation, functional features and advantages of the present application will be further described with reference to the embodiments and the accompanying drawings.

[0050] Figure 3 Symbol explanation

[0051]

[0052]

[0053] Figure 5 Symbol explanation

[0054]

[0055] Figure 6 Symbol explanation

[0056] Signal Description Clock Clock Data Data Detection Change detection signal push Write into FIFO

[0057] Figure 7 Symbol explanation

[0058] Signal Description Clock Clock Data_p Parallel high bit width data Data Serial low bit width data push Write into FIFO

[0059] Figure 8 Symbol explanation

[0060]

[0061]

[0062] Figure 9 Explanation of symbols

[0063] Signal Description Clock Clock Data_p Parallel high bit width data Data Serial low bit width data pop Pop data from UCIe DETAILED DESCRIPTION

[0064] Following are the specific embodiments of the present application, and those skilled in the art can easily understand other advantages and effects of the present application from the disclosure of the specification. The present application can also be implemented or applied by other different embodiments, and various modifications or changes can be made based on different views and applications without departing from the spirit of the present application. It should be noted that the following embodiments and features in the embodiments can be combined with each other without conflict.

[0065] It should be noted that the drawings provided in the following embodiments only illustrate the basic concept of the present application in a schematic manner, and only the components related to the present application are shown in the drawings, not the number, shape and size of the components when actually implemented. The actual implementation of each component may be a random change, and the component layout pattern may be more complex.

[0066] In the following description, a large number of details are discussed to provide a more thorough explanation of the embodiments of the present application, however, it is obvious to those skilled in the art that the embodiments of the present application can be implemented without these specific details, and in other embodiments, well-known structures and devices are shown in the form of block diagrams rather than in the form of details, in order to avoid making the embodiments of the present application difficult to understand.

[0067] The terms "first", "second", and the like in the description and claims of the present application and the above drawings are used to distinguish similar objects, not necessarily to describe a particular order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, in order to implement the embodiments of the present application described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion.

[0068] Unless otherwise specified, the term "a plurality of" means two or more.

[0069] In the embodiments of the present application, the character " / " represents a "or" relationship between the objects before and after it. For example, A / B means: A or B.

[0070] The term "and / or" is a description of the association between objects, which means that there can be three relationships. For example, A and / or B means: A or B, or, A and B, the three relationships.

[0071] The technical solutions in the embodiments of the present application will be described in detail below with reference to the drawings of the specification.

[0072] An embodiment of the present application provides a data transmission method based on UCIe, which is applied to a sending end of a data transmission system based on UCIe. The overall design schematic of the data transmission system based on UCIe is shown in Figure 1 The data transmission system based on UCIe can include a sending end (Low_speed_bus_mix_Tx) and a receiving end (Low_speed_bus_mix_Rx), and the sending end and the receiving end are in communication connection and are respectively used for transmitting and receiving data.

[0073] First, the specific scenario involved in the data transmission method based on UCIe provided by the embodiment of the present application is described. Figure 1 The overall design schematic of the data transmission system based on UCIe is shown in Figure 1 The scenario can involve cross-Chiplet data transmission through a UCIe module.

[0074] The data transmission method based on UCIe provided by the embodiment of the present application is described in detail in combination with multiple embodiments.

[0075] Please refer to Figure 2 An embodiment of the present application provides a data transmission method based on UCIe, which is applied to a sending end. The method can include the following steps S10-S20.

[0076] Step S10: Classifying a plurality of low-speed buses to be transmitted based on a preset processing mode to obtain classified low-speed buses.

[0077] The preset processing mode can be a mode of classifying different low-speed buses in different ways.

[0078] As an example, the plurality of low-speed buses to be transmitted are simply classified. The plurality of low-speed buses to be transmitted after the preset processing mode can be as follows.

[0079] The first type: low-speed buses with transmission interaction; the state of the low-speed buses with transmission interaction can include one of an idle state, a transmission state and a waiting state; for the effective state, the transmission data is normally transmitted; for the idle state or the waiting state, the transmission data stops transmission.

[0080] The second type: low-speed buses that are effective when changing; it should be noted that the transmission data of the low-speed buses that are effective when changing is detected, and data transmission is performed when the transmission data in the low-speed buses that are effective when changing changes.

[0081] The third type: low-speed bus valid at some time; the transmitted data is stored in a high-bit-width register in a bit displacement manner, and the register is transmitted as a whole after being filled for a fixed period.

[0082] In a specific implementation, the plurality of low-speed buses to be transmitted can be classified according to a preset processing manner, and then one or more classified low-speed buses of different types can be obtained.

[0083] Further, in another embodiment, the classified low-speed buses include one or more of the following types: low-speed bus with transmission interaction, low-speed bus valid at variable time, and low-speed bus valid at some time.

[0084] As an example, the classified low-speed buses can include a low-speed bus with transmission interaction.

[0085] As another example, the classified low-speed buses can include a low-speed bus with transmission interaction and a low-speed bus valid at variable time.

[0086] As yet another example, the classified low-speed buses can include a low-speed bus with transmission interaction, a low-speed bus valid at variable time, and a low-speed bus valid at some time.

[0087] In step S20, time slots corresponding to each classified low-speed bus are determined based on a preset time division multiplexing manner, and transmission data of each classified low-speed bus is sent to a receiving end according to the time slots.

[0088] The preset time division multiplexing manner can be a manner of dividing transmission time of each low-speed bus of the same sending end into a plurality of time slots in advance.

[0089] As an example, the transmission time slot of the low-speed bus with transmission interaction can be set as the 0th to 9th clock periods.

[0090] The transmission time slot of the low-speed bus valid at variable time can be set as the 10th to 19th clock periods.

[0091] The transmission time slot of the low-speed bus valid at some time can be set as the 20th to 29th clock periods.

[0092] After that, in the next round of transmission data, the transmission time slot of the low-speed bus with transmission interaction can be set as the 30th to 39th clock periods.

[0093] The transmission time slot of the low-speed bus valid at variable time can be set as the 40th to 49th clock periods.

[0094] The transmission time slot of the low-speed bus valid at some time can be set as the 50th to 59th clock periods.

[0095] The time interval can be a distance between transmission times of the two to-be-transmitted low-speed buses.

[0096] In a specific implementation, the time interval corresponding to each classified low-speed bus can be determined according to a preset time division multiplexing manner, and then the transmission data of each classified low-speed bus can be sent to the receiving end according to the time interval.

[0097] In this embodiment, the plurality of to-be-transmitted low-speed buses are classified by a preset processing manner to obtain classified low-speed buses, the time interval corresponding to each classified low-speed bus is determined based on a preset time division multiplexing manner, and the transmission data of each classified low-speed bus is sent to the receiving end according to the time interval. The plurality of low-speed buses are classified in different ways, which can reduce the number of transmission of invalid data and improve the transmission efficiency. The low-speed buses perform data transmission in the allocated time interval in a time division multiplexing manner, which can allocate UCIe user side bandwidth according to actual conditions, and flexibly adjust the time interval by configuration, which has strong expansibility.

[0098] Based on the foregoing embodiment, a second embodiment of the data transmission method based on UCIe is provided. In this embodiment, step S20 can include the following sub-steps A10-A30.

[0099] Sub-step A10, in the case where the classified low-speed bus is a low-speed bus with transmission interaction, detecting the current state of the low-speed bus with transmission interaction.

[0100] For the low-speed bus with transmission interaction, its state can be divided into an idle state, a transmission state and a waiting state.

[0101] When the low-speed bus with transmission interaction is in the idle state, no operation is performed.

[0102] When the low-speed bus with transmission interaction is in the transmission state, the master sends valid data, and at this time, the transmission data and the state are buffered in the internal FIFO (i.e., data buffer) by the first conversion module of the sending end.

[0103] When the low-speed bus with transmission interaction is in the waiting state, the first beat of the waiting state is buffered in the internal FIFO, and then sent to the receiving end for state recovery. The other beats of the waiting state are not transmitted, and at this time, the slave returns the response (i.e., response, reply), the master ends the waiting state and enters the idle state.

[0104] In a specific implementation, when it is detected that the classified low-speed bus is a low-speed bus with transmission interaction, the current state of the low-speed bus with transmission interaction can be further detected, so that the first conversion module can perform next step processing.

[0105] In sub-step A20, if it is detected that the current state is a transmission state, the transmission data of the low-speed bus with the existing state control and the transmission state are buffered by the first conversion module of the sending end, and the transmission data and the transmission state are sent to the first time division module of the sending end.

[0106] In the sending end, N conversion modules for different types of low-speed buses and one time division module can be included, and N≥1.

[0107] The bus types processed by the N low-speed bus conversion modules can include but are not limited to: low-speed buses with transmission interaction, low-speed buses with variable time validity, and low-speed buses with certain time validity.

[0108] As an example, the sending end can include a first conversion module, a second conversion module, and a third conversion module, and a first time division module.

[0109] The first conversion module is used to process the transmission data of the low-speed bus with transmission interaction. The first conversion module can be composed of decimation and FIFO.

[0110] The second conversion module is used to process the transmission data of the low-speed bus with variable time validity.

[0111] The third conversion module is used to process the transmission data of the low-speed bus with certain time validity.

[0112] The data path of the first time division module (tdm_mux_tx) can be N groups of input and one group of output, N≥1, and one group of period management signal input; each data input end is connected with the FIFO of each conversion module, and the tdm_mux module selects the corresponding data group according to the id output by the first time division module, and outputs the ready signal of the response path. When ready and have in the FIFO are a number (i.e., have is 1), the data is popped out from the FIFO and transmitted to the UCIe ip.

[0113] Please refer to Figure 3 , Figure 3 The working schematic diagram of the first time division module is shown in the figure. The tdm_bus_id can be the time slot slice id of each bus conversion module. The time slots occupied by each slice id are allocated according to the period management signal mng_reg. When allocating, the principle of allocating bandwidth> actual required bandwidth needs to be followed.

[0114] Please refer to Figure 4 ,Figure 4 Figure 1 is a schematic diagram of time slot allocation; Figure 4 As can be seen from Figure 1, the period management signal mng_reg is 32 bits wide, the data input group N = 4 of the low-speed bus, L = 8, at this time the period management signal mng_reg will [8; 0], [8; 8], [8; 16], [8; 24] bits respectively allocated to the periods T0 / T1 / T2 / T3.

[0115] In a specific implementation, when it is detected that the current state is in the transmission state, the transmission data of the low-speed bus with transmission interaction and the transmission state are buffered in the internal FIFO through the first conversion module; then the transmission data and the transmission state can be sent to the first time division module for subsequent processing by the first time division module.

[0116] Further, in an embodiment, if it is detected that the current state is the waiting state, the first beat of the waiting state is buffered through the first conversion module, and the first beat is transmitted to the first time division module; the first beat is sent to the receiving end within the time gap corresponding to the low-speed bus with transmission interaction through the first time division module, for use by the receiving end for state recovery (i.e., restoring the waiting state to the idle state).

[0117] In this embodiment, in the waiting state, the first beat of the waiting state is buffered in the internal FIFO of the first conversion module, and then sent to the receiving end for state recovery, and other beats of the waiting state are not transmitted; at this time, the waiting slave returns the response, and the master ends the waiting state and enters the idle state.

[0118] Further, in another embodiment, when it is detected that the current state is the idle state, the transmission data stops transmission, and no other operation is performed.

[0119] Please refer to Figure 5 , Figure 5 Figure 2 is a schematic diagram of the transmission state of the first conversion module; as can be seen from Figure 2, Figure 5 For the low-speed bus with transmission interaction, its state can be divided into the idle state, the transmission state and the waiting state; in the idle state or the waiting state, the data stops transmission; in the transmission state, the data is normally transmitted.

[0120] Sub-step A30, sending the transmission data and the transmission state to the receiving end within the time gap corresponding to the low-speed bus with transmission interaction through the first time division module.

[0121] In a specific implementation, within the time gap corresponding to the low-speed bus with transmission interaction, the transmission data and the transmission state can be sent to the receiving end through the first time division module.

[0122] As an example, the transmission time slots of low-speed buses with transmission interactions are set to 0 to 9 clock cycles; the transmission time slots of low-speed buses that are valid when changing are set to 10 to 19 clock cycles; and the transmission time slots of low-speed buses that are valid at certain times are set to 20 to 29 clock cycles.

[0123] That is, if the current state is in the transmission state during 0 to 9 clock cycles, the transmission data and transmission state can be sent to the receiving end through the first time division module;

[0124] If the current state is a waiting state during clock cycles 0 to 9, the first clock cycle of the waiting state can be sent to the receiving end through the first time division module.

[0125] In this embodiment, when the classified low-speed bus is a low-speed bus with transmission interaction, the current state of the low-speed bus with transmission interaction is detected. If the current state is detected to be a transmission state, the transmission data and the transmission state of the low-speed bus with transmission interaction are cached by the first conversion module of the transmitting end, and the transmission data and the transmission state are sent to the first time division module of the transmitting end. The first time division module sends the transmission data and the transmission state to the receiving end within the time gap corresponding to the low-speed bus with transmission interaction. Thus, the low-speed bus with transmission interaction can perform data transmission within the allocated time gap, which can reduce the number of invalid data transmissions and improve data transmission efficiency.

[0126] Based on the foregoing embodiments, a third embodiment of the UCIe-based data transmission method of the present invention is proposed. In this embodiment, step S20 may further include the following sub-steps B10 to B30:

[0127] Sub-step B10: If the classified low-speed bus is a low-speed bus that is valid when changing, perform change detection on the transmission data of the low-speed bus that is valid when changing.

[0128] Specifically, for low-speed buses that are valid during changes, data transmission occurs only when a change in the transmitted data within the low-speed bus that is valid during the change is detected; otherwise, data transmission does not occur.

[0129] In a specific implementation, when the classified low-speed bus is detected to be a low-speed bus that is valid when changing, the transmission data of the low-speed bus that is valid when changing can be detected for subsequent processing by the second conversion module.

[0130] In sub-step B20, when a change in the transmission data is detected, the transmission data is updated, the updated transmission data is cached by the second conversion module of the sending end, and the updated transmission data is sent to the first time division module of the sending end.

[0131] In a specific implementation, the transmission data in the low-speed bus valid at the time of change can be updated to obtain updated transmission data when the transmission data changes; and the second conversion module can then send the updated transmission data to the first time division module for subsequent processing by the first time division module.

[0132] As an example, refer to Figure 6 , Figure 6 The transmission diagram of the second conversion module; when the transmission data in the low-speed bus valid at the time of change changes from data1 to data2, the updated transmission data (data2) can be written into the internal FIFO of the second conversion module through push.

[0133] Step B30, sending the updated transmission data to the receiving end by the first time division module in the time gap corresponding to the low-speed bus valid at the time of change.

[0134] In a specific implementation, the updated transmission data can be sent to the receiving end by the first time division module in the time gap corresponding to the low-speed bus valid at the time of change.

[0135] As an example, the transmission time slot of the low-speed bus where transmission interaction exists is set to the 0th-9th clock period; the transmission time slot of the low-speed bus valid at the time of change is set to the 10th-19th clock period; and the transmission time slot of the low-speed bus valid at some time is set to the 20th-29th clock period.

[0136] That is, in the 10th-19th clock period, the updated transmission data can be sent to the receiving end by the first time division module.

[0137] In this embodiment, the transmission data of the low-speed bus valid at the time of change is detected when the classified low-speed bus is the low-speed bus valid at the time of change; when the transmission data is detected to change, the transmission data is updated, the second conversion module of the sending end buffers the updated transmission data, and sends the updated transmission data to the first time division module of the sending end; the first time division module sends the updated transmission data to the receiving end in the time gap corresponding to the low-speed bus valid at the time of change; thereby the low-speed bus valid at the time of change can perform data transmission in the allocated time gap, the transmission frequency of invalid data can be reduced, and the data transmission efficiency can be improved.

[0138] Based on the foregoing embodiments, the fourth embodiment of the UCIe-based data transmission method of the application is proposed. In this embodiment, step S20 can further include the following sub-steps C10-C30.

[0139] Sub-step C10: In the case where the classified low-speed bus is a low-speed bus valid at certain time, it is detected whether the transmission data of the low-speed bus valid at certain time is accompanied by a data valid bit.

[0140] The data valid bit (valid signal) can be an indicator of the validity of the transmission data of the low-speed bus valid at certain time. When valid is 1, the transmission data is valid.

[0141] In a specific implementation, when the classified low-speed bus is a low-speed bus valid at certain time, it can be further detected whether the transmission data of the low-speed bus valid at certain time is accompanied by a data valid bit for subsequent processing.

[0142] Sub-step C20: If it is detected that the transmission data is accompanied by a data valid bit, the transmission data and the data valid bit are processed by the third conversion module of the sending end through serial-parallel conversion, and the data after serial-parallel conversion is cached in the third conversion module and sent to the first time division module of the sending end.

[0143] The serial-parallel conversion processing mode can be a processing mode for converting n pieces of m-bit wide data into n*m-bit wide data according to a specific scenario.

[0144] As an example, refer to Figure 7 , Figure 7 a serial-parallel conversion diagram of the third conversion module;

[0145] Before serial-parallel conversion processing, serial low-bit width data data[1:0]: 2b01, 2b10, 2b10, 2b11;

[0146] After serial-parallel conversion processing, parallel high-bit width data data_p[7:0]: 8b01101011.

[0147] In a specific implementation, when it is detected that the transmission data is accompanied by a data valid bit, the transmission data and the data valid bit can be processed by the third conversion module through serial-parallel conversion to obtain data after serial-parallel conversion. Then, the data after serial-parallel conversion can be cached in the internal FIFO of the third conversion module, and the data after serial-parallel conversion can be sent to the first time division module.

[0148] Step C30: The data after serial-parallel conversion is sent to the receiving end by the first time division module in the time gap corresponding to the low-speed bus valid at certain time.

[0149] In a specific implementation, the data after the serial-to-parallel processing can be sent to the receiving end by the first time division module in the time gap corresponding to the low-speed bus valid at the certain time.

[0150] It should be noted that in the third conversion module, the data after the serial-to-parallel processing is stored in the high-bit-width register in a bit shift manner, and the entire register is transmitted after being full in a fixed period.

[0151] In the embodiment, in the case that the classified low-speed bus is a low-speed bus valid at a certain time, it is detected whether the transmission data of the low-speed bus valid at the certain time is accompanied by a data valid bit; if the transmission data is accompanied by the data valid bit, the third conversion module of the sending end performs serial-to-parallel processing on the transmission data and the data valid bit, caches the data after the serial-to-parallel processing, and sends the data after the serial-to-parallel processing to the first time division module of the sending end; the first time division module sends the data after the serial-to-parallel processing to the receiving end in the time gap corresponding to the low-speed bus valid at the certain time; thus, the low-speed bus valid at the certain time can perform data transmission in the allocated time gap, the transmission times of invalid data can be reduced, and the data transmission efficiency can be improved.

[0152] Further, an embodiment of the present application further provides a data transmission method based on UCIe, which is applied to a receiving end, and can include the following steps S30-S40.

[0153] In step S30, transmission data sent by a sending end is received; wherein the transmission data is classified by the sending end based on a preset processing mode on a plurality of low-speed buses to be transmitted, to obtain classified low-speed buses; time intervals corresponding to each classified low-speed bus are determined based on a preset time division multiplexing mode, and transmission data of each classified low-speed bus is sent according to the time intervals.

[0154] The transmission data is classified by the sending end based on a preset processing mode on a plurality of low-speed buses to be transmitted, to obtain classified low-speed buses; time intervals corresponding to each classified low-speed bus are determined based on a preset time division multiplexing mode, and transmission data of each classified low-speed bus is sent according to the time intervals. The steps are explained similarly to steps S10-S20 in the first embodiment described above, and details are referred to steps S10-S20 described above, which will not be described herein again.

[0155] In a specific implementation, the receiving end can receive the transmission data sent by the sending end.

[0156] Step S40, parsing and processing the transmission data.

[0157] In a specific implementation, after receiving the transmission data, the receiving end can parse and process the transmission data to parse the original data from the transmission data.

[0158] Further, in an embodiment, the step S40 can include the following sub-steps D10-D20:

[0159] Sub-step D10: when the second time division module of the receiving end receives the transmission data of the low-speed bus with transmission interaction, the second time division module sends the transmission data and state of the low-speed bus with transmission interaction to the first recovery module of the receiving end;

[0160] Sub-step D20: when it is detected that the low-speed bus with transmission interaction is in the transmission state, the first recovery module synchronously receives the transmission data according to the transmission state.

[0161] Among them, the receiving end can include 1 time division module and N recovery modules for different types of low-speed buses, N≥1;

[0162] The second time division module (tdm_mux_rx) can have a data path of a single group of input and N groups of output, N≥1, please refer to Figure 1 The input end is connected with the UCIe ip, if the recovery module ready corresponding to tdm_bus_id is high, the transmission data enters tdm_mux, and then flows to the corresponding recovery module.

[0163] The bus types handled by the N recovery modules for different types of low-speed buses can include but are not limited to: low-speed buses with transmission interaction, low-speed buses with changing valid time, and low-speed buses with valid time at certain moments.

[0164] As an example, the receiving end can include: a second time division module, a first recovery module, a second recovery module, and a third recovery module;

[0165] Among them, the first recovery module is used to process the transmission data of the low-speed bus with transmission interaction; according to the state transmitted and the response signal of the slave, the first recovery module is recovered. When the transmission state is received, the first recovery module synchronizes the transmission state; when the single beat waiting state is received, the first recovery module is set to the waiting state, and after receiving the response of the slave, it returns to the idle state. The state diagram of the first recovery module is shown in Figure 8 .

[0166] The second recovery module is configured to process transmission data of the low-speed bus valid at varying times. For the low-speed bus valid at varying times, the second recovery module directly reads the transmission data transmitted.

[0167] The third recovery module is configured to process transmission data of the low-speed bus valid at certain times. For the low-speed bus valid at certain times, the transmission data is accompanied by a data valid bit (i.e., a valid signal), and the third recovery module deserializes the transmission data and the valid signal.

[0168] The deserialization manner can be a manner of converting n*m-bit data into n-shot m-bit data.

[0169] As an example, refer to Figure 9 , and refer to Figure 9 for a deserialization diagram of the third recovery module.

[0170] Before deserialization, the parallel high-bit-width data data_p[7:0] is 8b01101011.

[0171] After deserialization, the serial low-bit-width data data[1:0] is 2b01, 2b10, 2b10, and 2b11.

[0172] In a specific implementation, for transmission data of the low-speed bus with transmission interaction, the second time division module sends the transmission data and the state of the low-speed bus with transmission interaction to the first recovery module. Then, when it is detected that the low-speed bus with transmission interaction is in a transmission state, the first recovery module can synchronize the transmission state to synchronize the reception of the transmission data according to the transmission state.

[0173] It should be noted that when it is detected that the low-speed bus with transmission interaction is in a waiting state, the first recovery module can be set to the waiting state according to the first shot of the waiting state transmitted. Then, the first recovery module can return to an idle state after receiving the response of the slave.

[0174] In addition, when it is detected that the low-speed bus with transmission interaction is in an idle state, the first recovery module has no other operation.

[0175] In the embodiment, when the second time division module of the receiving end receives the transmission data of the low-speed bus with transmission interaction, the second time division module sends the transmission data and state of the low-speed bus with transmission interaction to the first recovery module of the receiving end; when detecting that the low-speed bus with transmission interaction is in a transmission state, the first recovery module synchronously receives the transmission data according to the transmission state; thus, the low-speed bus with transmission interaction can perform data transmission in the allocated time interval, the number of invalid data transmission can be reduced, and the data transmission efficiency can be improved.

[0176] Further, in an embodiment, the step S40 can further include the following sub-step E10:

[0177] Sub-step E10: when the second time division module receives the transmission data of the low-speed bus valid at the time, the second time division module sends the transmission data to the second recovery module of the receiving end, and the second recovery module directly reads the transmission data.

[0178] In a specific implementation, for the transmission data of the low-speed bus valid at the time, the second time division module can send the transmission data to the second recovery module, and then the second recovery module can directly read the transmission data.

[0179] In the embodiment, when the second time division module receives the transmission data of the low-speed bus valid at the time, the second time division module sends the transmission data to the second recovery module of the receiving end, and the second recovery module directly reads the transmission data; thus, the low-speed bus valid at the time can perform data transmission in the allocated time interval.

[0180] Further, in an embodiment, the step S40 can further include the following sub-step F10:

[0181] Sub-step F10: when the second time division module receives the transmission data of the low-speed bus valid at some time, the second time division module sends the transmission data to the third recovery module of the receiving end, and the third recovery module performs deserializing processing on the transmission data.

[0182] In a specific implementation, for the transmission data of the low-speed bus valid at some time, the transmission data is accompanied by a data valid bit (valid signal), the second time division module can send the transmission data to the third recovery module; and then the third recovery module performs deserializing processing on the transmission data and the valid signal.

[0183] As an example, refer to Figure 9 , Figure 9The third recovery module is used for de-serializing the transmission data;

[0184] The n*m bit width data before de-serializing (n=4, m=2), and the parallel high bit width data data_p[7:0]: 8b01101011;

[0185] The n*m bit width data after de-serializing, and the serial low bit width data data[1:0]: 2b01, 2b10, 2b10, 2b11.

[0186] In the embodiment, when the second time division module receives transmission data of the low-speed bus valid at some time, the second time division module sends the transmission data to the third recovery module of the receiving end, and the third recovery module de-serializes the transmission data; thus, the low-speed bus valid at some time can perform data transmission in the allocated time interval.

[0187] In the embodiment, the transmission data is received, the transmission data is classified by the sending end based on a preset processing mode, and the classified low-speed bus is obtained; the time interval corresponding to each classified low-speed bus is determined based on a preset time division multiplexing mode, and the transmission data of each classified low-speed bus is parsed and processed according to the time interval; thus, the transmission frequency of invalid data can be reduced by classifying and processing multiple low-speed buses in different ways, and the transmission efficiency is improved; the data transmission of each low-speed bus in the allocated time interval by the time division multiplexing mode can allocate the UCIe user side bandwidth according to the actual situation, and the time interval can be flexibly adjusted by the configuration mode, and the expansibility is high.

[0188] Based on the same inventive concept, the sixth embodiment of the present application also provides a UCIe-based data transmission system corresponding to the UCIe-based data transmission method of the foregoing embodiments. Since the system in the sixth embodiment of the present application has a similar principle for solving problems as the foregoing UCIe-based data transmission method, the implementation of the system can be referred to the implementation of the method, and the repeated parts will not be described herein. Please refer to Figure 10 The UCIe-based data transmission system of the present application can include:

[0189] The sending end is used for classifying and processing multiple low-speed buses to be transmitted based on a preset processing mode, and obtaining the classified low-speed bus;

[0190] The sending end is also used for determining the time interval corresponding to each classified low-speed bus based on a preset time division multiplexing mode, and sending the transmission data of each classified low-speed bus to the receiving end according to the time interval.

[0191] The receiving end is configured to receive the transmission data sent by the sending end.

[0192] The receiving end is further configured to parse and process the transmission data.

[0193] In addition, the application further provides a computer readable storage medium, which stores a computer program, and the program is executed by a processor to implement the steps of the UCIe-based data transmission method.

[0194] The electronic device includes a memory and a processor connected by a bus, wherein the memory is configured to store a computer program, and the processor is configured to execute the computer program stored in the memory to execute all or part of the steps of the foregoing method embodiments.

[0195] To sum up, the application can reduce the transmission frequency of invalid data and improve the transmission efficiency by classifying and processing the multiple low-speed buses in different ways. The time division multiplexing method is used to make each low-speed bus transmit data in the allocated time interval, the UCIe user side bandwidth can be allocated according to the actual situation, and the time interval can be flexibly adjusted by configuration, which has strong expansibility.

[0196] The above embodiments only exemplarily illustrate the principles and effects of the application, and are not used to limit the application. Any person skilled in the art can modify or change the above embodiments without departing from the spirit and scope of the application. Therefore, all equivalent modifications or changes completed by those skilled in the art without departing from the spirit and technical thought of the application should be covered by the claims of the application.

Claims

1. A method of UCIe-based data transmission, characterized in that, The UCIe-based data transmission method is applied to a sending end, and the method comprises: Classifying a plurality of low-speed buses to be transmitted based on a preset processing mode to obtain classified low-speed buses; wherein the preset processing mode is a mode of classifying different low-speed buses in different ways; the classified low-speed buses comprise one or more of the following types: low-speed buses with transmission interaction, low-speed buses valid at varying times, and low-speed buses valid at certain times; Determining time intervals corresponding to each of the classified low-speed buses based on a preset time division multiplexing mode, and transmitting transmission data of each of the classified low-speed buses to a receiving end according to the time intervals.

2. The method of claim 1, wherein, The step of transmitting the transmission data of each of the classified low-speed buses to the receiving end according to the time intervals comprises: In the case where the classified low-speed bus is a low-speed bus with transmission interaction, detecting a current state of the low-speed bus with transmission interaction; If the current state is detected as a transmission state, buffering transmission data of the low-speed bus with transmission interaction and the transmission state by a first conversion module of the sending end, and transmitting the transmission data and the transmission state to a first time division module of the sending end; Transmitting the transmission data and the transmission state to the receiving end within a time interval corresponding to the low-speed bus with transmission interaction by the first time division module.

3. The method of claim 1, wherein, The step of transmitting the transmission data of each of the classified low-speed buses to the receiving end according to the time intervals comprises: In the case where the classified low-speed bus is a low-speed bus valid at varying times, detecting changes in transmission data of the low-speed bus valid at varying times; When changes in the transmission data are detected, updating the transmission data, buffering the updated transmission data by a second conversion module of the sending end, and transmitting the updated transmission data to the first time division module of the sending end; Transmitting the updated transmission data to the receiving end within a time interval corresponding to the low-speed bus valid at varying times by the first time division module.

4. The method of claim 1, wherein, The step of transmitting the transmission data of each of the classified low-speed buses to the receiving end according to the time intervals comprises: In the case where the classified low-speed bus is a low-speed bus valid at certain times, detecting whether the transmission data of the low-speed bus valid at certain times is accompanied by a data valid bit; If the transmission data is detected as being accompanied by a data valid bit, performing serial-to-parallel conversion and processing on the transmission data and the data valid bit by a third conversion module of the sending end, buffering the data after serial-to-parallel conversion and processing by the third conversion module, and transmitting the data after serial-to-parallel conversion and processing to the first time division module of the sending end; Transmitting the data after serial-to-parallel conversion and processing to the receiving end within a time interval corresponding to the low-speed bus valid at certain times by the first time division module.

5. A method of UCIe-based data transmission, characterized by, The UCIe-based data transmission method is applied to a receiving end, and the method comprises: The receiving end receives transmission data sent by the sending end; wherein the transmission data is classified by the sending end based on a preset processing mode for a plurality of low-speed buses to be transmitted, to obtain classified low-speed buses; a time slot corresponding to each classified low-speed bus is determined based on a preset time division multiplexing mode, and transmission data of each classified low-speed bus is sent according to the time slot; the preset processing mode is a mode of classifying different low-speed buses in different ways; the classified low-speed buses include one or more of the following: a low-speed bus with transmission interaction, a low-speed bus valid at different times, and a low-speed bus valid at certain times. The transmission data is analyzed and processed.

6. The method of claim 5, wherein, The analysis and processing of the transmission data include: When the second time division module of the receiving end receives transmission data of the low-speed bus with transmission interaction, the transmission data and state of the low-speed bus with transmission interaction are sent to the first recovery module of the receiving end through the second time division module. When it is detected that the low-speed bus with transmission interaction is in a transmission state, the transmission data is synchronously received through the first recovery module according to the transmission state.

7. The method of claim 5, wherein, The analysis and processing of the transmission data include: When the second time division module of the receiving end receives transmission data of the low-speed bus valid at different times, the transmission data is sent to the second recovery module of the receiving end through the second time division module, and the transmission data is directly read by the second recovery module.

8. The method of claim 5, wherein, The analysis and processing of the transmission data include: When the second time division module of the receiving end receives transmission data of the low-speed bus valid at certain times, the transmission data is sent to the third recovery module of the receiving end through the second time division module, and the transmission data is deserialized by the third recovery module.

9. A UCIe-based data transmission system, characterized by It includes: A sending end classifies a plurality of low-speed buses to be transmitted based on a preset processing mode, to obtain classified low-speed buses; wherein the preset processing mode is a mode of classifying different low-speed buses in different ways; the classified low-speed buses include one or more of the following: a low-speed bus with transmission interaction, a low-speed bus valid at different times, and a low-speed bus valid at certain times. The sending end is further configured to determine a time slot corresponding to each classified low-speed bus based on a preset time division multiplexing mode, and send transmission data of each classified low-speed bus to a receiving end according to the time slot. A receiving end receives transmission data sent by the sending end. The receiving end is further configured to analyze and process the transmission data.

10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by a processor to implement the steps of the UCIe-based data transmission method of any one of claims 1 to 8.

11. An electronic device, comprising: The electronic device includes a memory and a processor, wherein the memory is configured to store a computer program, and the processor is configured to execute the computer program stored in the memory to enable the electronic device to perform the steps of the UCIe-based data transmission method of any one of claims 1 to 8.

Citation Information

Patent Citations

  • Low-speed IO time division multiplexing system

    CN108681518A

  • High-speed time division multiplexing communication bus time slot allocation and control method

    CN112769661A