Frame synchronization methods, apparatus, electronic devices and storage media

By converting a single-frame serial data stream into multiple parallel data streams and combining the current frame synchronization status with the number of historical Hamming distance records, frame synchronization in satellite communication is achieved. This solves the problem of difficulty in extracting synchronization code groups for large data frames at high data rates, and improves the stability and robustness of the synchronization system.

CN120454909BActive Publication Date: 2026-01-06CHINESE PEOPLES LIBERATION ARMY STRATEGIC SUPPORT FORCE AEROSPACE ENG UNIV NON-COMMISSIONED OFFICER SCHOOL
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510577051.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-06
Publication Date
2026-01-06
Estimated Expiration
2045-05-06

AI Technical Summary

Technical Problem

In satellite communications, when the data frame is large, as the data rate increases, it becomes difficult to reliably extract the synchronization code group from the data buffer, affecting the stability and robustness of the synchronization system.

Method used

The single-frame serial data stream is converted into multiple parallel data streams. The target parallel data stream is determined by obtaining the current frame synchronization status and the number of historical Hamming distance records, and synchronization code group detection is performed. The frame synchronization status is updated according to the target Hamming distance, the preset distance threshold, and the number threshold.

Benefits of technology

It effectively reduces the data rate of the input synchronization system, improves the robustness of the synchronization system, and ensures the stability and reliability of frame synchronization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120454909B_ABST
    Figure CN120454909B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a frame synchronization method and device, electronic equipment and storage medium, and relates to the field of signal processing. The method comprises: in response to receiving a single frame serial data stream, converting the frame serial data stream into N parallel data streams, wherein a synchronization code group is included at a preset position of the frame serial data stream, N is a natural number, N≥2; obtaining a current frame synchronization state and a record number of historical Hamming distances; determining a target parallel data stream from the N parallel data streams; detecting the target parallel data stream for the synchronization code group according to the preset position, and determining 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 record number and a preset number threshold. The present disclosure can effectively reduce the rate of data input into the synchronization system and improve the robustness of the synchronization system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This 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, apparatus, electronic device, and storage medium. Background Technology

[0002] Satellite communication, as a crucial communication method in military and aerospace missions, plays an irreplaceable role in many situations. Synchronization is a vital component of satellite communication systems, typically including carrier synchronization, bit synchronization, and frame synchronization. The transmitting end generally transmits data in a certain number of data frames. Frame synchronization technology allows the acquisition of the start and end positions of each data frame, thereby achieving synchronized information transmission. To achieve frame synchronization, there are generally two framing methods: one is to insert special synchronization code groups into the digital information stream, and the other is to utilize the inherent differences between data code groups to achieve self-synchronization. In current communication applications, the first framing method is mostly 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 reliably 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 this disclosure provide a frame synchronization method, apparatus, electronic device, and storage medium.

[0005] In a first aspect, embodiments of this disclosure provide a frame synchronization method, comprising: in response to receiving a single-frame serial data stream, converting the single-frame serial data stream into N parallel data streams, wherein a synchronization code group is included at a preset position in the single-frame serial data stream, N is a natural number, N≥2; acquiring the current frame synchronization state and the number of records for historical Hamming distances; 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 the 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] Secondly, embodiments of this disclosure provide a frame synchronization apparatus, comprising: a conversion unit configured to convert a single-frame serial data stream into N parallel data streams in response to receiving a single-frame serial data stream, wherein a synchronization code group is included at a preset position in the single-frame serial data stream, N is a natural number, and N≥2; an acquisition unit configured to acquire a current frame synchronization state and the number of records for historical Hamming distances; a determination 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; and a synchronization unit 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.

[0007] Thirdly, embodiments of this disclosure provide an electronic device including a memory, a processor, a bus, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the frame synchronization method as described in the first aspect.

[0008] Fourthly, embodiments of this disclosure provide a non-transitory computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the frame synchronization method as described in the first aspect.

