C.3.4 Rx_TFO Process
28.0623GPPInband Tandem Free Operation (TFO) of speech codecsService descriptionStage 3TS
The Rx_TFO Process receives TFO Messages and TFO Frames from the A-Interface and synchronises to them, i.e. checks correct synchronsation and contents. It bypasses all PCM samples and TFO Frames directly to Tx_TRAU for further processing. The Rx_TFO Process further extracts all the control bits and TFO Messages and sends corresponding Rx_TFO Messages to the TFO_Protocol Process.
If Embedded messages are detected in the TFO frames, the altered synchronization bits may be reconstructed with ‘1’ bits before passing them to Tx_TRAU.
When the Rx_TFO received distant TFO parameters, either by TFO Messages or TFO Frames (Config_Prot Frames), it relays them to the TFO-_Protocol.
When the Rx_TFO receives distant TFO parameters within Config_Prot Frames, it passes them directly through to Tx_TRAU and further on to the BTS.
C.3.4.1 Search for and Monitoring of TFO Synchronization
The monitoring of TFO Frame or TFO Message synchronisation shall be a continuous process. Typically, TFO Messages and TFO Frames follow each other with a well-defined phase relation. Insertion of T_Bits or octet slips may, however, disturb that regular phase relation every now and then and shall be taken into account. In all error cases, the receiver shall investigate, if sync has been lost due to octet slip, phase adjustment or other events and shall try to resynchronize as fast as possible.
Typically, TFO Frame synchronisation is similar or identical to TRAU Frame synchronisation, see 3GPP TS 48.060 [3] and 48.061.
During Tandem Free Operation, however, it is sometimes necessary to exchange TFO Messages by embedding them into the TFO Frame flow. This is explicitly indicated by a control bit (C5) for the 16 kbit/s TFO frame, and implicitly by the TFO frame itself for the GSM HR Codec Type. Some of the TFO Frame synchronization bits are then replaced by bits of the TFO Message. TFO Messages follow specific design rules, which can be used to check if synchronisation is still valid. For the 8 kbit/s AMR TFO frames the presence of an embedded TFO Message is not specifically indicated. The potential presence of an embedded TFO Message shall be checked every time a corrupted synchronization pattern is received.
The first TFO Message or the first TFO Frame (whatever comes first) shall be completely error free to be acceptable by Rx_TFO. After that all "valid" (see clause 8.4.2) TFO Messages shall be reported to TFO_Protocol with a respective message. If a TFO Message has been received before and synchronisation is not found again for more than 60 ms, i.e. no "present" or "valid" TFO Message can be found during that time, then Rx_TFO shall generate a MSL (Message_Sync_Lost) Message to TFO_Protocol. A "not-valid", but "present" TFO Message shall not be reported, but also no MSL shall be reported, i.e. synchronisation is regarded as not lost, but the TFO Message is ignored.
Similarly, the first five "valid" TFO Frames shall be reported to TFO_Protocol with frame number n (n == 1,2, ..5). Further "valid" TFO Frames do not need to be reported.
Similar, if for the first time after the PCM_Idle period, PCM_Non_Idle samples are received, then a PCM_Non_Idle Message shall be sent to TFO_Protocol. Further PCM_Non_Idle samples need not be reported.
If TFO Frame Synchronization is lost, or if too many errors are detected in TFO Frames (no present TFO Frames), then the Rx_TFO shall generate a FSL (Frame_Sync_Lost) Message to TFO_Protocol with frame number n (n == 1,2,3), the number of lost TFO Frames since the last valid TFO Frame. No more than three FSL Messages need to be reported in a series.
NOTE: The MSL and FSL Messages shall not be mixed up with the TFO_SYL Message, by which the distant TFO Partner reports lost synchronisation.
TFO Messages with Extension_Blocks that can not be understood by the receiving TRAU, but which follow the design rules for IS_Extension_Blocks, shall be ignored. This guarantees future expandability.
C.3.4.2 Errors in TFO Messages and TFO Frames
Some Definitions, which may serve as a guideline:
A TFO Message is called "error-free", if no error can be detected within the whole message.
A TFO Message is called "single-error", if no more than one bit position differs either in the IS_Header or the IS_Command_Block or the GSM_Ident_Block or the IPE_Mode_Block or the Sync bits and no errors are detectable within the CRC fields or the EX-fields.
A TFO Message may be regarded as "correctable", if the phase position is the same as the preceeding TFO Messages and
– no more than 2 bit positions differ in the IS_Header; and
– no more than 1 error is detected within the IS_Command_Block; and
– no more than 3 errors are detected within the IPE_Mode_Block; and
– no more than 3 errors are detected within the GSM_Ident_Block; and
– no more than 1 error is detected within the Sync-Bit(s); and
– no more than 0 error is detected within the EX-field(s); and
– no more than 0 error is detected within the CRC-fields; and
– the total number of detected errors is not higher than 3.
TFO Message, which are error-free, single-error or correctable are also called "valid" TFO Messages. All other TFO Messages are called "not-valid".
A TFO Message may be regarded as "present", if the phase position is the same as the preceding TFO Messages and
– no more than 4 bit positions differ in the IS_Header; and
– no more than 2 errors are detected within the IS_Command_Block; and
– no more than 3 errors are detected within the IPE_Mode_Block; and
– no more than 3 errors are detected within the GSM_Ident_Block; and
– no more than 2 errors are detected within the Sync-Bit(s); and
– no more than 1 error is detected within the EX-field(s); and
– no more than 1 error is detected within the CRC-fields; and
– the total number of detected errors is not higher than 5.
Sequences, which are not "valid" or "present" shall not be recognized as TFO Messages at all ("not-present").
Note that the insertion of T_Bits may change the phase position of the TFO Frames and of bits of an embedded TFO Message. The TFO Message shall in that case be classified after the removal of the T_Bits.
An octet slip may also change the phase position of bits within a regular or embedded TFO Message.
If an error-free or a single-error TFO Message can be found after considering a hypothetical octet slip (1 sample), then it may be regarded as error-free or single-error and the new phase position shall be regarded as valid, if no valid or present TFO Message can be found at the old phase position.
A TFO Frame is called "error-free", if no error can be detected within the whole frame.
A TFO Frame is called "single-error", if no more than one bit position differs either in the synchronisation bits or the T_Bits and if no other errors can be detected. TFO Frames, which are error-free, or single-error are also called "valid" TFO Frames. All other TFO Frames are called "not-valid".
A TFO Frame may be regarded as "present", if
– no more than 4 bit positions differ in the synchronisation bits
– no more than 2 errors are detected within the T_Bits;
– no more than 1 error is detected within the control bits;
– no more than 1 error is detected within the CRC block; and
– the total number of detected errors is not higher than 5.
Bit sequences, which are not "valid" or "present" shall not be recognized as TFO Frames at all ("not-present" ).
Note that the insertion or deletion of T_Bits may change the phase position of the TFO Frames. The TFO Frame shall in that case be classified after considering the T_Bits.
An octet slip may also change the phase position of bits within a TFO Frame. Typically a TFO Frame can not be corrected after an octet slip, but the next TFO Frame shall be found again.
The speech data bits of a valid TFO Frame shall be regarded as "bad", if the BFI flag is set to BFI == "1". In that case Bad Frame Handling shall be performed for the GSM_FR, GSM_HR and GSM_EFR speech Codec Types. For AMR and AMR-WB, all frames are passed unchanged to the Tx-TRAU. Similar definitions hold for other valid TFO Frames, equivalent to Uplink TRAU Frames, e.g. Invalid SID… (see 3GPP TS 48.060 and 48.061).