Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR RECEIVING DATA COMPRISING SYNCHRONIZATION INFORMATION
Document Type and Number:
WIPO Patent Application WO/2006/029791
Kind Code:
A1
Abstract:
A method for receiving data is provided, wherein said data comprises synchronization information, said method comprising the steps of: obtaining a synchronization for receiving said data on the basis of said synchronization information, generating, during receiving of said data, maintenance information on the basis of said synchronization information indicative of whether said synchronization is being maintained, and continuing, upon loss of said synchronization, said generation of said maintenance information on the basis of said synchronization. A corresponding apparatus for performing this method is also provided. With the method and the apparatus according to the present invention, a deadlock may be avoided.

Inventors:
BALB MARKUS (DE)
KELAVA IVAN (DE)
SCHNEIDERHEINZE BURKART (DE)
Application Number:
PCT/EP2005/009785
Publication Date:
March 23, 2006
Filing Date:
September 12, 2005
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
INFINEON TECHNOLOGIES AG (DE)
BALB MARKUS (DE)
KELAVA IVAN (DE)
SCHNEIDERHEINZE BURKART (DE)
International Classes:
H04J3/06
Foreign References:
US20030190922A12003-10-09
US5822328A1998-10-13
US6134233A2000-10-17
Other References:
IEEE: "IEEE Std 802.3ah Ethernet in the First Mile", IEEE STANDARDS, 7 September 2004 (2004-09-07), pages 360 - 368, XP002357123
Attorney, Agent or Firm:
Banzer, Hans-jörg (Thomas-Wimmer-Ring 15, München, DE)
Download PDF:
Claims:
Claims
1. A method for receiving data, wherein said data comprises: synchronization information (4), said method comprising the steps of: obtaining a synchronization for receiving said data on the basis of said synchronization information (4), generating, during receiving of said data, maintenance information (MissedSync, ExpectedSync) indicative of whether said synchronization is being maintained on the basis of said synchronization information, and continuing, upon loss of said synchronization, said generation of said maintenance information (MissedSync, ExpectedSync) on the basis of said synchronization.
2. The method according to claim 1, wherein said data is a continuous data stream.
3. The method according to claim 1 or 2, wherein said data comprises synchronization units (4) representing said synchronization information, and data units (5) .
4. The method according to claim 3, wherein said generating of said maintenance information (MissedSync, ExpectedSync) comprises checking whether a synchronization unit (4) is received at an expected position within said data, said maintenance information (MissedSync, ExpectedSync) indicating that said synchronization is being maintained if said synchronization unit (4) is received at said expected position and said maintenance information (MissedSync, ExpectedSync) indicating that said synchronization is not being maintained if at said expected position no synchronization unit (4) is received or if a synchronization unit (4) is received not at said expected position.
5. The method according to claim 3 or 4, further comprising the steps of stopping a processing of said data units (5) upon loss of said synchronization.
6. The method according to any one of the preceding claims, wherein said method is carried out in a transmission convergence layer (2) .
7. The method according to any one of the preceding claims, wherein said method is implemented as a modification of the IEEE 802.3ah Standard.
8. An apparatus for receiving data, wherein said data comprises synchronization information (4), said apparatus comprising: synchronization means (7) for obtaining a synchronization for receiving said data on the basis of said synchronization information (4), first generation means (810) for generating, during receiving of said data, maintenance information (MissedSync, ExpectedSync) indicative of whether said synchronization is being maintained on the basis of said synchronization information (4), and second generation means (18) for continuing, upon loss of said synchronization, said generation of said maintenance information (MissedSync, ExpectedSync) on the basis of said synchronization.
9. The apparatus according to claim 8, wherein said apparatus comprises at least one state machine for receiving said data.
10. The apparatus according to claim 9, wherein said synchronization means are implemented as a first state machine and said first generation means and said second generation means are implemented as a second state machine.
11. The apparatus according to any one of claims 8 to 10, wherein said data is a continuous data stream.
12. The apparatus according to any one of claims 8 to 11, wherein said data comprises synchronization units (4) representing said synchronization information, and data units (5) .
13. The apparatus according to claim 12, wherein said generating of said maintenance information (MissedSync, ExpectedSync) comprises checking whether a synchronization unit (4) is received at an expected position within said data, said maintenance information (MissedSync, ExpectedSync) indicating that said synchronization is being maintained if said synchronization unit (4) is received at said expected position and said maintenance information indicating that said synchronization is not being maintained if at said expected position no synchronization unit (4) is received or if a synchronization unit (4) is received not at said expected position.
14. The apparatus according to claim 12 or 13, said apparatus being adapted to stop a processing of said data units (5) upon loss of said synchronization.
15. The apparatus according to any one of claims 8 to 14, wherein said apparatus is implemented to provide at least a part of the functionality of a transmission convergence layer (2) .
16. The apparatus according to any one of claims 8 to 15, wherein said apparatus is implemented on the basis of the IEEE 802.3ah Standard. 17.
17. A method for processing data, comprising the steps of: carrying out a synchronization related to said data for processing said data, and maintaining, upon loss of said synchronization, information regarding said synchronization at least until a new synchronization is obtained.
18. An apparatus for processing data, said apparatus comprising synchronization means for carrying out a synchronization related to said data for processing said data, and maintaining means for maintaining, upon loss of said synchronization, information regarding said synchronization at least until a new synchronization is obtained.
Description:
Description

