Low-delay communication method and device based on AUTBUS bus
By introducing code division multiplexing technology in the time slot resource allocation of the AUTBUS bus, the problem of large delay when transmitting data between terminal nodes is solved, and low-latency bus communication and improved data throughput are achieved.
Patent Information
- Application Number
- CN202411909649.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-24
- Publication Date
- 2025-04-08
AI Technical Summary
The AUTBUS bus has a large delay problem when transmitting data, especially in control systems that require low-latency communication, which limits the real-time communication capabilities between terminal nodes.
By introducing code division multiplexing technology in the time slot resource allocation of the AUTBUS bus, different spreading codes are used to allocate the same time slot resources to the terminal nodes, and multiple terminal nodes can simultaneously transmit data in the same time slot, thereby reducing the delay between data packets.
Low-latency bus communication between terminal nodes is realized, data transmission throughput is improved, and limited time slot resources are more efficiently utilized without affecting service quality.
Smart Images

Figure CN119788457A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology of AUTBUS bus, and in particular to a low-latency communication and device, computing equipment and storage medium based on AUTBUS bus. Background Art
[0002] The AUTBUS system is a communication bus based on the Time-Sensitive Networking (TSN) technology. The AUTBUS bus is a typical Time Division Multiplexing (TDM) system that uses time slots as communication resources for communication between terminal nodes (TN).
[0003] The total time slot resources (i.e., total bandwidth) of the AUTBUS bus can be evenly divided into multiple resource segments (e.g., 512 time slots). The time slot is the smallest time unit in the resource segment, and a frame can be composed of every 64 time slots. Figure 1 In the schematic diagram of a frame, different time slots are identified by different symbols. In this example, each frame uses 2 time slots for sending pilot signals, and the other time slots are used for business data communication. Pilot signals refer to signals sent for measurement or monitoring purposes in a telecommunications network, and can be used to achieve frame synchronization of each TN node in the network. Figure 1 In the example shown, when the total bandwidth is 512 time slots, the total bandwidth can constitute 4 frames, and these 4 frames constitute a multiframe.
[0004] In the AUTBUS system, the control node (CN) allocates time slot resources to each TN. The allocation can be based on each frame (for example, the third time slot of each frame in the multiframe is allocated to a TN for sending data), or based on the multiframe (for example, the third time slot of each frame in the multiframe will be allocated to different TNs for sending data).
[0005] Each TN in the AUTBUS system realizes communication between TNs based on the allocated time slots, and different TNs use different time slots to send data. When the sender TN sends data, the data is packaged into individual data packets according to the amount of data that the time slot resources can carry. After sending a data packet in a certain time slot (such as the 3rd time slot) of a frame allocated by the CN, it is necessary to wait until the time slot (such as the 3rd time slot) of the next frame arrives to continue sending the next data packet. It can be seen that the minimum delay between adjacent data packets sent is at least the length of a frame. The larger the data sent, the greater the total delay formed by the delay between each adjacent data. This also means that the greater the delay of the receiving TN in receiving the complete data (that is, receiving each data packet sent by the sender TN).
[0006] Combination Figure 3 For example, the AUTBUS bus can be configured with different frame and time slot lengths. Figure 3 The four configured modes are represented by using the mode selection parameter (MSP, Mode Selection Parameter). Figure 3 In the four modes, the minimum time length of a frame is 500us (corresponding to MSP 3), so the minimum delay of adjacent data packets when TN sends data is also 500us, and the transmission delay of the total data (including multiple data packets) is even greater. However, in some important control systems (such as AUTBUS applied to vehicle control systems), the low latency requirements for TN-to-TN communication are higher. Therefore, how to provide a communication solution suitable for the AUTBUS bus to meet the communication needs with lower latency is a technical problem to be solved. Summary of the invention
[0007] In view of the above problems in the prior art, the present application provides a low-latency communication method and apparatus, a computing device and a storage medium based on the AUTBUS bus to meet the low-latency communication requirements.
[0008] To achieve the above-mentioned object, the first aspect of the present application provides a low-latency communication method based on AUTBUS bus, which is applied to a terminal node, and the method comprises:
[0009] After power-on, it sends its own node identification to the control node;
[0010] Receive resource allocation information broadcasted by the control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0011] Update local resource allocation information, and determine the spreading code and allocated time slot resources matching the node identifier of the node itself according to the node identifier in the resource allocation information;
[0012] When sending data, the data is modulated using the spreading code and then sent using the allocated time slot resources.
[0013] From the above, the present application adds a code division multiplexing method on the basis of time slot resource allocation, based on different spread spectrum codes allocated by different TNs, so that different terminal nodes can be allocated the same time slot resource, so that each time slot resource can transmit data of multiple terminal nodes at the same time, which realizes that there is no need to wait for a time slot cycle when transmitting messages, but meets the service message requirements that each terminal node can transmit in real time. In other words, it is also realized that multiple time slot resources are allocated to a terminal node, and other terminal nodes are not affected. In this way, when the terminal node sends data, multiple time slots can be allocated to the terminal node to send each data packet, solving the problem of frame delay of each adjacent data packet mentioned in the background technology, thereby realizing the bus communication with low delay requirements between TNs. In addition, the present application not only realizes the sending of each data packet in a shorter time interval (the minimum interval is increased from the frame time length to the time interval of adjacent time slots), but also improves the throughput of data transmission because more data packets can be sent in the same frame (because more time slots can be used to send data packets).
[0014] As a possible implementation manner of the first aspect, the allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources;
[0015] The sending of data includes: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
[0016] From the above, the present application can divide time slot resources into different categories, and use one or more appropriate types of time slot resources to send different types of data (such as low real-time and high real-time) after spread spectrum code modulation, so as to more effectively utilize limited time slot resources without affecting the quality of service.
[0017] As a possible implementation method of the first aspect, it also includes: when receiving data, determining a spread spectrum code that matches the sender terminal node identifier and a time slot resource allocated to the sender according to the node identifier in the resource allocation information, using the time slot resources allocated to the sender to receive data from the sender terminal node and using the spread spectrum code that matches the sender terminal node identifier for demodulation.
[0018] As described above, the receiver receives data according to the time slot resources allocated to the sender, and uses the spread spectrum code of the sender to demodulate the original data to achieve data reception.
[0019] To achieve the above object, the second aspect of the present application provides a low-latency communication method based on AUTBUS bus, which is applied to a control node, and the method includes:
[0020] Receiving an online message sent by a terminal node after it is powered on and started, wherein the online message includes a node identifier of the terminal node;
[0021] Allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0022] The resource allocation information is broadcasted so that each terminal node receives and updates its local resource allocation information.
[0023] As described above, the present application allocates different spread spectrum codes to each terminal node, and realizes that each time slot can be allocated to one or more terminal nodes, so that when a terminal node sends data, the time slot that has been allocated to other terminal nodes can also be allocated to the terminal node to send each data packet, solving the frame delay problem of each adjacent data packet mentioned in the background technology, thereby realizing the bus communication with low delay requirements between TNs. In addition, the throughput of data transmission is also improved.
[0024] And on the basis of time division multiplexing, that is, data modulated by multiple nodes using different assigned spread spectrum codes can be transmitted in one time slot, bus communication with low delay requirements can be achieved.
[0025] As a possible implementation method of the first aspect, it also includes: the time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.
[0026] From the above, the present application can divide time slot resources into different categories, and use one or more appropriate types of time slot resources to send different types of data (such as low real-time and high real-time) after spread spectrum code modulation, so as to more effectively utilize limited time slot resources without affecting the quality of service.
[0027] To achieve the above-mentioned object, the third aspect of the present application provides a low-latency communication device based on AUTBUS bus, characterized in that it is applied to a terminal node, and the device includes:
[0028] A power-on startup module is used to send its own node identification to the control node after power-on startup;
[0029] A resource allocation information receiving module, configured to receive resource allocation information broadcast by a control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0030] A resource allocation information updating module, used to update local resource allocation information and determine the spreading code and allocated time slot resources matching its own node identifier according to the node identifier in the resource allocation information;
[0031] The data sending module is used to send data by modulating the data using the spread spectrum code and then sending the data using the allocated time slot resources.
[0032] As a possible implementation manner of the first aspect, the allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources;
[0033] The data sending module is specifically used for: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
[0034] As a possible implementation method of the first aspect, it also includes: a data receiving module, which is used to determine, when receiving data, a spread spectrum code that matches the sender terminal node identifier and the time slot resources allocated to the sender according to the node identifier in the resource allocation information, use the time slot resources allocated to the sender to receive the data of the sender terminal node and use the spread spectrum code that matches the sender terminal node identifier for demodulation.
[0035] To achieve the above-mentioned object, the fourth aspect of the present application provides an apparatus for a control node, the apparatus comprising:
[0036] An online message receiving module, used to receive an online message sent by a terminal node after it is powered on and started, wherein the online message includes a node identifier of the terminal node;
[0037] an allocation module, configured to allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and a time slot resource can be allocated to one or more terminal nodes;
[0038] The broadcast module is used to broadcast the resource allocation information so that each terminal node receives and updates its local resource allocation information.
[0039] As a possible implementation manner of the first aspect, the allocation module is further configured to:
[0040] The time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.
[0041] A fifth aspect of the present application provides a computing device, including:
[0042] processor, and
[0043] A memory having program instructions stored thereon, wherein when the program instructions are executed by the processor, the processor executes any of the methods described in the first aspect above.
[0044] In a sixth aspect, the present application provides a computer-readable storage medium having program instructions stored thereon, wherein when the program instructions are executed by a computer, the computer implements any of the methods described in the first aspect above. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] Figure 1 This is a schematic diagram of the 64 time slots included in the signal frame (FRAME) of the physical layer of the AUTBUS bus;
[0046] Figure 2 This is a schematic diagram of the allocation and use of 64 time slots included in the signal frame (FRAME) of the physical layer of the AUTBUS bus;
[0047] Figure 3 This is a schematic diagram of the encoding method of each time slot of the AUTBUS bus (including frame and symbol time length);
[0048] Figure 4 A schematic flow chart of a low-latency communication method based on AUTBUS bus (applied to terminal nodes) provided in an embodiment of the present application;
[0049] Figure 5 A schematic diagram of a process for modulating data using a spread spectrum code;
[0050] Figure 6 A schematic diagram of a specific implementation process of a low-latency communication method based on AUTBUS bus provided in an embodiment of the present application;
[0051] Figure 7A schematic diagram of a low-latency communication method based on AUTBUS bus provided in an embodiment of the present application;
[0052] Figure 8 A structural schematic diagram of a low-latency communication device (terminal node) based on the AUTBUS bus provided in an embodiment of the present application;
[0053] Fig. 9 A schematic structural diagram of a low-latency communication device (control node) based on the AUTBUS bus provided in an embodiment of the present application;
[0054] Fig.10 It is a structural schematic diagram of a computing device provided in an embodiment of the present application.
[0055] It should be understood that the size and shape of each block diagram in the above structural diagram are for reference only and should not constitute an exclusive interpretation of the embodiment of the present invention. The relative position and inclusion relationship between the blocks presented in the structural diagram are only schematic representations of the structural association between the blocks, and do not limit the physical connection method of the embodiment of the present invention. DETAILED DESCRIPTION
[0056] The technical solution provided by the present application is further described below with reference to the accompanying drawings and examples. It should be understood that the system structure and business scenarios provided in the examples of the present application are mainly to illustrate the possible implementation methods of the technical solution of the present application and should not be interpreted as the only limitation on the technical solution of the present application. It is known to those of ordinary skill in the art that with the evolution of the system structure and the emergence of new business scenarios, the technical solution provided by the present application is also applicable to similar technical problems.
[0057] It should be understood that the low-latency communication solution based on the AUTBUS bus provided in the embodiments of the present application includes a low-latency communication method and device based on the AUTBUS bus. Since the principles of solving the problems in these technical solutions are the same or similar, some repetitions may not be repeated in the introduction of the following specific embodiments, but it should be regarded as that these specific embodiments have been referenced to each other and can be combined with each other.
[0058] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present application. In case of any inconsistency, the meaning described in this specification or the meaning derived from the contents recorded in this specification shall prevail. In addition, the terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.
[0059] [First embodiment of a low-latency communication method based on AUTBUS bus]
[0060] The first embodiment of the present application provides a low-latency communication method based on the AUTBUS bus, which is applied to a terminal node, such as Figure 4 As shown, the method includes:
[0061] S410: After power-on, send the node identification to the control node;
[0062] S420: receiving resource allocation information broadcasted by the control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0063] S430: updating local resource allocation information, and determining a spreading code and an allocated time slot resource that matches the node identifier of the local node according to the node identifier in the resource allocation information;
[0064] S440: When sending data, modulate the data using the spread spectrum code and then send it using the allocated time slot resources.
[0065] From the above, the present application adds a code division multiplexing method on the basis of time slot resource allocation, based on different spread spectrum codes allocated by different TNs, realizes that different terminal nodes can be allocated the same time slot resource, and each symbol can transmit data of multiple terminal nodes at the same time, which realizes that there is no need to wait for a time slot cycle when transmitting a message, but meets the service message requirement that each terminal node can transmit in real time. In other words, it is also realized that multiple time slot resources are allocated to a terminal node, and it does not affect other terminal nodes to use these time slot resources. In this way, when a terminal node sends data, multiple time slots can be allocated to the terminal node to send each data packet, solving the frame delay problem of each adjacent data packet mentioned in the background technology, thereby realizing bus communication with low delay requirements between TNs. In addition, the present application not only realizes sending each data packet in a shorter time interval (the minimum interval is increased from the frame time length to the time interval of adjacent time slots), on the other hand, because more data packets can be sent in the same frame (because more time slots can be used to send data packets), the throughput of data transmission is also improved.
[0066] Among them, the AUTBUS bus belongs to a two-wire network. The two-wire network must have a control node (Control Node, CN) and can have several terminal nodes (i.e. user nodes, Terminal Node, TN). CN is responsible for the configuration and management of the entire network, and also includes resource allocation for communication between TNs; TN uses the allocated resources to exchange information to complete specific control tasks. Among them, the resources here include time slots and spread spectrum codes.
[0067] Among them, in S410, after the terminal node is powered on, it can send its own node identification (which can be a MAC address) to the control node, and the control node allocates the required resources (time slot and spread spectrum code) to the terminal node. The own node identification can be included in the online message, and the terminal node can send the online message to the control node after powering on.
[0068] In S420, the control node may allocate resource information to the terminal node according to the allocation method shown in Table 1:
[0069] Table 1
[0070]
[0071] Among them, time slots 1, 3, and 5 are allocated for pilot signals, which refer to signals sent within the telecommunication network for measurement or monitoring purposes.
[0072] Time slot 2 is allocated for the control node to broadcast configuration information.
[0073] Except for the time slots allocated to the pilot signal and the broadcast signal, the other time slots of the 64 time slot resources can be allocated according to the total number of TN nodes. The number of terminal nodes in the present application can be multiple, allowing any number of terminal nodes to participate in the communication.
[0074] Among them, in S430, after receiving the resource allocation information, the terminal node first updates the local resource allocation information, and then matches the resource allocation information based on its own node identifier. When matching the resource allocation information with its own node identifier, it determines the spread spectrum code and time slot resources allocated under its own node identifier.
[0075] In S440, the data is modulated using the spread spectrum code when data is sent, and then the data is sent when the allocated time slot arrives.
[0076] From the above, on the basis of the existing time division multiplexing, the AUTBUS bus is improved, the Code Division Multiple Access (CDMA) technology is introduced, and the Orthogonal Variable Spreading Factor (OVSF) is used as its key coding technology, that is, the above spread spectrum code can be generated based on the OVSF technology, thereby constructing the OVSF-based AUTBUS bus. This improvement combines the advantages of time division multiplexing with the flexibility of code division technology, and improves the overall performance of the system.
[0077] In addition, the modulation mentioned is implemented at the physical layer, and the modulation and demodulation of the physical layer is implemented using Quadrature Amplitude Modulation (QAM). Figure 5 As shown, the process of modulating data using a spread spectrum code includes:
[0078] First, the binary service data of the upper layer (such as the application layer of TN) is received from the link layer. Subsequently, these data enter the baseband digital modulation OVSF / QAM module. In this module, the binary service data is serially converted into multiple parallel service data, and each service data is then OVSF / QAM encoded using a spread spectrum code. Then the inverse discrete Fourier transform IDFT module converts the multiple OVSF encoded data in the frequency domain into multiple OVSF encoded data in the time domain by IDFT. Next, the multiple OVSF encoded data in the time domain enters the digital-to-analog conversion (DAC) module for digital-to-analog conversion to obtain multiple OVSF encoded analog signals. Then, the analog IO modulation module combines the multiple OVSF encoded analog signals into one analog continuous signal through IQ modulation. When the allocated time slot arrives, it is output to the bus to complete the data transmission.
[0079] The following example illustrates how to use spread spectrum codes to modulate data and transmit them through the same time slot.
[0080] Assume that there are three terminal node users ABC sharing a time slot:
[0081] The spreading code assigned to A is -1+1 -1+1.
[0082] The spreading code assigned to B is -1 -1+1+1.
[0083] The spreading code assigned to C is -1 -1 -1 -1.
[0084] Assume that bit 1 is +1V, bit 0 is -1V, and no data is sent is 0V. The signal (original data) sent by A is two bits 00, B sends two bits 10, and C sends two bits 11.
[0085] Then the signal of A after spreading code encoding is:
[0086] (-1)*(-1,+1,-1,+1)(-1)*(-1,+1,-1,+1)=>+1,-1,+1,-1,+1,-1,+1,-1
[0087] Then the signal of B after spreading code encoding is:
[0088] (+1)*(-1,-1,+1,+1)(-1)*(-1,-1,+1,+1)=>-1,-1,+1,+1,+1,+1,-1,-1
[0089] Then the signal of C after spreading code encoding is:
[0090] (+1)*(-1,-1,-1,-1)(+1)*(-1,-1,-1,-1)=>-1,-1,-1,-1,-1,-1,-1,-1,-1
[0091] After the above encoding, the signal encoded by the spread spectrum code can be sent out. After receiving the signals of users A, B, and C, the signals are demodulated using the spread spectrum codes of A, B, and C, and the signals (original data) 00 sent by A, 10 sent by B, and 11 sent by C are obtained.
[0092] When users ABC send data in the same time slot, the coded signals of ABC will be superimposed into a composite signal in the same time slot. For example, the signal after addition is: -1, -3, +1, -1, +1, -1, -1, -3
[0093] The composite signal is then sent out through a shared time slot. After receiving the composite signal, each receiver derives the signal based on the received composite signal and the known spread spectrum code of user ABC:
[0094] Signal A:
[0095] 1 / 4*[(-1)*(-1)+(+1)*(-3)+(-1)*(+1)+(+1)*(-1)]1 / 4*[(-1)*(+1)+(+1)*(-1)+(-1)*(-1)+(-1)*(-1)+(+1)*(-3)]=>-1, -1=>0 0
[0096] Signal B:
[0097] 1 / 4*[(-1)*(-1)+(-1)*(-3)+(+1)*(+1)+(+1)*(-1)]1 / 4*[(-1)*(+1)+(-1)*(-1)+(+1)*(-1)+(+1)*(-1)+(+1)*(-3)]=>+1,-1=>1 0
[0098] Signal C:
[0099] 1 / 4*[(-1)*(-1)+(-1)*(-3)+(-1)*(+1)+(-1)*(-1)]1 / 4*[(-1)*(+1)+(-1)*(-1)+(-1)*(-1)+(-1)*(-1)+(-1)*(-3)]=>+1,+1=>1 1
[0100] From the above, when multiple different terminal nodes send binary data, their respective digital signals are adjusted by the assigned spread spectrum code and then sent. When using the same time slot, although these signals are superimposed on the bus to form a composite signal, the corresponding receiving terminal node can demodulate the sender's data from the composite signal based on the sender's spread spectrum code, thereby realizing the use of the same time slot to transmit data from different terminal nodes.
[0101] In some embodiments, it also includes: when receiving data, determining a spread spectrum code that matches the sender terminal node identifier and a time slot resource allocated to the sender based on the node identifier in the resource allocation information, using the time slot resource allocated to the sender to receive data from the sender terminal node and using the spread spectrum code that matches the sender terminal node identifier for demodulation.
[0102] Among them, when a terminal node receives data sent by other terminal nodes in their allocated time slots, it can match the sender terminal node identifier in the data with the node identifier in the resource allocation information. When the sender terminal node identifier is matched, the spread spectrum code under the sender terminal node identifier is checked, and the data of the sender terminal node is received using the time slot resources allocated to the sender, and then the spread spectrum code under the sender terminal node identifier is used to demodulate the data of the sender terminal node.
[0103] When multiple terminal nodes send data in the same time slot, the receiving terminal node will receive the data of the multiple terminal nodes through the time slot. The receiving party can match the target sender's spread spectrum code from the node identifier in the resource allocation information based on the target sender's (referring to a sender communicating with the receiving party) terminal node identifier, and then demodulate based on the target sender's spread spectrum code to recover the target sender's data. Non-target senders use other spread spectrum codes, so the non-target sender's data will not be demodulated.
[0104] As described above, the receiver receives data according to the time slot resources allocated to the sender, and accurately demodulates the original data by using the spreading code consistent with the sender, thereby realizing data transmission between the sender and the receiver.
[0105] In some embodiments, the allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources;
[0106] The sending of data includes: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
[0107] Among them, when some terminal nodes require low-delay communication or have strict requirements on transmission delay, service demand information can be added to the online message. Service demand information: The terminal can indicate its requirements for quality of service (QoS), such as delay sensitivity, bandwidth requirements, packet loss rate tolerance, etc., which is particularly important for high real-time data. Then the control node parses the online message to obtain the service demand information, and determines that the terminal node needs to send high real-time data, and then distinguishes the time slots used or the number of time slots used for the data sent by these terminal nodes, which can be distinguished into low real-time data and high real-time data, and limits the time slots corresponding to the sending of low real-time data and high real-time data to at least two time slot resources, and then marks these at least two time slot resources as at least two types of time slot resources, and then when TN sends low real-time data, it uses the first type of time slot resources to modulate the data using the spread spectrum code; when TN sends high real-time data, it uses the first and second types of time slot resources to modulate the data using the spread spectrum code. For example, the time slots allocated to a terminal node are 4, 8, and 12. Time slots 4 and 8 can be marked as first-class time slot resources for sending low real-time data, and time slot 12 can be marked as second-class time slot resources. Time slots 4, 8, and 12 can all be used to send high real-time data.
[0108] When sending high real-time data, the terminal node can set relevant identifiers in the data packet, such as a high real-time flag: identifying this data packet as high priority or sent across time slots.
[0109] From the above, the present application can divide time slot resources into different categories, and use one or more appropriate types of time slot resources to send different types of data (such as low real-time and high real-time) after spread spectrum code modulation, so as to more effectively utilize limited time slot resources without affecting the quality of service.
[0110] [Second embodiment of the low-latency communication method based on AUTBUS bus]
[0111] The second embodiment of the present application provides a low-latency communication method based on the AUTBUS bus, which is applied to a control node, such as Figure 6 As shown, the method includes:
[0112] S601: receiving an online message sent by a terminal node after being powered on, wherein the online message includes a node identifier of the terminal node;
[0113] S602: Allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0114] S603: Broadcast the resource allocation information so that each terminal node receives and updates its local resource allocation information.
[0115] Among them, when the terminal node goes online, it will send an online message to the control node, and the online message includes the node identifier of the terminal node. When the control node receives the online message, it will allocate a spread spectrum code and time slot resources to the terminal node. The control node will maintain a resource allocation information, which includes the above allocation information, that is, the node identifier of each online terminal node and the spread spectrum code and time slot resources allocated to each online terminal node.
[0116] The control node uses global allocation to allocate spreading codes, that is, different spreading codes are allocated to different terminal nodes, so that the spreading codes in all time slots are globally unique and will not conflict.
[0117] At the same time, the control node will continuously monitor the currently available time slots and maintain a time slot status table to record which time slots are idle and which are occupied. Then it will allocate the idle time slots to the online terminal nodes. A time slot resource can be allocated to one or more terminal nodes, so that multiple users can send data in the same time slot.
[0118] There is a time slot for broadcasting in the time slot. The control node broadcasts the resource allocation information to all terminal nodes through the time slot. After receiving the information, each terminal node updates its local resource allocation information.
[0119] As described above, the present application allocates different spread spectrum codes to each terminal node, and realizes that each time slot can be allocated to one or more terminal nodes, so that when a terminal node sends data, the time slot that has been allocated to other terminal nodes can also be allocated to the terminal node to send each data packet, solving the frame delay problem of each adjacent data packet mentioned in the background technology, thereby realizing the bus communication with low delay requirements between TNs. In addition, the throughput of data transmission is also improved.
[0120] In some embodiments, it also includes: the time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.
[0121] Among them, when some terminal nodes require low-latency communication or have strict requirements on transmission delay, service demand information can be added to the online message. Service demand information: The terminal can indicate its requirements for quality of service (QoS), such as delay sensitivity, bandwidth requirements, packet loss rate tolerance, etc., which is particularly important for high real-time data. Then the control node parses the online message to obtain the service demand information, and determines that the terminal node needs to send high real-time data, and then distinguishes the data sent by these terminal nodes, which can be divided into low real-time data and high real-time data, and limits the time slots corresponding to the sending of low real-time data and high real-time data to at least two time slot resources, and then marks these at least two time slot resources as at least two types of time slot resources, and then when sending low real-time data, the data can be modulated using the spread spectrum code and then sent using the first type of time slot resources; when sending high real-time data, the data can be modulated using the spread spectrum code and then sent using the first and second types of time slot resources. For example, the time slots allocated to a terminal node are 4, 8, 12, and 16. Time slots 4, 8, and 12 can be marked as first-class time slot resources for sending low real-time data, and time slot 16 can be marked as second-class time slot resources. Time slots 4, 8, 12, and 16 can all be used to send high real-time data.
[0122] From the above, the present application can divide time slot resources into different categories, and use one or more appropriate types of time slot resources to send different types of data (such as low real-time and high real-time) after spread spectrum code modulation, so as to more effectively utilize limited time slot resources without affecting the quality of service.
[0123] [Specific implementation method of low-latency communication method based on AUTBUS bus]
[0124] The present application provides a low-latency communication method based on AUTBUS bus applied to terminal node TN1 and control node CN. The terminal node needs to send high real-time data, such as Figure 7 As shown, the method includes:
[0125] S710: TN1 is powered on and starts up, and sends an online message to CN. The online message includes the TN1 ID and high real-time data requirements.
[0126] S720: CN receives the online message of TN1, parses the online message to obtain TN1 ID and high real-time data requirement, allocates a spreading code and time slots 4 and 6 to TN1, marks time slot 4 as a first-class time slot for sending low real-time data, marks time slot 6 as a second-class time slot for sending high real-time data, and updates resource allocation information;
[0127] S730: CN broadcasts resource allocation information;
[0128] S740: Each TN including TN1 receives the resource allocation information broadcast by CN, updates the local resource allocation information, and can match the spreading code and time slots 4 and 6 corresponding to the TN1 ID from the resource allocation information according to the TN1 ID;
[0129] S750: When TN1 sends low real-time data, the data is modulated using the spread spectrum code and then sent using time slot 4;
[0130] S760: When TN1 sends high real-time data, it modulates the data using the spread spectrum code and then sends it using any of time slots 4 and 6.
[0131] S770: When other TNs receive data sent by TN1 in time slot 4 or time slot 6 allocated by TN1, they parse the data to obtain TN1 ID, match the spread spectrum code corresponding to TN1 ID from the resource allocation information according to TN1 ID, and demodulate the data based on the spread spectrum code.
[0132] [The first embodiment of the low-latency communication device based on AUTBUS bus of this application]
[0133] like Figure 8 As shown, the embodiment of the present application provides a low-latency communication device based on the AUTBUS bus, which is applied to the terminal node and can be used to implement the low-latency communication method based on the AUTBUS bus in the first embodiment above, such as Figure 8 As shown, the low-latency communication device based on the AUTBUS bus has a power-on startup module 810, a resource allocation information receiving module 820, a resource allocation information updating module 830, and a data sending module 840.
[0134] A power-on startup module is used to send its own node identification to the control node after power-on startup;
[0135] A resource allocation information receiving module, configured to receive resource allocation information broadcast by a control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes;
[0136] A resource allocation information updating module, used to update local resource allocation information and determine the spreading code and allocated time slot resources matching its own node identifier according to the node identifier in the resource allocation information;
[0137] The data sending module is used to send data by modulating the data using the spread spectrum code and then sending the data using the allocated time slot resources.
[0138] In some real-time examples, the allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources;
[0139] The data sending module is specifically used for: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
[0140] In some real-time examples, such as Figure 8 As shown, it also includes:
[0141] The data receiving module 850 is used to determine, when receiving data, a spread spectrum code that matches the sender terminal node identifier and the time slot resources allocated to the sender according to the node identifier in the resource allocation information, use the time slot resources allocated to the sender to receive the data of the sender terminal node and use the spread spectrum code that matches the sender terminal node identifier for demodulation.
[0142] For details, please refer to the detailed description in the first embodiment of the method, which will not be repeated here.
[0143] [Second embodiment of the low-latency communication device based on AUTBUS bus of this application]
[0144] like Fig. 9 As shown, an embodiment of the present application provides a low-latency communication device based on an AUTBUS bus, which is applied to a control node and can be used to implement the low-latency communication method based on an AUTBUS bus in the above embodiment, such as Fig. 9 As shown, the low-latency communication device based on the AUTBUS bus has an online message receiving module 901, a distribution module 902, and a broadcast module 903.
[0145] An online message receiving module, used to receive an online message sent by a terminal node after it is powered on and started, wherein the online message includes a node identifier of the terminal node;
[0146] an allocation module, configured to allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and a time slot resource can be allocated to one or more terminal nodes;
[0147] The broadcast module is used to broadcast the resource allocation information so that each terminal node receives and updates its local resource allocation information.
[0148] In some real-time examples, the allocation module is further configured to:
[0149] The time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.
[0150] For details, please refer to the detailed description in the second embodiment of the method, which will not be repeated here.
[0151] [Embodiment of the computing device of the present application]
[0152] Fig.10 900 is a structural schematic diagram of a computing device provided in an embodiment of the present application. The computing device can be used as a low-latency communication device based on the AUTBUS bus to execute the optional embodiments of the low-latency communication method based on the AUTBUS bus, the calibration method, or the low-latency communication method based on the AUTBUS bus of the AR-HUD. The computing device can be a terminal or a chip or chip system inside the terminal. Fig.10 As shown, the computing device 900 includes: a processor 910 , a memory 920 , and a communication interface 930 .
[0153] It should be understood that Fig.10 The communication interface 930 in the computing device 900 shown may be used to communicate with other devices, and may specifically include one or more transceiver circuits or interface circuits.
[0154] The processor 910 may be connected to a memory 920. The memory 920 may be used to store the program code and data. Therefore, the memory 920 may be a storage unit inside the processor 910, or an external storage unit independent of the processor 910, or a component including a storage unit inside the processor 910 and an external storage unit independent of the processor 910.
[0155] Optionally, the computing device 900 may further include a bus. The memory 920 and the communication interface 930 may be connected to the processor 910 via the bus. The bus may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.10 A line without an arrow is used to represent the bus, but this does not mean that there is only one bus or one type of bus.
[0156] It should be understood that in the embodiment of the present application, the processor 910 may adopt a central processing unit (CPU). The processor may also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. Alternatively, the processor 910 may adopt one or more integrated circuits to execute relevant programs to implement the technical solutions provided in the embodiment of the present application.
[0157] The memory 920 may include a read-only memory and a random access memory, and provides instructions and data to the processor 910. A portion of the processor 910 may also include a nonvolatile random access memory. For example, the processor 910 may also store information on the device type.
[0158] When the computing device 900 is running, the processor 910 executes the computer-executable instructions in the memory 920 to perform any operation step of the above method and any optional embodiment thereof.
[0159] It should be understood that the computing device 900 according to the embodiment of the present application can correspond to the corresponding subjects in the methods according to the embodiments of the present application, and the above-mentioned and other operations and / or functions of each module in the computing device 900 are respectively for implementing the corresponding processes of each method of the present embodiment. For the sake of brevity, they will not be repeated here.
[0160] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0161] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0162] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0163] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0164] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0165] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0166] An embodiment of the present application also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, it is used to execute the above method, which includes at least one of the solutions described in the above embodiments.
[0167] The computer storage medium of the embodiment of the present application can adopt any combination of one or more computer-readable media. Computer-readable media can be computer-readable signal media or computer-readable storage media. Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or devices, or any combination of the above. More specific examples (non-exhaustive lists) of computer-readable storage media include: electrical connections with one or more wires, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this document, computer-readable storage media can be any tangible medium containing or storing programs, which can be used by instruction execution systems, devices or devices or used in combination with them.
[0168] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0169] The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0170] Computer program code for performing the operation of the present application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., using an Internet service provider to connect through the Internet).
[0171] In addition, the words "first, second, third, etc." or module A, module B, module C and other similar terms in the specification and claims are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that the specific order or sequence can be interchanged where permitted so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.
[0172] In the above description, the numbers representing the steps, such as S110, S120, etc., do not necessarily mean that the steps will be executed in this manner. If permitted, the order of the steps can be interchanged or they can be executed simultaneously.
[0173] The term "comprising" as used in the description and claims should not be interpreted as being limited to what is listed thereafter; it does not exclude other elements or steps. Therefore, it should be interpreted as specifying the presence of the features, integers, steps or components mentioned, but does not exclude the presence or addition of one or more other features, integers, steps or components and groups thereof. Therefore, the expression "a device comprising means A and B" should not be limited to a device consisting of components A and B only.
[0174] References to "one embodiment" or "an embodiment" in this specification mean that a particular feature, structure, or characteristic described in conjunction with the embodiment is included in at least one embodiment of the present application. Therefore, the phrases "in one embodiment" or "in an embodiment" appearing in various places in this specification do not necessarily refer to the same embodiment, but may refer to the same embodiment. In addition, in one or more embodiments, the particular features, structures, or characteristics can be combined in any appropriate manner, as would be apparent to one of ordinary skill in the art from this disclosure.
[0175] Note that the above are only preferred embodiments of the present application and the technical principles used. Those skilled in the art will understand that the present application is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present application. Therefore, although the present application is described in more detail through the above embodiments, the present application is not limited to the above embodiments, and may also include more other equivalent embodiments without departing from the concept of the present application, all of which belong to the scope of protection of the present application.
Claims
1. A low-latency communication method based on AUTBUS bus, characterized in that: Applied to a terminal node, the method comprises: After power-on, it sends its own node identification to the control node; Receive resource allocation information broadcasted by the control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes; Update local resource allocation information, and determine the spreading code and allocated time slot resources matching the node identifier of the node itself according to the node identifier in the resource allocation information; When sending data, the data is modulated using the spreading code and then sent using the allocated time slot resources.
2. The method according to claim 1, characterized in that The allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources; The sending of data includes: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
3. The method according to claim 1 or 2, characterized in that: Also includes: When receiving data, the spread spectrum code that matches the sender's terminal node identifier and the time slot resources allocated to the sender are determined according to the node identifier in the resource allocation information, and the data of the sender's terminal node is received using the time slot resources allocated to the sender and demodulated using the spread spectrum code that matches the sender's terminal node identifier.
4. A low-latency communication method based on AUTBUS bus, characterized in that: Applied to a control node, the method comprises: Receiving an online message sent by a terminal node after it is powered on and started, wherein the online message includes a node identifier of the terminal node; Allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes; The resource allocation information is broadcasted so that each terminal node receives and updates its local resource allocation information.
5. The method according to claim 4, characterized in that Also includes: The time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.
6. A low-latency communication device based on AUTBUS bus, characterized in that: Applied to a terminal node, the device comprises: A power-on startup module is used to send its own node identification to the control node after power-on startup; A resource allocation information receiving module, configured to receive resource allocation information broadcast by a control node, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and one time slot resource can be allocated to one or more terminal nodes; A resource allocation information updating module, used to update local resource allocation information and determine the spreading code and allocated time slot resources matching its own node identifier according to the node identifier in the resource allocation information; The data sending module is used to send data by modulating the data using the spread spectrum code and then sending the data using the allocated time slot resources.
7. The device according to claim 6, characterized in that The allocated time slot resources include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources; The data sending module is specifically used for: when sending low real-time data, using the spread spectrum code to modulate the data and then using the first type of time slot resources to send; when sending high real-time data, using the spread spectrum code to modulate the data and then using the first type and the second type of time slot resources to send.
8. The device according to claim 6 or 7, characterized in that Also includes: The data receiving module is used to determine, when receiving data, a spread spectrum code that matches the sender's terminal node identifier and a time slot resource allocated to the sender according to the node identifier in the resource allocation information, use the time slot resource allocated to the sender to receive data from the sender's terminal node, and use the spread spectrum code that matches the sender's terminal node identifier for demodulation.
9. A low-latency communication device based on AUTBUS bus, characterized in that: Applied to a control node, the device comprises: An online message receiving module, used to receive an online message sent by a terminal node after it is powered on and started, wherein the online message includes a node identifier of the terminal node; an allocation module, configured to allocate a spreading code and a time slot resource to the terminal node, and update resource allocation information, wherein the resource allocation information includes a node identifier of each online terminal node and a spreading code and a time slot resource allocated to each online terminal node, wherein different spreading codes are allocated to different terminal nodes, and a time slot resource can be allocated to one or more terminal nodes; The broadcast module is used to broadcast the resource allocation information so that each terminal node receives and updates its local resource allocation information.
10. The device according to claim 9, characterized in that The allocation module is also used for: The time slot resources allocated to the terminal node include at least two time slot resources, and the at least two time slot resources are marked as at least two types of time slot resources, so that when the terminal node sends low real-time data or high real-time data, different types of time slot resources are used for sending.