Title of Invention

"A METHOD AND DEVICE FOR PROVIDING ERROR PROTECTION FOR A DATA BIT-FLOW IN A DIGITAL TELECOMMUNICATION SYSTEM"

Abstract This invention relates to a method for providing error protection for a data bit flow in a digital telecommunication system, especially for speech signals that transmit speech in a mobile radio telephone system. The aim of the invention is to reduce the bit error rate of such a data bit flow. To this end, a plurality of known dummy bits are inserted at predetermined bit positions of the primary data bit flow in the proximity of significant information—carrying bits before channel coding is carried out.
Full Text 2.
The invention relates to a method and device for providing error protection for a data bit flow in a digital data communication system, in particular for speech signals that transmit speech in a mobile radio system.
Source signals such as voice, sound, image and video almost always include statistical redundancy. As a result of source decoding it is possible to remove this redundancy, with the result that an efficient transition or storage of the source signal is made possible. On the other hand, when transmitting signals it is necessary to reinsert redundancy selectively by means of channel coding in order to eliminate channel interference.
Owing to the incomplete knowledge of the source signals or restrictions in the complexity of the coding method, the source coding can usually only be implemented in a less than optimum fashion i.e. there is still a certain degree of redundancy in compressed data. This residual redundancy can be utilized in what is referred to as source—controlled or common channel decoding for correcting further bit errors; cf. DE 4224214 C2 and J, Hagenauer, 'Source—contro11ed channel decoding' IEEE Trans. Commun Vol 43, pp. 2449-2457, Sept. 1995. Hcrc, the decoding process

3.
of the channel decoder is controlled both by the transmitted cade bits and by an Apriori—A Posteriori information item relating to the probable value of a number of important source bite. In the case of VA (Viterbi—Algorithm) decoding, this method was referred to as Apri-Va. It was already been applied successfully for the transmission of voice, sound, image and video.

-4-
The bits (information bits) generated by source coding generally have highly varying degrees of sensitivity to bit errors which can arise, for example, in digital telecommunications transmission/storage so that unequal error protection (UEP) is necessary for different bits, i.e. important bits must be better protected than less important ones.
An example is the voice codec, for example the enhanced full rate (EFR) and adaptive multirate (AMR) voice codec in the GSM standard, said speech codec being based on the CELP (code excited linear prediction). The GSM-EFR codec generates 244 bits (corresponding to 12.2 kbit/s) every 20 ms (corresponding to one frame). Errors in this bit stream have greatly varying effects on the voice quality after decoding. Errors in a large number of bits, for example bits of LPC (linear predictive coding) coefficients lead to incomprehensibility or loud noises, while errors in other bits (for example bits from fixed code books) are virtually imperceptible. This has given impetus to dividing up the bits, according to the voice coder, into classes (Class la, lb and 2) which are usually differently protected against errors. In order to obtain a reasonable voice quality, it is typically necessary (depending on the type of codec and quality requirement), to protect the most important bits up to a bit error rate BER of approximately 10-4 - 10-5 (after channel decoding) and to protect the least important bits up to a bit error rate BER of 10-1 - 10-2. This method is referred to as the UEP method.
The customary methods for implementing a UEP are:

-5-
- use of special codes which have a UEP mechanism (cf.,
for example, H. Ma, "Binary unequal error-protection
block codes formed from convolutional codes by
generalized tail-biting," IEEE Trans. Information
Theory, Vol. 32, pp. 776-786, 1986).
- separate channel coding of the different classes of
bits (for example in GSM-EFR; the bits of classes la
and lb are coded by a convolutional code at the rate
1/2 and memory m = 4, and the bits of class 2 are
transmitted in uncoded form).
- combination of channel coding and subsequent
puncturing which is adapted to the importance of the
bits {example: GSM-AMR standard).
The third generation of mobile telephone systems 3GPP (third generation partner project) or UMTS (universal mobile telecommunication system) is currently being standardized. For general data transmission, a uniform structure has already been agreed (see; Figure 4-1 and Figure 4-2 of Transport channel multiplexing structure for uplink, in TS 25.212 V2.0.0 (1999-06), 3rd Generation Partnership Project (3GPP); Technical Specification Group (TSG) , Radio Access Network (RAN) ; Working Group 1 (WG1)).
The channel coding is implemented with a convolutional code (rate 1/2 and 1/3, constraint length m+l=9, m being referred to as code memory) or turbo codes. The rate matching serves here to repeat the code bits generated by the channel coding in accordance with the quality of the service and/or the possible (fixed) length of the data block within a transport channel (if the code bits are too few) or to puncture them (if the code bits are too many) . All functional units (CRC, multiplexing, channel coding,

- 6-
interleaving, rate matching, etc) may be applied to the entire data block (i.e. the complete input bit stream) but not parts thereof.
Although such a structure makes the system simple and uniform for different services, it is difficult to implement a UEP, for example for voice services, with the customary methods of channel coding. In order to adapt the importance of the AMR-coded bits, the different classes of bits should be transmitted with different levels of protection. A simple solution is to transmit the different classes of bits via different transport channels.
Disadvantages of such a UEP solution are the complicated management of the decomposition and combination of bits and the overhead necessary for said processes.
We will consider the mode 12.2 kbit/s of the AMR codec as an example. This mode has 3 classes of bits: Class A (81 bits), Class B (103 bits) and Class C (60 bits). If the 3 classes of bits are transmitted via 3 transport channels, each class firstly has, for example, 16 CRC bits (for block error detection) added to it and then 8 tail bits (if, as foreseen, the convolutional code with rate 1/3, constraint length 9 is used) . The entire code bits after channel coding are 3x(81+16+8) + 3x(l03+16+8) + 3x(60+16+8) = 948 bits, of which 3x(16+8) + 3x(16+8) + 3x{16+8) = 216 bits, i.e. 216/948 = 23% of all code bits are associated with the overhead. If, however, all 244 bits are transmitted with a transport channel, the overhead is 3x (16+8) - 72 bits (these bits are necessary for UMTS data transmission), i.e. 72/804 = 9% of all code bits, where 804 = (244+16+8) x 3.

-7-
The invention is therefore based on the object of specifying an improved method of the generic type with reduced expenditure on. protection (overhead) and thus a relatively high net information density, together with a corresponding device.
The invention includes the fundamental idea of selective insertion of known bits before the channel coding step. These known bits - also referred to below as dummy bits - are inserted in the vicinity of the important information bits, specifically in a non-terminating fashion (in contrast with the known code termination where a known bit group is located at the end of a data block), and in particular on both sides of the information bits. The more important an information bit is, the nearer its dummy bits should be located to it and/or the more known bits should be inserted near to it.
A code with a relatively low rate is advantageously formed by inserting the previously known bits from a code with a relatively high rate. The application to a systematic code is particularly expedient, and the inserted previously known bits An advantageous linking to puncturing is also expedient by puncturing the code bits after application of the proposed method.
Decoding methods such as the source-controlled channel decoding can be used in conjunction with the proposed method, the maximum


