Title of Invention

METHOD AND APPARATUS FOR TRANSMITTING DATA FRAMES AND A METHOD AND APPARATUS FOR DATA RATE MATCHING.

Abstract BY MEANS OF AN INTERLEAVER, ELEMENTS TO BE TRANSMITTED ARE DISTRIBUTED OVER A PLURALITY OF RADIO FRAMES AND REPEATED, THE REPETITION BEING CARRIED OUT IN SUCH A WAY THAT, WHEN PUT INTO ITS RELATIONSHIP WITH THE ORIGINAL ARRANGEMENT OF THE ELEMENTS BEFORE THE INTERLEAVING, THE PATTERN PREVENTS THE SPACING BETWEEN ARBITRARY CONSECUTIVE REPEATED ELEMENTS FROM BEING SUBSTANTIALLY GREATER THAN THE MEAN REPETITION SPACING.
Full Text Description
Method and apparatus for transmitting data frames, and
a method and apparatus for data rate matching
The present invention relates to a method and an
apparatus for transmitting data frames and to a method
and an apparatus for data rate matching, in particular
by using a repetition of bits to be transmitted.
Digital communications systems are designed for
transmitting data by representing the data in a form
that facilitates the transmission of the data via a
communication medium. For example, in the case of radio
transmissions the data are transmitted, represented as
radio signals, between transmitters and receivers of
the communications system. In the case of broadband
telecommunications networks, the data can be
represented as light, and can be transmitted, for
example, via a fiber optic network between transmitters
and receivers in the system.
During the transmission of data, bits or symbols of the
transmitted data can be corrupted, with the effect that
these bits or symbols cannot be correctly determined in
the receiver. For this reason, the data communications
systems frequently contain means for moderating the
corruption of the data that occurs during the
transmission. One of these means consists in equipping
transmitters in the system with coders that code the
data before transmission in accordance with an error
control code. The error control code is designed such
that it adds redundancy to the data in a controlled
fashion. In the receiver, errors that occur during
transmission can
be corrected by decoding the error control code, as a
result of which the original data are reproduced. The
decoding is effected by using an error decoding
algorithm that corresponds to the error control code,
which is known to the receiver.
After the data have been coded, it is frequently
necessary for the purpose of data rate matching to
puncture or to repeat data bits or symbols from a block
of coded data before these data are transmitted. The
term puncturing/repetition is intended here to signify
a process of removing or deleting bits from a coded
data block with the effect that the punctured bits are
not transmitted with this data block, or to signify a
process of repeating bits from a coded data block with
the effect that the bits to be repeated are transmitted
several times with this data block. Even if only one
term "puncturing" or "repetition" is commonly used
below, it goes without saying that the present
invention can also be used for the other case of
"repetition" or "puncturing".
The puncturing could be required, for example, because
a multiple access method that serves for transmitting
the data via the data-carrying media requires
formatting of the data to form blocks of predetermined
size, which size does not correspond to the size of the
coded data frame.
In order to accommodate the coded data frame in the
transport data block of the predetermined size, data
bits are therefore either punctured from the coded data
frame in order to reduce the size of the coded data
block,

in a case in which the coded data frame is larger than
the size of the transport block, or bits in, the coded
data frame are repeated, in a case in which the coded
data frame is smaller than the predetermined size of
the transport block. In a case in which the data frame
is smaller than the transport data block, the data bits
(bits) or data symbols are repeated to the extent
necessary to fill the rest of the transport data block.
Those skilled in the art are familiar with the fact
that one effect of puncturing a coded data frame is
that the probability of correct reproduction of the
original data is reduced. Moreover, the performance of
known error control codes and of decoders for these
error control codes is best when the errors that occur
during the transmission of the data are caused by
Gaussian noise, since this has the effect that the
errors are distributed independently over the transport
data block. When a coded data frame is intended to be
punctured, the positions in the coded data frame at
which bits are punctured are to be separated as far as
possible from one another. To this extent, the
puncturing positions should be distributed uniformly
over the data frame. Since errors during transmission
frequently occur in bursts, particularly in the case of
radio communications systems that do not use
interleaving, and since the repetitions of bits are not
intended particularly to raise the quality only in a
certain region of the data frame but as uniformly as
possible, bit positions in a coded or uncoded data
frame at which data bit3 are intended to be repeated
should also be arranged such that they are uniformly
separated from one another in the entire data frame.

Known methods for selecting the positions of bits or
symbols that are intended to be punctured or repeated
in a coded data frame include the division of the
number of bits or symbols in a frame by the number of
bits or symbols that are intended to be punctured or
repeated, and the selection of the bit positions with
integral values corresponding to the division. In a
case in which the number of bits to be punctured is not
an integral division of the number of bits in the data
frame, this does not, however, lead to a uniform
spacing of the punctured or repeated bit positions,
thus resulting in the disadvantage that specific bit
positions are situated closer to one another than this
whole number, are situated further (in part
substantially further) removed from one another than
this whole number, and in some cases even alongside one
another.
The interleaving in a transport multiplexing method is
frequently carried out in two steps. The various
solutions for carrying out the puncturing/repetition
have specific consequences when the puncturing is
carried out downstream of the first interleaver as is
provided for the UMTS system. It is necessary here to
take particular notice of the fact that the performance
could deteriorate when a block interleaver with a
column exchange, such as the FS-MIL (FS Multistage
Interleaver) used in UMTS, is used as interleaver in
the up-link multiplexing method in conjunction with a
rate matching algorithm. Downstream of said first
Lnterleaver, the bits assigned to a frame are further
Interleaved by a second interleaver that is described,
for example, in TS 25.212 Chapter "4.2.11 2nd
interleaving". This