METHOD AND APPARATUS FOR RECEIVING DATA COMPRISING SYNCHRONIZATION INFORMATION

The present invention relates to a method and an apparatus for receiving data comprising synchronization information, in particular data consisting of a continuous stream comprising data units and synchronization units. The invention is in particular applicable to data transmission systems performing a conversion from packet-based data into a constant or continuous data stream in transmit direction and vice versa in receive direction, as described in the IEEE 802.3ah Standard of 2004.

Such a data transmission system is schematically shown in Fig. 1. Here, packet-based data a is transmitted from a packet-based data handling system 1 like an Ethernet-based system to a transmission convergence (TC) layer 2. This TC- layer may be a TC-layer as defined in the above-referenced IEEE 802.3ah Standard. In the TC-layer, the packet-based data a is converted into a continuous data stream b and further transmitted to a continuous stream data handling system 3. Continuous stream data handling system 3 may comprise a copper line over which said continuous data stream b may be sent according to an xDSL (Digital Subscriber Line) standard and corresponding means for encoding/decoding the data stream for transmission over the copper line, corresponding to the PMA/PMD-layer according to the IEEE standard (Physical Medium Attachment /Physical Medium Dependent) . In the TC layer 2, synchronization information as described later with reference to Fig. 2 is inserted into continuous data stream b. On the other hand, a continuous data stream c is received by the TC-layer 2 from the continuous stream data handling system 3 and converted into packet-based data d to be forwarded to the packet-based data handling system 1. Like the continuous data stream b, the continuous data stream c contains synchronization information which is used by the TC- layer 2 for synchronization purposes and which is extracted when forming the packet-based data d. The present invention focuses in particular on this synchronization of the continuous data stream c received by the TC-layer 2. It should be noted that Fig. 1 only shows those parts of the transmission system which are relevant to the present invention. As indicated with dashed lines in Fig. 1, further components may be present, in particular, a further transmission system may be connected to the continuous stream data handling system 3 sending the continuous data stream c and receiving the continuous data stream b. Moreover, physical components like line drivers, encoders etc. which are well-known in the art and which do not contribute to the understanding of the present invention are not described in this specification. As a matter of course, those elements will be present in transmission systems if necessary. In Fig. 2, an example for the format of the continuous data stream b or c is shown. The data stream shown in Fig. 2 comprises so-called "codewords", whereby in Fig. 2 a first codeword is shown completely together with the beginning of a second codeword. Each codeword starts with a synchronization unit 4, followed by a predetermined number of data units 5. In the above-referenced IEEE 802.3ah Standard, both the synchronization units 4 an the data units 5 are octets (8 Bit values) , the synchronization units 4 having either the hexadecimal value of OF or FO, and the data units 5 having either values representing payload data, idle data or information designating e.g. a start or an end of a transmitted frame. According to the above-referenced IEEE 802.3ah Standard in the transmission convergence layer 2 of Fig. 1 two state machines are used for receiving continuous data stream c, namely a first state machine for obtaining a synchronization and a second state machine for the actual receiving of data. The first state machine defined in the above-referenced standard is schematically depicted in Fig. 3. After start 6, the first state machine is set to a state 7 named "LOOKING" in which state a synchronization is to be obtained. In this state, a variable TC_synchronized is set to FALSE to indicate that no synchronization has been obtained yet. As soon as a synchronization is obtained or achieved, the state machine changes into a state "SYNC", designated with reference numeral 8. For instance, a synchronization may be achieved if a predetermined number of codewords as shown in Fig. 2 with synchronization units only at the correct positions have been detected. In state 8, the variable TC_synchronized is set to TRUE to indicate that synchronization has been obtained. Furthermore, a counter variable n is set to 0. When the variable TC_synchronized is set to TRUE, processing of received data may start. As will be explained later, during receiving of data it is checked whether the synchronization units 4 of Fig. 2 are received at the correct positions in the continuous data stream c. If, at a position where a synchronization unit 4 is expected, no synchronization unit is received, a variable "MissedSync" is set to TRUE, and a variable "ExpectedSync" is set to FALSE. On the other hand, if a synchronization unit 4 is received at the expected position, the variable MissedSync is set to FALSE, and the variable ExpectedSync is set to TRUE. If the variable MissedSync is set to TRUE, the first state machine of Fig. 3 changes to state 9 named "FREEWHEEL_SYNCJTRUE". In this state, the variable TC_synchronized is still set to TRUE, and the counter variable n is incremented by 1. If MissedSync again is set to TRUE and n is smaller than 3, the state 9 is entered again, meaning that up to three consecutive occurrences (n = 0, 1, 2) of a unit other than a synchronization unit at a position where a synchronization unit is expected are tolerated. If, in state 9, the variable ExpectedSync is set to TRUE, the first state machine of Fig. 3 reverts to state 8. On the other hand, if the variable MissedSync is set to TRUE for the forth time (n=3), the first state machine enters state 10 named "FREEWHEEL_SYNC_FALSE", wherein the variable TC_synchronized is set to FALSE and the counter variable n is further incremented by 1. As long as n is smaller than 7, upon further occurrences of MissedSync = TRUE state 10 is entered again leading to a further incrementation of n. If, on the other hand, in state 10 the variable ExpectedSync is set to TRUE, the state machine changes to state 8 indicating that synchronization is present again. If MissedSync is set to TRUE for the eighth time (n=7), the first state machine goes to state 7 indicating that synchronization has been completely lost and has to be obtained again from the start. As a matter of course, after the evaluation in the first state machine both MissedSync and ExpectedSync have to be reset to FALSE again. In Fig. 4, a simplified version of the second state machine is depicted. When the variable TC_synchronized is set to TRUE, in state 11 of the second state machine the synchronization unit 4 (see Fig. 2) of a first codeword is received, and a counter variable k is set to 0. After that, in state 12, in case of the IEEE 802.3ah Standard 64 data units 5 are received and data is received and processed, e.g. converted to packet-based data. During this receiving of data, k is counting from 1 to 64, i.e. k is incremented each time state 12 is entered, e.g. each time a data unit is received, state 12 being entered again and again as long as k < 65. When k reaches 65, state 13 is entered, wherein the synchronization unit 4 of the next codeword is received and k is set to 0. In this step, the variables MissedSync and ExpectedSync described with reference to the first state machine of Fig. 3 are set accordingly, i.e. if in step 13 an actual synchronization unit with the correct value is received, ExpectedSync is set to TRUE and MissedSync is set to FALSE, otherwise ExpectedSync is set to FALSE and MissedSync is set to TRUE (of course, if the variables have been set to FALSE beforehand, they do not have to be set to FALSE again) . After setting these variables, the variable TC_synchronized is checked. If this variable is TRUE, the second state machine of Fig. 4 goes to step 12, if this variable is FALSE, the second state machine goes to state 15 named λλLOSS_OF_SYNC". In this state, k is maintained at 0 independent of incoming data packets. This state is only left when variable TC_synchronized is set to TRUE, in which case the second state machine of Fig. 4 goes to state 11. It should be noted that the actual second state machine used according to the above-cited IEEE 802.3ah Standard is more elaborate than the simplified version shown in Fig. 4 and in particular involves receiving of data units of different kinds, for example data units indicating an idle state or data units indicating the start or end of a frame. However, these additional features are not needed for the understanding of the present invention and are therefore not depicted in Fig. 4. With the first and second state machines shown in Figs. 3 and 4, the following problem may occur: If the first state machine is in state 10, TC_synchronized is set to FALSE having the consequence that the second state machine will assume state 15. However, in state 15, the variables MissedSync and ExpectedSync are not"generated or set to TRUE anymore. Therefore, the first state machine will be locked in state 10 and the second state machine will be locked in state 15, since also TC_synchronized will remain FALSE. The only possibility in this situation, which is called a deadlock, is a complete reset of the state machines. It is therefore an object of the present invention to provide a method and an apparatus for receiving data where such a deadlock may be avoided even if synchronization is lost for a longer period of time and normal operation may be resumed without a complete reset. In particular, it is an object of the present invention to provide such a method and an apparatus which may be implemented as an improvement of the IEEE 802.3ah Standard.