[0009] By applying the technical solution disclosed herein, an input single-frame serial data stream can be converted into multiple parallel data streams. Then, based on the current frame synchronization state and the number of historical Hamming distance records, a synchronization search is performed on the target parallel data stream among the multiple parallel data streams to extract synchronization codeword groups and calculate the target Hamming distance. Finally, the frame synchronization state is updated based on the target Hamming distance, a preset distance threshold, the number of records, and a preset number threshold. This provides synchronization information to the synchronization state controller, achieving frame synchronization in satellite communication.

[0010] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0011] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0012] Figure 1 An exemplary system architecture diagram in which an embodiment of the frame synchronization method of this disclosure can be applied;

[0013] Figure 2 This is a flowchart illustrating an embodiment of the frame synchronization method disclosed herein;

[0014] Figure 3 This is a schematic diagram of a serial data stream in the frame synchronization method of this disclosure;

[0015] Figure 4 for Figure 3 The diagram illustrates the transformation of a serial data stream into one of two parallel data streams.

[0016] Figure 5 for Figure 3 The diagram illustrates the transformation of a serial data stream into one of two parallel data streams.

[0017] Figure 6 This is a flowchart illustrating another embodiment of the frame synchronization method disclosed herein;

[0018] Figure 7 for Figure 6 A schematic diagram of the Hamming distance accumulator used in the illustrated embodiment;

[0019] Figure 8 This is a diagram showing the hardware connection relationships used in the frame synchronization method of this disclosure to convert a serial data stream into two parallel data streams.

[0020] Figure 9 To adopt Figure 8 The diagram shown illustrates the data flow process for frame synchronization using the hardware structure shown.

[0021] Figure 10 This is a schematic diagram of the structure of one embodiment of the frame synchronization device of this disclosure;

[0022] Figure 11 This is a schematic diagram of the structure of an embodiment of the electronic device disclosed herein. Detailed Implementation

[0023] It should be noted that the following detailed descriptions are exemplary and intended to provide further illustration of this disclosure. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains.

[0024] It should be noted that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the exemplary embodiments according to this disclosure. As used herein, the singular form is intended to include the plural form as well, unless the context clearly indicates otherwise. Furthermore, it should be understood that when the terms “comprising” and / or “including” are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof.

[0025] Where there is no conflict, the embodiments and features described herein can be combined with each other.

[0026] To make the technical solutions and advantages of this disclosure clearer, the following description, in conjunction with the accompanying drawings and specific embodiments, will provide a more detailed account of this disclosure.

[0027] Figure 1 An exemplary system architecture 100 is shown that can be applied to embodiments of the frame synchronization method or frame synchronization apparatus of this disclosure.

[0028] like Figure 1 As shown, the system architecture 100 may include a transmitting satellite 101 and a receiving satellite 102. The transmitting satellite 101 and the receiving satellite 102 can establish a connection through various communication methods. After establishing a connection, the transmitting satellite 101 can send data to the receiving satellite 102. The data length included 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. When the receiving satellite 102 receives a data frame, it can extract the synchronization code group at the aforementioned fixed position and calculate the Hamming distance. If the distance is less than 1 / 3, the data frame can be considered to be in a synchronized state, which facilitates the receiving satellite 102 in reading the content of the data frame.

[0029] It should be noted that the frame synchronization method provided in this embodiment is generally executed by the receiving satellite 102. Accordingly, the frame synchronization device is generally located in the receiving satellite 102.

[0030] Figure 2 A flow 200 of one embodiment of the frame synchronization method of this disclosure is shown. For example... Figure 2 As shown, the frame synchronization method in 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 body of the frame synchronization method (e.g.) Figure 1 The receiver satellite 102 shown can receive signals from other communication devices (e.g., satellite 102). Figure 1 The 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 serial data stream, the executing entity can convert that frame into N parallel data streams. Here, a synchronization code group may be included at a preset position in the single frame of serial data stream. Here, the synchronization code group can be a set of data of fixed length and fixed content. N is a natural number ≥ 2.