second interleaver has no influence, however, on
aspects of the puncturing/repetition and is therefore
not taken further into account below; it is of no
importance with regard to the present invention.
Consequently, the above-named first interleaver is
frequently also simply named interleaver in this
document.
A block interleaver with column exchange functions as
follows: firstly, the bits are written rowwise into a
matrix. This matrix comprises F columns, F being the
number of frames (also frequently termed radio frames
or columns below) over which the data of a data frame
are distributed. See also TS 25.212 Chapter "4.2.5 1st
interleaving".
In the current version of the UMTS standard
(3GPP TSG RAN WG1; Multiplexing and channel coding
(FDD); TS 25.212 V2.3.0 (1999-10)) Chapter "4.2.7 Rate
matching", in particular section "4.2.7.1.2"
Determination of parameters needed for calculating the
rate matching pattern", a method is represented that
was presented in the article R1-99641 (Siemens;
Properties of optimised puncturing scheme; TSG-RAN
WG1#5, June 1-4, Cheju, Korea). This method distributes
punctured bits as uniformly as possible and, in
particular, avoids the case of puncturing of bits
situated close to one another. This is also achieved
for the case of the application of puncturing using the
interframe interleaver. The same method can also be
applied for the case of repetition, and likewise leads
in this case to good results.
In the article Rl-99641 mentioned, the following
modifications were proposed to the rate matching
method: the rate matching was carried out

using the puncturing/repetition pattern by applying a
common pattern to all frames, the pattern being
displaced in the case of the individual frames. Use was
made for calculating the displacement of simple
calculating rules that take account of the effect of
the column exchange by the interleaver (for example an
FS-MIL, the term column exchange, sometimes also termed
column randomizing, is used here instead of "row-by-row
processing").
Owing to the fact that the operation of column exchange
is taken into account in the formulas, the same effect
is achieved as if the rate matching were carried out
upstream of the column exchange of the interleaver,
although for practical reasons it must be carried out
downstream thereof. This is achieved by virtue of the
fact that use is made of the column exchange rule, more
precisely its inversion RF in the formulas for
calculating S (the displacement of the pattern per
column) or eoffset (a parameter that is carried out per
frame in the rate matching algorithm presented further
below). Similar procedures can be used for puncturing
and repetition, this invention specifically dealing
with the case of repetition. The carrying out,
necessary owing to other prescriptions, of the rate
matching downstream of the first interleaver has
consequences in this case for the optimum generation of
puncturing and repetition patterns.
However, it has emerged (as set forth below) that the
previously proposed solutions, that is to say the
proposed puncturing pattern in the case of application
as a repetition pattern, is still not always optimal in
all cases. Starting therefrom, it is the object of the
invention to reduce the disadvantages of the prior

art. In particular, it is the object of the present
invention to specify a technical teaching that permits
decoding of good quality in the receiver, particularly
in the case of the repetition of bits.
This object is achieved by means of the features of the
independent claims. Developments of the invention
follow from the subclaims.
Consequently, the invention is based on the finding
that the decoding result in the receiver depends on the
repetition patterns in the transmitter, and the
criteria for a good puncturing pattern and a good
repetition pattern differ from one another. An
improvement in performance by comparison with the
patterns presented in R1-99641 can be achieved for the
case of repetition by taking particular account of the
criteria that are relevant for a good repetition
pattern when determining the repetition pattern.
Embodiments of the present invention are now described
merely as an example with reference to the attached
drawings, in which:
figure 1 shows 1:4 repetition pattern that results in
the case of the application of an exemplary embodiment
of the present invention;
figure 2 shows a block diagram of a mobile radio
communications system;
figure 3 shows a block diagram of a data communication
apparatus that forms a link between the mobile station
and a base station of the communications network shown
in figure 1;

figure 4 shows an exemplary embodiment of the principle
of an optimized puncturing scheme;
figure 5 shows a lookup table;
figure 6 shows 1st interleaving of 80 ms and 1:5
puncturing;
figure 7 shows 1:8 puncturing with methods from
R1-99641; and
figure 8 shows 1:4 puncturing with methods from
Rl-99641.
An exemplary embodiment of the present invention is
described with reference to a mobile radio
communications system. Mobile radio communications
systems are equipped with multiple access systems that
operate, for example, in accordance with multiple access
in time division multiplexing (TDMA) such as, for
example, that used in the Global System for Mobile
communications (GSM), a mobile radio communications
standard standardized by the European Telecommunications
Standard Institution. As "an alternative, the mobile
radio communications system could be equipped with a
multiple access system that operates in accordance with
multiple access in code division multiplexing (CDMA)
such as, for example, the UMTS system proposed for the
universal third-generation mobile telecommunications
system. However, it is clear that to illustrate an
exemplary embodiment of the present invention use could
be made of any desired data communications system such
as, for example, a local data network or a broadband
telecommunications network that operates in accordance
with the asynchronous transmission mode. These exemplary
data communications systems are characterized, in
particular, in that data are transmitted as frames,
packets or blocks. In the case of a mobile radio
communications system, the data are transported in
frames of data-carrying radio signals that constitute a
predetermined data size. An example of such a mobile
radio communications system is shown in FIGURE 2.

Shown in FIGURE 2 are three base stations BS that
exchange radio signals with mobile stations MS in a
radio coverage area that is formed by cells 1 that are
defined by dashed lines 2. The base stations BS are
coupled together with the aid of a network relay system
NET. The mobile stations MS and the base stations BS
exchange data by transmitting radio signals, denoted by
4, between antennas 6 that are coupled to the mobile
stations MS and to the base stations BS. The data are
transmitted between the mobile stations MS and the base
stations BS by using a data communications apparatus in
which the data are transformed into radio signals 4
that are transmitted to the receiving antenna 6, which
identifies the radio signals. The data are reproduced
from the radio signals by the receiver.
FIGURE 3 shows an example of a data communications
apparatus that forms a radio communication link between
one of the mobile stations MS and one of the base
stations BS, elements that also appear in FIGURE 2
bearing identical numerical designations.
In FIGURE 3, a data source 10 produces data frames 8 at
a rate that is determined by a data type produced by
the source. The data frames 8 produced by the source 10
are fed to a rate converter 12 that acts to convert the
data frames 8 to transport data blocks 14. The
transport data blocks 14 are designed such that they
are substantially of the same size, with a
predetermined size and an amount of data that can be
carried by frames of data-carrying radio signals, via
which data are transmitted by a radio interface

that is formed by a pair comprising a transmitter 18
and receiver 22.
The data transport block 14 is fed to a radio access
processor 16 that acts to control the sequence of the
transmission of the transport data block 14 via the
radio access interface. At an appropriate time, the
transport data block 14 is fed by the radio access
processor 16 to a transmitter 18 that acts to convert
the transport data block to the frame of data-carrying
radio signals, which are transmitted in a time interval
that is allocated to the transmitter in order to effect
the transmission of the radio signals. In the receiver
22, a receiver antenna 6" identifies the radio signals
and carries out downward conversion and reproduction of
the data frame, which is fed to a radio access sequence
control inverting apparatus 24. The radio access
sequence control inverting apparatus 24 feeds the
received data transport block to a frame conversion
inverting apparatus 26 under the control of the
multiple access sequence control inverting apparatus
24, which is effected via a conductor 28. The rate
conversion inverting apparatus 2 6 thereafter feeds a
representation of the reproduced data frame 8 to a
destination or sink for the data frame 8, which is
represented by the block 30.
The rate converter 12 and the rate conversion inverting
apparatus 26 are designed such that, as Tar as
possible, they utilize optimally the data-carrying
capacity available in the transport data block 14. This
is effected in accordance with the exemplary embodiment
of the present invention by means of the rate matching
converter 12, which acts to code the data frame and
subsequently puncture

or repeat data bits or symbols that are selected from
the coded data frame, with the effect of producing a
transport data block that fits into the data blocks 14.
The rate converter 12 has a coder and a puncturer. The
data frame 8 fed to the coder is coded in order to
produce a coded data frame that is fed to the
puncturer. The coded data frame is then punctured by
the puncturer in order to produce the data transport
block 14.
Puncturing or repetition is achieved by virtue of the
fact that a common puncturing pattern or repetition
pattern is applied in the various frames in a fashion
displaced relative to one another. Although the
puncturing/repetition is applied downstream of the
interradio frame interleaver, the same effect, that is
to say the same puncturing/repetition pattern, is
achieved as if the puncturing/repetition were applied
before the column exchange.
The aim of a good repetition method is to distribute
the repeated bits as uniformly as possible. The same
also holds for a good puncturing method. The method
presented in the abovementioned article R1-99641
operates as represented below (for the sake of
simplicity, puncturing/repetition is not always written
below, but only one alternative, it being obvious that
the argument can also be applied for the other
alternative): the most uniform distribution can be
achieved when each nth bit is repeated. If the
repetition rate is not integral, the spacing must be
varied, that is to say sometimes the nth and sometimes
the n+1th bit must be repeated. An attempt can be made
also to apply this principle when the repetition is
applied downstream

of the first interleaver, although there is a further
secondary condition in this case: the repeated bits
must be distributed uniformly over all radio frames.
An interleaving interval of 80 ms and a repetition rate
of 1:6 are to be adopted as an example. If each 6th bit
were repeated, only bits in the columns 0,2,4,6 but not
in the columns 1,3,5,7, which cannot, of course, be
carried out thus. In order to distribute the
repetitions uniformly over all columns, the repetition
interval must be modified sometimes (in this case,
once) in order to prevent always the same columns from
being punctured. This is shown in figure 4. The
horizontal arrows with thin outlines show a repetition
spacing of 6, and the horizontal arrow with a thick
outline shows a repetition spacing, differing
therefrom, of 5, in order to avoid repeating the first
column too early a second time. After each column has
been repeated once, the repetition pattern can be
displaced downward by 6 rows, in order thus to
determine the next bits to be repeated, and so on.
Clearly this is equivalent to puncturing each 6th bit
in a column and displacing this puncturing pattern in
different columns relative to one another.
The formulas are specified below, with the aid of the
example of puncturing, for the optimized method that is
defined in the abovementioned article Rl-99641 and is
best suited to the case of puncturing.
The number of bits per radio frame before the rate
matching can be denoted by Nc, the number of the bits
per radio frame after the rate matching by Ni, the
index or the position of a

bit to be punctured/repeated by mj, the frame number by
k, and the number of frames over which the interleaving
is carried out by F. We consider essentially the case
that Nc > Ni, that is to say puncturing. However, the
formulas can also be applied for repetition. In the
above example, it holds that Nc = 20, Ni = 16, mi = 4,
m2 = 9, m3 = 14, m4 = 19, k = 1...7, and F = 8. The
displacement of the puncturing pattern can then be
achieved with the aid of the following formulas.
-- calculation of the mean puncturing spacing
q: = (Nc/ (/Ni-Nc/)) mod F —- here ? ? signifies rounding
and // the absolute value.
Q: = (LNC/ (/Ni-Nc/)?) div F
if q is even - treat special case:
then q = q - lcd(q, F)/F
— here, led (q, F) denotes the greatest common
divisor of q and F
— the greatest common divisor can easily be
calculated by bit manipulations when F is a power of
two.
— For the same reason, calculations with p can
easily be carried out by binary fixed-point operations,
(or, alternatively, by integer arithmetic with the use
of displacement operations.
endif
— calculation of S and T; S represents the
displacement of the row mod F and T the absolute
displacement value div F;
S therefore represents the displacement of the row with
respect to q (that is to say mod F), and T the absolute
displacement value with respect to Q (that is to say
div F);
for i = 0 to F-1
S(RF (?i*q? mod F) ) = (?i*q? div F) -- ? ?
signifying rounding up.
T((RF(? i*q ? mod F)) = i -- RF(k) inverts the
interleaver,

end for
In a real implementation, these formulas can be
implemented as a reference table, as shown in figure 5.
The table also includes the effect of the the column
exchange taken into account by RF(k). S can obviously
be calculated from T as a further implementation
option.
It is then possible to calculate eoffset as follows:
eoffset (k) = {(2*S) + 2*T*Q + 1)* y + 1) mod 2Nc
With the aid of eoffset (k), e is then preloaded in the
rate matching method for UMTS. This choice of eoffset
obviously effects a displacement of the puncturing
patterns of the columns relative to one another by the
amount S + T * Q.
eoffset is sometimes also termed einint The rate matching
method for UMTS, which is applied inside a single
frame, is described in TS25.212, section 4.2.7.4 "Rate
matching pattern determination", and describes a
puncturing or repetition method based on an error
control. This method is described here once more:
before the rate matching, the bits may be denoted as
follows:
Xi,1, Xi,2, xi,3, Xi,4, ... Xi,N, in which case i denotes
the number of the transport channel (TrCH number) and N
is the parameter that is defined in chapter 4.2.7.2 of
TS 25.212.
The rate matching algorithm then operates as follows:
if puncturing is to be carried out:
e - eini — initial error between the current and
desired puncturing rate

m = 1 -- Index for the currently
treated bit
do while m e = e - eminus -- match error value
if e number m is to be punctured
puncture bit xi,m
e = e + epluS-- match error value
end if
m = m + 1 -- next bit
end do
else
e = eini -- Initial error between the
current and desired puncturing rate
m = 1 -- Index for the currently
treated bit
do while m e = e - eminus -- Match error value
do while e number m is to be repeated
repeat bit xi,m
e = e + eplus-- match error value
end do
m = m + 1 -— next bit
end do
end if

a repeated bit is inserted immediately after the bit
originally already present.
Described below is a simplified representation which
simply results from the fact that the calculation of q
and Q is not carried out separately for the remainder
in the case of the division by F and the multiple of F,
but in a combined fashion for both components. In the
same way, S and T cannot be calculated separately for q
and Q, but are likewise calculated in a combined
fashion. The substitution q+F*Q ? q and S+Q*T ? S
yields the following equivalent representation.
Depending on the details of the implementation, one or
other calculation method (or further methods likewise
equivalent thereto) can be carried out more favorably.
— Calculation of the mean puncturing distance
q: = (LNc/( |Ni-Nc|)?) — ? ? signifying rounding down and
| | signifying absolute value.
if q is even -- treat special case:
then q = q - lcd(q, F) /F -- led (q, F) signifying
the greatest common divisor of q and F
-- note that led can easily be calculated by bit
manipulations, because F is a power of two.
-- For the same reason, calculations with q can
easily be carried out with the aid of binary fixed-
point arithmetic (or integer arithmetic and a few shift
operations).
endif
-- Calculation of S(k) of the displacement of column k;
for i = 0 to F-1
S(RF([i*ql mod F) ) = (i*ql div F) — [ ] signifying
rounding up.

-- RF{k) inverts the interleaver
end for
It is then possible to calculate eoffset in the following
way:
eoffSet (k) = ((2*S)* y + 1) mod 2Nc
With the aid of eOffset (k), e is then initialized in
advance in the rate matching method.
Those skilled in the art know that the constant 1 used
in this definition of eoffset can also be replaced by any
other value if it is identical for all columns or
frames. For reasons of simplified representation, this
will not be examined explicitly below. Furthermore, the
methods presented can be still further modified or
expanded, although the basic assumptions are retained.
If the puncturing rate is an odd-numbered fraction, for
example 1:5 or 1:9, this method produces the same
perfect puncturing pattern that would be applied
directly before interleaving by puncturing with the use
of the rate matching method- In other cases, adjacent
bits are never punctured, but a distance between
punctured bits can be greater than the others by up to
lcd(q,F)+1. This method can also be applied
correspondingly to bit repetitions. Although the
repetition of adjacent bits does not impair the
performance of the error correction code so strongly as
is the case when puncturing adjacent bits, it is
nevertheless advantageous to distribute repeated bits
as uniformly as possible.

The fundamental objective of this method is to achieve
a uniform spacing between the punctured bits in the
original sequence, while taking account, however, of
the constraint that the same number of bits are to be
punctured in the various frames. This is achieved by
virtue of the fact that the puncturing distance is
reduced by 1 in specific cases. The method presented is
optimum to the extent that it never reduces the
distance by more than 1 and reduces it only as often as
necessary. This yields the best possible puncturing
pattern subject to the constraints mentioned above.
The following example shows the use of the first set of
parameters, that is to say puncturing with 1:5 (figure
6) . The optimized method obviously not only avoids the
puncturing of adjacent bits, but moreover distributes
punctured bits with the same spacing in the original
sequence. In fact, the same characteristics are
achieved as if the puncturing had been carried out
directly after the coding and before the interleaving.
The aim now is to investigate the next case, that is to
say puncturing with 1: 8 (figure 7). Once again, the
puncturing of adjacent bits is avoided. In this case,
it is impossible to achieve uniformly spaced
puncturing, because then all the bits in an individual
frame would be punctured, which is completely
unacceptable. In this case, most of the distances
between adjacent bits are 7 (only 1 less than in the
case of an optimum distribution). In return, some
distances are greater (every eighth).
The changes are explained below that are applied in
order to improve the method for

the case of repetition. The above-described method is
obviously optimum for achieving a uniform distribution.
Surprisingly, however, this method can be further
improved for the case of repetition. This is possible
because certain differences exist between good
repetition patterns and puncturing patterns: in the
case of puncturing, it is particularly damaging to
puncture consecutive bits. Moreover, it should be
avoided that the spacing between consecutive punctured
bits is significantly smaller than the average
puncturing spacing. The reason for this is that
puncturing carried out more intensively or in a shorter
spacing locally increases the bit error rate
disproportionately, and this then impairs the overall
performance.
The repetition of consecutive bits does not lead to a
substantial worsening of the decoding results.
Expressed more generally, the performance is also not
substantially impaired when the spacing between
consecutive repetitions is distinctly smaller than the
mean repetition spacing. However, when the spacing is
locally distinctly higher, the improved decoding option
otherwise rendered possible by repetition is also not
present in this region. This signifies, in turn, a
locally increased bit error rate as in the case of the
abovementioned unfavorable puncturing. It is therefore
advantageous to use a slightly increased repetition
spacing more often than a significantly increased
spacing correspondingly more seldom. In order to fulfil
this optimization criterion, the method set forth above
shall be modified as follows for determining the
displacement of the repetition pattern in the
individual columns:

when the average puncturing spacing q is being
calculated, rounding down to the next smaller
whole number is not carried out, but rounding up
to the next greater whole number (if q is not
already itself integral) is.
When q is even, it is not reduced, but increased.
The formula set forth above in the simplified form then
looks as follows with these changes. (corresponding
changes can, of course, also be carried out in the case
of the first-presented form of the formula, or in the
case of any desired other representations, in order to
achieve the desired matching for repetition):
q: = (NC/(/N1-Nc/)])— here, [] signifies rounding up,
and // the absolute value.
-- avoid hitting the same column too early a second
time:
if q is even
then q = q + lcd(q, F)/F
-- here, led (q, F) signifies the greatest common
divisor of q and F
-- the greatest common divisor can easily be
calculated by bit manipulations when F is a power of
two.
-- For the same reason, calculations with p can
easily be carried out by binary fixed-point operations,
(or, alternatively, by integer arithmetic with the use
of displacement operations.
andif
-- calculate S, S signifies the displacement of the
pattern per column.

for i = 0 to F-1
S(RF ([i*q] mod F)) = ([i*q] div F) -- here, [ ]
signifies rounding down.
-- Rr(k) is the inversion of the first
interleaver, more precisely the inversion of the column
exchange operation of the first interleaver. This
function is itself inverse for the case of the UMTS
system being developed.
end for
The parameter eoffSet can then be calculated as follows:
eoffset (k) = ((2*S(k) * /Ni-Nc + 1) mod 2Nc
The puncturing/repetition patterns of the individual
columns k are displaced relative to one another by the
amount S(k). If use is made for the calculation of the
bits to be punctured/repeated of what is termed an
error distribution algorithm, this displacement can be
achieved by preloading the initial error value, as
shown above. Of course, other implementations are also
possible for achieving the displacement, in particular
in the case of a use of another puncturing method
inside a column.
There is a further difference between puncturing and
repetition. Even in theory, the puncturing rate can in
no case exceed 100% (meaning that every bit is
punctured). In practice, the decoding performance in
the case of puncturing rates that are higher than
approximately 20% (in special cases, perhaps 50%) is so
strongly impaired that such high puncturing rates are
avoided. However, no such constraints exist for the
repetition rate. A repetition rate of 100% (that is to
say each bit is transmitted twice) is

perfectly possible, and even higher repetition rates
are possible- Each bit can be repeated several times.
The more repetitions that are sent, the higher is the
probability of a correct decoding.
A repetition rate of 80% (that is to say 80% of the
bits are transmitted twice and 20% ground only
transmitted once (that is to say not repeated)) can
also be interpreted such that although each bit is
repeated (that is to say transmitted twice), 20% of the
bits (more precisely 20% of the original bits before
the doubling) are punctured. Thus, 20% of the bits are
transmitted with less energy by comparison with the
rest, and thus with a lower reliability. This is very
similar to the case in which 20% of the bits are
punctured.
In both cases, 20% of the bits are transmitted with a
lower reliability by comparison with the rest. However,
the difference in the reliability in the case of
puncturing (no information at all is available via the
punctured bit) is greater than in the case of exclusion
from the repetition, where the quality of the
information via the relevant bit is, after all, still
half as good as for the other bits.
Because of this equivalence of 20% puncturing and 80%
repetition, a puncturing pattern that is optimum for a
puncturing of 20% is also the optimum for a repetition
of 80% if the following substitution is undertaken:


For the case in which the puncturing is carried out
upstream of the first interleaver, a puncturing method
or repetition method, such as was described above and
is also provided for UMTS in TS25.212, will also
generate equivalent patterns in the two above-named
cases; however, the patterns will be displaced relative
to one another by a constant amount. However, if the
puncturing is not carried out until downstream of the
first interleaver (interframe interleaver), this
requires modification of the method. This is described
for the case of puncturing in the above-named article
R1-99641 (optimized displacement of the puncturing
patterns), or as above (optimized displacement of the
patterns for repetition)
The puncturing or repetition rate can be represented as
r = (Ni-Nc) / Nc
Nc being the number of bits before the rate matching,
and Ni being the number of bits after the rate
matching. We now define an "equivalent" rate for the
case of repetition (that is to say Ni > Nc) as:
re= ((Ni - Nc/2) mod Nc - Nc/2)/Nc
As regards the optimum displacement of the patterns
between the columns, a puncturing rate of 20% is
therefore equivalent to a repetition rate of 80%, 180%,
280% and so on. In exactly the same way, a repetition
rate of 30% is equivalent to a repetition rate of 130%,
230%, 330% and so on.
A further aspect of this invention is the finding that
the relative displacement of the puncturing patterns

in the individual columns can also be calculated on the
basis of this effective repetition rate re instead of
the actual repetition rate. Depending on whether re is
greater or less than 0 in this case, it is necessary
for this purpose to use the formula for this
calculation of the displacement for puncturing or
repetition.
As a further exemplary embodiment, the variable q can
also be calculated as the inverse of re:
q = Nc / [ (Ni - Nc/2) mod Nc - Nc/2) .
There are several possibilities for calculating Nc/2 if
Nc is odd. It is possible to round up, round down or
else calculate further with fractional values, that is
to say dispense with rounding. According to this
calculating method, the sign of q carries the
information as to whether puncturing or repetition must
be carried out. Thus, it may be necessary to calculate
the absolute value first before q is substituted in the
appropriate formula.
As a further exemplary embodiment, the formula for
calculating the displacements of the pattern can also
be calculated as follows. This formulation has the
additional advantage that there is no need to make any
distinction between puncturing and repetition, both
cases being covered by the same formula. It is within
the bounds of expert activity to specify further
formulas that define the displacement of the puncturing
patterns while. taking account of the principles
represented above.
q: = [Nc/((Ni-Nc/2) mod Nc - Nc/2) ]
-- here, [ ] signifies rounding up to the next greater
whole number, for example [1.5] = 2 and
[-1.5] = 1.

if q Is even - avoid hitting the same column too early
a second time
then q" = q + led (|q|, F)/F
here, led signifies the greatest common
divisor.
-- The greatest common divisor can easily be
calculated by bit manipulations when F is a power of
two.
-- q" is not a whole number, but a multiple of
1/8, or more generally a multiple of F.
-- || signifies the absolute value
else
q" = q
endif
- Calculate S(k), S signifies the displacement of the
pattern per column for the frame k. As shown above, for
the purpose of calculating the initial error value e,
S(k) can in the above-cited rate matching algorithm as
it is described in the UMTS Specification TS25.212.
for i = 0 to F-1
S(RF(/[i*g"]/ mod F)) - ([L*q"] / div F)
-- here, [ ] signifies rounding down.
end for
An equivalent puncturing/repetition rate re is
calculated in the above exemplary embodiment by modulo
operations. Alternatively, modulo operations can also
be used only to take account of multiples of 100% in
the case of the rate, and the decision as to whether
the rate is greater or less than 50% is implemented by
an interrogation. At the same time, it is always
possible to calculate q as a signed variable in order
to preserve the advantage

of the previous exemplary embodiment, that is to say
the uniform calculation of puncturing and Repetition.
In order to avoid divisions by 0, it may be necessary
on occasions to treat separately the case in which no
matching need be carried out. This results in the
following equivalent formulas:
Nc ? Ni,j
Ni - Nc ? delta Ni,j
S[n] -> S(PlFi(ni)) = S(RF(x))
F ? FI ]
R = (Ni - Nc) mod Nc -- here, x mod Nc is in the range
from 0 to Nc-1, that is to say -1 mod 10 = 9.
-- R is therefore the equivalent repetition rate
(which lies in the range of 0 to 50%) multiplied by Nc.
if R ? 0 and 2*R ? Nc
If the equivalent repetition rate is less than 50%,
repetition is present, then q > 0.
then q = [NC / R]
else
otherwise, puncturing is present, then q q = [Nc / (R - Nc)]
endif
-- q is a signed variable here.
if q is even
then q" = q + lcd(|q|, F) / F -- led {|q|, F)
signifying the greatest common divisor of |q| and F.
-- q" is not a whole number but a multiple of 1/8
or of 1/F.
else

q" = q
endif
for k = 0 to F - 1
S(RF (([k*q"]) mod F])) = (|Lk*q"] | div F)
end for
As already mentioned several times, the effect of the
column exchange is taken into account inside the
interleaver in the above-specified formulas. It may be
mentioned for the sake of completeness that the
principles described by these formulas can also be
described by equivalent notations that lead to an
equivalent result.
Figure 1 shows the resulting pattern for the proposed
repetition pattern for a repetition rate of 1:4.
Numbers printed in bold, or numbers at which arrows
begin or end denote bits to be repeated. The arrows
with thin outlines (for example, the arrow from 8 to
12) denote a spacing between adjacent repeated bits of
4, arrows drawn thinly (for example, the arrow from 12
to 17) denote the spacing 5, and the arrow with a thick
outline (for example the arrow from 39 to 40) denotes
the spacing 1.
For the purpose of comparison, figure 8 shows the same
case for the previously applied repetition method, as
presented in R1-99641, for example. The arrows with
thin outlines (for example, the arrow from 8 to 12)
denote a spacing between adjacent repeated bits of 4,
arrows drawn thinly (for example, the arrow from 12 to
15) denote the spacing 3, and the arrow with a thick
outline (for example, the arrow from 33 to 40) denotes
the spacing 7.

Comparing the two illustrations shows that the
repetition pattern within the scope of the invention
avoids a relatively large spacing between repeated bits
(7 in figure 8). Since, in particular, the large
spacings between repetitions effect an impairment of
the performance, and since the method according to the
invention avoids such large spacings, the application
of the method according to the invention is
advantageous.
The repetition method according to the invention can
therefore be used to generate virtually optimum
repetition patterns when the rate matching is applied
downstream of the first interleaver. The method is not
particularly complicated in this case, especially as it
need be applied only once per radio frame, and not for
each bit.

WE CLAIM B
1. Method for data rate matching,
- in which the data to be transmitted is first distributed in the form of bits through
a first interleaver to a set of frames,
- in which for data rate matching after interleaving a repetition process of such a type
is carried out. that in each frame the same number of bits get repeated;
- in which the repetition pattern used within a frame can be shifted and used also
within further frames of the set of frames; and
- in which bits to be repeated can be obtained with the help of a method that
involves the following steps:
a) determination of the whole number share q of the average repetition interval
with
q: = ([NC/(N, - Nc)]), whereby [ ] means rounding off, N, and Nc denote the
number of elements after and before the rate matching;
b) selection of a bit to be repeated in a first column;
c) selection of the next bit to be repeated in the next column, starting from the last
bit to be repeated in the previous column, in that starting with the last bit to be
repeated, the next bit is respectively selected at an interval q with respect to the
original sequence, as long as this does not lead to the repetition of a further bit
from a column, but a bit with altered interval with respect to q is selected;
d) repetition of step c) till a bit has been repeated once from all columns.
2. Method as per claim 1,
in which the shifting S(k) of the application of the repetition pattern to the frame k
can be obtained with the help of the following method:
calculation of the average repetition distance
q: = (f Nc/ (/Nj - Nc/) ]) - - here [ ] means rounding off and / / means the
absolute magnitude.
-- It should be avoided that the same column gets hit a second time too early.
If q is even

then q = q + led (q, F) /F
-- here led (q, F) denotes the highest common factor of q and F.
endif
calculation of S (k), of the shifting of the columns.
for i = 0 to F - 1
S (RF (/i *qVmod F)) = (/i *qVdiv F) -- here / J denotes rounding off.
— RF (k) is the reversal of the first nesting, more specifically reversal of the
column-exchange operation of the first nester.
end for
3. Method as per claim 1,
in which the shifting S (k) of the application of the repetition pattern to the frame
k can be obtained by means of the following method: calculation of the average
repetition distance
q: = (/"Nc/((Ni-Nc/2) mod Nc-Nc/2) 7
— here \ ] denotes rounding off to the next whole number, e.g. if one has [1.5] = 2
and [-1.5]= 1
if q is even - -avoid hitting the same column a second time too early
thenq" = q + lcd(|q|,F)/F
-- here led denotes the highest common factor.
-- q" is not a whole number, but a multiple of 1/8 or a multiple of F
-- || denotes the absolute magnitude
else
q" = q
endif
calculation of S (k), of the shifting of the column k:
for i = 0 to F-1
S (RF(//i *q"7/mod F)) = (//i *q"V/div F)
— here L J denotes rounding off

— Rp (k) is the reversal of the first interleaver more precisely reversal of the column

change operation of the first interleaver
end for
4. Method as per one of the previous claims.
in which bits to be repeated can be obtained by a method that involves the
following steps:
a) determination of the whole number share q of the average repetition interval
with
q: = ([Nc/(Ni - Nc)]), whereby [ ] means rounding off, N, and Nc denote the
number of elements after and before the rate matching;
b) selection of a bit to be repeated in a first column;
c) selection of the next bit to be repeated in the next column, starting from the last
bit to be repeated in the previous column, in that starting with the last bit to be
repeated, the next bit is respectively selected at interval q with respect to the
original sequence, as long as this does not lead to the repetition of a further bit
from a column, but a bit with altered interval with respect to q is selected;
d) repetition of step c) till a bit has been repeated once from all columns.
5. Method as per one of the claims 3 or 4,
in which for determining the next bit, the interval q + 1 is selected, as long as
using of the interval q leads to the fact that a column gets repeated twice.
6. Methods as per one of the claims 3 or 4,
in which for selecting the next bits, the interval q + 1 is selected, if using of the
interval q leads to the fact that a column is repeated twice.
7. Method as per claim 1,
in which the shifting S (k) of the application of the repetition pattern to the frames
k, contrary to the application of the repetition pattern to the frame k = 0, can be
obtained by the following steps:
a) Calculation of the average repetition distance q according to the following

