Communication method, device, system and vehicle
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- YINWANG INTELLIGENT TECHNOLOGIES CO LTD
- Filing Date
- 2023-08-04
- Publication Date
- 2026-05-05
AI Technical Summary
In the wired audio system of a vehicle, how to quickly complete the discovery of slave nodes in the audio bus system, and improve the efficiency of clock synchronization between the master node and multiple slave nodes.
By building a daisy chain network between the master node and multiple slave nodes, clock synchronization and node discovery are used using discovery frames. The specific steps include receiving and sending discovery frames carrying synchronization information to improve the discovery speed and clock synchronization of the slave nodes. efficiency.
Fast clock synchronization and node discovery between the master node and multiple slave nodes are realized, which improves the efficiency of audio data transmission and the system response speed.
Smart Images

Figure CN121986455A_ABST
Abstract
Description
Communication method, device, system and vehicle Technical Field
[0001] The present application relates to the field of audio transmission, and more specifically, to a communication method, device, system and vehicle. Background Art
[0002] A vehicle's wired audio system typically includes an audio control device and multiple audio devices, which are typically connected in a daisy-chain configuration. The audio control device sends the audio data to be played to one or more audio devices via an audio bus, and the audio devices then transmit the collected audio data to the audio control device via the audio bus.
[0003] To enable audio data transmission between an audio control device and other audio devices, slave nodes in multiple audio devices must synchronize their clocks with the master node in the audio control device and be discovered by the master node before data transmission can begin. When the audio control device and multiple audio devices are connected in a daisy-chain configuration, quickly discovering slave nodes in the audio bus system becomes a pressing issue.
[0004] Summary of the Invention
[0005] The present application provides a communication method, device, system and vehicle, which can improve the efficiency of clock synchronization between a master node and multiple slave nodes and accelerate the speed at which the master node discovers the slave nodes.
[0006] In a first aspect, a communication method is provided, which is applied to a first slave node, and the method includes: receiving a first discovery frame, the first discovery frame carrying first synchronization information, and the first synchronization information is used for clock synchronization; after receiving the first discovery frame, sending a second discovery frame, the second discovery frame carrying second synchronization information, and the second synchronization information is used for clock synchronization; wherein, the first slave node is in an undiscovered state.
[0007] Exemplarily, receiving the first discovery frame includes: receiving the first discovery frame directly from the master node, or receiving the first discovery frame sent by the master node via one or more slave nodes. Sending the second discovery frame includes: sending the second discovery frame directly to the second slave node, or sending the second discovery frame to the second slave node via one or more slave nodes.
[0008] Wherein, the second slave node is connected to the master node via at least the first slave node. Wherein, the second slave node can be the tail slave node in a daisy chain network consisting of multiple slave nodes including the first slave node and the second slave node and the master node, or it can also be any slave node between the first slave node and the tail slave node. In the present application, in the link consisting of the master node and multiple slave nodes, the link in which a slave node transmits information to the master node or in the direction of the master node is an uplink, and the link in which the slave node transmits information to a slave node away from the master node is a downlink. In addition, the link in which the master node transmits information to the slave node is a downlink. For example, the above-mentioned first slave node is located on the uplink of the second slave node, and the above-mentioned second slave node is located on the downlink of the first slave node; the first slave node and the second slave node are located on the downlink of the master node.
[0009] In this application, the process of discovering a slave node includes the process of a master node detecting a slave node and assigning it an identity (ID). This ID can be used for control, interrupt reporting, and other instructions. After a slave node is discovered, the master node can send data to it or receive data from it.
[0010] Exemplarily, the first slave node being in an undiscovered state may include: a state when the first slave node is not assigned an identifier; or a state when the first slave node sets the unassigned identifier carried in a discovery frame as its own identity identifier, and after sending a response frame to the master node, does not receive a discovery frame carrying an identifier different from its own identity identifier. The first slave node being in a discovered state may include: a state when and after receiving a discovery frame carrying an identifier different from its own identity identifier. The first slave node being in an undiscovered state may also be understood as the first slave node in an undiscovered state having at least one of the following characteristics: the first slave node is not assigned an identifier; or the first slave node sets the unassigned identifier carried in a discovery frame as its own identity identifier, and after sending a response frame to the master node, does not receive a discovery frame carrying an identifier different from its own identity identifier. The first slave node being in a discovered state may also be understood as the first slave node in a discovered state may include the following characteristics: receiving a discovery frame carrying an identifier different from its own identity identifier.
[0011] Exemplarily, after receiving the first discovery frame, sending the second discovery frame includes any of the following items: sending the second discovery frame before sending a response frame to the master node based on the first discovery frame; sending the second discovery frame when sending a response frame to the master node based on the first discovery frame; or, after sending a response frame to the master node based on the first discovery frame, sending the second discovery frame before the first slave node receives a discovery frame sent by the master node carrying another identifier that is not assigned to the slave node.
[0012] Among them, sending a response frame to the master node based on the first discovery frame may include: the first slave node sets the identifier carried in the first discovery frame to its own identifier, and sends a response frame to the master node, or the first slave node sets the identifier carried in the first discovery frame to its own identifier and the first slave node completes clock synchronization according to the first synchronization information, and sends a response frame to the master node.
[0013] In the above technical solution, the first slave node in an undiscovered state sends a second discovery frame carrying synchronization information to the slave node on the downlink after receiving the first discovery frame sent by the master node, which helps to synchronize the clock between the slave node on the downlink and the master node, thereby improving the speed of slave node discovery.
[0014] With reference to the first aspect, in certain implementations of the first aspect, the first discovery frame and the second discovery frame further carry a first identity field.
[0015] In combination with the first aspect, in some implementations of the first aspect, a value of the first identity field of the first discovery frame is a non-specific value, and a value of the first identity field of the second discovery frame is a specific value.
[0016] For example, the non-specific value may include an identifier that is not assigned to a slave node, or may include an identifier that is about to be or has been assigned to the first slave node; the specific value may include a character string or sequence that cannot be assigned to a slave node as an identifier. The specific value may be a predetermined alignment between multiple slave nodes, including the first slave node and the second slave node, and the master node.
[0017] In the above technical solution, by setting the identity field of the second discovery frame to a specific value, the probability of a slave node located in the downlink of the first slave node erroneously feeding back a response frame based on the second discovery frame can be reduced. Furthermore, by setting the identity field of the second discovery frame to a specific value, it is also possible to indicate to the slave node located in the downlink of the first slave node that the second discovery frame is used only for clock synchronization.
[0018] In combination with the first aspect, in some implementations of the first aspect, the method further includes: setting a non-specific value as a node identity of the first slave node; and sending a first response frame.
[0019] For example, setting the non-specific value as the node identity of the first slave node can be understood as: the first slave node uses the non-specific value as its own identity. Furthermore, based on the identity, the first slave node determines whether a subsequently received discovery frame is used only for clock synchronization or for both clock synchronization and for assigning identities to other slave nodes.
[0020] In combination with the first aspect, in some implementations of the first aspect, the method further includes: receiving a third discovery frame, the third discovery frame carrying a second identity identification field, and the second identity identification field has a specific value; and sending the third discovery frame.
[0021] Exemplarily, the second identity identification field and the first identity identification field may be the same field; the specific value and the specific value may be the same specific value.
[0022] It should be noted that the third discovery frame carries synchronization information used for clock synchronization. After receiving the third discovery frame, the first slave node performs clock synchronization according to the synchronization information in the third discovery frame.
[0023] It should also be noted that, in this implementation, the first slave node is any slave node located between the slave node directly connected to the master node and the last slave node.
[0024] In the above technical solution, when the first slave node determines that the value of the first identity field is a specific value, it can determine that the third discovery frame is only used for clock synchronization, and then forward the third discovery frame to the slave node of the downlink, and does not feedback a response frame to the master node based on the third discovery frame.
[0025] In combination with the first aspect, in certain implementations of the first aspect, the first discovery frame and the second discovery frame also carry a status field, and the status field indicates whether the first identifier carried by the first identity identification field is assigned; when the value of the status field is a first value, the status field indicates that the first identifier is not assigned; when the value of the status field is a second value, the status field indicates that the first identifier is assigned.
[0026] Exemplarily, the first identifier may include the above-mentioned non-specific value.
[0027] With reference to the first aspect, in certain implementations of the first aspect, a value of the status field of the first discovery frame is a first value, and a value of the status field of the second discovery frame is a second value.
[0028] Exemplarily, the status field may be a 1-bit field, and the value of the field may be "0" or "1." The first value may be "0" and the second value may be "1."
[0029] In the above technical solution, the second value of the status field indicates in the second discovery frame that the first identifier it carries has been allocated, which can reduce the probability of the slave node located in the downlink of the first slave node repeatedly setting the first identifier as its own identifier, thereby reducing the probability of the slave node located in the downlink of the first slave node erroneously feeding back a response frame based on the second discovery frame, thereby avoiding duplication of the slave node identity identifier.
[0030] In combination with the first aspect, in some implementations of the first aspect, the method further includes: setting the value of the first identity field to the node identity of the first slave node; and sending a second response frame.
[0031] In some possible implementations, the second response frame and the first response frame may be the same response frame.
[0032] In combination with the first aspect, in some implementations of the first aspect, the first discovery frame and the second discovery frame further carry a first check field, and the first check field is used to at least check the first identity field and the status field.
[0033] Exemplarily, the first check field may include check information such as cyclic redundancy check (CRC) and Hamming code.
[0034] In the above technical solution, the first identity field and the status field are protected by the first check field, which can reduce the probability of false detection of the first identity field and the status field by the slave node.
[0035] In combination with the first aspect, in some implementations of the first aspect, the first discovery frame and the second discovery frame further carry a second check field, and the second check field is at least used to check the first identity field.
[0036] Exemplarily, the second check field may include check information such as CRC, Hamming code, and first identifier repetition.
[0037] In the above technical solution, the first identity identification field is protected by the second check field, which can reduce the probability of false detection of the first identity identification field by the slave node.
[0038] In combination with the first aspect, in some implementations of the first aspect, the method further includes: receiving a fourth discovery frame, the fourth discovery frame carrying the first identity field and the status field, and the status field has a second value; and sending the fourth discovery frame.
[0039] Exemplarily, the first identity identification field may carry the first identification, or the value of the first identity identification field may be a non-specific value.
[0040] It should be noted that the fourth discovery frame carries synchronization information used for clock synchronization. After receiving the fourth discovery frame, the first slave node performs clock synchronization according to the synchronization information in the fourth discovery frame.
[0041] It should also be noted that, in this implementation, the first slave node is any slave node located between the slave node directly connected to the master node and the last slave node.
[0042] In the above technical solution, when the first slave node determines that the status field value is the second value, it can determine that the fourth discovery frame is only used for clock synchronization, and then forward the fourth discovery frame to the slave node of the downlink, and does not feedback a response frame to the master node based on the fourth discovery frame.
[0043] In combination with the first aspect, in certain implementations of the first aspect, the first discovery frame carries an information field, the information field includes a third identity field, and the method also includes: setting the value of the third identity field to the node identity of the first slave node; and sending a third response frame.
[0044] Exemplarily, the third identity identification field and the first identity identification field may be the same field. The value of the third identity identification field may include the non-specific value, or may also include the first identification.
[0045] Exemplarily, the third response frame may be the same response frame as the first response frame and the second response frame.
[0046] In combination with the first aspect, in certain implementations of the first aspect, the second discovery frame carries only second synchronization information, and the bit length of the second synchronization information is the same as the bit length of the first synchronization information; or the second discovery frame carries second synchronization information and third synchronization information, the bit length of the second synchronization information is the same as the bit length of the first synchronization information, and the bit length of the third synchronization information is the same as the bit length of the information field.
[0047] Exemplarily, the second synchronization information may include other information in addition to the information used for slave node discovery. For example, the second synchronization information may include control information related to non-business data. The information used for slave node discovery may include information carried by the third identity field.
[0048] Exemplarily, the content of the information carried by the second synchronization information is the same as the information carried by the first synchronization information, and the content of the information carried by the third synchronization information is the same as the information carried by the first synchronization information.
[0049] In the above technical solution, the second discovery frame includes only synchronization information, and the synchronization information overwrites the original information field. This helps maintain the frame structure of the second discovery frame and the frame structure of the first discovery frame, thereby facilitating discovery frame management. In addition, the increased bit length of the information used for clock synchronization further facilitates clock synchronization.
[0050] In combination with the first aspect, in certain implementations of the first aspect, the first synchronization information and the second synchronization information include an information indication field, and the information indication field is used to indicate whether the first synchronization information or the second synchronization information carries an information field; when the value of the information indication field is a third value, the information indication field indicates that the information field is carried; when the value of the information indication field is a fourth value, the information indication field indicates that the information field is not carried.
[0051] Exemplarily, the information indication field may be a 1-bit field, and the value of the field may be "0" or "1." The third value may be "0" and the fourth value may be "1."
[0052] In combination with the first aspect, in some implementations of the first aspect, the value of the information indication field in the first discovery frame is the third value, and the value of the information indication field in the second discovery frame is the fourth value.
[0053] In the above technical solution, the fourth value of the information indication field indicates in the second discovery frame that it does not carry the information field, which can reduce the probability of the slave node located in the downlink of the first slave node erroneously feeding back a response frame based on the second discovery frame.
[0054] In combination with the first aspect, in some implementations of the first aspect, the first synchronization information and the second synchronization information further include a third check field, and the third check field is at least used to check the information indication field.
[0055] Exemplarily, the third check field may include check information such as CRC, Hamming code, etc.
[0056] In the above technical solution, the third check field can reduce the probability of erroneous feedback on the first discovery frame or the second discovery frame caused by an error in the detection of the check information indication field by the slave node.
[0057] In combination with the first aspect, in some implementations of the first aspect, the method further includes: receiving a fifth discovery frame, the fifth discovery frame carrying at least synchronization information, the synchronization information being used for clock synchronization; and sending the fifth discovery frame.
[0058] Exemplarily, the first slave node receives the fifth discovery frame, and performs clock synchronization according to the synchronization information in the fifth discovery frame.
[0059] It should be noted that, in this implementation, the first slave node is any slave node located between the slave node directly connected to the master node and the last slave node.
[0060] With reference to the first aspect, in certain implementations of the first aspect, the fifth discovery frame is the same as the second discovery frame.
[0061] The fifth discovery frame is identical to the second discovery frame, including: the fifth discovery frame and the second discovery frame have the same frame structure and carried information content.
[0062] In combination with the first aspect, in some implementations of the first aspect, the second synchronization information is the same as the first synchronization information.
[0063] The second synchronization information is the same as the first synchronization information, including: the second synchronization information and the first synchronization information have the same information content.
[0064] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: receiving a sixth discovery frame, which carries a second identifier that is not assigned to the slave node; and sending the sixth discovery frame when the second identifier is different from the identity identifier of the first slave node.
[0065] In the second aspect, a communication device is provided, which is applied to a first slave node, and the device includes: a receiving unit, used to receive a first discovery frame, the first discovery frame carries first synchronization information, and the first synchronization information is used for clock synchronization; a sending unit, used to send a second discovery frame after the post-node unit receives the first discovery frame, the second discovery frame carries second synchronization information, and the second synchronization information is used for clock synchronization; wherein, the first slave node is in an undiscovered state.
[0066] In combination with the second aspect, in some implementations of the second aspect, the first discovery frame and the second discovery frame further carry a first identity field.
[0067] In combination with the second aspect, in some implementations of the second aspect, a value of the first identity field of the first discovery frame is a non-specific value, and a value of the first identity field of the second discovery frame is a specific value.
[0068] In combination with the second aspect, in some implementations of the second aspect, the device further includes a first processing unit, configured to: set a non-specific value as the node identity of the first slave node; and the sending unit is further configured to: send a first response frame.
[0069] In combination with the second aspect, in certain implementations of the second aspect, the receiving unit is further used to: receive a third discovery frame, the third discovery frame carries a second identity identification field, and the second identity identification field takes a specific value; the sending unit is also used to send the third discovery frame.
[0070] In combination with the second aspect, in certain implementations of the second aspect, the first discovery frame and the second discovery frame also carry a status field, and the status field indicates whether the first identity carried by the first identity field is assigned; when the value of the status field is the first value, the status field indicates that the first identity is not assigned; when the value of the status field is the second value, the status field indicates that the first identity is assigned.
[0071] In combination with the second aspect, in some implementations of the second aspect, a value of the status field of the first discovery frame is a first value, and a value of the status field of the second discovery frame is a second value.
[0072] In combination with the second aspect, in some implementations of the second aspect, the device also includes a second processing unit, which is used to: set the value of the first identity field to the node identity of the first slave node; the sending unit is also used to: send a second response frame.
[0073] In combination with the second aspect, in some implementations of the second aspect, the first discovery frame and the second discovery frame further carry a first check field, and the first check field is used to at least check the first identity field and the status field.
[0074] In combination with the second aspect, in some implementations of the second aspect, the first discovery frame and the second discovery frame further carry a second check field, and the second check field is at least used to check the first identity field.
[0075] In combination with the second aspect, in certain implementations of the second aspect, the receiving unit is also used to: receive a fourth discovery frame, the fourth discovery frame carries a first identity identification field and a status field, and the status field takes a second value; the sending unit is also used to: send a fourth discovery frame.
[0076] In combination with the second aspect, in certain implementations of the second aspect, the first discovery frame carries an information field, the information field includes a third identity field, and the device also includes a third processing unit, which is used to: set the value of the third identity field to the node identity of the first slave node; the sending unit is used to: send a third response frame.
[0077] In combination with the second aspect, in certain implementations of the second aspect, the second discovery frame carries only second synchronization information, and the bit length of the second synchronization information is the same as the bit length of the first synchronization information; or the second discovery frame carries second synchronization information and third synchronization information, the bit length of the second synchronization information is the same as the bit length of the first synchronization information, and the bit length of the third synchronization information is the same as the bit length of the information field.
[0078] In combination with the second aspect, in certain implementations of the second aspect, the first synchronization information and the second synchronization information include an information indication field, and the information indication field is used to indicate whether the first synchronization information or the second synchronization information carries an information field; when the value of the information indication field is a third value, the information indication field indicates that the information field is carried; when the value of the information indication field is a fourth value, the information indication field indicates that the information field is not carried.
[0079] In combination with the second aspect, in some implementations of the second aspect, the value of the information indication field in the first discovery frame is the third value, and the value of the information indication field in the second discovery frame is the fourth value.
[0080] In combination with the second aspect, in some implementations of the second aspect, the first synchronization information and the second synchronization information further include a third check field, and the third check field is at least used to check the information indication field.
[0081] In combination with the second aspect, in certain implementations of the second aspect, the receiving unit is further used to: receive a fifth discovery frame, the fifth discovery frame carries at least synchronization information, and the synchronization information is used for clock synchronization; the sending unit is further used to: send the fifth discovery frame.
[0082] With reference to the second aspect, in certain implementations of the second aspect, the fifth discovery frame is the same as the second discovery frame.
[0083] In combination with the second aspect, in some implementations of the second aspect, the second synchronization information is the same as the first synchronization information.
[0084] In a third aspect, a communication device is provided, comprising: a memory for storing a computer program; and a processor for executing the computer program stored in the memory, so that the device performs a method as in any possible implementation of the first aspect.
[0085] In a fourth aspect, a communication system is provided, comprising an apparatus as in any possible implementation of the second aspect or the third aspect, as well as a master node and a second slave node.
[0086] In a fifth aspect, a vehicle is provided, which includes the device in any possible implementation of the second aspect or the third aspect; or, the vehicle includes the system in any possible implementation of the fourth aspect.
[0087] In a sixth aspect, a computer program product is provided, comprising: a computer program code, which, when executed on a computer, enables the computer to execute the method in any one of the possible implementations of the first aspect.
[0088] It should be noted that the above-mentioned computer program code may be stored in whole or in part on a first storage medium, wherein the first storage medium may be packaged together with the processor or separately from the processor.
[0089] In a seventh aspect, a computer-readable medium is provided, wherein the computer-readable medium stores instructions. When the instructions are executed by a processor, the processor implements the method in any possible implementation of the first aspect.
[0090] In an eighth aspect, a chip is provided, which includes a circuit for executing the method in any possible implementation of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0091] FIG1 is a schematic block diagram of an audio system provided in an embodiment of the present application;
[0092] FIG2 is another schematic block diagram of an audio system provided in an embodiment of the present application;
[0093] FIG3 is a schematic block diagram of a vehicle provided in an embodiment of the present application;
[0094] FIG4 is a schematic flow chart of a communication method provided in an embodiment of the present application;
[0095] FIG5 is a schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0096] FIG6 is another schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0097] FIG7 is another schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0098] FIG8 is another schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0099] FIG9 is another schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0100] FIG10 is another schematic block diagram of a slave node discovery frame provided in an embodiment of the present application;
[0101] FIG11 is another schematic flow chart of a communication method provided in an embodiment of the present application;
[0102] FIG12 is another schematic flow chart of the communication method provided in an embodiment of the present application;
[0103] FIG13 is another schematic flow chart of the communication method provided in an embodiment of the present application;
[0104] FIG14 is a schematic block diagram of a communication device provided in an embodiment of the present application;
[0105] FIG15 is another schematic block diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0106] The technical solution in this application will be described below with reference to the accompanying drawings.
[0107] Fig. 1 shows the schematic diagram of the audio system provided by an embodiment of the present application. As shown in Figure 1, audio system 100 includes an audio control device 110, an audio device 120, an audio device 130, and an audio device 140. Wherein, the audio control device 110 includes a main controller 111 and a master node 112, the audio device 120 includes a processing module 121 and a slave node 122, the audio device 130 includes a processing module 131 and a slave node 132, and the audio device 140 includes a processing module 141 and a slave node 142. The master node 112 is connected to the slave nodes 122, 132, and 142 by cables based on a daisy chain networking mode. The slave nodes 122, 132, and 142 can be devices such as processors and transmission chips in each audio device respectively. The master node 112 is used for the audio control device 110 to communicate with the audio devices 120 to 140. In one example, the main controller 111 transmits audio data to be played by the audio device 140 sequentially through the master node 112, the slave node 122, the slave node 132, and the slave node 142. The processing module 141 controls the playback of the audio data. In another example, the audio data collected by the audio device 130 through the processing module 131 is transmitted to the main controller 111 sequentially through the slave node 132, the slave node 122, and the master node 112.
[0108] FIG2 is a schematic diagram showing the distribution of the audio system provided in a vehicle according to an embodiment of the present application. As shown in FIG2 , the audio control device is connected to audio devices 1 to 8 via a daisy chain networking method. Audio device 1 and audio device 3, audio device 3 and audio device 4, audio device 4 and audio device 7, audio device 7 and audio device 8, audio device 8 and audio device 6, audio device 6 and audio device 5, and audio device 5 and audio device 2 can be connected via a vehicle audio bus, respectively. The audio control device may include the audio control device 110 shown in FIG1 , and audio devices 1 to 8 may include one or more of the audio devices 120, 130, and 140 shown in FIG1 . For example, audio device 1 may be the audio device 120 shown in FIG1 , and one or more of the audio devices 3, 4, 7, and 8 may be the audio device 130 shown in FIG1 , and one or more of the audio devices 6, 5, and 2 may be the audio device 140 shown in FIG1 .
[0109] Exemplarily, the audio devices 1 to 8 may include, but are not limited to: a multimedia head unit, a speaker, a microphone (MIC), and an audio power amplifier (APM).
[0110] FIG3 shows a functional schematic diagram of a vehicle provided in an embodiment of the present application. As shown in FIG3 , the vehicle includes the audio system 100 shown in FIG1 . When the audio system 100 is set in a vehicle, the audio control device 110 may include any one of a vehicle domain controller (VDC), an advanced driving domain controller (ADC), and a cockpit domain controller (CDC). Alternatively, the audio control device 110 may also include, but is not limited to, an in-car application-server (ICAS) controller, a body domain controller (BDC), a special equipment system (SAS), a media graphics unit (MGU), a body super core (BSC), and an advanced driving assistant system super core (ADAS super core). Among them, the ICAS may include at least one of the following: a vehicle control server ICAS1, an intelligent driving server ICAS2, an intelligent cockpit server ICAS3, and an infotainment server ICAS4.
[0111] The main controller 111 and the main node 112 may respectively include one or more processors in the audio control device 110 shown in FIG. 3 , such as processors 201 to 20 n (n is a positive integer).
[0112] It should be understood that FIG. 1 to FIG. 3 are merely exemplary illustrations, and in actual implementation, the audio system 100 may include more or fewer slave nodes, that is, the audio system may include more or fewer audio devices.
[0113] As described above, in order to transmit audio data between the audio control device and the audio devices, before data transmission, each of the multiple audio devices needs to be synchronized with the clock of the audio control device and be discovered to access the audio bus system.
[0114] In view of this, embodiments of the present application provide a communication method, device, system and vehicle, which improve the efficiency of clock synchronization of multiple slave nodes with the master node and speed up the master node's discovery of slave nodes during the process of the master node discovering slave nodes.
[0115] The specific process of the communication method provided in the embodiment of the present application is described below in conjunction with Figure 4.
[0116] FIG4 shows a schematic flow chart of a communication method provided in an embodiment of the present application. This method 400 can be executed by the audio system 100 shown in FIG1 , or can also be applied to the audio system shown in FIG2 . For example, the master node can be the master node 112 in FIG1 , and the slave nodes 1 to 3 can be respectively configured as the slave nodes 120 to 140 in FIG1 . Specifically, this method 400 can include S401 to S421 .
[0117] S401 : The master node sends a slave node discovery frame 1 to the slave node 1 . The slave node discovery frame 1 carries synchronization information 1 and indication information 1 indicating an identifier 1 that has not been allocated to the slave node.
[0118] Exemplarily, the indication information 1 may include the identifier 1, or the indication information 1 may also include information indicating that the identifier 1 is in an unassigned state.
[0119] S402: Node 1 sets ID 1 as its own ID.
[0120] For example, the slave node 1 is in an undiscovered state and sets the identifier 1 as its own identifier. When the slave node 1 is configured with the identifier 1, the identifier 1 can uniquely identify the slave node 1.
[0121] S403 , slave node 1 sends a slave node discovery frame 2 carrying synchronization information 1 to slave node 2 .
[0122] In some possible implementations, the slave node discovery frame 2 may only carry the synchronization information 1 .
[0123] Exemplarily, the slave node discovery frame 1 includes a synchronization field and an information field, wherein the synchronization field is used to carry synchronization information 1 and the information field is used to carry identification 1. Then the slave node discovery frame 2 may only carry the synchronization field in the slave node 1.
[0124] In some possible implementations, the slave node discovery frame 2 may carry synchronization information 1 and indication information a. The indication information a is used to indicate at least one of the following: the slave node discovery frame 2 is not used to assign an identifier to a slave node, the slave node discovery frame 2 is only used for clock synchronization, and the slave node discovery frame 2 does not carry an identifier that is not assigned to a slave node.
[0125] Exemplarily, slave node 1 obtains indication information a according to indication information 1.
[0126] For example, if the indication information 1 is identifier 1, the indication information a may be a special identifier, and the special identifier may be a specific value, such as a specific value that cannot be assigned to a slave node as an identity identifier.
[0127] For another example, indication information 1 is status information 1 of identifier 1, which indicates that identifier 1 has not been allocated to the slave node; then indication information a may be status information 2 of identifier 1, which indicates that identifier 1 has been allocated to the slave node.
[0128] For another example, the slave node discovery frame 1 includes the above-mentioned synchronization field and information field, and the indication information 1 is the indication information indicating that the slave node discovery frame carries the information field, then the indication information a can be the indication information indicating that the slave node discovery frame does not carry the information field.
[0129] S404 , slave node 2 sends a slave node discovery frame 2 carrying synchronization information 1 to slave node 3 .
[0130] Exemplarily, when slave node 2 determines that slave node discovery frame 2 does not carry an identifier that is not assigned to a slave node, or when slave node 2 determines that slave node discovery frame 2 is only used for clock synchronization, it sends slave node discovery frame 2 to slave node 3.
[0131] S405, slave node 1 sends a response frame 1 to the master node.
[0132] For example, the response frame 1 indicates that the slave node 1 has set the identifier 1 to its own identifier, or that the slave node 1 has set the identifier 1 to its own identifier and has completed clock synchronization. The master node receives the response frame 1 and completes the discovery of the slave node 1.
[0133] It should be noted that S405 may be executed simultaneously with S403, or may be executed after S403, or may be executed before S403.
[0134] It should also be noted that slave node 1 can be a slave node directly connected to the master node, or one or more slave nodes can be connected in sequence between slave node 1 and the master node. Slave node 3 can be a tail slave node, meaning that the downlink of slave node 3 is no longer connected to a slave node; or slave node 3 can be an intermediate slave node, meaning that the downlink of slave node 3 is also connected to at least one slave node. When slave node 3 is an intermediate slave node, slave node 3 will send a slave node discovery frame 2 to the slave node of its downlink. In addition, one or more slave nodes may be connected in sequence between slave node 1 and slave node 2, and one or more slave nodes may be connected in sequence between slave node 2 and slave node 3.
[0135] In actual implementation, the master node may repeatedly send the slave node discovery frame 1 until it receives the response frame 1. In addition, if the slave node determines that it has not set its own identifier and receives a slave node discovery frame carrying identifier 1 and synchronization information 1, slave node 1 may also repeatedly send the slave node discovery frame carrying only synchronization information 1 to slave node 2; or, if the slave node determines that it has not set its own identifier and receives a slave node discovery frame carrying identifier 1 and synchronization information 1, slave node 1 may also repeatedly send the slave node discovery frame carrying synchronization information 1 and indication information a to slave node 2. When slave node 2 receives multiple slave node discovery frames carrying only synchronization information 1 or carrying synchronization information 1 and indication information a, it may also forward the multiple slave node discovery frames to slave node 3.
[0136] S406 , the master node sends a slave node discovery frame 3 to the slave node 1 , where the slave node discovery frame 3 carries synchronization information 2 and indication information 2 indicating an identifier 2 that has not yet been allocated to the slave node.
[0137] S407 , slave node 1 determines that identifier 2 is different from its own identifier.
[0138] Exemplarily, when slave node 1 receives slave node discovery frame 3 and determines that identifier 2 is different from its own identifier, it is confirmed that the master node has discovered slave node 1, and the state of slave node 1 jumps from undiscovered state to discovered state.
[0139] S408 , slave node 1 sends a slave node discovery frame 3 to slave node 2 .
[0140] S409, slave node 2 sets ID 2 as its own ID.
[0141] S410 , slave node 2 sends a slave node discovery frame 4 carrying synchronization information 2 to slave node 3 .
[0142] The structure of slave node discovery frame 4 is the same as that of slave node discovery frame 2, and the information content carried is similar. The method of obtaining and sending slave node discovery frame 4 from slave node 2 is the same as the method of obtaining and sending slave node discovery frame 2 from slave node 1. For specific content, please refer to the description in S403 and will not be repeated here.
[0143] S411 , slave node 2 sends a response frame 2 to slave node 1 .
[0144] The information indicated by response frame 2 is similar to that indicated by response frame 1. The method of sending response frame 2 from node 2 is similar to the method of sending response frame 1 from node 1. For specific content, please refer to the description in S405 and will not be repeated here.
[0145] S412, slave node 1 sends a response frame 2 to the master node.
[0146] Exemplarily, after receiving the response frame 2, the master node completes the discovery of the slave node 2.
[0147] S413 , the master node sends a slave node discovery frame 5 to the slave node 1 , where the slave node discovery frame 5 carries synchronization information 3 and indication information 3 indicating an identifier 3 that has not yet been allocated to the slave node.
[0148] S414, slave node 1 determines that identifier 3 is different from its own identifier.
[0149] S415 , slave node 1 sends a slave node discovery frame 5 to slave node 2 .
[0150] S416, slave node 2 determines that identifier 3 is different from its own identifier.
[0151] For example, if slave node 2 receives slave node discovery frame 5 and determines that identifier 3 is different from its own identifier, it is confirmed that the master node has discovered slave node 2, and the state of slave node 2 jumps from the undiscovered state to the discovered state. S417, slave node 2 sends slave node discovery frame 5 to slave node 3.
[0152] S418, slave node 3 sets ID 3 as its own ID.
[0153] S419 , slave node 3 sends a response frame 3 to slave node 2 .
[0154] S420 , slave node 2 sends a response frame 3 to slave node 1 .
[0155] S421, slave node 1 sends a response frame 3 to the master node.
[0156] Exemplarily, after receiving the response frame 3 , the master node completes the discovery of the slave node 3 .
[0157] For a more detailed execution method of S413 to S421, please refer to the description of S401 to S412, which will not be repeated here.
[0158] In an embodiment of the present application, the slave node discovery frame 1 (or the slave node discovery frame 3, the slave node discovery frame 5) and the slave node discovery frame 2 (or the slave node discovery frame 4) may include a variety of forms. The structure of the slave node discovery frame in the present application is described below in conjunction with Figures 5 to 10. Exemplarily, the identifier carried in the slave node discovery frame can be represented by a character string. The following description is made using a character string with an identifier of six binary digits as an example. For example, identifiers 1 to 3 are 000001, 000010, and 000011, respectively. In addition, the frame structure of the slave node discovery frame is described below using slave node discovery frame 1 and slave node discovery frame 2 as examples. It should be understood that the frame structure of slave node discovery frame 3 and slave node discovery frame 5 is the same as that of slave node discovery frame 1, except that the identifiers carried are different; slave node discovery frame 4 is the same as that of slave node discovery frame 2. In some implementations, the information content carried by slave node discovery frame 4 and slave node discovery frame 2 is also the same.
[0159] In some possible implementations, as shown in FIG5 , slave node discovery frame 1 may include an identification field, which may carry identification 1, i.e., "000001." Furthermore, the shaded portion shown in FIG5 may carry synchronization information 1. As described above, indication information 1 may be identification 1, and indication information a may be a special identification, such as a preset string "111111." The structure of slave node discovery frame 2 may also be as shown in FIG5 , where the difference from slave node discovery frame 1 is that the identification field of slave node discovery frame 2 carries the preset string "111111."
[0160] In some possible implementations, 1 bit can be used as status information to indicate the status of the identifier carried by the identification field, that is, whether the identifier is assigned to the slave node. For example, when the 1-bit status information takes the value of "0", it indicates that the identifier is not assigned, and when the 1-bit status information takes the value of "1", it indicates that the identifier has been assigned. Exemplarily, as shown in FIG6 , the slave node discovery frame 1 may include an identification field and an identification status field, the identification field may carry identification 1, that is, "000001", and the identification status field may carry status information 1 indicating that identification 1 has not been assigned to the slave node, that is, "0". In addition, the shaded portion shown in FIG6 may carry synchronization information 1. As described above, indication information 1 may be status information 1, and indication information a may be status information 2, that is, "1" indicating that identification 1 has been assigned to the slave node. Then the structure of the slave node discovery frame 2 may also be as shown in FIG6 , which is different from the slave node discovery frame 1 in that the identification status field of the slave node discovery frame 2 carries status information "1".
[0161] Exemplarily, the slave node discovery frame 1 may further include verification information 1, which is used to verify the identification field; when the slave node discovery frame 1 includes the identification status field, the verification information 1 may also be used to verify the identification status field. Exemplarily, the identification field shown in FIG5 or FIG6 may carry the verification information 1.
[0162] 5 and 6 , the slave node discovery frame may also carry other information fields, which are used to carry information other than synchronization information and identification, such as control information, etc. The control information may include information indicating the time interval for sending response frames from the slave node.
[0163] In some possible implementations, as shown in FIG7 , slave node discovery frame 1 may include a synchronization field 701 and an information field 702, wherein synchronization field 701 is used to carry synchronization information 1, and information field 702 is used to carry identifier 1. Slave node discovery frame 2 may then include only synchronization field 701, which carries synchronization information 1. Alternatively, slave node discovery frame 2 may include synchronization field 701 and synchronization field 703, where synchronization field 701 and synchronization field 703 carry the same information content, for example, both synchronization field 701 and synchronization field 703 carry synchronization information 1. The bit length of synchronization field 703 may be the same as the bit length of information field 702, i.e., slave node 1 overlays the synchronization field in slave node discovery frame 1 with the information field to obtain slave node discovery frame 2 as shown in FIG8 . Alternatively, slave node discovery frame 2 may also include synchronization field 701 and information field 702, wherein synchronization field 701 carries synchronization information 1, and information field 702 carries a special identifier, such as the aforementioned specific string "111111."
[0164] In some possible implementations, slave node discovery frame 1 may further include an information field indication field. As shown in FIG9(a), slave node discovery frame 1 may include a synchronization field 801, an information field indication field 802, and an information field 803. Information field indication field 802 carries indication information b, indicating that slave node discovery frame 1 also carries information field 803. Slave node discovery frame 2 may then include only synchronization field 801 and information field indication field 802, with information field indication field 802 carrying indication information c, indicating that slave node discovery frame 2 does not carry information field 803. Alternatively, as shown in FIG9(b), slave node discovery frame 2 may include synchronization field 801, information field indication field 802, and synchronization field 804, with information field indication field carrying the aforementioned indication information c. Synchronization fields 801 and 804 carry the same information content, for example, both synchronization fields 801 and 804 carry synchronization information 1. The bit length of synchronization field 804 may be the same as the bit length of information field 803. Alternatively, as shown in (c) of FIG9 , the slave node discovery frame 2 may include a synchronization field 801, an information field indication field 802, a synchronization field 804, and an information field indication field 805. The information field indication field 802 and the information field indication field 805 both carry the aforementioned indication information c, and the synchronization field 801 and the synchronization field 804 both carry synchronization information 1. The sum of the bit lengths of the synchronization field 804 and the information field indication field 805 may be the same as the bit length of the information field 803. For example, the indication information b may be considered an example of the aforementioned indication information 1, and the indication information c may be considered an example of the aforementioned indication information a.
[0165] In some possible implementations, the slave node discovery frame 1 may further include a check information field. As shown in (a) of FIG10 , the slave node discovery frame 1 may include a synchronization field 901, an information field indication field 902, a check information field 903, and an information field 904. The check information field 903 carries check information for checking the information field indication field 902. The slave node discovery frame 2 may then include only the synchronization field 901, the information field indication field 902, and the check information field 903. Alternatively, as shown in (b) of FIG10 , the slave node discovery frame 2 may include the synchronization field 901, the information field indication field 902, the check information field 903, and the synchronization field 905. The synchronization fields 901 and 905 carry the same information content, for example, both the synchronization fields 901 and 905 carry synchronization information 1. The bit length of the synchronization field 905 may be the same as the bit length of the information field 904. Alternatively, as shown in (c) of FIG10 , the slave node discovery frame 2 may include a synchronization field 901, an information field indication field 902, a check information field 903, a synchronization field 905, an information field indication field 906, and a check information field 907. The information field indication field 902 and the information field indication field 906 carry the same information content, the check information field 903 and the check information field 907 carry the same information content, and the synchronization field 901 and the synchronization field 905 both carry synchronization information 1. The sum of the bit lengths of the synchronization field 905, the information field indication field 906, and the check information field 907 may be the same as the bit length of the information field 904.
[0166] Exemplarily, when the length of the slave node discovery frame 2 is different from the length of the slave node discovery frame 1, for example, the slave node discovery frame 2 only includes a synchronization field but does not include an information field, a preset sequence can be used to pad the length of the slave node discovery frame 2 to be the same as the slave node discovery frame.
[0167] Exemplarily, taking the form of slave node discovery frame 1 (or slave node discovery frame 3, slave node discovery frame 5) and slave node discovery frame 2 (or slave node discovery frame 4) as shown in FIG5 as an example, the communication process between the master node and slave nodes 1 to 3 can be shown in FIG11. Taking the form of slave node discovery frame 1 (or slave node discovery frame 3, slave node discovery frame 5) and slave node discovery frame 2 (or slave node discovery frame 4) as shown in FIG6 as an example, the communication process between the master node and slave nodes 1 to 3 can be shown in FIG12. For more detailed implementation of method 1100 shown in FIG11 and method 1200 shown in FIG12, reference can be made to the description in the aforementioned embodiments, which will not be repeated here.
[0168] FIG13 shows another schematic flow chart of a communication method provided by an embodiment of the present application. The method 1300 can be executed by the audio system 100 shown in FIG1 , or can also be applied to the audio system shown in FIG2 . Exemplarily, the method can be executed by the first slave node. The method 1300 includes:
[0169] S1310: Receive a first discovery frame, where the first discovery frame carries first synchronization information, and the first synchronization information is used for clock synchronization.
[0170] Exemplarily, the first slave node may be a slave node directly connected to the master node, or the first slave node may be any slave node other than the last slave node in a daisy-chain network consisting of a master node and multiple slave nodes. For example, the first slave node may be slave node 1 or slave node 2 in the above embodiment. In the above embodiment, when slave node 3 is not the last slave node, the first slave node may also be slave node 3.
[0171] Receiving the first discovery frame may include: receiving the first discovery frame from the master node, or receiving the first discovery frame sent by the master node via one or more slave nodes.
[0172] S1320: After receiving the first discovery frame, send a second discovery frame, where the second discovery frame carries second synchronization information, and the second synchronization information is used for clock synchronization.
[0173] Exemplarily, sending the second discovery frame may include: sending the second discovery frame to a second slave node, wherein the second slave node may be a slave node located in a downlink of the first slave node, and in some implementations, the second slave node may also be a trailing slave node.
[0174] Exemplarily, when the first slave node is slave node 1, the first discovery frame may include the aforementioned slave node discovery frame 1, the first synchronization information may include the aforementioned synchronization information 1, the second discovery frame may include the aforementioned slave node discovery frame 2, and the second synchronization information may include the aforementioned synchronization information 1. When the first slave node is slave node 2, the first discovery frame may include the aforementioned slave node discovery frame 3, the first synchronization information may include the aforementioned synchronization information 2, the second discovery frame may include the aforementioned slave node discovery frame 4, and the second synchronization information may include the aforementioned synchronization information 2.
[0175] In some possible implementations, the first discovery frame and the second discovery frame further carry a first identity field, wherein the value of the first identity field of the first discovery frame is a non-specific value, and the value of the first identity field of the second discovery frame is a specific value.
[0176] Exemplarily, the first identity identification field may include the aforementioned identification field; the non-specific value may include the aforementioned identification 1, identification 2, and identification 3; the specific value may include the aforementioned special identification, such as the preset character string "111111".
[0177] In some possible implementations, the method further includes: setting a non-specific value as a node identity of the first slave node; and sending a first response frame.
[0178] For example, when the first slave node is the aforementioned slave node 1, the non-specific value may include "000001", in which case the first slave node sets "000001" as the node identity, i.e., its own identity; and the first response frame may include the aforementioned response frame 1. When the first slave node is the aforementioned slave node 2, the non-specific value may include "000010", in which case the first slave node sets "000010" as its own identity; and the first response frame may include the aforementioned response frame 2. When the first slave node is the aforementioned slave node 3, the non-specific value may include "000011", in which case the first slave node sets "000011" as its own identity; and the first response frame may include the aforementioned response frame 3.
[0179] In some possible implementations, the method further includes: receiving a third discovery frame, where the third discovery frame carries a second identity field, and the second identity field has a specific value; and sending the third discovery frame.
[0180] Exemplarily, the second identity identification field and the first identification field may be the same field, for example, the second identity identification field may include the aforementioned identification field.
[0181] In this implementation, the first slave node may be any slave node other than a slave node directly connected to the master node and a tail slave node. For example, the first slave node may be slave node 2, and the third discovery frame may be the aforementioned slave node discovery frame 2. For another example, when slave node 3 is not the tail node, the first slave node may also be slave node 3, and the third discovery frame may be the aforementioned slave node discovery frame 2, or may also be the aforementioned slave node discovery frame 4.
[0182] In some possible implementations, the first discovery frame and the second discovery frame further carry a status field, where the status field indicates whether the first identifier carried in the first identity identifier field is assigned; when the value of the status field is a first value, the status field indicates that the first identifier is not assigned; and when the value of the status field is a second value, the status field indicates that the first identifier is assigned. The value of the status field in the first discovery frame is the first value, and the value of the status field in the second discovery frame is the second value.
[0183] Exemplarily, the status field may include the aforementioned identification status field, the first value may include the aforementioned "0", and the second value may include the aforementioned "1". When the first discovery frame is slave node discovery frame 1, the first identification may be the aforementioned identification 1; when the first discovery frame is slave node discovery frame 3, the first identification may be the aforementioned identification 2; when the first discovery frame is slave node discovery frame 5, the first identification may be the aforementioned identification 3.
[0184] In some possible implementations, the method further includes: setting the value of the first identity field to the node identity of the first slave node; and sending a second response frame.
[0185] For example, when the first slave node is the aforementioned slave node 1, the value of the first identity field may be "000001", in which case the first slave node sets "000001" as its own identity; the second response frame may include the aforementioned response frame 1. When the first slave node is the aforementioned slave node 2, the value of the first identity field may be "000010", in which case the first slave node sets "000010" as its own identity; the second response frame may include the aforementioned response frame 2. When the first slave node is the aforementioned slave node 3, the value of the first identity field may be "000011", in which case the first slave node sets "000011" as its own identity; the second response frame may include the aforementioned response frame 3.
[0186] In some possible implementations, the first discovery frame and the second discovery frame further carry a first check field, where the first check field is used to at least check the first identity field and the status field.
[0187] Exemplarily, the first verification field may include the aforementioned verification information 1 to verify the first identity field and the status field.
[0188] In some possible implementations, the first discovery frame and the second discovery frame further carry a second check field, and the second check field is at least used to check the first identity field.
[0189] Exemplarily, the second verification field may include the aforementioned verification information 1 to verify the first identity identification field.
[0190] In some possible implementations, the method further includes: receiving a fourth discovery frame, where the fourth discovery frame carries the first identity field and the status field, and the value of the status field is the second value; and sending the fourth discovery frame.
[0191] In this implementation, the first slave node may be any slave node other than a slave node directly connected to the master node and a tail slave node. For example, the first slave node may be slave node 2, and the fourth discovery frame may be the aforementioned slave node discovery frame 2. For another example, when slave node 3 is not the tail node, the first slave node may also be slave node 3, and the fourth discovery frame may be the aforementioned slave node discovery frame 2, or may also be the aforementioned slave node discovery frame 4.
[0192] In some possible implementations, the first discovery frame carries an information field, the information field includes a third identity field, and the method further includes: setting the value of the third identity field to the node identity of the first slave node; and sending a third response frame.
[0193] Exemplarily, the third identity identification field may include the aforementioned identification field. The third identity identification field may be the same field as the aforementioned first identity identification field and the second identity identification field.
[0194] Exemplarily, the information field may include any one of the aforementioned information field 702 , information field 803 , and information field 904 .
[0195] For example, when the first slave node is the aforementioned slave node 1, the value of the third identity field may be "000001", in which case the first slave node sets "000001" as its own identifier; the third response frame may include the aforementioned response frame 1. When the first slave node is the aforementioned slave node 2, the value of the third identity field may be "000010", in which case the first slave node sets "000010" as its own identifier; the third response frame may include the aforementioned response frame 2. When the first slave node is the aforementioned slave node 3, the value of the third identity field may be "000011", in which case the first slave node sets "000011" as its own identifier; the third response frame may include the aforementioned response frame 3.
[0196] In some possible implementations, the second discovery frame carries only the second synchronization information, and the bit length of the second synchronization information is the same as the bit length of the first synchronization information; or the second discovery frame carries the second synchronization information and the third synchronization information, the bit length of the second synchronization information is the same as the bit length of the first synchronization information, and the bit length of the third synchronization information is the same as the bit length of the information field.
[0197] Exemplarily, the information content carried by the third synchronization information may be the same as the information content carried by the first synchronization information. For example, the first synchronization information may include all the information in the aforementioned synchronization domain 701 (or synchronization domain 801, synchronization domain 901), and the third synchronization information may include all the information in the aforementioned synchronization domain 703 (or synchronization domain 804, synchronization domain 905); for another example, the first synchronization information may include all the information in the aforementioned synchronization domain 801 and the information domain indication field 802 (or the synchronization domain 901, the information domain indication field 902 and the check information field 903), and the third synchronization information may include all the information in the aforementioned synchronization domain 804 and the information domain indication field 805 (or the synchronization domain 905, the information domain indication field 906 and the check information field 907). Alternatively, the information content carried by the third synchronization information may be different from the information content carried by the first synchronization information. For example, the first synchronization information includes all information in the aforementioned synchronization domain 801 and the information domain indication field 802, and the third synchronization information may only include all information in the synchronization domain 804; for another example, the first synchronization information includes all information in the synchronization domain 901, the information domain indication field 902 and the check information field 903, and the third synchronization information may only include all information in the synchronization domain 905.
[0198] In some possible implementations, the first synchronization information and the second synchronization information include an information indication field, where the information indication field is used to indicate whether the first synchronization information or the second synchronization information carries an information field; when the value of the information indication field is a third value, the information indication field indicates that the information field is carried; and when the value of the information indication field is a fourth value, the information indication field indicates that the information field is not carried. The information indication field in the first discovery frame has the third value, and the information indication field in the second discovery frame has the fourth value.
[0199] Exemplarily, the information indication field may include any one of the aforementioned information domain indication field 802 and the information domain indication field 902 .
[0200] In some possible implementations, the first synchronization information and the second synchronization information further include a third check field, and the third check field is used at least to check the information indication field.
[0201] Exemplarily, the third check field may include the aforementioned check information field 903 .
[0202] In some possible implementations, the method further includes: receiving a fifth discovery frame, where the fifth discovery frame carries at least synchronization information, and the synchronization information is used for clock synchronization; and sending the fifth discovery frame.
[0203] In this implementation, the first slave node may be any slave node other than a slave node directly connected to the master node and a tail slave node. For example, the first slave node may be slave node 2, and the fifth discovery frame may be the aforementioned slave node discovery frame 2. For another example, when slave node 3 is not the tail node, the first slave node may also be slave node 3, and the fifth discovery frame may be the aforementioned slave node discovery frame 2, or may also be the aforementioned slave node discovery frame 4.
[0204] In some possible implementations, the fifth discovery frame is the same as the second discovery frame.
[0205] In some possible implementations, the second synchronization information is the same as the first synchronization information.
[0206] The second synchronization information being the same as the first synchronization information includes: information content carried by the second synchronization information being the same as information content carried by the first synchronization information.
[0207] For example, the first synchronization information and the second synchronization information may both include all information in the aforementioned synchronization domain 701 (or synchronization domain 801, synchronization domain 901); for another example, the first synchronization information and the second synchronization information may both include all information in the aforementioned synchronization domain 801 and the information domain indication field 802 (or the synchronization domain 901, the information domain indication field 902 and the check information field 903).
[0208] The communication method provided in the embodiment of the present application synchronously executes the clock synchronization process during the process of the master node discovering the slave node, which helps to shorten the time required for clock synchronization, improve the efficiency of clock synchronization between the master node and multiple slave nodes, and thus speed up the master node to discover the slave node.
[0209] In the various embodiments of the present application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between the various embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.
[0210] The communication method provided in the embodiment of the present application is described in detail above with reference to Figures 1 to 13. The communication device provided in the embodiment of the present application will be described in detail below with reference to Figures 14 and 15. It should be understood that the description of the control device embodiment corresponds to the description of the method embodiment. Therefore, for matters not described in detail, reference can be made to the method embodiment above, and for the sake of brevity, they will not be repeated here.
[0211] Figure 14 shows a schematic block diagram of a communication device 2000 provided in an embodiment of the present application. The device 2000 may include units for executing the methods in Figures 4 and 11 to 13. Furthermore, each unit in the device 2000 is for implementing the corresponding process of the method embodiments in Figures 4 and 11 to 13.
[0212] Specifically, the device 2000 includes a receiving unit 2010 and a sending unit 2020, wherein the receiving unit 2010 is used to receive a first discovery frame, the first discovery frame carries first synchronization information, and the first synchronization information is used for clock synchronization; the sending unit 2020 is used to send a second discovery frame after the post-node unit receives the first discovery frame, the second discovery frame carries second synchronization information, and the second synchronization information is used for clock synchronization; wherein the first slave node is in an undiscovered state.
[0213] In some possible implementations, the first discovery frame and the second discovery frame further carry a first identity field.
[0214] In some possible implementations, a value of the first identity field of the first discovery frame is a non-specific value, and a value of the first identity field of the second discovery frame is a specific value.
[0215] In some possible implementations, the apparatus 2000 further includes a first processing unit configured to set a non-specific value as a node identity of the first slave node; and the sending unit 2020 is further configured to send a first response frame.
[0216] In some possible implementations, the receiving unit 2020 is further used to: receive a third discovery frame, the third discovery frame carries a second identity identification field, and the second identity identification field takes a specific value; the sending unit 2020 is further used to send the third discovery frame.
[0217] In some possible implementations, the first discovery frame and the second discovery frame also carry a status field, which indicates whether the first identity carried by the first identity field is assigned; when the value of the status field is a first value, the status field indicates that the first identity is not assigned; when the value of the status field is a second value, the status field indicates that the first identity is assigned.
[0218] In some possible implementations, a value of the status field of the first discovery frame is a first value, and a value of the status field of the second discovery frame is a second value.
[0219] In some possible implementations, the apparatus 2000 further includes a second processing unit configured to set the value of the first identity field to the node identity of the first slave node; and the sending unit 2020 is further configured to send a second response frame.
[0220] In some possible implementations, the first discovery frame and the second discovery frame further carry a first check field, where the first check field is used to at least check the first identity field and the status field.
[0221] In some possible implementations, the first discovery frame and the second discovery frame further carry a second check field, and the second check field is at least used to check the first identity field.
[0222] In some possible implementations, the receiving unit 2010 is further used to: receive a fourth discovery frame, the fourth discovery frame carries a first identity field and a status field, and the status field takes a second value; the sending unit 2020 is further used to: send a fourth discovery frame.
[0223] In some possible implementations, the first discovery frame carries an information field, the information field includes a third identity field, and the device 2000 also includes a third processing unit, which is used to: set the value of the third identity field to the node identity of the first slave node; the sending unit 2020 is used to: send a third response frame.
[0224] In some possible implementations, the second discovery frame carries only the second synchronization information, and the bit length of the second synchronization information is the same as the bit length of the first synchronization information; or the second discovery frame carries the second synchronization information and the third synchronization information, the bit length of the second synchronization information is the same as the bit length of the first synchronization information, and the bit length of the third synchronization information is the same as the bit length of the information field.
[0225] In some possible implementations, the first synchronization information and the second synchronization information include an information indication field, which is used to indicate whether the first synchronization information or the second synchronization information carries an information field; when the value of the information indication field is a third value, the information indication field indicates that the information field is carried; when the value of the information indication field is a fourth value, the information indication field indicates that the information field is not carried.
[0226] In some possible implementations, the value of the information indication field in the first discovery frame is the third value, and the value of the information indication field in the second discovery frame is the fourth value.
[0227] In some possible implementations, the first synchronization information and the second synchronization information further include a third check field, and the third check field is used at least to check the information indication field.
[0228] In some possible implementations, the receiving unit 2010 is further configured to: receive a fifth discovery frame, where the fifth discovery frame carries at least synchronization information, and the synchronization information is used for clock synchronization; and the sending unit 2020 is further configured to: send the fifth discovery frame.
[0229] In some possible implementations, the fifth discovery frame is the same as the second discovery frame.
[0230] In some possible implementations, the second synchronization information is the same as the first synchronization information.
[0231] For example, the apparatus 2000 can be provided in the slave node 122 or the slave node 132 shown in FIG1 . When the slave node 142 is not the trailing slave node, the apparatus 2000 can also be provided in the slave node 142. Alternatively, the apparatus 2000 can also be provided in any of the audio devices 120 to 140 shown in FIG3 . The operations performed by the receiving unit 2010 and the transmitting unit 2020 can be performed by a single processor, or by different processors. In a specific implementation, the one or more processors can be provided in the audio device; alternatively, the apparatus 2000 can be a chip provided in the audio device.
[0232] In this application, a processor is a circuit with the ability to process signals. In one implementation, the processor can be a circuit with the ability to read and run instructions, such as a central processing unit (CPU), a microprocessor, a graphics processing unit (GPU) (which can be understood as a microprocessor), or a digital signal processor (DSP). In another implementation, the processor can implement certain functions through the logical relationship of a hardware circuit, and the logical relationship of the hardware circuit is fixed or reconfigurable. For example, the processor is a hardware circuit implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD), such as a field programmable gate array (FPGA). In a reconfigurable hardware circuit, the process of the processor loading a configuration document to implement the hardware circuit configuration can be understood as the process of the processor loading instructions to implement the functions of some or all of the above units. In addition, the processor can also be a hardware circuit designed for artificial intelligence, which can be understood as an ASIC, such as a neural network processing unit (NPU), a tensor processing unit (TPU), a deep learning processing unit (DPU), etc.
[0233] In a specific implementation process, the various units in the above apparatus may be fully or partially integrated together, or may also be implemented independently. In one implementation, these units are integrated together and implemented in the form of a system-on-a-chip (SoC).
[0234] Figure 15 is a schematic block diagram of a communication device provided in an embodiment of the present application. The communication device 2100 shown in Figure 15 may include: a processor 2110, a transceiver 2120, and a memory 2130. The processor 2110, the transceiver 2120, and the memory 2130 are connected via an internal connection path. The memory 2130 is used to store instructions, and the processor 2110 is used to execute the instructions stored in the memory 2130 to implement the methods in the above embodiments. Optionally, the memory 2130 can be coupled to the processor 2110 via an interface or integrated with the processor 2110.
[0235] It should be noted that the transceiver 2120 may include but is not limited to a transceiver device such as an input / output interface to implement communication between the device 2100 and other devices or a communication network.
[0236] The memory 2130 may be a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM).
[0237] The transceiver 2120 uses a transceiver device such as but not limited to a transceiver to implement communication between the device 2100 and other devices or communication networks to receive / send data / information used to implement the methods in the above embodiments.
[0238] An embodiment of the present application also provides a communication system, which includes apparatus 2000 or apparatus 2100, a master node and one or more slave nodes.
[0239] An embodiment of the present application also provides a vehicle, which includes the above-mentioned device 2000 or device 2100, or the vehicle also includes the above-mentioned communication system.
[0240] The vehicles involved in this application may include road vehicles, water vehicles, air vehicles, industrial equipment, agricultural equipment, or entertainment equipment, etc. The vehicle can be a vehicle in a broad sense, and can be a transportation vehicle (such as a commercial vehicle, a passenger car, a motorcycle, an air vehicle, a train, etc.), an industrial vehicle (such as a forklift, a trailer, a tractor, etc.), an engineering vehicle (such as an excavator, a bulldozer, a crane, etc.), agricultural equipment (such as a lawn mower, a harvester, etc.), amusement equipment, a toy vehicle, etc. The embodiments of this application do not specifically limit the type of vehicle.
[0241] An embodiment of the present application further provides a computer program product, which includes computer program code. When the computer program code runs on a computer, the computer implements the methods in the above embodiments of the present application.
[0242] An embodiment of the present application further provides a computer-readable storage medium, which stores computer instructions. When the computer instructions are executed on a computer, the computer implements the methods in the above embodiments of the present application.
[0243] An embodiment of the present application also provides a chip, including a circuit, for executing the methods in the above embodiments of the present application.
[0244] Those skilled in the art will 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.
[0245] In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is a kind of association relationship that describes associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In this application, "at least one" refers to one or more, and "more than one" refers to two or more. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.
[0246] In the embodiments of this application, prefixes such as "first" and "second" are used only to distinguish different description objects and have no limiting effect on the position, order, priority, quantity, or content of the described objects. The use of prefixes such as ordinal numbers in the embodiments of this application to distinguish description objects does not constitute a limitation on the described objects. For a statement of the described objects, please refer to the description in the context of the claims or embodiments, and the use of such prefixes should not constitute an unnecessary limitation.
[0247] In the several embodiments provided in this 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 merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0248] In the various embodiments of the present application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between the various embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.
[0249] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0250] 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.
[0251] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A communication method, characterized in that: Applied to the first slave node, the method comprises: Receiving a first discovery frame, where the first discovery frame carries first synchronization information, where the first synchronization information is used for clock synchronization; After receiving the first discovery frame, sending a second discovery frame, where the second discovery frame carries second synchronization information, where the second synchronization information is used for clock synchronization; The first slave node is in an undiscovered state.
2. The method according to claim 1, characterized in that The first discovery frame and the second discovery frame further carry a first identity field.
3. The method according to claim 2, characterized in that A value of the first identity field of the first discovery frame is a non-specific value, and a value of the first identity field of the second discovery frame is a specific value.
4. The method according to claim 3, characterized in that The method further comprises: Setting the non-specific value as the node identity of the first slave node; Send the first response frame.
5. The method according to claim 3 or 4, characterized in that The method further comprises: Receive a third discovery frame, where the third discovery frame carries a second identity field, and a value of the second identity field is a specific value; The third discovery frame is sent.
6. The method according to claim 2, characterized in that The first discovery frame and the second discovery frame further carry a status field, where the status field indicates whether the first identifier carried by the first identity identifier field is allocated; When the value of the status field is a first value, the status field indicates that the first identifier is not allocated; When the value of the status field is the second value, the status field indicates that the first identifier is allocated.
7. The method according to claim 6, characterized in that A value of the status field of the first discovery frame is the first value, and a value of the status field of the second discovery frame is the second value.
8. The method according to claim 7, characterized in that The method further comprises: Setting the value of the first identity field to the node identity of the first slave node; Send a second response frame.
9. The method according to any one of claims 6 to 8, characterized in that The first discovery frame and the second discovery frame further carry a first check field, and the first check field is used at least to check the first identity field and the status field.
10. The method according to any one of claims 2 to 8, characterized in that The first discovery frame and the second discovery frame further carry a second check field, and the second check field is at least used to check the first identity field.
11. The method according to any one of claims 6 to 9, characterized in that The method further comprises: Receive a fourth discovery frame, where the fourth discovery frame carries the first identity field and the status field, and a value of the status field is the second value; The fourth discovery frame is sent.
12. The method according to claim 1, characterized in that The first discovery frame carries an information field, the information field includes a third identity field, and the method further includes: Setting the value of the third identity field to the node identity of the first slave node; A third response frame is sent.
13. The method according to claim 12, characterized in that The second discovery frame carries only the second synchronization information, and a bit length of the second synchronization information is the same as a bit length of the first synchronization information; or The second discovery frame carries the second synchronization information and third synchronization information, the bit length of the second synchronization information is the same as the bit length of the first synchronization information, and the bit length of the third synchronization information is the same as the bit length of the information field.
14. The method according to claim 12, characterized in that The first synchronization information and the second synchronization information include an information indication field, where the information indication field is used to indicate whether the first synchronization information or the second synchronization information carries the information field; When the value of the information indication field is a third value, the information indication field indicates that the information field is carried; When the value of the information indication field is the fourth value, the information indication field indicates that the information field is not carried.
15. The method according to claim 14, characterized in that The value of the information indication field in the first discovery frame is the third value, and the value of the information indication field in the second discovery frame is the fourth value.
16. The method according to claim 14 or 15, characterized in that The first synchronization information and the second synchronization information further include a third check field, and the third check field is at least used to check the information indication field.
17. The method according to any one of claims 12 to 16, characterized in that The method further comprises: receiving a fifth discovery frame, where the fifth discovery frame carries at least synchronization information, where the synchronization information is used for clock synchronization; The fifth discovery frame is sent.
18. The method according to claim 17, characterized in that The fifth discovery frame is the same as the second discovery frame.
19. The method according to any one of claims 1 to 18, characterized in that The second synchronization information is the same as the first synchronization information.
20. A communication device, characterized in that: Applied to a first slave node, the device comprises a receiving unit and a sending unit, and is configured to execute the method as claimed in any one of claims 1 to 19.
21. A communication device, characterized in that: include: Memory for storing computer programs; A processor, configured to execute a computer program stored in the memory so that the control device executes the method according to any one of claims 1 to 19.
22. A communication system, characterized in that: It comprises the apparatus as claimed in claim 20 or 21, and a master node and a second slave node.
23. A vehicle, characterized in that: Comprising the apparatus as claimed in claim 20 or 21, or comprising the system as claimed in claim 22.
24. A computer-readable storage medium, characterized in that: Instructions are stored thereon, and when the instructions are executed by a processor, the processor implements the method according to any one of claims 1 to 19.
25. A chip, characterized in that: The chip comprises a circuit for performing the method according to any one of claims 1 to 19.