[0033] When a receiver in a communication system receives a high-speed digital stream with randomly initial positions, in order to stably extract the synchronization code group and achieve synchronization, the serial data stream can be converted into N parallel data streams, thereby reducing the data rate. In the parallel digital stream after serial-to-parallel conversion, the positions of the bits in the synchronization byte can exist in several different ways. This will be illustrated using the serial-to-parallel conversion of one serial data stream into two parallel data streams as an example. 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 most significant bit first, and the arrow indicates the direction of data transmission.

[0034] After the digital stream undergoes a one-to-two serial-to-parallel conversion, due to the randomness of the data start bit, the positions of each bit in the synchronization code group may be... Figure 4 or Figure 5 The situation is shown. Figure 4 The odd and even bits of the synchronous code group are symmetrically separated in the two paths, and the high bit A7 is in the upper path. Figure 5 The synchronization code groups are not symmetrically separated, with the high-order A7 in the lower path. During synchronization, the phase of these two synchronization codes can be searched and extracted to calculate the Hamming distance. This reduces the operating data rate of the synchronization system to half of the input data rate, making the system stable and reliable.

[0035] Step 202: Obtain the current frame synchronization status and the number of times the historical Hamming distance has been recorded.

[0036] In this embodiment, the current frame synchronization status and the number of records for historical Hamming distances can also be obtained. Specifically, the current frame synchronization status can include a synchronized state and a out-of-synchronization state. In the synchronized state, the data frames sent by the transmitter and received by the receiver are synchronized. In the out-of-synchronization state, the data frames sent by the transmitter and received by the receiver are out of sync. The current frame synchronization status can be determined by reading preset parameters.

[0037] In this embodiment, a value can also be set for recording the number of times the historical Hamming distance is recorded, referred to as the recording count. This recording count is used to represent the comparison result between the Hamming distance and a preset distance threshold. For example, it is used to record the number of times the Hamming distance is greater than the preset distance threshold, or to record the number of times the Hamming distance is less than or equal to the preset distance threshold.

[0038] Step 203: Determine the target parallel data stream from the N parallel data streams.

[0039] After determining the current frame synchronization state, the target parallel data stream can be determined from N parallel data streams. Specifically, if the current frame synchronization state is synchronized, 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 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: Based on the preset position, perform synchronous code group detection on the target parallel data stream to determine the target Hamming distance.

[0041] After identifying the target parallel data stream, synchronization codewords can be extracted from the target parallel data stream at preset positions, and the Hamming distance can be calculated and denoted as the target Hamming distance. Specifically, the Hamming distance between the synchronization codewords extracted from the data stream and the local synchronization codewords can be calculated. The similarity between them can be measured by the Hamming distance. If the Hamming distance is less than a preset distance threshold several times consecutively, the system can be determined to have entered a synchronization state.

[0042] Step 205: Update the frame synchronization status based on the current frame synchronization status, target Hamming distance, preset distance threshold, number of records, and preset number of records threshold.

[0043] After determining the target Hamming distance, the frame synchronization state can be updated by combining a preset distance threshold, the number of records, and a preset number of records threshold. Specifically, the target Hamming distance can be compared with the preset distance threshold. The number of records is updated based on the comparison result. The updated number of records is then compared with the preset number of records threshold. The frame synchronization state is updated based on this comparison result. Regarding distance, if the target Hamming distance is greater than the preset distance threshold, it is considered that a synchronization failure may have occurred. In this case, the number of records is incremented by 1. If the updated number of records is greater than the preset number of records threshold, it is considered that too many synchronization failures have occurred, and the frame synchronization state is recorded as a synchronization failure state.