equation:
q: = ([Nc/(/N1-Nc/)]),
whereby [] denotes rounding off / / denotes the absolute magnitude and
whereby Nc denotes the number of bits per column before rate matching and Ni
denotes the number of bits per column after rate matching;
b) calculation of a revised average repetition distance qrevised, if q is even,
according to the following equation:
qrevised = q + led (q, F) /F, whereby F denotes the number of column and led (q,
F) denotes the highest common factor of q and F;
c) setting of a variable i equals zero;
d) calculation s (k) according to the following equation:
S (RF (/i *q/mod F)) = (/i *q_/div F), whereby / /denotes rounding off and
whereby RF reverses a column exchange generated by the nester;
e) increasing of i by one;
f) repetition of steps e) and f) till i = F-I.
8. Method for data rate matching,
- in which the data to be transmitted is first distributed in the form of bits through
a first interleaver of frames,
- in which for data rate matching after nesting, a repetition process of such a type
is carried out, that in each frame the same number of bits get repeated;
- in which the repetition pattern used within a frame can be shifted and used also
within further frames of the set of frames; and
- in which the shifting S (k) of the application of the repetition pattern to the
frame k, contrary to the application of the repetition pattern of the frame k = 0, is
obtained with the help of the following steps:
a) Calculation of the average repetition distance q according to the following
equation:
q: = ([(/Nc-Nc/)]),

