[go: up one dir, main page]

CN112187397A - Universal multichannel data synchronization method and device - Google Patents

Universal multichannel data synchronization method and device Download PDF

Info

Publication number
CN112187397A
CN112187397A CN202010953973.2A CN202010953973A CN112187397A CN 112187397 A CN112187397 A CN 112187397A CN 202010953973 A CN202010953973 A CN 202010953973A CN 112187397 A CN112187397 A CN 112187397A
Authority
CN
China
Prior art keywords
data
channel
frame header
frame
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010953973.2A
Other languages
Chinese (zh)
Other versions
CN112187397B (en
Inventor
许雷
魏明
彭宽
戴莹春
桂可
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fiberhome Telecommunication Technologies Co Ltd
Wuhan Fisilink Microelectronics Technology Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies Co Ltd
Wuhan Fisilink Microelectronics Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fiberhome Telecommunication Technologies Co Ltd, Wuhan Fisilink Microelectronics Technology Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN202010953973.2A priority Critical patent/CN112187397B/en
Publication of CN112187397A publication Critical patent/CN112187397A/en
Application granted granted Critical
Publication of CN112187397B publication Critical patent/CN112187397B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]
    • H04J3/1658Optical Transport Network [OTN] carrying packets or ATM cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

The invention discloses a universal multichannel data synchronization method and a device, relating to the technical field of optical communication.A control circuit is arranged beside a receiving end, the positions of all frame headers of input data which possibly appear are compared with a frame header characteristic code pattern through the control circuit to obtain a code pattern comparison identifier, and according to the code pattern comparison identifier and a channel mask corresponding to the channel data, logical operation is carried out to obtain a frame header position indication and update a frame header sliding rule; and performing data selection on the integrated data at the receiving end according to the updated frame header sliding rule. The control circuit and the receiving end are separately processed in parallel, so that the time delay is reduced. Meanwhile, the same set of data channel and control circuit are time division multiplexed, so that multi-channel serial processing is realized, and chip resources are effectively saved.

Description