[0044] The frame synchronization method provided in the above embodiments of this disclosure can convert an input single-frame serial data stream into multiple parallel data streams. Then, based on the current frame synchronization state and the number of historical Hamming distance records, a synchronization search is performed on the target parallel data stream among the multiple parallel data streams to extract synchronization codewords and calculate the target Hamming distance. Finally, the frame synchronization state is updated based on the target Hamming distance, a preset distance threshold, the number of records, and a preset number threshold. This provides synchronization information to the synchronization state controller, achieving frame synchronization in satellite communication. The frame synchronization method of this disclosure can effectively reduce the data rate input to the synchronization system and improve the robustness of the synchronization system.

[0045] See also Figure 6 This illustrates a flow 600 of another embodiment of the frame synchronization method according to this disclosure. Figure 6 As shown, the method in 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 status and the number of times the historical Hamming distance has been recorded.

[0048] Step 603: Detect whether each parallel data stream has a corresponding working flag; in response to determining that no working flag is detected and determining that the current frame synchronization state is out of sync, determine N parallel data streams as target parallel data streams.

[0049] In this embodiment, after determining the current true synchronization state, the system first checks whether each parallel data stream 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 one parallel data stream. If a search module detects a synchronization code group in its corresponding parallel data stream first, then that search module can be set to work. If no working flag is detected for any parallel data stream, it means that no search module has detected a synchronization code group, and the system is currently out of sync. In this case, all parallel data streams can be used as the target parallel data stream.

[0050] Step 604: In response to determining that a working flag has been detected, the parallel data stream corresponding to the working flag is taken as the target parallel data stream.

[0051] In this embodiment, if the aforementioned working flag is detected, it indicates that the search module corresponding to the working flag has detected a synchronization code group in the parallel data stream. At this point, the parallel data stream corresponding to the working flag can be used as the target parallel data stream.

[0052] Step 605: Determine the target position of the synchronization code group in the parallel data stream according to the preset position and the value of N; detect the synchronization code group at the target position of the target parallel data stream, and determine the target Hamming distance based on the detected synchronization code group.

[0053] After determining the target parallel data stream, the position of the synchronization code group in each parallel data stream can be determined based on the preset position and the value of N, and denoted as the target position. Then, for the target parallel data stream, the synchronization code group can be detected at the target position. After detecting the synchronization code group, the Hamming distance can be determined and denoted as the target Hamming distance.

[0054] Step 606: In response to determining that the current frame synchronization state is synchronized and the target Hamming distance is greater 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 less than a first preset number threshold corresponding to the synchronization state, the frame synchronization state is kept in the synchronized 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-synchronization state.

[0055] After determining the target Hamming distance, it can be compared with a preset distance threshold. The meaning of the recorded count can differ depending on the frame synchronization state. For example, when the frame synchronization state is synchronized, the recorded count represents the number of times a possible synchronization failure occurs, i.e., the number of times the target Hamming distance exceeds the preset distance threshold. Different frame synchronization states can correspond to different count thresholds. Here, the count threshold corresponding to the synchronized state is denoted as the first preset count threshold, and the count threshold corresponding to the synchronization failure state is denoted as the second preset count threshold.

[0056] When the current frame synchronization state is synchronized, if the target Hamming distance is greater than a preset distance threshold, the recording count can be increased by a preset value. This preset value can be 1. Then, the updated recording count can be compared with a first preset threshold. If the updated recording count is less than the first preset threshold, the frame synchronization state remains synchronized. If the updated recording count equals the first preset threshold, the frame synchronization state is changed to a out-of-synchronization state.

[0057] Step 607: In response to determining that the current frame synchronization state is out of sync and 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 the 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 kept in the out-of-sync state.

[0058] When the current frame synchronization state is out of sync, 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. The updated number of records is then compared with a second preset number threshold. If the updated number of records equals the second preset number threshold, it is considered that the current search module can detect synchronization code groups in the target parallel data stream, and the number of times is sufficient, so the frame synchronization state can be changed to a synchronized 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 synchronization code groups in the target parallel data stream enough times, and the state is not stable enough, so the frame synchronization state remains out of sync.