whereby [ ] denotes rounding off/ / denotes the absolute magnitude and
whereby Nc denotes the number of bits per column before rate matching and Ni
denotes the number of bits per column after rate matching;
b) calculation of a revised average repetition distance qrevised, if q is even,
according to the following equation:
qrevised = q + led (q, F) /F, whereby F denotes the number of columns and led (q,
F) denotes the highest common factor of q and F;
c) setting of a variable i equals zero;
d) calculation of S (k) according to the following equation:
S (RF (/i *q]Vnod F)) = (/i *q7div F), whereby [ ] denotes rounding off;
e) increasing of i by one;
f) repetition of the steps d) and e) till i = F-l (inclusive).
9. Data rate matching device, particularly a processor unit,
which is installed to conduct the method as per one of the claims 1 to 8.
10. Receiver device,
which is installed in such a way for receiving data resulting from a method for
data rate matching according to one of the claims I to 8, that during the receiver-
side processing, the transmitting-side data rate matching as per one of the claims 1
to 8 is taken into consideration.
Method and apparatus for transmitting data frames, and
a method and apparatus for data rate matching
By means of an interleaver, elements to be transmitted
are distributed over a plurality of radio frames and
repeated, the repetition being carried out in such a
way that, when put into its relationship with the
original arrangement of the elements before the
interleaving, the pattern prevents the spacing between
arbitrary consecutive repeated elements from being
substantially greater than the mean repetition spacing.