This object is achieved by a method according to claim 1, a method according to claim 17, an apparatus according to claim 8 or an apparatus according to claim 18. The dependent claims define respective preferred or advantageous embodiments. A method for receiving data is provided, wherein said data comprises synchronization information, said method comprising the steps of: obtaining a synchronization for receiving said data on the basis of said synchronization information, generating, during receiving of said data, maintenance information on the basis of said synchronization information indicative of whether said synchronization is being maintained, and continuing, upon loss of said synchronization, said generation of said maintenance information on the basis of said synchronization. A corresponding apparatus for performing this method is also provided. With the method and the apparatus according to the present invention, a deadlock may be avoided. In other words, if synchronization is lost, the information regarding the previously obtained synchronization is not discarded immediately, but is continued to be used for generating said maintenance information until a new synchronization is found. As a generalization of said principle, said information regarding the previously obtained synchronization may also be used for purposes other than the generation of said maintenance information after loss of synchronization, which generalization may be applied to processing of data in general. In this way, maintenance information is continued to be generated and may be used for operating an apparatus for receiving data, thus preventing a deadlock. Preferably, said data is a continuous stream of units, for example octets, said units comprising data units and synchronization units representing said synchronization information. In particular, said continuous data stream may be formed according to the IEEE 802.3ah Standard, i.e. a succession of codewords, each codeword starting with a synchronization unit followed by a predetermined number of data units. In this case, for generating said maintenance information, it may be checked whether a synchronization unit is received at a position expected according to the synchronization obtained. For implementing the method according to the present invention, one or more state machines may be used. In particular, a first state machine for obtaining said synchronization may be used, the state of said first state machine being indicative of whether synchronization has been obtained. Said first state machine may be a state machine as described in the IEEE 802.3ah Standard. A corresponding second state machine may be used for receiving data, said second state machine having a state which is assumed when the first state machine is in a state indicating that synchronization has been lost. In this state of said second state machine, said continued generation of said maintenance information is performed, so that said first state machine may leave the state indicative of a loss of synchronization depending on said maintenance information, thus preventing a deadlock. It should be noted that while the present invention is preferably employed within the framework of the IEEE 802.3ah Standard, the present invention may be useful in other systems where data comprising synchronization information is received or in general where a synchronization is performed.

