Frame synchronization method and device, electronic equipment and storage medium
By converting a single-frame serial data stream into multiple parallel data streams, combining the current frame synchronization status and the number of records of historical Hamming distances, the problem of difficult to stably extract synchronous word code groups in satellite communications is solved, and the stability and robustness of the synchronization system are improved.
Patent Information
- Application Number
- CN202510577051.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-06
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2045-05-06
AI Technical Summary
In satellite communication, when the data frame is large, as the data rate increases, it is difficult for the synchronization word code group to be stably extracted from the data buffer, affecting the stability and robustness of the synchronization system.
Convert a single-frame serial data stream into multiple parallel data streams. By obtaining the current frame synchronization status and the number of records of the historical Hamming distance, the target parallel data stream is determined, and the synchronous word code group detection is performed, and the frame synchronization status is updated in combination with the preset distance threshold and the number of times thresholds.
Effectively reduce the data rate of the input synchronization system, improve the robustness of the synchronization system, and ensure the stability and reliability of frame synchronization.
Smart Images

Figure CN120454909A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of signal processing technology, specifically to the field of satellite communication technology, and in particular to a frame synchronization method, device, electronic device and storage medium. Background Art
[0002] Satellite communications, as a crucial communication method for military and aerospace missions, play an irreplaceable role in many situations. Synchronization is a crucial component of satellite communication systems and typically includes carrier synchronization, bit synchronization, and frame synchronization. The transmitter typically transmits data in a certain number of data frames. Frame synchronization technology determines the start and end positions of each data frame, thereby achieving synchronous transmission of information. To achieve frame synchronization, two framing methods are commonly used: one inserts special synchronization code groups into the digital information stream, and the other leverages the inherent uniqueness of data code groups to achieve self-synchronization. In current communication applications, the first framing method is often used to achieve frame synchronization.
[0003] When the data frame is large, due to the long data buffer, as the data rate increases, it is difficult to stably extract the synchronization code group from the data buffer. At the same time, the short synchronization judgment time affects the stability and robustness of the synchronization system. Summary of the Invention
[0004] Embodiments of the present disclosure provide a frame synchronization method, apparatus, electronic device, and storage medium.
[0005] In a first aspect, an embodiment of the present disclosure provides a frame synchronization method, comprising: in response to receiving a single-frame serial data stream, converting the frame serial data stream into N parallel data streams, wherein a preset position of the frame serial data stream includes a synchronization code group, N is a natural number, and N≥2; obtaining a current frame synchronization state and a number of records for a historical Hamming distance; determining a target parallel data stream from the N parallel data streams; performing synchronization code group detection on the target parallel data stream according to the preset position to determine a target Hamming distance; and updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, a preset distance threshold, the number of records, and a preset number threshold.
[0006] In the second aspect, an embodiment of the present disclosure provides a frame synchronization device, comprising: a conversion unit, configured to, in response to receiving a single-frame serial data stream, convert the frame serial data stream into N parallel data streams, wherein the preset position of the frame serial data stream includes a synchronization code group, N is a natural number, N≥2; an acquisition unit, configured to obtain the current frame synchronization state and the number of records for the historical Hamming distance; a determination unit, configured to determine the target parallel data stream from the N parallel data streams; a calculation unit, configured to perform synchronization code group detection on the target parallel data stream according to the preset position, and determine the target Hamming distance; a synchronization unit, configured to update the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold.
[0007] In a third aspect, an embodiment of the present disclosure provides an electronic device comprising a memory, a processor, a bus, and a computer program stored in the memory and executable on the processor, wherein the processor implements the frame synchronization method described in the first aspect when executing the computer program.
[0008] In a fourth aspect, an embodiment of the present disclosure provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the frame synchronization method described in the first aspect.
[0009] Applying the technical solution disclosed herein, an input single-frame serial data stream can be converted into multiple parallel data streams. Based on the current frame synchronization state and the number of historical Hamming distance records, a synchronization search is performed on a target parallel data stream within the multiple parallel data streams, synchronization word groups are extracted, and a target Hamming distance is calculated. Finally, the frame synchronization state is updated based on the target Hamming distance, a preset distance threshold, the number of records, and the preset number threshold. This provides synchronization information to a synchronization state controller, enabling frame synchronization in satellite communications.
[0010] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.
[0012] Figure 1 is an exemplary system architecture diagram in which an embodiment of the frame synchronization method disclosed herein can be applied;
[0013] Figure 2 A flow chart of an embodiment of a frame synchronization method disclosed herein;
[0014] Figure 3 A schematic diagram of a serial data stream in the frame synchronization method disclosed herein;
[0015] Figure 4 for Figure 3 A schematic diagram showing how a serial data stream is converted into one of two parallel data streams;
[0016] Figure 5 for Figure 3 A schematic diagram showing how a serial data stream is converted into another of two parallel data streams;
[0017] Figure 6 1 is a flow chart of another embodiment of the frame synchronization method disclosed herein;
[0018] Figure 7 for Figure 6 A schematic structural diagram of the Hamming distance accumulator used in the illustrated embodiment;
[0019] Figure 8 A diagram showing a hardware connection relationship for converting a serial data stream into two parallel data streams in the frame synchronization method disclosed herein;
[0020] Figure 9 To adopt Figure 8 The hardware structure shown is a schematic diagram of data flow for achieving frame synchronization;
[0021] Figure 10 This is a structural diagram of an embodiment of a frame synchronization device disclosed herein;
[0022] Figure 11 This is a schematic structural diagram of an embodiment of an electronic device disclosed herein. DETAILED DESCRIPTION
[0023] It should be noted that the following detailed descriptions are exemplary and intended to provide further explanation of the present disclosure. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present disclosure belongs.
[0024] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present disclosure. As used herein, unless the context clearly indicates otherwise, the singular form is intended to include the plural form. In addition, it should be understood that when the terms "comprise" and / or "include" are used in this specification, they indicate the presence of features, steps, operations, devices, components and / or combinations thereof.
[0025] In the absence of conflict, the embodiments of the present disclosure and the features thereof may be combined with each other.
[0026] In order to make the technical solutions and advantages of the present disclosure more clearly understood, the present disclosure is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0027] Figure 1 An exemplary system architecture 100 is shown to which embodiments of the frame synchronization method or frame synchronization apparatus of the present disclosure may be applied.
[0028] like Figure 1 As shown, system architecture 100 may include a transmitting satellite 101 and a receiving satellite 102. A connection can be established between transmitting satellite 101 and receiving satellite 102 via various communication methods. After the connection is established, transmitting satellite 101 can send data to receiving satellite 102. The data length contained in each data frame is fixed. To achieve data frame synchronization, a synchronization code group can be inserted at a fixed position in each data frame. Upon receiving a data frame, receiving satellite 102 can extract the synchronization code group at the fixed position and calculate the Hamming distance. If the Hamming distance is less than , the data frame is considered to be in synchronization, making it easier for receiving satellite 102 to read the data frame content.
[0029] It should be noted that the frame synchronization method provided in the embodiments of the present disclosure is generally executed by the receiving satellite 102. Accordingly, the frame synchronization device is generally provided in the receiving satellite 102.
[0030] Figure 2 FIG2 shows a process 200 of an embodiment of the frame synchronization method of the present disclosure. Figure 2 As shown, the frame synchronization method of this embodiment may include the following steps:
[0031] Step 201: In response to receiving a single frame serial data stream, convert the frame serial data stream into N parallel data streams.
[0032] In this embodiment, the execution subject of the frame synchronization method (eg Figure 1 The receiving satellite 102 shown can receive signals from other communication devices (such as Figure 1 A transmitting satellite 101 (shown) receives a serial data stream. Here, the serial data stream is transmitted in the form of individual data frames. After receiving a single frame of the serial data stream, the execution entity may convert the frame into N parallel data streams. A synchronization code group may be included at a predetermined position in the single frame of the serial data stream. The synchronization code group may be a set of data with a fixed length and fixed content. N is a natural number ≥ 2.
[0033] When a communication system receiver receives a high-speed digital stream with random initial positions, it can convert the serial data stream into N parallel data streams to achieve synchronization by stably extracting the synchronization word groups. This reduces the data rate. In the parallel digital streams after serial-to-parallel conversion, the positions of the synchronization bytes can vary. This is explained using the example of converting one serial data stream into two parallel data streams. Assume Figure 3 It is a serial digital stream that includes a synchronization byte, where A7A6 A5 A4 A3 A2 A1 A0 are the eight bits in the synchronization byte, with the high bit in front, and the arrow indicates the direction of data transmission.
[0034] After the digital stream is converted from one channel to two channels, the positions of the bits in the synchronization code group may be Figure 4 or Figure 5 The situation shown. Figure 4 The odd and even bits of the synchronization word code group are symmetrically separated in two paths, and the high bit A7 is in the upper path. Figure 5 The synchronization word groups in the sync code are not symmetrically separated, with the high bit A7 located at the bottom. During synchronization, the two synchronization word phases can be searched and extracted, and the Hamming distance can be calculated. This reduces the operating data rate of the synchronization system to half the input data rate, ensuring stable and reliable performance.
[0035] Step 202: Obtain the current frame synchronization state and the number of records for the historical Hamming distance.
[0036] In this embodiment, the current frame synchronization state and the number of recorded historical Hamming distances can also be obtained. Specifically, the current frame synchronization state can include a synchronized state and an out-of-sync state. In the synchronized state, the data frames sent by the transmitter and the data frames received by the receiver are synchronized. In the out-of-sync state, the data frames sent by the transmitter and the data frames received by the receiver are out of sync. The current frame synchronization state can be determined by reading preset parameters.
[0037] In this embodiment, a value may be set to record the number of times the historical Hamming distance corresponds to a certain value, referred to as a recorded number. This recorded number indicates the comparison result between the Hamming distance and a preset distance threshold. For example, it may record the number of times the Hamming distance exceeds the preset distance threshold, or the number of times the Hamming distance is less than or equal to the preset distance threshold.
[0038] Step 203: Determine a target parallel data stream from the N parallel data streams.
[0039] After determining the current frame synchronization state, a target parallel data stream can be determined from the N parallel data streams. Specifically, if the current frame synchronization state is in sync, one of the N parallel data streams can be randomly selected as the target parallel data stream. Alternatively, a parallel data stream with a preset flag can be used as the target parallel data stream. If the current frame synchronization state is out of sync, all of the N parallel data streams can be used as the target parallel data stream. Alternatively, a parallel data stream with a preset flag can be used as the target parallel data stream.
[0040] Step 204 : Perform synchronization code group detection on the target parallel data stream according to the preset position to determine the target Hamming distance.
[0041] After determining the target parallel data stream, the synchronization word groups in the target parallel data stream can be extracted based on the preset position and the Hamming distance can be calculated, which is recorded as the target Hamming distance. Specifically, the Hamming distance between the synchronization word groups extracted from the data stream and the local synchronization word groups can be calculated. The Hamming distance is used to measure their similarity. If the Hamming distance is less than the preset distance threshold for several consecutive times, the system can be determined to be in synchronization.
[0042] Step 205 : updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold.
[0043] After determining the target Hamming distance, the frame synchronization status can be updated based on a preset distance threshold, the number of records, and the preset number threshold. Specifically, the target Hamming distance can be compared with the preset distance threshold. The number of records can be updated based on the comparison result. The updated number of records can then be compared with the preset number threshold. The frame synchronization status can be updated based on the comparison result. For distance, if the target Hamming distance is greater than the preset distance threshold, it is considered that a loss of synchronization may have occurred. In this case, the number of records can be increased by 1. If the updated number of records is greater than the preset number threshold, it is considered that the number of losses of synchronization is excessive, and the frame synchronization status can be recorded as a loss of synchronization.
[0044] The frame synchronization method provided by the above-mentioned embodiment of the present disclosure can convert the input single-frame serial data stream into multiple parallel data streams, and then perform synchronization search on the target parallel data stream in the multiple parallel data streams according to the current frame synchronization state and the number of records of the historical Hamming distance, extract the synchronization code group, and calculate the target Hamming distance. Finally, the frame synchronization state is updated according to the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold. In this way, synchronization information can be provided to the synchronization state controller to realize frame synchronization in satellite communications. The frame synchronization method disclosed in the present disclosure can effectively reduce the rate of data input to the synchronization system and improve the robustness of the synchronization system.
[0045] Continue to see Figure 6 , which shows a process 600 of another embodiment of the frame synchronization method according to the present disclosure. Figure 6 As shown, the method of this embodiment may include the following steps:
[0046] Step 601: In response to receiving a single frame serial data stream, convert the frame serial data stream into N parallel data streams.
[0047] Step 602: Obtain the current frame synchronization state and the number of records for the historical Hamming distance.
[0048] Step 603 , detecting whether each current parallel data stream corresponds to a working flag; in response to determining that no working flag is detected and that the current frame synchronization state is out of sync, determining N parallel data streams as target parallel data streams.
[0049] In this embodiment, after determining the current true synchronization state, it is first possible to detect whether each parallel data stream currently has a corresponding working flag. Specifically, the frame synchronization system uses N search modules to detect synchronization code groups. Each search module is used to detect a parallel data stream. If a search module is the first to detect a synchronization code group in the corresponding parallel data stream, a working flag can be set for that search module. If no working flag is currently detected for each parallel data stream, it indicates that no search module has currently detected a synchronization code group, and the current state is out of sync. All parallel data streams can be used as target parallel data streams.
[0050] Step 604 : In response to determining that the working flag is detected, taking the parallel data stream corresponding to the working flag as the target parallel data stream.
[0051] In this embodiment, if the working flag is detected, it means that the search module corresponding to the working flag has detected a synchronization code group in the parallel data stream. In this case, the parallel data stream corresponding to the working flag can be used as the target parallel data stream.
[0052] Step 605 , determining the target position of the synchronization word group in the parallel data stream according to the preset position and the value of N; detecting the synchronization word group at the target position of the target parallel data stream, and determining the target Hamming distance according to the detected synchronization word group.
[0053] After determining the target parallel data stream, the position of the synchronization word group in each parallel data stream can be determined based on the preset position and the value of N, and recorded as the target position. Then, for the target parallel data stream, the synchronization word group can be detected at the target position. After detecting the synchronization word group, the Hamming distance can be determined, which is recorded as the target Hamming distance.
[0054] Step 606: In response to determining that the current frame synchronization state is the synchronization state and the target Hamming distance is greater than the preset distance threshold, the number of records is increased by a preset value; in response to determining that the number of updated records is less than the first preset number threshold corresponding to the synchronization state, the frame synchronization state is maintained as the synchronization state; in response to determining that the number of updated records is equal to the first preset number threshold, the frame synchronization state is changed to the out-of-sync state.
[0055] After determining the target Hamming distance, the target Hamming distance can be compared with a preset distance threshold. The meaning of the recorded times can vary depending on the frame synchronization state. For example, when the frame synchronization state is in sync, the recorded times represent the number of times a possible desynchronization condition occurred, that is, the number of times the target Hamming distance exceeded the preset distance threshold. Different frame synchronization states can correspond to different times thresholds. Here, the times threshold corresponding to the in-sync state is referred to as the first preset times threshold, and the times threshold corresponding to the out-of-sync state is referred to as the second preset times threshold.
[0056] When the current frame synchronization state is the synchronization state, if the target Hamming distance is greater than a preset distance threshold, the number of records may be increased by a preset value. The preset value may be 1. The updated number of records may then be compared with a first preset number threshold. If the updated number of records is less than the first preset number threshold, the frame synchronization state is maintained in the synchronization state. If the updated number of records is equal to the first preset number threshold, the frame synchronization state is changed to the out-of-sync state.
[0057] Step 607: In response to determining that the current frame synchronization state is an out-of-sync state and determining that the target Hamming distance is less than a preset distance threshold, the number of records is increased by a preset value; in response to determining that the number of updated records is equal to a second preset number threshold corresponding to the out-of-sync state, the frame synchronization state is changed to a synchronized state; in response to determining that the number of updated records is less than the second preset number threshold, the frame synchronization state is maintained in the out-of-sync state.
[0058] When the current frame synchronization state is an out-of-step state, the target Hamming distance can be compared with a preset distance threshold. If the target Hamming distance is less than the preset distance threshold, the number of records can be increased by a preset value. Here, the preset value can be 1. And the updated number of records is compared with a second preset number threshold. If the updated number of records is equal to the second preset number threshold, it is considered that the current search module can detect the synchronization word code group in the target parallel data stream, and the number of times is sufficient, then the frame synchronization state can be changed to a synchronization state. If the updated number of records is less than the second preset number threshold, it is considered that the current search module has not detected the synchronization word code group in the target parallel data stream enough times, and the state is not stable enough, then the frame synchronization state continues to be maintained in an out-of-step state.
[0059] In some optional implementations of this embodiment, if the current frame synchronization state is out of sync, the parallel data stream that first detects the synchronization code group can be used as the target parallel data stream. Subsequently, synchronization code group detection can be performed only on this target parallel data stream, while detection of other parallel data streams is stopped. In this way, only one search module is active, while the other search modules are in a dormant state, effectively reducing power consumption.
[0060] In some optional implementations of this embodiment, if the current frame synchronization state is the synchronization state, for the target parallel data stream, when the next frame arrives, it can work for M clock cycles at the target position where the synchronization word code group is located. Wherein, M is a preset value, which can be determined according to the actual application scenario. In some specific practices, the value of M can be determined according to the pipeline level of the accumulator for calculating the Hamming distance. If it is adopted Figure 7 The accumulator shown has a total of 7 pipeline stages, so the value of M can be 7. In this way, the power consumption of the synchronization word code group detection can be effectively reduced.
[0061] The following example illustrates how to convert one serial data stream into two parallel data streams. Figure 8 Specifically, Figure 8 The design idea is to reduce the data rate. The serial input digital stream is converted into two channels, so that the data rate is reduced to half of the original, making the buffer that was originally unable to work stably or did not meet the working conditions become stable and reliable. Among them, the required synchronous buffer is a buffer with adjustable buffer length, variable depth, and embedded with four synchronization bytes. A shift register is used between the first and second synchronization words and between the third and fourth synchronization words, and its length is adjustable. Since the data to be buffered between the second and third synchronization words is long, a FIFO simulation shift register is used to save resources, and its depth is variable. In the design, the serial data is first converted from one channel to two channels. The result after conversion is as follows Figure 3 Then, the two synchronization word phases are searched and the synchronization word code groups are extracted, the Hamming distance is calculated, and the synchronization control signal and the synchronization indication signal are given by the synchronization state controller.
[0062] Among them, 5A, 0F, BE, and 66 are the four-byte synchronization words in hexadecimal. d and D i are two parameters of the interleaver. A 32-bit carry-preserving pipelined adder array is used to calculate the Hamming distance. The design extracts synchronization code groups from two different phases of the parallel data after serial-to-parallel conversion. Both Hamming distance generators use a Wallace tree pipeline accumulation method to calculate the Hamming distance for synchronization code groups extracted from different phases. The results are sent to the synchronization state controller for synchronization search, synchronization monitoring, and synchronization protection.
[0063] Figure 8 The synchronous system state control machine in the system is designed with synchronization judgment twice and out-of-step protection judgment four times, and adopts a full energy-saving parallel search method. The state transition principle diagram of the synchronous system is as follows Figure 9 As shown in the figure. The synchronization system is initially in an out-of-sync state. At this point, two search paths are operating simultaneously, detecting synchronization code groups in two parallel data streams. When the first path detects a synchronization code group, the second path is stopped and the first path is flagged as active. Similarly, if the first path does not detect a synchronization code group but the second path does, the first path is stopped and the second path is flagged as active. After detecting a synchronization code group, the location where the synchronization code group was detected can be recorded. The synchronization system then switches to a frame-by-frame judgment, determining whether the synchronization code group is still present at that location in the next frame of data. If so, this indicates that the synchronization code group has been detected at the same location in two consecutive frames of data streams while in the out-of-sync state, meaning the number of recorded times is two. The synchronization system then enters the synchronized state. If not, this indicates that the currently detected synchronization code group is incorrect, and the synchronization system then remains in the out-of-sync state and restarts the two-path search. When the synchronization system enters the synchronization state, it detects the synchronization code group on a frame-by-frame basis. That is, the synchronization system only works for a few clock cycles at the synchronization code group in each frame (7 clock cycles in the design because the Hamming distance generator has a 7-stage pipeline), thereby minimizing the energy consumption of the synchronization system.
[0064] When the synchronization system detects a Hamming distance greater than a preset distance threshold at the synchronization word group in a frame of data stream, the synchronization system remains synchronized, but the number of records is recorded as 1. The synchronization system continues to detect the synchronization word group in the next frame. When the Hamming distance detected again exceeds the preset distance threshold, the number of records is recorded as 2. Similarly, when the number of records reaches 4, the synchronization system enters a state of desynchronization. At this point, the two channels can be searched simultaneously, and the synchronization system can capture synchronously in parallel. It should be noted that when the two channels are operating simultaneously, the first channel takes precedence over the second channel, which can avoid logical errors during the search process.
[0065] When data rates increase further and two-way parallel synchronization fails to reliably extract synchronization word groups, multiple parallel synchronization channels can be used. This is achieved by converting the input high-speed serial data into serial-to-parallel data. A synchronization search is then performed based on the various possible phases of the synchronization word after the conversion. The synchronization word groups are extracted, the Hamming distance is calculated, and synchronization information is provided to the synchronization state controller. The synchronization system initially performs multi-way parallel synchronization searches. When one channel captures a synchronization word group, the other channels cease operation, and the system operates as a single-way synchronization system. The design prioritizes synchronization acquisition from smallest to largest, with the first channel taking precedence over the second, the second over the third, and so on. This facilitates smooth transitions between different states of the synchronization system. The design should utilize a multi-way, fully energy-efficient design. When the system is in the synchronization acquisition state, the multiple synchronization search systems operate simultaneously. When the system is in the synchronization monitoring and protection states, the synchronization system only operates for a few clock cycles at the synchronization word group position within each frame of data.
[0066] In actual communications, since the system spends most of its time in synchronization monitoring mode, a fully energy-efficient design can minimize the power consumption of the synchronization system. Two-way parallel synchronization can reduce the data rate to half the input data rate, three-way parallel synchronization can reduce it to one-third, and so on. Using N-way parallel synchronization can reduce the data rate to one-Nth of the input data rate. Assuming N to be 8, since a single-way synchronous search system can stably and reliably operate at at least 25 Mbps, the maximum data rate at which the synchronization system can operate stably is at least 25 × 8 = 200 Mbps. This shows that a multi-way parallel frame synchronization design is valuable for the design of high-speed data frame synchronization systems.
[0067] The frame synchronization method provided by the above-mentioned embodiments of the present disclosure can effectively reduce the data rate of the input synchronization system and increase the rate at which the frame synchronization system extracts synchronization word code groups, thereby improving the robustness of the synchronization system.
[0068] Further references Figure 10 As an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a frame synchronization device. Figure 2 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.
[0069] like Figure 10 As shown, the frame synchronization device 1000 of this embodiment includes: a conversion unit 1001 , an acquisition unit 1002 , a determination unit 1003 , a calculation unit 1004 and a synchronization unit 1005 .
[0070] The conversion unit 1001 is configured to, in response to receiving a single frame serial data stream, convert the frame serial data stream into N parallel data streams, wherein the frame serial data stream includes a synchronization word group at a preset position, and N is a natural number, N≥2.
[0071] The acquiring unit 1002 is configured to acquire the current frame synchronization state and the number of records of the historical Hamming distance.
[0072] The determining unit 1003 is configured to determine a target parallel data stream from the N parallel data streams.
[0073] The calculation unit 1004 is configured to perform synchronization code group detection on the target parallel data stream according to the preset position and determine the target Hamming distance.
[0074] The synchronization unit 1005 is configured to update the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the number of records and the preset number threshold.
[0075] In addition, in the technical solution of this application, an electronic device is also proposed.
[0076] Figure 11 A schematic structural diagram of an electronic device provided by an embodiment of the present disclosure is shown.
[0077] like Figure 11 As shown, the electronic device may include a processor 1101, a memory 1102, a bus 1103, and a computer program stored in the memory 1102 and executable on the processor 1101, wherein the processor 1101 and the memory 1102 communicate with each other via the bus 1103. When the processor 1101 executes the computer program, the steps of implementing the above method include, for example: in response to receiving a single-frame serial data stream, converting the frame serial data stream into N parallel data streams, wherein a preset position of the frame serial data stream includes a synchronization word group, N is a natural number, and N≥2; obtaining a current frame synchronization state and a number of records for a historical Hamming distance; determining a target parallel data stream from the N parallel data streams; performing synchronization word group detection on the target parallel data stream according to the preset position to determine a target Hamming distance; and updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold.
[0078] In addition, in one embodiment of the present disclosure, a non-transitory computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above method are implemented, for example, including: in response to receiving a single-frame serial data stream, converting the frame serial data stream into N parallel data streams, wherein the preset position of the frame serial data stream includes a synchronization code group, N is a natural number, N≥2; obtaining the current frame synchronization state and the number of records for the historical Hamming distance; determining the target parallel data stream from the N parallel data streams; performing synchronization code group detection on the target parallel data stream according to the preset position to determine the target Hamming distance; updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold.
[0079] The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present disclosure should be included in the scope of protection of the present disclosure.
Claims
1. A frame synchronization method, comprising: In response to receiving a single frame serial data stream, converting the frame serial data stream into N parallel data streams, wherein a preset position of the frame serial data stream includes a synchronization word code group, N is a natural number, N ≥ 2; Get the current frame synchronization status and the number of records for the historical Hamming distance; Determine a target parallel data stream from the N parallel data streams; According to the preset position, performing synchronization code group detection on the target parallel data stream to determine a target Hamming distance; The frame synchronization state is updated according to the current frame synchronization state, the target Hamming distance, a preset distance threshold, the number of records, and a preset number threshold.
2. The method according to claim 1, wherein Determining a target parallel data stream from the N parallel data streams includes: Check whether each current parallel data stream has a corresponding working flag; In response to determining that the working flag is not detected, the N parallel data streams are determined to be the target parallel data streams.
3. The method according to claim 2, wherein: The step of determining a target parallel data stream from the N parallel data streams according to the current frame synchronization state includes: In response to determining that the working flag is detected, the parallel data stream corresponding to the working flag is used as the target parallel data stream.
4. The method according to claim 1, wherein The step of performing synchronization code group detection on the target parallel data stream according to the preset position to determine a target Hamming distance includes: Determining a target position of the synchronization word group in the parallel data stream according to the preset position and the value of N; The synchronization word group is detected at the target position of the target parallel data stream, and the target Hamming distance is determined according to the detected synchronization word group.
5. The method according to claim 1, wherein The updating of the frame synchronization state according to the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold includes: In response to determining that the current frame synchronization state is a synchronization state and the target Hamming distance is greater than the preset distance threshold, increasing the number of recording times by a preset value; In response to determining that the number of updated records is less than a first preset number threshold corresponding to the synchronization state, maintaining the frame synchronization state as the synchronization state; In response to determining that the number of updated records is equal to the first preset number threshold, the frame synchronization state is changed to an out-of-sync state.
6. The method according to claim 5, wherein: The updating of the frame synchronization state according to the target Hamming distance, the preset distance threshold, the number of records, and the preset number threshold includes: In response to determining that the current frame synchronization state is an out-of-sync state and determining that the target Hamming distance is less than the preset distance threshold, increasing the number of recording times by a preset value; In response to determining that the number of updated records is equal to a second preset number threshold corresponding to the out-of-sync state, changing the frame synchronization state to a synchronization state; In response to determining that the number of updated records is less than the second preset number threshold, the frame synchronization state is maintained as an out-of-sync state.
7. The method according to claim 6, wherein: The method further comprises: In response to determining that the current frame synchronization state is an out-of-sync state, the parallel data stream in which the synchronization word group is detected first is used as the target parallel data stream, and synchronization word group detection for other parallel data streams is stopped.
8. A frame synchronization device, comprising: a conversion unit configured to, in response to receiving a single frame serial data stream, convert the frame serial data stream into N parallel data streams, wherein a preset position of the frame serial data stream includes a synchronization word code group, N is a natural number, N ≥ 2; an acquisition unit configured to acquire a current frame synchronization state and a number of records for a historical Hamming distance; a determining unit, configured to determine a target parallel data stream from the N parallel data streams; a calculation unit configured to perform synchronization code group detection on the target parallel data stream according to the preset position to determine a target Hamming distance; The synchronization unit is configured to update the frame synchronization state according to the current frame synchronization state, the target Hamming distance, a preset distance threshold, the number of records, and a preset number threshold.
9. An electronic device comprising a memory, a processor, a bus, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the frame synchronization method according to any one of claims 1 to 7 is implemented.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the frame synchronization method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Synchronous frame capturing method and synchronous frame capturing device
CN104125053A
Synchronizer, synchronization method and high-speed receiver by using synchronizer
CN107425953A
Parallel frame synchronization method, sending end, receiving end and low earth orbit satellite communication system
CN112532371A
Frame synchronization method and device
CN117955587A
Synchronization of frame signals having two synchronization words
US20090190704A1