Methods, apparatuses, devices, and media for channel initialization
By performing data boundary alignment and offset elimination in a multi-channel communication system, combined with a channel initialization model, the problems of low channel reliability and poor adaptability are solved, and multi-channel data synchronization and efficient initialization are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-24
- Publication Date
- 2026-03-24
AI Technical Summary
In the initialization schemes of existing multi-channel communication systems, the channel reliability is low, the timing consistency after binding cannot be guaranteed, data misordering is easy to occur, and it is difficult to be compatible with channels of different rates or protocols. The lack of fault tolerance mechanism leads to increased initialization time.
Data boundary alignment is achieved by activating channels, multiple channels are aggregated to eliminate offsets, and the initialized channels are determined through verification. Channel initialization model parameters are trained to dynamically adapt to different scenarios. Combined with symbol detection and verification mechanisms, the timing consistency and data synchronization between channels are ensured.
It improves the reliability and adaptability of multi-channel initialization, reduces the probability of channel failure after initialization, and meets the high real-time and stability requirements of scenarios such as industrial control and vehicle networking.
Smart Images

Figure CN121396779B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of multi-channel communication, in particular to a method, device and medium for channel initialization. BACKGROUND
[0002] In a multi-channel communication system, channel initialization is a prerequisite for realizing multi-channel cooperative transmission, and the reliability of channel initialization will directly affect the overall performance of the system. In related technologies, multi-channel initialization is usually performed by a fixed process, including: first performing a unified hardware reset, then completing symbol alignment through preset parameters, and then performing simple binding and basic verification.
[0003] The multi-channel initialization scheme in related technologies has a simple verification link, which only judges effectiveness through single-frame back transmission, and cannot guarantee the timing consistency after binding, which is easy to cause subsequent data out-of-order. SUMMARY
[0004] The present application provides a method, device, equipment and medium for channel initialization to solve the problem of low reliability of channels after initialization in related technologies.
[0005] In a first aspect, the present application provides a method for channel initialization, the number of channels being at least one, the method comprising: activating the channels, performing data boundary alignment on the activated channels; if the number of channels is multiple, aggregating the multiple channels of data boundary alignment, eliminating the offset between the aggregated channels; verifying the single channel of data boundary alignment or the multiple channels after offset elimination, and determining the initialized channels based on the channels passed the verification.
[0006] In an optional implementation, the method further comprises: determining parameters in the activation process, aggregation process, elimination process and verification process based on a channel initialization model, wherein the channel initialization model is trained based on historical parameters of the activation process, historical parameters of the aggregation process, historical parameters of the elimination process and historical parameters of the verification process.
[0007] In an optional implementation, the activation of the channels comprises: resetting the channels to an initial state; determining a first number of channels restored to the initial state, and if the first number is less than a preset activation threshold, re-performing the reset operation until the first number is equal to or greater than the preset activation threshold, and completing the activation.
[0008] In an alternative implementation, the data boundary alignment for the activated channel includes: receiving an alignment symbol from the sending end based on the activated channel, transmitting the alignment symbol to the receiving end, checking the alignment symbol if the alignment symbol type represented by the alignment symbol obtained by the receiving end is the same as the alignment symbol type represented by the alignment symbol sent by the sending end, receiving a check symbol from the sending end based on the activated channel if the alignment symbol passes the check, transmitting the check symbol to the receiving end, and determining that the activated channel is in the data boundary alignment state if the check symbol obtained by the receiving end is correct.
[0009] In an alternative implementation, the data boundary alignment for the activated channel includes: receiving an alignment symbol from the sending end based on the activated channel, transmitting the alignment symbol to the receiving end, checking the alignment symbol if the alignment symbol type represented by the alignment symbol obtained by the receiving end is the same as the alignment symbol type represented by the alignment symbol sent by the sending end, receiving a check symbol from the sending end based on the activated channel if the alignment symbol passes the check, transmitting the check symbol to the receiving end, and determining that the activated channel is in the data boundary alignment state if the check symbol obtained by the receiving end is correct.
[0010] In an alternative implementation, the checking of the data boundary aligned single channel or the offset-eliminated multi-channel includes: receiving a verification sequence from the sending end based on the offset-eliminated multi-channel, splitting the verification sequence into a plurality of verification symbols, and sending the verification symbols to the receiving end; combining the verification symbols obtained by the receiving end to obtain a received verification sequence, and determining the initialized channel based on the offset-eliminated multi-channel if the number of correct received verification sequences obtained by the receiving end is equal to or greater than a check threshold; or receiving a verification sequence from the sending end based on the data boundary aligned single channel, sending the verification sequence to the receiving end, and determining the initialized channel based on the data boundary aligned single channel if the number of correct verification sequences obtained by the receiving end is equal to or greater than the check threshold.
[0011] In an optional implementation, the channel initialization model includes a first model state, a second model state, and a third model state. The method further includes: when the initialized channel is in an idle state, receiving detection symbols from a transmitter and transmitting the detection symbols to a receiver; if the detection symbols obtained by the receiver are inconsistent with the detection symbols sent by the transmitter, incrementing the error accumulation counter by one; if the channel initialization model is in the first model state, resetting the error accumulation counter to zero, and when the error accumulation counter is one, transitioning to the second model state; if the channel initialization model is in the second model state, and the number of correct detection symbols obtained by the receiver is equal to or greater than the detection threshold, transitioning to the first model state; if the channel initialization model is in the second model state, and the detection symbols obtained by the receiver are inconsistent with the detection symbols sent by the transmitter, transitioning to the third model state; if the channel initialization model is in the third model state, re-performing the activation process, the aggregation process, the elimination process, and the verification process.
[0012] Secondly, this application provides an apparatus for channel initialization, the apparatus comprising: an activation module for activating the channel and performing data boundary alignment on the activated channel; an aggregation module for aggregating multiple channels with data boundary alignment if there are multiple channels, and eliminating the offset between the aggregated channels; and a verification module for verifying a single channel with data boundary alignment or multiple channels after offset elimination, and determining the initialized channel based on the verified channel.
[0013] Thirdly, this application provides an electronic device, including: a memory and a processor, which are communicatively connected to each other. The memory stores computer instructions, and the processor executes the computer instructions to perform the method for channel initialization described in the first aspect or any corresponding embodiment.
[0014] Fourthly, this application provides a computer-readable storage medium storing computer instructions for causing a computer to perform the method for channel initialization described in the first aspect or any corresponding embodiment thereof.
[0015] Fifthly, this application provides a computer program product, including computer instructions for causing a computer to execute the method for channel initialization described in the first aspect or any corresponding embodiment thereof.
[0016] The method, apparatus, device, and medium for channel initialization provided in this embodiment are compatible with single-channel or multi-channel scenarios. By eliminating inter-channel offsets after aggregating multiple channels, the timing or data offset problems that easily occur after multi-channel aggregation can be solved, and multi-channel data synchronization can be guaranteed. At the same time, by verifying the channels and filtering out usable channels, the problem of data errors still existing in the channels after initialization can be avoided, and the probability of channel failure after initialization can be reduced. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the specific embodiments of this application or the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0018] Figure 1 A flowchart of a method for channel initialization according to an embodiment of this application is shown;
[0019] Figure 2 A flowchart of a method for channel initialization according to an embodiment of this application is shown;
[0020] Figure 3 Another flowchart illustrating the method for channel initialization provided in an embodiment of this application is shown;
[0021] Figure 4 A schematic diagram of the configuration of a device for channel initialization according to an embodiment of this application is shown;
[0022] Figure 5 A schematic diagram of the hardware structure of the electronic device according to an embodiment of this application. Detailed Implementation
[0023] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0024] It is understood that before using the technical solutions disclosed in the various embodiments of this application, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this application in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0025] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, "multiple" means two or more, unless otherwise explicitly specified.
[0026] The multi-channel initialization schemes in related technologies have the following problems:
[0027] First, fixed initialization parameters for multiple channels result in poor adaptability and difficulty in compatibility with channels of different speeds or protocols. For example, fixed initialization parameters for multiple channels make it difficult to be compatible with 10G and 25G channels, as well as with channels of the Serial RapidIO (RapidIO) and Peripheral Component Interconnect Express (PCIe) protocols, and can easily lead to alignment timeouts in high-speed scenarios.
[0028] Second, the lack of fault tolerance mechanism means that a single channel failure will trigger a system-wide restart, which will significantly increase the initialization time.
[0029] Third, the verification process is rudimentary, relying solely on single-frame feedback to determine validity, which cannot guarantee the consistency of timing after binding and can easily lead to subsequent data misordering.
[0030] These issues make it difficult for existing solutions to meet the high requirements for real-time performance and stability in scenarios such as industrial control and vehicle networking. There is an urgent need for a multi-channel initialization solution with dynamic adaptation, fault tolerance and self-healing capabilities, and in-depth verification capabilities.
[0031] According to an embodiment of this application, a method embodiment for channel initialization is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0032] This embodiment provides a method for channel initialization, which can be used in a multi-channel communication system, wherein the number of channels is at least one. Figure 1 A flowchart of a method for channel initialization according to an embodiment of this application is shown, such as... Figure 1 As shown, the process includes the following steps:
[0033] Step S101: Activate the channel and perform data boundary alignment on the activated channel.
[0034] In this step, the channel is used to characterize the physical or logical link for transmitting data in a communication system. Data boundary alignment is used to characterize the channel's ability to identify the start and end boundaries of data frames, ensuring that the receiver can correctly split continuous data streams and avoid data misalignment.
[0035] Specifically, channel activation can be achieved through hardware reset, constant synchronization, and transceiver enable, ensuring the physical link of the channel possesses the basic hardware conditions for data transmission. Data boundary alignment can be achieved using symbol alignment techniques, such as commaalignment, which identifies the start marker of a data frame (e.g., a specific symbol) and precisely aligns the received data segments to the correct symbol boundaries to eliminate data misalignment within each channel.
[0036] Step S102: If there are multiple channels, aggregate multiple channels with aligned data boundaries to eliminate the offset between channels after aggregation.
[0037] In this step, aggregating multiple channels with aligned data boundaries can involve binding multiple independently aligned channels into a single logical data channel. The offset between aggregated channels characterizes the timing or phase differences in the data across each channel after aggregation. Offsets between channels can lead to synchronization errors.
[0038] Specifically, in a multi-link scenario, step S102 is initiated; in a single-link scenario, step S102 is skipped. If there are multiple channels, the aligned channels can be integrated first, and then the timing or phase differences between channels can be eliminated to keep the multi-channel data streams synchronized.
[0039] Step S103: Verify the single channel or the multi-channel after offset elimination for data boundary alignment, and determine the initialized channels based on the channels that pass the verification.
[0040] In this step, verification is used to characterize the verification process of whether the channel can transmit data stably and correctly through test data transmission.
[0041] Specifically, the validity of aligned single channels or offset-eliminated multi-channels is verified, and the channels that pass the verification are the channels that have completed initialization.
[0042] The channel initialization method provided in this embodiment is compatible with single-channel or multi-channel scenarios. By aggregating multiple channels and eliminating inter-channel offsets, it can solve the timing or data offset problems that are prone to occur after multi-channel aggregation, and provide a guarantee for multi-channel data synchronization. At the same time, by verifying the channels and filtering out usable channels, it can avoid the problem of data errors still existing in the channels after initialization, and reduce the probability of channel failure after initialization.
[0043] This embodiment provides a method for channel initialization, which can be used in multi-channel communication systems. Figure 2 A flowchart of a method for channel initialization according to an embodiment of this application is shown, such as... Figure 2 As shown, the process includes the following steps:
[0044] Step S201: Activate the channel and perform data boundary alignment on the activated channel. For details, please refer to [link to relevant documentation]. Figure 1 Step S101 of the illustrated embodiment will not be described again here.
[0045] Step S202: If there are multiple channels, aggregate multiple channels with aligned data boundaries to eliminate the offset between channels after aggregation.
[0046] Specifically, step S202 includes:
[0047] Step S2021: Unify the transmission rate and / or data frame format of multiple channels with unified data boundary alignment to obtain the aggregated channel.
[0048] In this step, the transmission rate is used to characterize the speed at which data is transmitted through the channel. The data frame format is used to characterize the structured form of data transmitted in the channel, determining the data parsing rules. Data frame formats include, for example, frame headers, data segments, and frame trailers.
[0049] Specifically, compatibility issues in multi-channel aggregation can be resolved by unifying the transmission rate and frame format, ensuring consistent transmission rhythm and data structure across different channels for collaborative transmission. For multiple channels that have already achieved data boundary alignment, their transmission rates can be unified—for example, by adjusting channels with different rates to the same rate—or their data frame formats can be unified—for example, by ensuring consistent data stream structures across channels, or by unifying both transmission rates and data frame formats. This provides the basic conditions for collaborative transmission across multiple independent channels, forming an aggregated channel. Collaborative transmission and reception of parallel data across multiple channels can then be achieved.
[0050] Step S2022: Based on the aggregated channel, receive idle symbols and bound symbols from the sender, and send the idle symbols and bound symbols to the receiver. If the number of correct idle symbols and bound symbols obtained by the receiver is equal to or greater than the offset elimination threshold, determine that the aggregated channel is in the offset elimination state.
[0051] In this step, idle symbols are used to characterize signal units that transmit without actual service data when the channel is idle, and can be used to detect link status. Binding symbols are used to characterize specific signal units that identify multi-channel binding relationships, helping the receiver identify cooperative transmission associations across multiple channels. Offset cancellation thresholds characterize the criteria for determining whether inter-channel offsets have been eliminated; for example, the minimum number of symbols the receiver must correctly acquire.
[0052] In step S2022, the channel includes: offset elimination first state and offset elimination second state. In offset elimination first state, the transmit and receive cumulative counters are cleared, and idle symbols and bound symbols are transmitted on all channels according to the number configured by the parameters, before transitioning to offset elimination second state.
[0053] In the second state of offset elimination, idle symbols and binding symbols are continuously sent. If all channels receive the correct binding symbols at the receiving end, the counting begins. Once the count reaches the set parameter, the channel binding is completed. If some channels do not receive the correct binding symbols, the cumulative counter is cleared, and the system transitions to the first state of offset elimination.
[0054] Specifically, idle symbols and bound symbols are used as synchronization detection carriers. The correct reception count at the receiving end (compared to a threshold) objectively verifies whether the timing / phase offset between multiple channels has been eliminated (correct symbol reception indicates that the synchronization between channels meets the standard). The aggregated channel receives idle symbols and bound symbols from the sending end and forwards them to the receiving end. The receiving end counts the correct reception count of these two types of symbols. If the count is greater than or equal to the preset offset elimination threshold, it is determined that the timing / phase offset between multiple channels has been eliminated.
[0055] By adjusting the synchronous symbol detection, the system compensates for channel offsets caused by hardware differences (trace length, connector delay, chip process deviation) to ensure the consistency of multi-channel data on the time axis. At the same time, its selective execution feature not only meets the high bandwidth requirements of multi-channel systems but also simplifies the initialization process in single-link scenarios, improving system flexibility.
[0056] Step S203: Verify the data boundary alignment of a single channel or the offset-reduced multi-channel data. Based on the channels that pass the verification, determine the initialized channels. For details, please refer to [link to relevant documentation]. Figure 1 Step S103 of the illustrated embodiment will not be described again here.
[0057] In this way, by unifying the transmission rate and data frame format, the parameter barriers of different channels can be broken down, and the effective integration of multiple channels can be achieved, solving the adaptation problem of multi-channel aggregation. At the same time, by using quantitative judgment of the correct number of symbols and thresholds to replace subjective judgment, the offset elimination results can be made more reliable. In addition, by ensuring that the rhythm, structure and timing of the aggregated multi-channels are highly consistent through the previous two steps, subsequent data transmission misalignment can be avoided, ensuring the synchronization of multiple channels.
[0058] In some optional implementations, the aforementioned method for channel initialization further includes: determining parameters in the activation process, aggregation process, elimination process, and verification process based on the channel initialization model, wherein the channel initialization model is trained based on historical parameters of the activation process, historical parameters of the aggregation process, historical parameters of the elimination process, and historical parameters of the verification process.
[0059] In this embodiment, the channel initialization model can be a model trained based on parameter data from historical initialization processes, used to output adaptive parameters for the activation, aggregation, elimination, and verification processes. Historical operating parameters for each of the activation, aggregation, elimination, and verification processes can be collected first; the channel initialization model can then be trained using these historical parameters; subsequently, when channel initialization is performed, this model is called, and the model automatically determines the parameters required for the current activation, aggregation, elimination, and verification processes based on the historical parameters, and sets the operating configuration parameters for each process. Alternatively, users can configure parameters fixedly according to different protocol specifications.
[0060] Specifically, the actual parameters of each stage of activation, aggregation, elimination, and verification can be recorded during each initialization process. These historical parameters are used to train the model, allowing the model to learn which parameters can make initialization more efficient for different scenarios (number of channels, protocol type, etc.). When a new initialization task is performed, the model outputs the appropriate parameters for activation, aggregation, elimination, and verification based on the current scenario, replacing the traditional fixed parameters.
[0061] In this way, the channel initialization model outputs parameters adapted to the current scenario based on historical experience, and can be compatible with channels of different rates and protocols.
[0062] In some optional implementations, activating a channel includes: resetting the channel to an initial state; determining a first number of channels restored to the initial state; if the first number is less than a preset activation threshold, performing the reset operation again until the first number is equal to or greater than the preset activation threshold, and completing the activation.
[0063] In this embodiment, the channel activation process can be divided into a first activation state and a second activation state. If the channel is in the first activation state, the following reset operations are performed: clearing the memory, resetting all counters to zero, and restoring the state machine to its initial state. With the channel signal restored to its initial state, the DONE signal can be pulled high, transitioning to the second activation state. If the channel is in the second activation state, the first number of channels with the DONE signal pulled high can be counted. If the first number is less than a preset activation threshold, the process cyclically transitions to the first activation state, performing reset operations until the first number is equal to or greater than the preset activation threshold, completing the channel activation, and proceeding to the first step of data boundary alignment for data boundary alignment.
[0064] In this way, the reliability of activation can be ensured through reset operations and signal confirmation; at the same time, the activation fault tolerance and multi-channel activation success rate can be improved through cyclic reset.
[0065] In some optional implementations, data boundary alignment for the active channel includes: receiving alignment symbols from the transmitter based on the active channel, transmitting the alignment symbols to the receiver, verifying the alignment symbols if the symbol type represented by the alignment symbols obtained by the receiver is the same as the symbol type represented by the alignment symbols sent by the transmitter; if the alignment symbols pass the verification, receiving verification symbols from the transmitter based on the active channel, transmitting the verification symbols to the receiver, and determining that the active channel is in a data boundary aligned state if the verification symbols obtained by the receiver are correct.
[0066] In this embodiment, the channels in the data boundary alignment process can be divided into three stages: the first step of data boundary alignment, the second step of data boundary alignment, and the third step of data boundary alignment. In the first step of data boundary alignment, the channel includes a first state, a second state, and a third state.
[0067] When the channel is in the first state of the first step of data boundary alignment, the local transmitter starts sending fixed alignment symbols to the external peer. The alignment symbols include type symbols and data symbols. If the external peer receives the correct type symbols, it proceeds to the second state of the first step of data boundary alignment.
[0068] When the channel is in the second state of the first step of data boundary alignment, the type code and data code are checked and counted. If an error occurs, the counter is cleared and the system returns to the first state of the first step of data boundary alignment. If the error is correct, the system accumulates the count until the configuration parameters are reached and then returns to the second step of data boundary alignment. If the type code is incorrect but the data code is correct, the system returns to the third state of the first step of data boundary alignment.
[0069] If the received type code and data code are both incorrect when the channel is in the third state of the first step of data boundary alignment, it will switch to the first state of the first step of data boundary alignment; if the received type code and data code are both correct, it will switch to the second state of the first step of data boundary alignment. Otherwise, it will remain in the third state of the first step of data boundary alignment.
[0070] Throughout all states of the first step of data boundary alignment, the sending end continuously transmits alignment symbols in order to enable the peer device to train synchronously.
[0071] In the second step of data boundary alignment, the channel includes the first state of the second step of data boundary alignment and the second state of the second step of data boundary alignment.
[0072] In the first state of the second step of data boundary alignment, the local transmitting end begins to send fixed check symbols. These check symbols include check type symbols and check data symbols. The check type symbols and check data symbols in the check symbols are different from the type symbols and data symbols in the alignment symbols. The receiving end receives the check symbols. If the received check symbols are correct, it proceeds to the second state of the second step of data boundary alignment. If the received check symbols are incorrect, it proceeds to the first activation state and reactivates.
[0073] In the second state of the second step of data boundary alignment, the number of correctly transmitted symbols and the number of correctly received symbols are accumulated. When the accumulated number reaches the configured parameter, the process proceeds to the third step of data boundary alignment.
[0074] In the third step of data boundary alignment, if there is only one channel, and data boundary alignment is completed after that channel is activated; or if there are multiple channels, and data boundary alignment is completed after all channels are activated, subsequent steps can proceed. For example, multiple channels can be aggregated, and a single channel can be used for verification.
[0075] In this way, the accuracy of data boundary alignment can be improved and false positives can be reduced by dual verification of code type consistency and code correctness. At the same time, by using layered verification logic to first filter out basic misalignments and then verify the content, invalid operations can be reduced and alignment efficiency can be improved.
[0076] In some optional implementations, the verification data boundary aligned single channel or offset-removed multi-channel is used to determine the initialized channel based on the verified channel, including: receiving a verification sequence from the transmitter based on the offset-removed multi-channel, splitting the verification sequence into multiple verification symbols, and sending the verification symbols to the receiver; combining the verification symbols obtained by the receiver to obtain a received verification sequence; if the number of correct received verification sequences obtained by the receiver is equal to or greater than a verification threshold, the initialized channel is determined based on the offset-removed multi-channel; or, receiving a verification sequence from the transmitter based on the data boundary aligned single channel, sending the verification sequence to the receiver, and if the number of correct verification sequences obtained by the receiver is equal to or greater than a verification threshold, the initialized channel is determined based on the data boundary aligned single channel.
[0077] In this embodiment, the channel includes a first verification state and a second verification state. If the channel is in the first verification state, the transmit and receive cumulative counters are cleared, and the verification sequence is started to be transmitted at the transmitting end according to the number configured by the parameters. The verification sequence includes code elements. Based on the binding state of multiple channels, the verification sequence can be split into multiple code elements and transmitted through different channels. At the receiving end, the code elements from different channels can be aggregated to obtain the received verification sequence, and then the system transitions to the second verification state.
[0078] If the channel is in the second verification state, the correct sequences of transmission and reception are counted. When the count reaches the configuration parameter, the entire initialization is completed and the user can start sending data. At this time, a completion signal is sent to the channel initialization model, and periodic error verification is performed thereafter.
[0079] In this way, by sending a preset verification sequence, the effective data transmission capability of the channel is verified, including: integrity (no packet loss), accuracy (no error codes) and stability (continuous transmission without interruption), and finally a channel ready signal is output; deep verification ensures the initialization quality and avoids subsequent transmission failures due to potential hardware defects.
[0080] In some alternative implementations, data mapping alignment can be performed before single-channel or multi-channel data boundary alignment is checked, including mapping and adjusting the received data according to the format requirements of the user interface (such as the upper-layer protocol interface) to ensure data alignment at the logical level (such as byte order and frame structure adaptation).
[0081] In some optional implementations, the channel initialization model includes a first model state, a second model state, and a third model state. The method further includes: when the initialized channel is in an idle state, receiving detection symbols from the sending end and transmitting the detection symbols to the receiving end; if the detection symbols obtained by the receiving end are inconsistent with the detection symbols sent by the sending end, incrementing the error accumulation counter by one; if the channel initialization model is in the first model state, resetting the error accumulation counter to zero, and transitioning to the second model state when the error accumulation counter is one; if the channel initialization model is in the second model state and the number of correct detection symbols obtained by the receiving end is equal to or greater than the detection threshold, transitioning to the first model state; if the channel initialization model is in the second model state and the detection symbols obtained by the receiving end are inconsistent with the detection symbols sent by the sending end, transitioning to the third model state; if the channel initialization model is in the third model state, re-performing the activation process, aggregation process, elimination process, and verification process.
[0082] The channel initialization model can also be divided into four states. By refining the states, the accuracy and relevance of fault analysis can be improved.
[0083] Specifically, the channel initialization model can be divided into four states: the first state, the second state, the third state, and the fourth state. In all four states, detection symbols are sent when the link is idle.
[0084] In the first state, the error accumulation counter is cleared. When the first error is detected, the system transitions to the second state, and the error accumulation counter is incremented by one.
[0085] In the second state, if a series of correct symbols are received within a certain period of time, or if a preset number of consecutive correct symbols are received, the system transitions to the first state and the error accumulation counter is cleared. If another erroneous symbol is received within a certain period of time, the system transitions to the third state and the error accumulation counter is incremented by one.
[0086] In the third state, if consecutive correct symbols are received, the error accumulation counter is decremented by one, and the system transitions to the second state. If another erroneous symbol is received, the system transitions to the fourth state.
[0087] In the fourth state, the channel initialization model controls the channel to return to the activation process, restart training, and records the current status, reporting it to the user. During this error verification process, the user can specify any state as a trigger to return to the activation process, or the channel initialization model can increase or decrease the number of states based on historical conditions. For example, under certain conditions, if the number of errors in historical parameters is 0, then the number of states will be gradually deleted until it reaches 0. At the same time, the verification period will be increased, and verification will not be performed for a short period of time to save data bandwidth. Conversely, the number of verification states will be increased, and the verification period frequency will be reduced to ensure stable data communication of the link, allowing the user to understand the link status as soon as a problem occurs.
[0088] In addition, the channel initialization model will adjust the values after the next link reset based on historical input parameters such as binding time, verification time, error type, and alignment deviation between channels. Users can send all symbol types during the initialization process to the channel initialization model according to different protocol types, and the channel initialization model will modify each functional module.
[0089] Specifically, if a channel fails to send or receive data during communication while other channels can send and receive data normally, the channel initialization model will return all channels to the channel aggregation phase for rebinding, rather than returning to the channel activation phase, thus quickly restoring link communication. At the same time, the status of the abnormal channel is monitored in real time. Once the status is restored, a separate channel activation and verification will be performed to ensure that the channel is initialized normally. Only after this is completed will the channel aggregate with the other channels re-enter the channel aggregation phase to complete the binding and aggregation of multiple channels.
[0090] In this way, channel initialization adopts fault-level reset and collaborative alignment training to accurately analyze faults and handle them in a targeted manner, which is compatible with multiple rates and heterogeneous protocols and lays a unified timing benchmark. At the same time, channel binding relies on a full-channel confirmation mechanism and dynamic offset compensation to eliminate the hidden dangers of partial binding. In addition, the automated verification model dynamically optimizes parameters, states and cycles, and combines fault mode learning with a reverse iteration strategy. The entire architecture solves the problems of poor solution adaptability, weak fault tolerance and shallow verification in related technologies through initialization, aggregation binding, verification and self-evolution closed-loop collaboration, which can significantly improve the adaptability and stability of multi-channel initialization.
[0091] Figure 3 Another flowchart illustrating the method for channel initialization provided in this application embodiment is shown, such as... Figure 3 As shown, the method for channel initialization includes:
[0092] Step S301: Before initializing the channel, power on, reset, determine if the channel is faulty, and obtain external indications.
[0093] Step S302: Activate the channel and perform hardware initialization and symbol alignment.
[0094] Step S303: For multi-channel, perform multi-channel binding and aggregation. If the binding times out, proceed to step S302.
[0095] Step S304: Perform channel verification. If the channel verification times out, proceed to step S302.
[0096] Step S305: Based on the verified channel, the channel initialization is completed, and communication is carried out based on the channel.
[0097] Step S306: Based on the channel initialization model, train the channel initialization process, activation process, aggregation process, and verification process.
[0098] In this way, by using fault-level reset and collaborative alignment training, the adaptation challenges of multi-rate and heterogeneous protocols are solved, invalid retries are reduced, and initialization efficiency is improved. At the same time, the full-channel acknowledgment and dynamic offset compensation mechanism can eliminate timing deviations caused by hardware differences, avoid partial binding risks, and enhance the reliability of multi-channel collaboration. In addition, the service-level verification design can enhance transmission accuracy and prevent fault accumulation. Furthermore, the self-evolving channel initialization model dynamically optimizes parameters and cycles, balances reliability and bandwidth usage, and adapts to complex scenarios. Overall, the adaptability, stability, and self-healing capability of multi-channel initialization are improved, meeting the high requirements of scenarios such as industrial control and vehicle networking.
[0099] This embodiment also provides a device for channel initialization, which is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0100] This embodiment provides a device for channel initialization. Figure 4 A schematic diagram of the structure of a device for channel initialization according to an embodiment of this application is shown, such as... Figure 4 As shown, it includes:
[0101] Activation module 401 is used to activate channels and perform data boundary alignment for activated channels;
[0102] Aggregation module 402 is used to aggregate multiple channels with aligned data boundaries if there are multiple channels, and to eliminate the offset between channels after aggregation;
[0103] The verification module 403 is used to verify the data boundary alignment of a single channel or the offset elimination of multiple channels, and to determine the initialized channels based on the channels that pass the verification.
[0104] In some alternative implementations, the aforementioned means for channel initialization further includes:
[0105] The training module is used to determine the parameters of the activation, aggregation, elimination, and verification processes based on the channel initialization model. The channel initialization model is trained based on the historical parameters of the activation, aggregation, elimination, and verification processes.
[0106] In some alternative implementations, the activation module 401 includes:
[0107] The first unit of the activation module is used to reset the channel to its initial state; determine the first number of channels to be restored to the initial state; if the first number is less than the preset activation threshold, perform the reset operation again until the first number is equal to or greater than the preset activation threshold, and complete the activation.
[0108] In some optional implementations, the activation module 401 further includes:
[0109] The second unit of the activation module is used to receive alignment symbols from the sender based on the activated channel, and transmit the alignment symbols to the receiver. If the symbol type represented by the alignment symbols obtained by the receiver is the same as the symbol type represented by the alignment symbols sent by the sender, the alignment symbols are verified. If the alignment symbols pass the verification, the receiver receives verification symbols from the sender based on the activated channel, and transmits the verification symbols to the receiver. If the verification symbols obtained by the receiver are correct, the activated channel is determined to be in a data boundary aligned state.
[0110] In some alternative implementations, aggregation module 402 includes:
[0111] The first unit of the aggregation module is used to unify the transmission rate and / or data frame format of multiple channels with data boundary alignment to obtain the aggregated channel. Based on the aggregated channel, it receives idle symbols and bound symbols from the sender and sends the idle symbols and bound symbols to the receiver. If the number of correct idle symbols and bound symbols obtained by the receiver is equal to or greater than the offset elimination threshold, it is determined that the aggregated channel is in the offset elimination state.
[0112] In some alternative implementations, the verification module 403 includes:
[0113] The first unit of the verification module is used to receive a verification sequence from the transmitter based on the offset-reduced multi-channel, split the verification sequence into multiple verification symbols, and send the verification symbols to the receiver; combine the verification symbols obtained by the receiver to obtain a received verification sequence; if the number of correct received verification sequences obtained by the receiver is equal to or greater than the verification threshold, the initialized channel is determined based on the offset-reduced multi-channel; or, based on the data boundary aligned single-channel, receive a verification sequence from the transmitter, send the verification sequence to the receiver, and if the number of correct verification sequences obtained by the receiver is equal to or greater than the verification threshold, the initialized channel is determined based on the data boundary aligned single-channel.
[0114] In some optional implementations, the channel initialization model includes a first model state, a second model state, and a third model state, and the aforementioned apparatus for channel initialization further includes:
[0115] The first unit of the training module is used to receive detection symbols from the transmitter when the channel is in an idle state after initialization, and transmit the detection symbols to the receiver. If the detection symbols received by the receiver are inconsistent with those sent by the transmitter, the error accumulation counter is incremented by one. If the channel initialization model is in the first model state, the error accumulation counter is reset to zero, and if the error accumulation counter is one, the model transitions to the second model state. If the channel initialization model is in the second model state, and the number of correct detection symbols received by the receiver is equal to or greater than the detection threshold, the model transitions to the first model state. If the channel initialization model is in the second model state, and the detection symbols received by the receiver are inconsistent with those sent by the transmitter, the model transitions to the third model state. If the channel initialization model is in the third model state, the activation, aggregation, elimination, and verification processes are repeated.
[0116] The apparatus for channel initialization provided in this application can execute the method for channel initialization provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects for executing the method. Further functional descriptions of the various modules and units described above are the same as those in the corresponding embodiments described above, and will not be repeated here.
[0117] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0118] The following is a detailed reference. Figure 5 The diagram illustrates a structural schematic suitable for implementing the electronic device described in the embodiments of this application. The electronic device may include a processor (e.g., a central processing unit, graphics processor, etc.) 501, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 502 or a program loaded from memory 508 into random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the electronic device. The processor 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0119] Typically, the following devices can be connected to I / O interface 505: input devices 506 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 507 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; memory devices 508 including, for example, magnetic tapes, hard disks, etc.; and communication devices 509. Communication device 509 allows electronic devices to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 5Electronic devices with various devices are shown, but it should be understood that it is not required to implement or have all of the devices shown, and more or fewer devices may be implemented or have instead.
[0120] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 509, or installed from a memory 508, or installed from a ROM 502. When the computer program is executed by the processor 501, it performs the functions defined in the method for channel initialization of embodiments of this application.
[0121] Figure 5 The electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.
[0122] This application also provides a computer-readable storage medium. The methods described in this application can be implemented in hardware or firmware, or implemented as recordable on a storage medium, or implemented as computer code downloaded over a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and subsequently stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the method for channel initialization shown in the above embodiments is implemented.
[0123] A portion of this application can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to this application through the operation of the computer. Those skilled in the art will understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.
[0124] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and all such modifications and variations fall within the scope defined by the appended claims.
Claims
1. A method for channel initialization, characterized in that, The number of channels is at least one, and the method includes: Activate the channel and perform data boundary alignment for the activated channel; If there are multiple channels, aggregate multiple channels with aligned data boundaries to eliminate the offset between channels after aggregation; Verify the alignment of single channels or offset elimination of multiple channels by checking data boundaries, and determine the initialized channels based on the channels that pass the verification. Based on the channel initialization model, the parameters of the activation process, aggregation process, elimination process and verification process are determined. The channel initialization model is trained based on the historical parameters of the activation process, the historical parameters of the aggregation process, the historical parameters of the elimination process and the historical parameters of the verification process. The single-channel or multi-channel data after offset elimination with boundary alignment for verification data is used to determine the initialized channels based on the channels that pass verification, including: Based on the offset-reduced multi-channel configuration, a verification sequence is received from the transmitter. This verification sequence is then split into multiple verification symbols, which are sent to the receiver. The verification symbols obtained by the receiver are combined to obtain a received verification sequence. If the number of correct received verification sequences obtained by the receiver is equal to or greater than a verification threshold, the initialized channel is determined based on the offset-reduced multi-channel configuration. Alternatively, Based on the single channel with data boundary alignment, a verification sequence is received from the sending end, and the verification sequence is sent to the receiving end. If the number of correct verification sequences obtained by the receiving end is equal to or greater than the verification threshold, the initialized channel is determined based on the single channel with data boundary alignment. The channel initialization model includes a first state, a second state, and a third state. The method further includes: When the initialized channel is in an idle state, the detection code is received from the sending end and transmitted to the receiving end. If the detection code obtained by the receiving end is inconsistent with the detection code sent by the sending end, the error accumulation counter is incremented by one. If the channel initialization model is in the first state of the model, the error accumulation counter is reset to zero. If the error accumulation counter data is one, the model is switched to the second state. If the channel initialization model is in the second state of the model, and the number of correct detection symbols obtained by the receiving end is equal to or greater than the detection threshold, then the model is switched to the first state. If the channel initialization model is in the second state of the model, and the detection symbol obtained by the receiving end is inconsistent with the detection symbol sent by the sending end, it will switch to the third state of the model. If the channel initialization model is in the third state of the model, the activation process, the aggregation process, the elimination process, and the verification process are repeated.
2. The method according to claim 1, characterized in that, Activating the channel includes: Reset the channel to its initial state; Determine a first number of channels to be restored to the initial state. If the first number is less than a preset activation threshold, perform a reset operation again until the first number is equal to or greater than the preset activation threshold, and then complete the activation.
3. The method according to claim 1, characterized in that, The step of aligning data boundaries for the activated channels includes: Based on the activated channel, the alignment code element is received from the sending end and transmitted to the receiving end. If the code element type represented by the alignment code element obtained by the receiving end is the same as the code element type represented by the alignment code element sent by the sending end, the alignment code element is verified. If the alignment code passes the verification, based on the activated channel, the verification code from the sending end is received, and the verification code is transmitted to the receiving end. If the verification code obtained by the receiving end is correct, it is determined that the activated channel is in a data boundary aligned state.
4. The method according to claim 1, characterized in that, If there are multiple channels, the aggregation of multiple channels with aligned data boundaries, and the elimination of offset between channels after aggregation, includes: The transmission rate and / or data frame format of the multiple channels with unified data boundary alignment are used to obtain the aggregated channel; Based on the aggregated channel, idle symbols and bound symbols are received from the sending end, and the idle symbols and bound symbols are sent to the receiving end. If the number of correct idle symbols and bound symbols obtained by the receiving end is equal to or greater than the offset elimination threshold, the aggregated channel is determined to be in the offset elimination state.
5. An apparatus for channel initialization, characterized in that, The device includes: An activation module is used to activate the channel and perform data boundary alignment for the activated channel. The aggregation module is used to aggregate multiple channels with aligned data boundaries if there are multiple channels, and to eliminate the offset between channels after aggregation. The verification module is used to verify the data boundary alignment of a single channel or the offset elimination of multiple channels, and to determine the initialized channels based on the channels that pass the verification. The training module is used to determine the parameters of the activation process, aggregation process, elimination process and verification process based on the channel initialization model, wherein the channel initialization model is trained based on the historical parameters of the activation process, the historical parameters of the aggregation process, the historical parameters of the elimination process and the historical parameters of the verification process. Verify single-channel data boundary alignment or multi-channel data after offset elimination. Based on the channels that pass verification, determine the initialized channels, including: Based on the offset-reduced multi-channel configuration, a verification sequence is received from the transmitter. This verification sequence is then split into multiple verification symbols, which are sent to the receiver. The verification symbols obtained by the receiver are combined to obtain a received verification sequence. If the number of correct received verification sequences obtained by the receiver is equal to or greater than a verification threshold, the initialized channel is determined based on the offset-reduced multi-channel configuration. Alternatively, Based on the single channel with data boundary alignment, a verification sequence is received from the sending end, and the verification sequence is sent to the receiving end. If the number of correct verification sequences obtained by the receiving end is equal to or greater than the verification threshold, the initialized channel is determined based on the single channel with data boundary alignment. The channel initialization model includes a first model state, a second model state, and a third model state. The device also includes: The first unit of the training module is used for: When the initialized channel is in an idle state, the detection code is received from the sending end and transmitted to the receiving end. If the detection code obtained by the receiving end is inconsistent with the detection code sent by the sending end, the error accumulation counter is incremented by one. If the channel initialization model is in the first state of the model, the error accumulation counter is reset to zero. If the error accumulation counter data is one, the model is switched to the second state. If the channel initialization model is in the second state of the model, and the number of correct detection symbols obtained by the receiving end is equal to or greater than the detection threshold, then the model is switched to the first state. If the channel initialization model is in the second state of the model, and the detection symbol obtained by the receiving end is inconsistent with the detection symbol sent by the sending end, it will switch to the third state of the model. If the channel initialization model is in the third state of the model, the activation process, the aggregation process, the elimination process, and the verification process are repeated.
6. An electronic device, characterized in that, include: A memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, the processor executing the computer instructions to perform the method for channel initialization as described in any one of claims 1 to 4.
7. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing a computer to perform the method for channel initialization as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Alignment method and system of multiple paths of parallel data signals
CN106788953A
Flow analysis and threat detection method and device based on machine learning
CN120474799A