Universal multichannel data synchronization method and device
Technical Field
The invention relates to the technical field of optical communication, in particular to a universal multichannel data synchronization method and a universal multichannel data synchronization device.
Background
Telecommunication operators have strong requirements for realizing 5G business in 2020, and in order to meet the 5G requirements, communication standards such as Flexe (Flexible Ethernet) and Flexo (Flexible Optical Transport Network) are defined in sequence by international communication standards organizations such as the International Telecommunications Union and the like. In these communication protocols, a specific frame structure is defined, and a specific code pattern is adopted to realize data frame boundary positioning and data synchronization.
Meanwhile, with the increase of communication services, the 5G bearer network chip has strict requirements on bandwidth, power consumption, capacity and the like, the number of channels (clients) is multiplied, and in the conventional technology, a parallel processing mode is adopted at a receiving end to synchronize data from different channels. However, under the condition that the number of channels of the 5G bearing network chip is large, the method can greatly consume logic resources, increase chip power consumption, increase chip cost and reduce system competitiveness. In addition, the existing data synchronization systems such as FlexE, FlexO, PCS (Physical Coding Sublayer) layer 01 header synchronization and the like adopt different synchronization methods, which increases the risk of slice casting.
Disclosure of Invention
Aiming at the defects in the prior art, the invention aims to provide a universal multichannel data synchronization method and a universal multichannel data synchronization device, which can reduce the consumption of logic resources, the power consumption of a chip and the cost of the chip.
In order to achieve the above purposes, the technical scheme adopted by the invention is as follows: a general multi-channel data synchronization method comprises the following steps:
a control circuit is arranged beside a receiving end, and a frame header sliding rule, a mask rule and a data frame length suitable for each channel data are set;
the control circuit compares the possible positions of all frame headers of the input data with the characteristic code patterns of the frame headers to obtain code pattern comparison identifiers; caching the current code pattern comparison identifier, and integrating the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier; taking a channel mask corresponding to the channel data as a template, performing logic operation on the integrated code pattern comparison identifier according to bit sliding to obtain a frame header position indication, and updating a frame header sliding rule of the channel data;
integrating front and rear beat data from the same channel at a receiving end, and performing data selection on the integrated data according to a frame header sliding rule of the channel data to enable a frame header position to be positioned at the lowest position of a data frame;
and the control circuit rechecks the frame header feature code at the next expected position of the data after data selection.
On the basis of the technical scheme, the control circuit takes the channel mask corresponding to the channel data as a template, and performs logic operation on the integrated code pattern comparison identifier according to bit sliding to obtain a frame header position indication, and the method specifically comprises the following steps:
and taking a channel mask corresponding to the channel data as a template, matching the integrated code pattern identifier according to bit sliding, comparing the channel mask with the code pattern of a certain position, and determining that the position is the frame header position when all bit results are 1.
On the basis of the technical scheme, the control circuit integrates the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier, and the method specifically comprises the following steps:
and merging the current code pattern comparison identifier with the code pattern comparison identifier of the previous beat of data from the same channel, wherein the code pattern comparison identifier of the previous beat of data is in a high order.
On the basis of the technical scheme, the method integrates front and back two-beat data from the same channel at a receiving end, and performs data selection on the integrated data according to a frame header sliding rule of the channel data to enable a frame header position to be located at the lowest position of a data frame, and specifically comprises the following steps:
integrating front and back beat data from the same channel at a receiving end;
setting the data bit width of one clock cycle as N66 b, creating N data selection units;
inputting 66b blocks from 0 th to N-1 th bits to a first data selection unit, inputting 66b blocks from 1 st to N th bits to a second data selection unit, inputting 66b blocks from 2 nd to N +1 th bits to a third data selection unit, and so on, and inputting 66b blocks from N-1 th to 2N-2 th bits to a last data selection unit;
and obtaining the 66b block with the frame head position at the X bit according to the frame head sliding rule of the channel data, outputting the 66b block at the X bit of each data selection unit, and combining the output 66b blocks into a new data frame according to the sequencing arrangement of the data selection units.
On the basis of the technical scheme, the method further comprises the following steps: and performing data selection on the integrated data at a receiving end according to a frame header sliding rule of the channel data, so that bubbles are added to the frame header or the frame tail after the frame header is positioned at the lowest position of the data frame.
The invention also provides a general multichannel data synchronization device, comprising: the control circuit is arranged beside the receiving end;
the control circuit comprises a setting module, a characteristic code type comparison module, an identifier operation module and a frame header rechecking module:
the setting module is used for: setting frame header sliding rules, mask rules and data frame lengths suitable for each channel data;
the characteristic code pattern comparison module is used for: comparing the possible positions of all frame headers of the input data with the characteristic code patterns of the frame headers to obtain code pattern comparison identifiers; caching the current code pattern comparison identifier, and integrating the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier;
the identifier operation module is used for: taking a channel mask corresponding to the channel data as a template, performing logic operation on the integrated code pattern comparison identifier according to bit sliding to obtain a frame header position indication, and updating a frame header sliding rule of the channel data;
the frame header reinspection module is used for: performing data selection on the integrated data at a receiving end according to a frame header sliding rule of the channel data, and after the frame header position is located at the lowest position of the data frame, re-detecting a frame header feature code at a next data expected position after data selection;
the receiving end comprises a data integration module and a data selection module:
the data integration module is used for: integrating the front and back beat data from the same channel;
the data selection module is configured to: and performing data selection on the integrated data according to the frame header sliding rule of the channel data to enable the position of the frame header to be positioned at the lowest position of the data frame.
On the basis of the above technical solution, the identifier operation module is specifically configured to:
and taking a channel mask corresponding to the channel data as a template, matching the integrated code pattern identifier according to bit sliding, comparing the channel mask with the code pattern of a certain position, and determining that the position is the frame header position when all bit results are 1.
On the basis of the above technical solution, the feature code pattern comparison module is specifically configured to:
and merging the current code pattern comparison identifier with the code pattern comparison identifier of the previous beat of data from the same channel, wherein the code pattern comparison identifier of the previous beat of data is in a high order.
On the basis of the above technical solution, the data selection module is specifically configured to:
integrating the front and back beat data from the same channel;
setting the data bit width of one clock cycle as N66 b, creating N data selection units;
inputting 66b blocks from 0 th to N-1 th bits to a first data selection unit, inputting 66b blocks from 1 st to N th bits to a second data selection unit, inputting 66b blocks from 2 nd to N +1 th bits to a third data selection unit, and so on, and inputting 66b blocks from N-1 th to 2N-2 th bits to a last data selection unit;
and obtaining the 66b block with the frame head position at the X bit according to the frame head sliding rule of the channel data, outputting the 66b block at the X bit of each data selection unit, and combining the output 66b blocks into a new data frame according to the sequencing arrangement of the data selection units.
On the basis of the above technical solution, the receiving end further includes a bubble adding module, which is configured to: and performing data selection on the integrated data by the data selection module according to a frame header sliding rule of the channel data to enable the position of the frame header to be positioned at the lowest position of the data frame, and adding bubbles to the frame header or the frame tail.
Compared with the prior art, the invention has the advantages that:
the invention sets a control circuit beside the receiving end, compares the possible positions of all frame headers of the input data with the characteristic code pattern of the frame headers through the control circuit to obtain a code pattern comparison identifier, and performs logic operation according to the code pattern comparison identifier and a channel mask corresponding to the channel data to obtain frame header position indication and update the frame header sliding rule; and performing data selection on the integrated data at the receiving end according to the updated frame header sliding rule. The control circuit and the receiving end are separately processed in parallel, so that the time delay is reduced. Meanwhile, data synchronization of serial data from multiple channels is realized by arranging a control circuit beside the receiving end, and the serial data from the multiple channels share one set of receiving end and control circuit, so that chip resources are effectively saved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
Fig. 1 is a schematic flowchart of a multichannel data synchronization method according to embodiment 1 of the present invention;
FIG. 2 is a schematic flow chart illustrating data selection for integrated data according to an embodiment of the present invention;
FIG. 3 is a flow chart of a multi-channel data synchronization method according to embodiment 2 of the present invention;
fig. 4 is a schematic structural diagram of a general multi-channel data synchronization apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some embodiments, but not all embodiments, of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.
The embodiment of the invention provides a universal multichannel data synchronization method, which comprises the following steps:
a control circuit is arranged beside a receiving end, and a frame header sliding rule, a mask rule and a data frame length suitable for each channel data are set;
the control circuit compares the possible positions of all frame headers of the input data with the characteristic code patterns of the frame headers to obtain code pattern comparison identifiers; caching the current code pattern comparison identifier, and integrating the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier; taking a channel mask corresponding to the channel data as a template, performing logic operation on the integrated code pattern comparison identifier according to bit sliding to obtain a frame header position indication, and updating a frame header sliding rule of the channel data;
integrating front and rear beat data from the same channel at a receiving end, and performing data selection on the integrated data according to a frame header sliding rule of the channel data to enable a frame header position to be positioned at the lowest position of a data frame;
and the control circuit rechecks the frame header feature code at the next expected position of the data after data selection.
The embodiment of the invention is provided with a control circuit beside a receiving end, compares the possible positions of all frame headers of input data with the characteristic code patterns of the frame headers through the control circuit to obtain code pattern comparison identifiers, and performs logic operation according to the code pattern comparison identifiers and the set channel masks to obtain frame header position indication and update the frame header sliding rules; and performing data selection on the integrated data in the receiving end according to the updated frame header sliding rule. The control circuit and the receiving end are separately processed in parallel, so that the time delay is reduced. Meanwhile, the generalized multi-channel serial data synchronization is realized according to the channel identification, and multiple channels share one set of receiving end and control circuit, so that the chip resources are effectively saved.
Further, in the conventional technology, a method for framing data of different channel data includes: presetting a certain position as the position of the frame header, starting a data frame period from the position, rechecking the frame header feature code at the next position, if the verification is passed, the position is the position of the frame header, if the verification is not passed, shifting a bit as the position of the frame header, and rechecking for one data frame period until the position of the frame header is found, so that the frame period is fixed. The embodiment of the invention calculates the code type comparison identifiers corresponding to the positions of all the frame headers which are possibly generated in parallel, and performs logical operation through the code type comparison identifiers to obtain the frame header position indication, and then performs frame header characteristic code rechecking, thereby shortening the time consumption of data framing and effectively accelerating multi-channel data synchronization.
Preferably, the initial sliding rule is a position of the frame header in the current data, and the initialization value is 0.
As a preferred embodiment, the control circuit performs a logical operation on the integrated code pattern comparison identifier according to bit sliding by using a channel mask corresponding to the channel data as a template to obtain a frame header position indication, and specifically includes the following steps:
and taking a channel mask corresponding to the channel data as a template, matching the integrated code pattern identifier according to bit sliding, comparing the channel mask with the code pattern of a certain position, and determining that the position is the frame header position when all bit results are 1.
As a preferred embodiment, the control circuit integrates the current pattern comparison identifier and the pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier, and specifically includes the following steps:
and merging the current code pattern comparison identifier with the code pattern comparison identifier of the previous beat of data from the same channel, wherein the code pattern comparison identifier of the previous beat of data is in a high order.
As a preferred embodiment, integrating two previous and next beat data from the same channel at a receiving end, and performing data selection on the integrated data according to a frame header sliding rule of the channel data to make a frame header position located at a lowest position of a data frame specifically includes the following steps:
integrating front and back beat data from the same channel at a receiving end;
setting the data bit width of one clock cycle as N66 b, creating N data selection units;
inputting 66b blocks from 0 th to N-1 th bits to a first data selection unit, inputting 66b blocks from 1 st to N th bits to a second data selection unit, inputting 66b blocks from 2 nd to N +1 th bits to a third data selection unit, and so on, and inputting 66b blocks from N-1 th to 2N-2 th bits to a last data selection unit;
and obtaining the 66b block with the frame head position at the X bit according to the frame head sliding rule of the channel data, outputting the 66b block at the X bit of each data selection unit, and combining the output 66b blocks into a new data frame according to the sequencing arrangement of the data selection units.
Preferably, the method further comprises the steps of: and performing data selection on the integrated data at a receiving end according to a frame header sliding rule of the channel data, so that bubbles are added to the frame header or the frame tail after the frame header is positioned at the lowest position of the data frame.
Referring to fig. 1, embodiment 1 of the present invention is described by taking the FlexE aware mode serial framing as an example. The Flexe Group in this example 1 has two Flexe instances, and each instance has no unavailable slot. It should be noted that the embodiment of the present invention is simultaneously applicable to data synchronization systems such as a FlexE Unaware mode, a FlexE terminal mode, a FlexO, and 01 header synchronization.
The specific transmission steps are as follows:
step 100: the chip is powered on, information such as a frame header sliding rule and a mask rule applicable to data of each client channel, a FlexeAware frame length of each channel and the like is initialized by software or hardware, wherein the frame header sliding rule configured in the channel where the embodiment is located is 0, the mask rule is configured into 2 Flexe instances, and the FlexeAware frame length is configured into 327680 66bits code blocks. Since the mask rule is set to 2 FlexE instances, the data bit width of one clock cycle is 8 66bits blocks, and the channel mask applicable to the channel data is configured to 0011_1111, wherein the irrelevant fields are masked by 1.
Step 101: the control circuit compares the data of the possible positions of all the frame headers with the characteristic code patterns of the frame headers at the receiving end to obtain code pattern comparison identifiers, and caches the code pattern comparison identifiers of the currently input data according to the client channel identification. Meanwhile, integrating the current code pattern comparison identifier with the previous code pattern comparison identifier of the data from the same channel; for example, after the input code pattern is compared with the feature code in a certain clock cycle, the 66bits code blocks of 1 st, 4 th and 5 th are matched with the frame header feature code pattern, and the comparison identifier is: 1000_1100, where 1 denotes a matching code block and 0 denotes a non-matching code block. Assuming that the alignment identifier of the next beat of data is all 0, the alignment identifiers of the two previous and next beats of data are integrated to be 1000_1100_0000_ 0000.
Step 102: the control circuit takes the channel mask configured in the step 100 as a template, matches the integrated code pattern identifier according to bit sliding, determines a certain position as a frame header position when the mask is successfully matched with the code pattern comparison identifier of the position, and updates a frame header sliding rule according to the position. If the mask matches successfully with the plurality of positions of the current pattern comparison identifier, the first position is identified as the frame header position. After finding the frame head position, the search for the frame head is not continued.
The channel mask configured in step 100 is used to perform a bitwise or operation on the integrated alignment indicator according to bit sliding from left to right. The bit-wise OR operation of the 8bits at the leftmost end (position 0) with the mask is as follows:
position No. 0: 1000_1100|0011_1111 → 1011_1111
Position No. 1: 0001_1000|0011_1111 → 0011_1111
Position No. 2: 0011_0000|0011_1111 → 0011_1111
Position No. 3: 0110_0000|0011_1111 → 0111_1111
Position No. 4: 1100_0000|0011_1111 → 1111_1111
Position No. 5: 1000_0000|0011_1111 → 1011_1111
Obviously, the result after the position 0 operation is not all bits are 1, and the comparison is continued by sliding 1bit to the right. After several comparisons, only 8bits data extracted from the four positions are operated with the channel mask, and all bit results are 1. Therefore, the 4 th position is identified as the frame header position.
Step 103: integrating front and back two-beat data from the same channel in a receiving end, and then performing data selection on the integrated data according to a frame header sliding rule corresponding to the client channel to enable the frame header position to be located at the lowest position of a data frame, as shown in fig. 2, specifically comprising the following steps:
integrating front and back beat data from the same channel at a receiving end;
if the data bit width of one clock cycle is 8 and 66b, 8 data selection units are created;
inputting a 0 th to 7 th bit 66b block to a first data selection unit, inputting a1 th to 8 th bit 66b block to a second data selection unit, inputting a2 th to 9 th bit 66b block to a third data selection unit, and so on, and inputting a 7 th to 14 th bit 66b block to a last data selection unit;
and obtaining a 66b block with the frame head position at the 4 th bit according to the frame head sliding rule of the channel data, outputting the 66b block at the 4 th bit of each data selection unit, and combining the output 66b blocks into a new data frame according to the sequencing arrangement of the data selection units.
Step 104: and adding bubbles at proper positions such as a frame head or a frame tail in a receiving end, so that overhead is at the top position of the data of the current beat, wherein the step is an optional step.
Step 105: the control circuit rechecks the frame header feature code at the expected position (i.e. the frame header position) of the data after data selection. When the frame header feature codes of a plurality of continuous expected positions are matched with the mask, the frame header is considered to be found. When the signature code of the desired location does not match the mask, the circuit state returns to step 101 to be searched again.
It should be noted that steps 101 and 102 are parallel to steps 103 and 104. Step 103 and step 104 are reception-side data stream processing steps. Step 101, step 102, and step 105 are control circuit steps, and the implementation steps of the control circuit are put in a receiving end bypass, which does not affect data delay.
The embodiment of the invention is not only suitable for the data synchronization of Flexe, but also suitable for the data synchronization of multi-channel OTUC (optical channel transmission unit). Referring to fig. 3, OTUC data synchronization is exemplified in embodiment 2.
Step 200: and powering on the chip, and initializing information such as a frame header sliding rule applicable to data of each channel, a mask rule of each channel, a frame length of each channel OTUC and the like by software or hardware, wherein the frame header sliding rule configured for the channel where the embodiment is located is 3. The masking rule is configured for a six byte full detection mode of OA1OA 2. The OTUC frame length is configured to 15296 bytes;
the framing of the OTUC is searched by taking bytes as a unit, the frame header feature code of the OTUC is 6 bytes, and the value of the frame header feature code is F6F6F 6-282828; specifically, if a 6 byte full search is performed then the mask is configured to 000000; if only the third and fourth bytes need to be retrieved, the mask is configured to 110011; the setting is specifically carried out according to the requirements of users.
Step 201: the control circuit compares the data of the possible positions of all the frame headers with the characteristic code patterns of the frame headers at the receiving end to obtain code pattern comparison identifiers, and caches the code pattern comparison identifiers of the currently input data according to the channel identifiers. Meanwhile, integrating the current code pattern comparison identifier with the previous code pattern comparison identifier of the data from the same channel;
step 202: the control circuit takes the channel mask as a template, matches the integrated code pattern identifier according to bit sliding, and determines a certain position as a frame header position when the mask is successfully matched with the code pattern comparison identifier of the position, and updates a frame header sliding rule. If the mask matches successfully with the plurality of positions of the current pattern comparison identifier, the first position is identified as the frame header position. After finding the frame head position, the search for the frame head is not continued.
Step 203: integrating front and rear beat data from the same channel in a receiving end, and then selecting the integrated data according to a frame header sliding rule corresponding to the channel data to enable the position of a frame header to be positioned at the lowest position of a data frame;
step 204: and adding bubbles at proper positions such as a frame head or a frame tail in a receiving end, so that overhead is at the top position of the data of the current beat, wherein the step is an optional step.
Step 205: and the control circuit rechecks the frame header feature codes at the expected data positions after data selection. When the signatures of several consecutive desired locations match the mask, the frame header is considered to be found. When the signature code for the desired location does not match the mask, then the circuit state returns to step 201 to re-search.
It should be noted that step 201, step 202, step 203, and step 204 are parallel steps. Step 203 and step 204 are reception-side data stream processing steps. Step 201, step 202 and step 205 are control circuit steps, and the implementation steps of the control circuit are put on a receiving end for bypass, so that data delay is not influenced.
In the traditional technology, different channel data are synchronized by adopting a parallel processing mode. However, under the condition that the number of channels of the 5G bearing network chip is large, the method can greatly consume logic resources, increase chip power consumption, increase chip cost and reduce system competitiveness. In addition, the existing data synchronization systems such as FlexE, FlexO, PCS layer 01 header synchronization and the like adopt different synchronization methods, which increases the risk of slice casting.
The embodiment of the invention can realize synchronization of serial data streams from multiple channels in systems such as FlexE, FlexO, OTN, PCS layer 01 header synchronization and the like, thereby reducing the consumption of logic resources, reducing the power consumption of chips, reducing the cost and the risk of chip throwing and enhancing the competitiveness of system equipment.
Referring to fig. 4, an embodiment of the present invention further provides a general multi-channel data synchronization apparatus, including: the control circuit is arranged beside the receiving end;
the control circuit comprises a setting module, a characteristic code type comparison module, an identifier operation module and a frame header rechecking module:
the setting module is used for: setting frame header sliding rules, mask rules and data frame lengths suitable for each channel data;
the characteristic code pattern comparison module is used for: comparing the possible positions of all frame headers of the input data with the characteristic code patterns of the frame headers to obtain code pattern comparison identifiers; caching the current code pattern comparison identifier, and integrating the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat of data from the same channel according to the channel identifier;
the identifier operation module is used for: taking a channel mask corresponding to the channel data as a template, performing logic operation on the integrated code pattern comparison identifier according to bit sliding to obtain a frame header position indication, and updating a frame header sliding rule of the channel data;
the frame header reinspection module is used for: performing data selection on the integrated data at a receiving end according to a frame header sliding rule of the channel data, and after the frame header position is located at the lowest position of the data frame, re-detecting a frame header feature code at a next data expected position after data selection;
the receiving end comprises a data integration module and a data selection module:
the data integration module is used for: integrating the front and back beat data from the same channel;
the data selection module is configured to: and performing data selection on the integrated data according to the frame header sliding rule of the channel data to enable the position of the frame header to be positioned at the lowest position of the data frame.
Preferably, the signature pattern comparison module is specifically configured to:
and merging the current code pattern comparison identifier with the code pattern comparison identifier of the previous beat of data from the same channel, wherein the code pattern comparison identifier of the previous beat of data is in a high order.
As a preferred embodiment, the identifier operation module performs a logical operation on the integrated code pattern comparison identifier according to bit sliding by using a channel mask corresponding to the channel data as a template to obtain a frame header position indication, and specifically includes the following steps:
and taking a channel mask corresponding to the channel data as a template, matching the integrated code pattern identifier according to bit sliding, comparing the channel mask with the code pattern of a certain position, and determining that the position is the frame header position when all bit results are 1.
As a preferred embodiment, the data selection module is specifically configured to:
integrating the front and back beat data from the same channel;
setting the data bit width of one clock cycle as N66 b, creating N data selection units;
inputting 66b blocks from 0 th to N-1 th bits to a first data selection unit, inputting 66b blocks from 1 st to N th bits to a second data selection unit, inputting 66b blocks from 2 nd to N +1 th bits to a third data selection unit, and so on, and inputting 66b blocks from N-1 th to 2N-2 th bits to a last data selection unit;
and obtaining the 66b block with the frame head position at the X bit according to the frame head sliding rule of the channel data, outputting the 66b block at the X bit of each data selection unit, and combining the output 66b blocks into a new data frame according to the sequencing arrangement of the data selection units.
Preferably, the receiving end further comprises a bubble adding module, configured to: and performing data selection on the integrated data by the data selection module according to a frame header sliding rule of the channel data to enable the position of the frame header to be positioned at the lowest position of the data frame, and adding bubbles to the frame header or the frame tail.
Preferably, the initial sliding rule is a position of the frame header in the current data, and the initialization value is 0.
The embodiment of the invention is provided with a control circuit beside a receiving end, compares the possible positions of all frame headers of input data with the characteristic code patterns of the frame headers through the control circuit to obtain code pattern comparison identifiers, and performs logic operation according to the code pattern comparison identifiers and the set channel masks to obtain frame header position indication and update the frame header sliding rules; and performing data selection on the integrated data in the receiving end according to the updated frame header sliding rule. The control circuit and the receiving end are separately processed in parallel, so that the time delay is reduced. Meanwhile, the generalized multi-channel serial data synchronization is realized according to the channel identification, and multiple channels share one set of receiving end and control circuit, so that the chip resources are effectively saved; the method has strong expansibility, and can be widely applied to 5G bearing networks such as FlexE, FlexO, ODUCn and the like. Meanwhile, bubble filling is added at the head or the tail of the line, so that the overhead is in the specific position of the corresponding data beat under the condition that the frame length is not integral multiple of the data bit width, and the subsequent processing is facilitated.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1.一种通用的多通道数据同步方法,其特征在于,包括以下步骤:1. a general multi-channel data synchronization method, is characterized in that, comprises the following steps: 在接收端旁设置控制电路,设置各通道数据适用的帧头滑动规则、掩码规则以及数据帧帧长;Set up a control circuit next to the receiving end, and set the frame header sliding rules, mask rules and data frame lengths applicable to the data of each channel; 控制电路将输入数据所有帧头可能出现的位置与帧头特征码型比对,得到码型比对标识符;缓存当前的码型比对标识符,根据通道标识整合当前的码型比对标识符与来自于同一的通道的前一拍数据的码型比对标识符;以该通道数据对应的通道掩码为模板,在整合后的码型比对标识符上根据bit滑动进行逻辑运算,得到帧头位置指示,更新该通道数据的帧头滑动规则;The control circuit compares the possible positions of all frame headers of the input data with the frame header feature code pattern to obtain the code pattern comparison identifier; caches the current code pattern comparison identifier, and integrates the current code pattern comparison identifier according to the channel identifier. symbol and the pattern comparison identifier of the previous beat data from the same channel; take the channel mask corresponding to the channel data as a template, perform logical operations on the integrated pattern comparison identifier according to bit sliding, Obtain the frame header position indication, and update the frame header sliding rule of the channel data; 在接收端将来自于同一的通道的前后两拍数据进行整合,根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位;At the receiving end, the data from the two shots before and after the same channel are integrated, and the integrated data is selected according to the frame header sliding rule of the channel data, so that the frame header position is at the lowest position of the data frame; 控制电路在数据选择后的数据下一个期望位置复检帧头特征码。The control circuit rechecks the frame header signature at the next expected position of the data after the data selection. 2.如权利要求1所述的方法,其特征在于,控制电路以该通道数据对应的通道掩码为模板,在整合后的码型比对标识符上根据bit滑动进行逻辑运算,得到帧头位置指示,具体包括以下步骤:2. method as claimed in claim 1 is characterized in that, control circuit takes the channel mask corresponding to this channel data as template, carries out logical operation according to bit sliding on the code pattern comparison identifier after integration, obtains frame header Location indication, including the following steps: 以该通道数据对应的通道掩码为模板,在整合后的码型标识符上按照bit滑动进行匹配,将通道掩码与某一位置的码型比对标识符所有bit位掩码均按位或运算,当所有bit位结果全是1时,即认定该位置为帧头位置。Using the channel mask corresponding to the channel data as a template, the integrated pattern identifier is matched by bit sliding, and the channel mask is compared with the pattern identifier at a certain position. All bit masks are bitwise Or operation, when all bit results are all 1, the position is considered as the frame header position. 3.如权利要求1所述的方法,其特征在于,控制电路根据通道标识整合当前的码型比对标识符与来自于同一的通道的前一拍数据的码型比对标识符,具体包括以下步骤:3. The method according to claim 1, wherein the control circuit integrates the current code pattern comparison identifier and the code pattern comparison identifier of the previous beat data from the same channel according to the channel identification, specifically comprising: The following steps: 将当前的码型比对标识符与来自于同一的通道的前一拍数据的码型比对标识符合并,且前一拍数据的码型比对标识符在高位。The current pattern comparison identifier is combined with the pattern comparison identifier of the previous beat data from the same channel, and the pattern comparison identifier of the previous beat data is in the high order. 4.如权利要求1所述的方法,其特征在于,在接收端将来自于同一的通道的前后两拍数据进行整合,根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位,具体包括以下步骤:4. method as claimed in claim 1 is characterized in that, at the receiving end, the data from the front and back of the same passage is integrated, and the data after the integration is carried out data selection according to the frame header sliding rule of this passage data, Make the frame header position at the lowest position of the data frame, including the following steps: 在接收端将来自于同一的通道的前后两拍数据进行整合;At the receiving end, the data from the two before and after the same channel are integrated; 设一个时钟周期的数据位宽为N个66b,则创建N个数据选择单元;Suppose the data bit width of one clock cycle is N 66b, then create N data selection units; 向第一个数据选择单元输入第0至N-1位66b块,向第二个数据选择单元的输入1至N位66b块,向第三个数据选择单元的输入2至N+1位66b块,依次类推,向最后一个数据选择单元的输入第N-1至2N-2位66b块;Input 0 to N-1 bit 66b block to the first data selection unit, input 1 to N bit 66b block to the second data selection unit, input 2 to N+1 bit 66b to the third data selection unit block, and so on, to the input of the last data selection unit N-1 to 2N-2 bit 66b block; 根据该通道数据的帧头滑动规则获得帧头位置在第X位66b块,则将每个数据选择单元的第X位的66b块输出,并将输出的66b块按照数据选择单元的排序排列组合成新的数据帧。According to the frame header sliding rule of the channel data, the frame header position is in the Xth 66b block, then the Xth 66b block of each data selection unit is output, and the output 66b blocks are arranged and combined according to the order of the data selection unit into a new data frame. 5.如权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:在接收端根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位之后,在帧头或者帧尾添加气泡。5. method as claimed in claim 1 is characterized in that, described method also comprises the following steps: at the receiving end according to the frame header sliding rule of this channel data, data selection is carried out to the data after integration, and the frame header position is located in the data After the lowest bit of the frame, add bubbles at the beginning or end of the frame. 6.一种通用的多通道数据同步装置,其特征在于,包括:控制电路和接收端,控制电路设于接收端旁侧;6. A general multi-channel data synchronization device, characterized in that it comprises: a control circuit and a receiving end, and the control circuit is arranged on the side of the receiving end; 所述控制电路包括设置模块、特征码型比对模块、标识符运算模块和帧头复检模块:The control circuit includes a setting module, a feature code type comparison module, an identifier operation module and a frame header rechecking module: 所述设置模块用于:设置各通道数据适用的帧头滑动规则、掩码规则以及数据帧帧长;The setting module is used for: setting frame header sliding rules, mask rules and data frame lengths applicable to each channel data; 所述特征码型比对模块用于:将输入数据所有帧头可能出现的位置与帧头特征码型比对,得到码型比对标识符;缓存当前的码型比对标识符,根据通道标识整合当前的码型比对标识符与来自于同一的通道的前一拍数据的码型比对标识符;The feature code pattern comparison module is used to: compare the possible positions of all frame headers of the input data with the frame header feature code pattern to obtain a code pattern comparison identifier; cache the current code pattern comparison identifier, according to the channel. Identify and integrate the current pattern comparison identifier with the pattern comparison identifier of the previous beat data from the same channel; 所述标识符运算模块用于:以该通道数据对应的通道掩码为模板,在整合后的码型比对标识符上根据bit滑动进行逻辑运算,得到帧头位置指示,更新该通道数据的帧头滑动规则;The identifier operation module is used to: take the channel mask corresponding to the channel data as a template, perform logical operations on the integrated code pattern comparison identifier according to bit sliding, obtain the frame header position indication, and update the channel data. Frame header sliding rules; 所述帧头复检模块用于:在接收端根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位后,在数据选择后的下一个数据期望位置复检帧头特征码;The frame header rechecking module is used for: at the receiving end, data selection is performed on the integrated data according to the frame header sliding rule of the channel data, so that the frame header position is located at the lowest position of the data frame, and the next data after the data selection is selected. Expected position recheck frame header feature code; 所述接收端包括数据整合模块和数据选择模块:The receiving end includes a data integration module and a data selection module: 所述数据整合模块用于:将来自于同一的通道的前后两拍数据进行整合;The data integration module is used for: integrating the data from the same channel before and after the two shots; 所述数据选择模块用于:根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位。The data selection module is used for: performing data selection on the integrated data according to the frame header sliding rule of the channel data, so that the position of the frame header is located at the lowest position of the data frame. 7.如权利要求6所述的装置,其特征在于,所述标识符运算模块具体用于:7. The apparatus according to claim 6, wherein the identifier operation module is specifically used for: 以该通道数据对应的通道掩码为模板,在整合后的码型标识符上按照bit滑动进行匹配,将通道掩码与某一位置的码型比对标识符所有bit位掩码均按位或运算,当所有bit位结果全是1时,即认定该位置为帧头位置。Using the channel mask corresponding to the channel data as a template, the integrated pattern identifier is matched by bit sliding, and the channel mask is compared with the pattern identifier at a certain position. All bit masks are bitwise Or operation, when all bit results are all 1, the position is considered as the frame header position. 8.如权利要求6所述的装置,其特征在于,所述特征码型比对模块具体用于:8. The device of claim 6, wherein the feature code pattern comparison module is specifically used for: 将当前的码型比对标识符与来自于同一的通道的前一拍数据的码型比对标识符合并,且前一拍数据的码型比对标识符在高位。The current pattern comparison identifier is combined with the pattern comparison identifier of the previous beat data from the same channel, and the pattern comparison identifier of the previous beat data is in the high order. 9.如权利要求6所述的装置,其特征在于,所述数据选择模块具体用于:9. The apparatus according to claim 6, wherein the data selection module is specifically used for: 将来自于同一的通道的前后两拍数据进行整合;Integrate the front and back data from the same channel; 设一个时钟周期的数据位宽为N个66b,则创建N个数据选择单元;Suppose the data bit width of one clock cycle is N 66b, then create N data selection units; 向第一个数据选择单元输入第0至N-1位66b块,向第二个数据选择单元的输入1至N位66b块,向第三个数据选择单元的输入2至N+1位66b块,依次类推,向最后一个数据选择单元的输入第N-1至2N-2位66b块;Input 0 to N-1 bit 66b block to the first data selection unit, input 1 to N bit 66b block to the second data selection unit, input 2 to N+1 bit 66b to the third data selection unit block, and so on, to the input of the last data selection unit N-1 to 2N-2 bit 66b block; 根据该通道数据的帧头滑动规则获得帧头位置在第X位66b块,则将每个数据选择单元的第X位的66b块输出,并将输出的66b块按照数据选择单元的排序排列组合成新的数据帧。According to the frame header sliding rule of the channel data, the frame header position is in the Xth 66b block, then the Xth 66b block of each data selection unit is output, and the output 66b blocks are arranged and combined according to the order of the data selection unit into a new data frame. 10.如权利要求6所述的装置,其特征在于,所述接收端还包括气泡添加模块,其用于:在数据选择模块根据该通道数据的帧头滑动规则对整合后的数据进行数据选择,使帧头位置位于数据帧最低位之后,在帧头或者帧尾添加气泡。10. The device according to claim 6, wherein the receiving end further comprises a bubble adding module, which is used for: performing data selection on the integrated data in the data selection module according to the frame header sliding rule of the channel data , make the frame header position after the lowest bit of the data frame, and add bubbles at the frame header or frame end.
CN202010953973.2A 2020-09-11 2020-09-11 Universal multichannel data synchronization method and device Active CN112187397B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010953973.2A CN112187397B (en) 2020-09-11 2020-09-11 Universal multichannel data synchronization method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010953973.2A CN112187397B (en) 2020-09-11 2020-09-11 Universal multichannel data synchronization method and device