Documents:

IN-PCT-2002-414-KOL-(15-11-2012)-FORM-27.pdf

IN-PCT-2002-414-KOL-CORRESPONDENCE 1.1.pdf

IN-PCT-2002-414-KOL-CORRESPONDENCE.pdf

IN-PCT-2002-414-KOL-FORM-27.pdf

in-pct-2002-414-kol-granted-abstract.pdf

in-pct-2002-414-kol-granted-claims.pdf

in-pct-2002-414-kol-granted-correspondence.pdf

in-pct-2002-414-kol-granted-description (complete).pdf

in-pct-2002-414-kol-granted-drawings.pdf

in-pct-2002-414-kol-granted-examination report.pdf

in-pct-2002-414-kol-granted-form 1.pdf

in-pct-2002-414-kol-granted-form 13.pdf

in-pct-2002-414-kol-granted-form 18.pdf

in-pct-2002-414-kol-granted-form 2.pdf

in-pct-2002-414-kol-granted-form 3.pdf

in-pct-2002-414-kol-granted-form 5.pdf

in-pct-2002-414-kol-granted-gpa.pdf

in-pct-2002-414-kol-granted-letter patent.pdf

in-pct-2002-414-kol-granted-reply to examination report.pdf

in-pct-2002-414-kol-granted-specification.pdf

in-pct-2002-414-kol-granted-translated copy of priority document.pdf

IN-PCT-2002-414-KOL-PA 1.1.pdf

IN-PCT-2002-414-KOL-PA.pdf


Patent Number 213792
Indian Patent Application Number IN/PCT/2002/414/KOL
PG Journal Number 03/2008
Publication Date 18-Jan-2008
Grant Date 16-Jan-2008
Date of Filing 27-Mar-2002
Name of Patentee SIEMENS AKTIENGESELLSCHAFT
Applicant Address WITTELSBACHERPLATZ 2, 80333 MUNICH
Inventors:
# Inventor's Name Inventor's Address
1 RAAF BERNHARD MAXHOFSTRASSE 62 81475 MUNICH
PCT International Classification Number H04L 1/00
PCT International Application Number PCT/EP00/09174
PCT International Filing date 2000-09-19
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 99119188.3 1999-10-07 Germany