The accompanying drawings are included to provide a further understanding of the present invention and are incorporated in and constitute a part of this specification. The drawings illustrate the embodiments of the present invention and together with the description serve to explain the principles of the invention. Other embodiments of the present invention and many of the intended advantages of the present invention will be readily appreciated as they become better understood by reference to the following detailed description. The elements of the drawings are not necessarily to scale relative to each other. Like reference numerals designate corresponding similar parts. Fig. 1 is a block diagram of a data transmission system in which the present invention may be applied. Fig. 2 illustrates the structure of continuous data streams b and c of Fig. 1. Fig. 3 illustrates a block diagram of a state machine for obtaining a synchronization. Fig. 4 illustrates a block diagram of a state machine for receiving data. Fig. 5 illustrates a modification of the state machine of Fig. 4 according to the present invention.

In the following Detailed Description, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. In this regard, directional terminology, such as "top," "bottom," "front," "back," "leading," "trailing," etc., is used with reference to the orientation of the Figure (s) being described. Because components of embodiments of the present invention can be positioned in a number of different orientations, the directional terminology is used for purposes of illustration and is in no way limiting. It is to be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope of the present invention. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims. The preferred embodiment of the present invention described in the following is implemented as a modification to the transmission convergence layer as described for instance in the already cited IEEE 802.3ah Standard. As a consequence, the features of the transmission system of Fig.l and in particular of a transmission convergence layer 2 of Fig. 1 described in the introductory portion with reference to Figs. 1 through 4, with the exception of the modifications which follow, also apply to the embodiment of the present invention. In order to avoid unnecessary repetition, the description of Figs. 1 to 4 already given in the introductory portion is not repeated here and incorporated by reference. In particular, the transmission convergence layer according to the preferred embodiment of the present invention comprises a first state machine for obtaining synchronization like the one shown in Fig. 3 and a second state machine for receiving data which is based on the state machine shown in Fig. 4. However, state 15 named "LOSS_OF_SYNC" of the second state machine shown in Fig. 4 is replaced by states 16 through 18 as shown in Fig. 5. The rest of the second state machine remains unchanged, wherein again it should be noted that in an actual implementation this state machine will be more elaborate and will correspond for instance to the one described in the IEEE 802.3ah Standard. In particular, if, starting from state 13 of Fig. 4, the variable TC_synchronized is set to FALSE, the second state machine goes to state 16 of Fig. 5. Here, the counter variable k is set to 0. It should be noted that state 16 may also be left out since k is already set to 0 in the preceding state 13. Furthermore, from state 16 an immediate transition to state 17 occurs, whereas the loop represented by state 17 as described in the following is only executed when data, i.e. an octet, is received. After this has been done, state 17 is assumed, where k is incremented by 1 with each incoming unit (data unit 5 or synchronization unit 4) of continuous data stream c shown in Figs. 1 and 2. State 17 is repeatedly assumed as long as k < 65. If k is equal to 65, state 18 is assumed. Here, similar to state 13 of Fig. 4, it is checked whether the received unit is a synchronization unit as is to be expected according to the synchronization which has been lost. In case the received unit is in fact a synchronization unit, the variable ExpectedSync is set to TRUE, otherwise, the variable MissedSync is set to TRUE. It should be noted since in general synchronization has been lost in the case of states 16 to 18, usually MissedSync will be set to TRUE in state 18. Finally, in state 18, the variable k is set to 0, and if TC_synchronized is FALSE, the second state machine goes back to state 17. In case TC_synchronized is TRUE, the second state machine goes to state 11 of Fig. 4. It should be noted that in contrast to the received data state 12 of Fig. 4, in state 17 the received units are preferably not further processed since synchronization is lost and consequently the received data would possibly be erroneous. As can be easily seen, the deadlock situation which may occur in a transmission system according to the state of the art as described in the introductory portion cannot occur with the modification according to the present invention as described above. In particular, if synchronization has been lost, i.e. the first state machine is in state 10, in state 18 the variable MissedSync will repeatedly be set to TRUE in case synchronization is still lost, thus incrementing the counter variable n of Fig. 3 until n reaches 7, which causes the first state machine of Fig. 3 to go to state 7 in order to obtain a new synchronization and, when this synchronization has been achieved, to state 8 where the variable TC_synchronized is set to TRUE. When this happens, the second state machine goes to state 11 of Fig. 4, and normal receiving of data may be assumed. In this case, k is set to 0 so that counter k is aligned to the new synchronization. As a matter of course, when synchronization is lost, a transmitter from which the continuous data stream c is received should be notified accordingly so that no loss of data occurs, but data which is sent after synchronization has been lost is sent again after synchronization is re¬ established. It should be noted that state 15 of Fig. 4, according to said IEEE 802.3ah Standard, may also be entered by reset. In case of the modifications according to the present invention as described above, also in this case the variable MissedSync or ExpectedSync will be set to TRUE repeatedly. However, since these variables are not evaluated in state 7 of the first state machine of Fig. 3, which is also entered upon a reset, this does not adversely affect the functionality of the system. Although the above embodiment has been described within the framework of the IEEE 802.3ah Standard, the principle of the present invention that when synchronization is lost, the previous synchronization is not discarded immediately but used to generate further information (in the above embodiment the variables MissedSync and ExpectedSync) regarding the maintenance or presence of synchronization until a new synchronization is achieved may be used with any data receiving system using synchronization information.

Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a variety of alternate and/or equivalent implementations may be substituted for the specific embodiments shown and described without departing from the scope of the present invention. This application is intended to cover any adaptations or variations of the specific embodiments discussed herein. Therefore, it is intended that this invention be limited only by the appended claims.