(absolute) apriori knowledge (the log-likelihood ratio in the case of Apri-VA algorithm) for the known bits being set at the receiver end.
Potential advantages of the proposed method are:
- simplicity of implementation. With the exception that
a channel decoder which uses apriori knowledge (for
example the Apri-VA algorithm instead of the normal
VA (Viterbialgorithm) is used, all other parts of the
channel codec remain unchanged. As a result, a UEP
can be implemented for a predetermined transmission
structure (such as 3 GPP) without further
modification.
- flexibility. It is easy to adapt UEP to individual
information bits.
- omission of a separate overhead.
For the above example (12.2 kbit/s AMR-codec for UMTS), it is possible to transmit all 244 bits within a transport channel using the method proposed here.
While the execution, specifically in the case of unequal error protection, only requires one classification of the information bits into two classes
- namely more important (more significant) and less
important (less significant) , in one preferred
embodiment a finely graduated classification into at
least three classes takes place associated with the
insertion of several successive dummy bits in each case
near to information bits with a higher significance and
of one dummy bit near to information bits with medium
ranking significance.
In a device which is suitable for carrying out the method according to the invention, the coder comprises means for inserting the previously known data bits (dummy bits) at positions

- 9 -
near to the positions of important information bits. Such a device also comprises a classification device for classifying information bits according to their significance or it is at least connected to a source of corresponding classification signals, for example to a memory device of an external classification device.
For decoding the received {convolution-coded} bit stream, it is possible, for example, to use a Viterbi-Algorithm (VA) which is modified as follows, A trellis diagram of a convolutional code is composed of branches (state transitions) and nodes, it being possible for a plurality of branches to come together at each node. A node represents a state of the memory of the convolutional code. For a rate 1/n convolutional code and at a specific point in time there are branches to the next point in time in the trellis diagram 2m+1 if no bit is predefined. If a dummy bit is inserted, only 2m branches are then possible. The normal Viterbi decoder then can be modified in such as way that only these branches are reached. In other words, the paths which do not run over the 2m branches are rejected. This method can be expanded for several dummy bits and other codes.
Here, such a system comprises a sequence controller for controlling the corresponding tests for the data bit streams processed via a plurality of paths in the trellis diagram, by reference to the positions and the values of the dummy bits, as well as a decision unit which is connected to the comparative device and makes a decision to reject or to confirm or select a path as a function of the result of the comparison which is respectively made.

- 10-
In a further preferred embodiment, such an overall system comprises a source-controlled channel decoder which implements, in particular, an Apri-Viterbi-Algorithm or MAP-Algorithm. Such a channel decoder comprises a database for what are referred to as "L values" (values of the log-likelihood ratio) of the inserted known bits.
The proposed method has particular practical significance for the error-protected transmission of source signals, in particular voice signals. It is therefore particularly suitable for application in a mobile telephone system.
Advantages and expediencies of the invention emerge,
the
the following
explanation of specific embodiments and aspects with
reference to the accompanying figures, of which:
Fig. 1 shows a schematic view of a data bit stream
before the channel coding or upstream of the
corresponding apriori knowledge base for channel
decoding.
Fig. 2 shows a simulation of the BER as a function of the bit number of a VA decoder of an AWGN channel,
Fig. 3 shows a view of the protection of a convolutional code with predetermined dummy bits and,
Fig. 4 shows a view of the simulation of an RSC code of an AWGN channel.
As illustrated in Fig, 1, the bits u3 and u4 should be better protected than u8 and u9, which are in turn better protected than U1, u6, u7, ... Two known bits

-11-
("0" or "1") can then be inserted between u3 and u4 and a known bit ("0" or "1") can be inserted between U8 and u9. This apriori knowledge should be used at the decoding end, i.e. the two bits between u3 and U4 are "0" and the bit between u8 and u9 is "1".
The following methods are possible for decoding:
- In the case of a normal VA, it is possible, for
example, to use this apriori knowledge in the
selection of the possible paths, i.e. paths with
which the known bits are incorrectly decoded are
rejected. This is similar to the termination of a
convolutional code.
- When an Apri-VA or a similar algorithm, for example
the MAP (maximum a posteriori probability) decoding
algorithm, is used, the apriori L values for the
known dummy bits can be used as acceptable maximum
values (e.g. L = +oo for bit "0" and L = -oo for bit
"1") . For the information bits u1, u2, U3, u4, ...
L1 = 0 (i = l,2,...} if no apriori knowledge is
present.
- For systematic channel codes such as, for example,
the recursive systematic convolutional codes which
are already used in the GSM-AMR channel coding and
also as component codes in turbo codes, the Apriori L
value of an information bit can firstly be added to
the channel soft value (i.e. soft input value of the
channel decoder) of the corresponding Systematic code
bit (= information bit) and the resulting soft value
can then be used as a soft input value of the channel
decoder. In this way, a channel decoder which uses
Apriori knowledge (for example the Apri-

- 12-

VA algorithm) can be implemented directly with a conventional VA (without modification).
Fig. 2 shows the simulation results for a convolutional code with constraint length m+1 - 5 and rate 1/3 under an AWGN (additive white Gaussian noise) channel.. The block length is 200 (bit 0...199). The generator polynomials used are

the codes having a known initial state and being terminated at the end of the data block with m tailbits (4 bits = 0 in our case).
The unbroken lines (with symbol "+") show the BER of all 200 information bits using normal coding/decoding (without dummy bits), and the broken lines (with the symbol "x") show the BER if known dummy bits are at the bit positions 9, 11, 15, 49, 89, 90, 129, 130, 131, 169, 170, 171, 172 (and the Apri-VA is used here). It is possible to infer that without taking into account the dummy bits whose BER = 0, the information bits directly next to the dummy bits have a lower BER than the information bits a long way from the dummy bits. As a result, a UEP is achieved. The various parallel lines represent the various channel conditions (from top to bottom, the signal-to-noise ratio S/N = -5.0, -4.5, -4.0, -3.5, -3.0, -2. 5, -2.0, -l.5, -l.0...).
It is to be noted

- 12-

- that the bits at the start and end of the datablock
likewise have a lower BER. This is a consequence of
the known starting states and final states (if
terminated) of the convolutional code. In fact, the
method proposed here is based on a similar principle
to code termination. The difference is that during
the termination the known bits are used only at the
end of the datablock (all at once) because otherwise
without termination the bits at the end of the
datablock are significantly less well protected than
the other bits. On the other hand, in our proposal,
the known bits in the vicinity of the bits which are
to be better protected are generally used more than
once.
- by using additional dummy bits (i.e. inserting more
redundancy), the information bits are always better
protected. There is no degradation of the
performance.
- the additional protective effect of the dummy bits is also basically restricted to the constraint length of the code, similarly to the termination of a convolutional code. Depending on how many dummy bits are used, the protective range can be 2 to 3 times the constraint length (m+1). If, for example, the constraint length is equal to 5, the bits which are at a distance of up to 10-15 bits from the dummy bits can be additionally protected.
- for a normal non-systematic convolutional code, not
more than m bits are to be used in succession as
dummy bits,(m = code memory), because with m bits the

- 14-
code is already terminated, i.e. a further reduction of the BER by more than m bits is not possible.
Fig.3 shows that the bit u4 is best protected by 8 dummy bits (4 on the left-hand side and 4 on the right-hand side) for a non-systematic convolutional code where m = 4.
The above explanations apply to convolutional codes, but the principle can be applied to all codes for which correlation between the code bits placed in a serial arrangement is present after coding (for example turbo codes).
The proposed method is particularly attractive and
efficient for systematic channel codes (for example the
recursive systematic convolutional/RSC codes or turbo
codes) because the identical inserted dummy bits (for
example "0's") are mirrored into the code words (as
systematic code bits) and do not need to be transmitted.
This will be explained with an example: If the bits a-b-c-0-d-O-e-f-g-. . . are channel-coded with a code with a rate 1/2 and transmitted where a-b-c-d-e-f-g are the data bits and d is to be protected better by inserting two O's, the coded bits (code bits or code words) have a form aA-bB-cC-OX-dD-OX-eE-fF-gG- ... in the case of a systematic code. Here, X e (0, 1) applies to a, A, b, B, ..., and in general X = a desired number (the first X is not necessarily equal to the second X) . Because the two dummy bits 0 at the receiver end are known, we only need to transmit the bits aA-bB-cC-X-dD-X-eE-f F-gG-... . The dummy bits which are not transmitted can, if appropriate, be reset before decoding (with maximum reliability). This corresponds to a lower equivalent code rate. In the case of a non-systematic code, the coded bits generally have a form AA-BB-CC-XX-DD-XX-EE-FF-GG which should/must all be transmitted.

-15-
All codes with relatively low rates can generally be formed (systematically or non-systematically) from codes with relatively high rates using this method (see the following example). It is therefore possible for this method to be combined with puncturing by means of which codes with relatively high rates can be generated from codes with relatively low rates in order to achieve a desired (any) code rate and/or an optimum performance.
For example: We can form a systematic code with the rate 1/3 from a systematic code with the rate 1/2, namely by regular insertion of 0: a-0-b-0-c-0-d-0-... If these bits are coded with a rate 1/2 code, aA-0X-bB-0X-cC-0X-dD-0X-. . . are obtained. The bits to be transmitted are then aA-X-bB-X-cC-X-dD-X-... . The equivalent code rate is 1/3 because a rate 1/3 code generates the same number of code bits, specifically aAX-bBX-cCX-dDX-... . Similarly, we can form codes of equivalent rates 2/5 (a-b-c0-c-d-0-e...), 3/7 (a-b-c-0-d-e-f-0-. . .) , ... from a systematic code with a rate 1/2. In our simulation it has been shown that a rate 1/3 code which is formed in this way almost supplies the same performance as the optimum rate 1/3 code.
The following information applies to Fig. 4: m=8, AWGN channel, RSC code with the polynorms from TS 25.212 V2.0.0 (1999-06), 3rd Generation Partnership Project (3GPP) ; Technical Specification Group (TSG) , Radio Access Network (RAN); Working Group 1 (WG1), where
- m8r2rscvach0.pro.-3 = code with a rate 1/2, channel
Es/No = -3 dB
- m8r3rscvach0 .pro-3 = code with a rate 1/3, channel
Es/N0 = -3 dB
- m8r2rscvach0_alp2.pro.-3 = code with an equivalent
rate of 1/3, channel Es/N0 = -3 dB (proposed method)

- 16 -
- m8r2rscvach0_alp3.pro.-3 = code with an equivalent
rate of 2/5, channel Es/N0 = -3 dB (proposed method)
- m8r2rscvachG__alp4.pro.-3 = code with an equivalent
rate of 3/7, channel Es/N0 = -3 dB (proposed method)
- m8r2rscvachO_alp5.pro.-3 = code with an equivalent
rate of 4/9, channel Es/N0 = -3 dB (proposed method)
The embodiments of the invention are not restricted to the examples described above, but are also possible in a multiplicity of refinements which are within the scope of the activities of a person skilled in the art.

17.
WE CLAIM:
1. Method for providing error protection for a data bit stream
in a digital telecommunications transmissions system in order to
reduce the bit error rate, characterized in that, before channel
coding, a multiplicity of previously known dummy bits are
inserted in a non—termination fashion at predetermined bit
positions in primary data bit stream near to information—carrying
bits, in particular an both sides thereof.
2. The method as claimed in claim 1, wherein a code with a
relatively low rate is formed from a code with a relatively high
rate by inserting previously known dummy bits.
3. The method as claimed in claim 1 or 2, comprising
application to a systematic code, the dummy bits not being
transmitted in the code bits.
4. The method as claimed in one of the preceding claims,
wherein the code bits are subsequently punctured.
5. The method as claimed in one of the preceding claims,
whvraln the information bits of the primary data bit stream are
subjected to classification of their significance into at least
two classes And dummy bits are inserted near to bits which carry
information to a significant degree.

18.
6. The method as claimed in one of the preceding claims wherein
the method being applicable in a mobile telephone system.
7. The method as claimed in one of the preceding claims, wherein
the method is applicable for the transmission of source signals,
in particular of voice signals.
8. The method as claimed in one of claims 4 to 7, wherein
the method is applicable to a convolutional code.
9- The method as claimed in one of the preceding claims wherein at the receiver end a path selection is carried out, in particular within the framework of a Viterbi algorithm, on the basis of the protected data bit stream, the resemblance between the processed data bit stream and the protected data bit stream being checked in each case at the locations of the dummy bits and the respective path being rejected in the case of non-correspondence .
10. The method as claimed in one of the preceding claims, wherein the protected data bit stream is decoded as source-control led channel decoding, in particular by means of an Apri-Viterbi algorithm or MAP algorithm.
11. The method as claimed in claim 9, wherein an Apriori-L value of an information bit is added to a soft in put value of the corresponding systematic code bit for a systematic channel code, in particular a recursive systematic convolutional code, and decoding is subsequently carried out by using a conventional Viterbi-algorithm.

1 9.
12. A device for carrying out the method as claimed in one of
the preceding claims comprising, a coder being operable to insert
previously known data bits at predetermined bit positions of the
primary data bit stream to be coded,
13. The device as claimed in claim 11, comprising a
classification device for classifying the significance of the
information bits of the primary data bit stream, the output of
said classification device being connected to the coder.
14. The device as claimed in claim 11 or 12, comprising a
sequencing control unit for controlling the checking of a
plurality of paths for the received data bit stream, a comparator
unit for checking the data bit streams which are processed by
the plurality of paths, by reference to the positions and values
of the dummy bits, and a decision unit, connected to the output
of the comparator unit, for rejecting or approving the path
assigned to the respectively tested data bit stream, as a result
of the comparison, for decoding information bits, in particular
using a Viterbi-Algorithm.
15. The device as claimed in one of claims 11 to 13, comprising
a source—controlled channel decoder, in particular for executing
an Apri-Viterbi-Algorithm or MAP-Algorithm.
This invention relates to a method for providing error protection for a data bit flow in a digital telecommunication system, especially for speech signals that transmit speech in a mobile radio telephone system. The aim of the invention is to reduce the bit error rate of such a data bit flow. To this end, a plurality of known dummy bits are inserted at predetermined bit positions of the primary data bit flow in the proximity of significant information—carrying bits before channel coding is carried out.

Documents:


Patent Number 203251
Indian Patent Application Number IN/PCT/2002/00063/KOL
PG Journal Number 10/2007
Publication Date 09-Mar-2007
Grant Date 09-Mar-2007
Date of Filing 14-Jan-2002
Name of Patentee SIEMENS AKTIENGESELLSCHAFT
Applicant Address WITTELSBACHERPLATZ 2, D-80333 MUNCHEN
Inventors:
# Inventor's Name Inventor's Address
1 XU WEN BISCHOFSHOFENER STRASSE 11, D-82008 UNTERHACHING
PCT International Classification Number H 04 L 1/00
PCT International Application Number PCT/DE00/01253
PCT International Filing date 2000-04-20
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 199 34 505.8 1999-07-22 Germany