Publications (2)

Publication Number Publication Date
CN112187397A true CN112187397A (en) 2021-01-05
CN112187397B CN112187397B (en) 2022-04-29

Family

ID=73920630

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010953973.2A Active CN112187397B (en) 2020-09-11 2020-09-11 Universal multichannel data synchronization method and device

Country Status (1)

Country Link
CN (1) CN112187397B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113033133A (en) * 2021-03-17 2021-06-25 烽火通信科技股份有限公司 Logic multiplexing circuit design method and circuit structure

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848242A (en) * 1995-12-01 2006-10-18 数字剧场系统股份有限公司 Multi-channel audio frequency coder
CN102316121A (en) * 2011-10-19 2012-01-11 武汉烽火网络有限责任公司 Filtering matching preprocessing method supporting dynamic extended frame head and device
CN105406937A (en) * 2014-09-12 2016-03-16 中兴通讯股份有限公司 Frame synchronization method and apparatus
CN105680991A (en) * 2016-01-14 2016-06-15 烽火通信科技股份有限公司 Multichannel serialized frame positioning method and device based on ODU (Optical Data Unit) frames in OTN (Optical Transport Network) system
CN106209298A (en) * 2015-04-29 2016-12-07 扬智科技股份有限公司 Peak calculation method and device and frame header detection method using the method
CN110224887A (en) * 2019-06-04 2019-09-10 北京挚友科技有限公司 A kind of method and apparatus of Ethernet Y.1564 test frame automatic identification
WO2020107333A1 (en) * 2018-11-27 2020-06-04 上海航天电子通讯设备研究所 Vde-based multi-passage channel detection processing system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848242A (en) * 1995-12-01 2006-10-18 数字剧场系统股份有限公司 Multi-channel audio frequency coder
CN102316121A (en) * 2011-10-19 2012-01-11 武汉烽火网络有限责任公司 Filtering matching preprocessing method supporting dynamic extended frame head and device
CN105406937A (en) * 2014-09-12 2016-03-16 中兴通讯股份有限公司 Frame synchronization method and apparatus
CN106209298A (en) * 2015-04-29 2016-12-07 扬智科技股份有限公司 Peak calculation method and device and frame header detection method using the method
CN105680991A (en) * 2016-01-14 2016-06-15 烽火通信科技股份有限公司 Multichannel serialized frame positioning method and device based on ODU (Optical Data Unit) frames in OTN (Optical Transport Network) system
WO2020107333A1 (en) * 2018-11-27 2020-06-04 上海航天电子通讯设备研究所 Vde-based multi-passage channel detection processing system
CN110224887A (en) * 2019-06-04 2019-09-10 北京挚友科技有限公司 A kind of method and apparatus of Ethernet Y.1564 test frame automatic identification

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113033133A (en) * 2021-03-17 2021-06-25 烽火通信科技股份有限公司 Logic multiplexing circuit design method and circuit structure