[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 taken as the target parallel data stream. Subsequently, only the target parallel data stream can be detected for the synchronization code group, and the detection of other parallel data streams can be stopped. In this way, only one search module works, while the other search modules are in a sleep state, which can effectively reduce power consumption.

[0060] In some optional implementations of this embodiment, if the current frame synchronization state is synchronized, for the target parallel data stream, M clock cycles can be operated at the target position of the synchronization code group when the next frame arrives. Here, 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 based on the pipeline level of the accumulator used to calculate the Hamming distance. If using... Figure 7 The accumulator shown has 7 pipeline stages, so the value of M can be 7. This can effectively reduce the power consumption of synchronous code group detection.

[0061] The following example illustrates how to convert one serial data stream into two parallel data streams. This can be achieved using... Figure 8 The hardware circuit shown is used to implement this. Specifically, Figure 8 The design philosophy is to reduce the data rate. The serial input digital stream is converted into two channels, thus halving the data rate and making previously unstable or unsuitable buffers stable and reliable. The required synchronization buffer is an adjustable-length, variable-depth buffer containing four synchronization bytes. Shift registers with adjustable lengths are used between the first and second synchronization words and between the third and fourth synchronization words. Between the second and third synchronization words, due to the longer buffered data, a FIFO-simulated shift register with variable depth is used to save resources. The design first converts the serial data from one channel to two channels. The result after conversion is as follows: Figure 3 As shown. Then, the synchronization word code groups are extracted by searching for the two synchronization word phases respectively, the Hamming distance is calculated, and the synchronization state controller gives the synchronization control signal and the synchronization indication signal.

[0062] Where 5A, 0F, BE, and 66 are four-byte hexadecimal synchronization words, I d and D i These are two parameters of the interleaver. A 32-bit carry-retaining pipelined adder array is used to calculate the Hamming distance. The extraction method for synchronization code groups in the design involves performing calculations on two different phases of the parallel data after serial-to-parallel conversion. Both Hamming distance generators employ a Wallace tree pipelined accumulation method to calculate the Hamming distance for the synchronization code groups extracted from different phases, and then send the results to the synchronization state controller for synchronization search, synchronization monitoring, and synchronization protection.

[0063] Figure 8 The state controller of the synchronization system is designed with two synchronization checks and four out-of-step protection checks, and adopts a fully energy-efficient parallel search method. The state transition principle diagram of the synchronization system is shown below. Figure 9 As shown. The synchronization system initially enters a out-of-synchronization state. At this time, both searches operate simultaneously, detecting synchronization code groups in the two parallel data streams. When the first search detects a synchronization code group, the second search stops and the first search is flagged as active. Similarly, if the first search fails to detect a synchronization code group while the second search does, the first search stops and the second search is flagged as active. After detecting a synchronization code group, its position is recorded. The synchronization system then proceeds to frame-by-frame judgment, checking if the same synchronization code group is detected at the same position in the next frame of the data stream. If it is, it means that in the out-of-synchronization state, synchronization code groups have been detected at the same position in two consecutive frames of the data stream, i.e., the recording count is 2. The synchronization system then returns to a synchronized state. If not, it means the currently detected synchronization code group is incorrect, and the synchronization system remains in the out-of-synchronization state and restarts the two-way search. Once the synchronization system enters the synchronization state, it detects the synchronization code group frame by frame. This means that the synchronization system only operates for a few clock cycles at the synchronization code group of each frame (7 clock cycles in the design because the Hamming distance generator has 7 stages of pipeline), thereby minimizing the energy consumption of the synchronization system.

[0064] When the Hamming distance obtained by the synchronization system at the synchronization code group of a data frame is greater than a preset distance threshold, the synchronization system maintains synchronization but records the recording count as 1. The synchronization system continues to detect at the synchronization code group of the next frame. When the Hamming distance obtained by the detected result is again greater than the preset distance threshold, the recording count is recorded as 2. This continues until the recording count reaches 4, at which point the synchronization system enters a state of out-of-synchronization. At this point, both channels can start searching simultaneously, and the synchronization system can capture data synchronously in parallel. It should be noted that when both channels are searching simultaneously, the first channel searches take precedence over the second channel to avoid logical errors during the search process.

[0065] When data transmission rates increase further and two-way parallel synchronization cannot stably extract synchronization code groups, multiple-way parallel synchronization can be used. The implementation method involves converting the input high-speed serial data to parallel data, then performing a synchronization search based on the possible different phases of the synchronization word after the conversion, extracting the synchronization code group, calculating the Hamming distance, and providing synchronization information to the synchronization state controller. The synchronization system initially performs multi-way parallel synchronization search. Once one channel captures the synchronization code group, the others stop working, and the system operates only as a single synchronization system. The design can be configured with synchronization capture priority from lowest to highest, i.e., the first channel takes precedence over the second, the second over the third, and so on. This facilitates normal transitions between different states of the synchronization system. The design should employ a multi-way, energy-efficient design. When the system is in synchronization capture mode, multiple synchronization search systems operate simultaneously; when the system is in synchronization monitoring and protection mode, the synchronization system only operates for a few clock cycles at the synchronization code group position of each frame of data.

[0066] In practical communication, since the system spends most of its time in a synchronous monitoring state, 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 to one-third, and so on. When using N-way parallel synchronization, the data rate can be reduced to one-Nth of the input data rate. Let N be 8. Since a single-way synchronization search system can reliably operate at at least 25 Mbps, the highest stable data rate that this synchronization system can achieve is at least 25 × 8 = 200 Mbps. Therefore, a multi-way parallel frame synchronization design is meaningful for the design of high-speed data frame synchronization systems.

[0067] The frame synchronization method provided in the above embodiments of this disclosure can effectively reduce the data rate of the input synchronization system and increase the rate at which the frame synchronization system extracts synchronization code groups, thereby improving the robustness of the synchronization system.

[0068] Further reference Figure 10 As an implementation of the methods shown in the above figures, this disclosure provides an embodiment of a frame synchronization device, which is similar to... Figure 2 Corresponding to the method embodiments shown, this 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 convert a single-frame serial data stream into N parallel data streams in response to receiving the single-frame serial data stream. The serial data stream contains a synchronization code group at a preset position, and N is a natural number, N≥2.

[0071] The acquisition unit 1002 is configured to acquire the current frame synchronization status and the number of records for the historical Hamming distance.

[0072] The determining unit 1003 is configured to determine the target parallel data stream from N parallel data streams.

[0073] The computing unit 1004 is configured to perform synchronous code group detection on the target parallel data stream according to a preset position to determine the target Hamming distance.

[0074] Synchronization unit 1005 is configured to update the frame synchronization status based on the current frame synchronization status, target Hamming distance, preset distance threshold, number of records, and preset number of records threshold.

[0075] In addition, an electronic device is also proposed in the technical solution of this application.

[0076] Figure 11 A schematic diagram of the structure of an electronic device provided in one 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. The processor 1101 and the memory 1102 communicate with each other via the bus 1103. When the processor 1101 executes the computer program, it implements the steps of the above method, including, for example: in response to receiving a single-frame serial data stream, converting the single-frame serial data stream into N parallel data streams, wherein a synchronization code group is included at a preset position in the single-frame serial data stream, N is a natural number, N≥2; acquiring 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; 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.

[0078] In addition, one embodiment of this disclosure also provides a non-transitory computer-readable storage medium storing a computer program thereon. When the computer program is executed by a processor, it implements the steps of the above-described method, including, for example, the following steps: in response to receiving a single-frame serial data stream, converting the single-frame serial data stream into N parallel data streams, wherein a synchronization code group is included at a preset position in the single-frame serial data stream, N is a natural number, and 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; 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.

[0079] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A frame synchronization method, comprising: in response to receiving a single-frame serial data stream, converting the single-frame serial data stream into N parallel data streams, wherein a preset position of the single-frame serial data stream comprises a synchronization code group, N is a natural number, and N≥2; obtaining a current frame synchronization state and a record number of a historical Hamming distance; determining a target parallel data stream from the N parallel data streams; detecting the target parallel data stream for the synchronization code group according to the preset position, and determining a target Hamming distance; updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, a preset distance threshold, the record number, and a preset number threshold; the updating the frame synchronization state according to the current frame synchronization state, the target Hamming distance, the preset distance threshold, the record number, and the preset number threshold comprises: 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 record number by a preset value; in response to determining that the updated record number 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 updated record number is equal to the first preset number threshold, changing the frame synchronization state to an out-of-sync state.

2. The method of claim 1, wherein, the determining the target parallel data stream from the N parallel data streams comprises: detecting whether each parallel data stream corresponds to a work flag; in response to determining that the work flag is not detected, determining that the N parallel data streams are the target parallel data streams.

3. The method of claim 2, wherein, the determining the target parallel data stream from the N parallel data streams according to the current frame synchronization state comprises: in response to determining that the work flag is detected, determining the parallel data stream corresponding to the work flag as the target parallel data stream.

4. The method of claim 1, wherein, the detecting the target parallel data stream for the synchronization code group according to the preset position, and determining the target Hamming distance comprises: determining a target position of the synchronization code group in the parallel data stream according to the preset position and the value of N; detecting the synchronization code group at the target position of the target parallel data stream, and determining the target Hamming distance according to the detected synchronization code group.

5. The method of claim 1, wherein, the updating the frame synchronization state according to the target Hamming distance, the preset distance threshold, the record number, and the preset number threshold comprises: in response to determining that the current frame synchronization state is an out-of-sync state and the target Hamming distance is less than the preset distance threshold, increasing the record number by a preset value; in response to determining that the updated record number is equal to a second preset number threshold corresponding to the out-of-sync state, changing the frame synchronization state to the synchronization state; in response to determining that the updated record number is less than the second preset number threshold, maintaining the frame synchronization state as the out-of-sync state.

6. The method of claim 5, wherein, the method further comprises: in response to determining that the current frame synchronization state is the out-of-sync state, determining a parallel data stream that first detects the synchronization code group as the target parallel data stream, and stopping the detection of the synchronization code group for other parallel data streams. 7.A frame synchronization apparatus, comprising: a conversion unit, configured to convert a single frame serial data stream into N parallel data streams in response to receiving the single frame serial data stream, wherein a preset position of the single frame serial data stream comprises a sync code group, N is a natural number, N≥2; an acquisition unit, configured to acquire a current frame synchronization state and a record number of a historical Hamming distance; a determination unit, configured to determine a target parallel data stream from the N parallel data streams; a calculation unit, configured to perform sync code group detection on the target parallel data stream according to the preset position, and determine a target Hamming distance; a synchronization unit, configured to update the frame synchronization state according to the current frame synchronization state, the target Hamming distance, a preset distance threshold, the record number and a preset number threshold; the synchronization unit is further configured to: increase the record number by a preset value 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; maintain the frame synchronization state as the synchronization state in response to determining that the updated record number is less than a first preset number threshold corresponding to the synchronization state; change the frame synchronization state to an out-of-sync state in response to determining that the updated record number is equal to the first preset number threshold.

8. An electronic device comprising a memory, a processor, a bus, and a computer program stored on the memory and executable on the processor, wherein, the processor executes the computer program to implement the frame synchronization method in any one of claims 1 to 6. 9.A non-transitory computer-readable storage medium having stored thereon a computer program, characterized in that, the computer program is executed by the processor to implement the frame synchronization method in any one of claims 1 to 6.

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