Also Published As

Publication number Publication date
CN112187397B (en) 2022-04-29

Similar Documents

Publication Publication Date Title
US7290196B1 (en) Cyclical redundancy check using nullifiers
JP2732759B2 (en) Frame synchronization control method
US5128945A (en) Packet framing using cyclic redundancy checking
US7519080B2 (en) Fibre channel frame-mode GFP with distributed delimiter
US10797816B1 (en) Method for providing path signal overhead in the 64B/66B character stream of an ITU-T metro transport network
US6775300B2 (en) Clock distribution in a communications network
CN106453028B9 (en) Method and apparatus for transmitting data
US6192498B1 (en) System and method for generating error checking data in a communications system
WO2017005121A1 (en) Method, device and system for sending and receiving code block data stream
CN1520652A (en) Multi-protocol agile framer
US6275508B1 (en) Method of and system for processing datagram headers for high speed computer network interfaces at low clock speeds, utilizing scalable algorithms for performing such network header adaptation (SAPNA)
US20020021720A1 (en) Multiplexed signal transmitter/receiver, communication system, and multiplexing transmission method
CN1473411A (en) How to synchronize data
CN112187397B (en) Universal multichannel data synchronization method and device
KR101275657B1 (en) Transmission of parallel data flows on a parallel bus
CN108235413B (en) Power optimization mechanism for framer by serializing frame alignment processing for multiple lanes
EP1345127B1 (en) A method and apparatus for parsing data streams
US20040078494A1 (en) System and apparatus for implementing devices interfacing higher speed networks using lower speed network components
CN108234074B (en) Power optimization mechanism for framers by selectively disabling frame alignment processing
US20030079118A1 (en) Bit synchronous engine and method
US20040146052A1 (en) Apparatus and method for address filtering in a multi-host network interface
CN112751645A (en) Communication method, device and storage medium
WO2019085879A1 (en) Bit block processing method, and node
EP1396103A2 (en) Compression methods for packetized sonet/sdh payloads
CN100499405C (en) Implementing method of parallel frame locator for optical synchronous digital transmission system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant