-
2007-11-27
10/241,966
2002-09-12
US 7,301,930 B2
2007-11-27
-
-
Hassan Kizou | Brian T O'Connor
2025-07-30
An encoder and method for efficient synchronization channel encoding in UTRA TDD mode by: producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix; producing values sk=2a2k+1+ak;k=0, 1, 2, 3, and associated values b0,b1,b2; and producing a value Sssc associated with the code group, where Sssc=(b0cπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j). This provides an efficient encoding architecture for the synchronization channel in UTRA TDD mode; and, in addition, by simple manipulation of the generation matrix, a higher chip rate signal may be signalled while still preserving the signalling information for the lower chip rate.
Get notified when new applications in this technology area are published.
H04B7/216 IPC
Radio transmission systems, i.e. using radiation field; Relay systems; Active relay systems; Multiple access Code division or spread-spectrum multiple access [CDMA, SSMA]
This invention relates to wireless communication networks and particularly to UTRA (Universal Mobile Telephone System Terrestrial Radio Access) networks operating in TDD (Time Division Duplex) mode.
In UTRA TDD mode the synchronisation channel (SCH) has two functions. The primary function is to provide a signal that enables a ‘UE’ (user equipment, such as a wireless terminal) to search for and identify a ‘Node B’ (i.e, a wireless Base Station of a UMTS system). The secondary function is to provide sufficient information to allow a UE to demodulate a P-CCPCH (Primary Common Control Physical CHannel) transmission and obtain the system information, sent on the BCH (Broadcast Channel) transport channel which is carried by the P-CCPCH, needed in order to be able to communicate with the network.
There are two cases of SCH and P-CCPCH allocation as follows:
Considering a network where multi-chip rates are supported, in an initial start-up condition, the UE will not be aware of the chip rate that is available. To cope with this situation, it is known for the SCH to be always transmitted at a fixed chip rate (e.g., 3.84Mcps), and for the chip rate being used in the cell by the other transport channels to be signalled to the UEs by using the secondary synchronisation code, SSC (by modulating the secondary sequences).
Heretofore, this has been done by storing code group and frame position information defining the codes in tables in memory in the network and UE. However, the amount of information needing to be stored in this way may be considerable.
A need therefore exists for efficient synchronisation channel encoding in UTRA TDD mode wherein the abovementioned disadvantage(s) may be alleviated.
In accordance with a first aspect of the present invention there is provided a method for efficient synchronisation channel encoding in UTRA TDD mode, comprising:
producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix,
producing values sk=2a2k+1+a2k; k=0, 1, 2, 3, and associated values b0,b1,b2, and
producing a value Sssc associated with the code group, where Sssc=(b0cπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j).
In accordance with a second aspect of the present invention there is provided a method for efficient synchronisation channel encoding in UTRA TDD mode, comprising:
In accordance with a third aspect of the present invention there is provided an encoder for efficient synchronisation channel encoding in UTRA TDD mode, comprising:
means for producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix,
means for producing values sk=2a2k+1+a2k; k=0, 1, 2, 3, and associated values b0,b1,b2, and
means for producing a value Sssc associated with the code group, where Sssc=(b0cπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group and b0,b1,b2ε(±1,±j).
In accordance with a fourth aspect of the present invention there is provided an encoder for efficient synchronisation channel encoding in UTRA TDD mode, comprising:
One encoder and method for efficient synchronisation channel encoding in UTRA TDD mode incorporating the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
FIG. 1 shows in schematic form the format of SCH in UTRA TDD mode;
FIG. 2 shows in tabular form code allocation for CASE 1;
FIG. 3 shows in tabular form code allocation for CASE 2; and
FIG. 4 shows in block schematic form an encoder incorporating the invention.
The general format of the SCH is shown schematically in FIG. 1. As shown, the primary synchronisation code (PSC), Cp, is a real-valued sequence of length 256 chips, transmitted at power PPSC. The secondary synchronisation code (SSC), Cs,i(i=1, 2, 3), of length 256 is transmitted simultaneously with the PSSC; the total power of the SSC is set to Pssc. In addition these codes are multiplied by a complex value, bj(j=0, 1, 2). The subscript s in Cs,i refers to a code set, of which there 32, as specified in the technical specification ‘3GPP TS 25.223’ publicly available on the website (www.3gpp.org) of the 3rd Generation Partnership Project. The code sets, s, in conjunction with the complex multiplier values, bj, are used to transfer the information bits to the UE.
The location of the SCH relative to the beginning of the time slot is defined by toffset,n. It is calculated as follows:
t
offset
,
n
=
{
n
·
T
c
⌊
976
-
256
15
⌋
n
<
16
(
976
+
512
+
(
n
-
16
)
⌊
976
-
256
15
⌋
)
T
c
n
≥
16
which can be simplified to:
t
offset
,
n
=
{
n
·
48
·
T
c
n
<
16
(
720
+
n
·
48
)
T
c
n
≥
16
where Tc is the chip duration and n=0, 1, . . . , 31. The value of n is related to the code group and is obtained by demodulating the information on the SSC.
Encoding Information on SSC
The three codes that make up the SSC are QPSK (Quadrature Phase Shift Key) modulated and transmitted in parallel with the PSC. The QPSK modulation carries the following information:
The SSCs are partitioned into two code sets for Case 1 and four code sets for Case 2. The set is used to provide the following information:
| Code Set Allocation for CASE 1 |
| Code Set | Code Group | |
| 1 | 0-15 | |
| 2 | 16-31 | |
The code group and frame position information is provided by modulating the secondary codes in the code set.
| Code Set Allocation for CASE 2 |
| Code Set | Code Group | |
| 1 | 0-7 | |
| 2 | 8-15 | |
| 3 | 16-23 | |
| 4 | 24-31 | |
The following SCH codes are allocated for each code set:
FIG. 2 shows a table illustrating code allocation for CASE 1.
It may be noted that the code construction for code groups 0 to 15 using only the SCH codes from code set 1 is shown. It will be understood that the construction for code groups 16 to 31 using the SCH codes from code set 2 is done in the same way.
Code Allocation for CASE 2
FIG. 3 shows a table illustrating code allocation for CASE 2.
It may be noted that the code construction for code groups 0 to 15 using the SCH codes from code sets 1 and 2 is shown. The construction for code groups 16 to 31 using the SCH codes from code sets 3 and 4 is done in the same way.
It will be understood that the conventional approach is to store the information defined in the tables of FIG. 2 and FIG. 3 in memory in the network and UE. It will be appreciated that, using this conventional approach, the amount of information needing to be stored may be considerable.
A novel procedure, which simplifies the above mapping process, is now presented.
Efficient Encoder for CASE 1
For ease of explanation, the following notation is introduced. If C=(cπ(0),cπ(1),cπ(2)) represents the permutation of the codes in the code set, where π is the permutation, then the SSC associated with a code group is given by the component-wise product
Sssc=bC
where Sssc=(b0cπ(0),b1cπ(1),b2cπ(2)) and b0,b1,b2ε(±1,±j).
Let u=(u0,u1,u2,u3,u4)T—the superscript T indicating matrix transposition—be the binary representation of the code group number, and define the following generator matrix
G
1
=
[
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
0
0
]
with rows labelled g01,g11,g21,g31. We define a binary codeword as
a=dG1+z modulo-2
where d=(f,u0,u1,u2)T,
f
=
{
0
Frame1
1
Frame2
and z=u3(u2+1)g31) reduced modulo-2. We map the elements of the codeword, a, pairwise to the set of integers (0, 1, 2, 3) using the expression
sk=2a2k+1+a2k; k=0, 1, 2, 3
where the sequence s=(s0,s1,s2) has an associated complex sequence b=(js0,js1,js2).
The choice of code set and permutation is given by
| TABLE 1 | ||
| Code | Code Set | |
| (u4, u3, u2) | Group | Permutation |
| 000 | 0→3 | c1c3c5 |
| 001 | 4→7 | c1c3c5 |
| 010 | 8→11 | c1c5c3 |
| 011 | 12→15 | c3c5c1 |
| 100 | 16→19 | c10c13c14 |
| 101 | 20→23 | c10c13c14 |
| 110 | 24→27 | c10c14c13 |
| 111 | 28→31 | c13c14c10 |
Define the following generator matrix
G
2
=
[
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
]
with rows labelled g02,g12.g22,g32. We define a binary codeword as
a=dG2+z modulo-2
where d=(K,f,u0,u1)T,
K
=
{
0
1
slot
k
slot
k
+
1
and z=u2(u1+1)g32 reduced modulo-2. The process follows in identical manner to case 1 with the exception that the permutation and code set map is changed to represent case 2, as shown below.
| TABLE 2 | ||
| Code | Code Set | |
| (u4, u3, u2, u1) | Group | Permutation |
| 0000 | 0→1 | c1c3c5 |
| 0001 | 2→3 | c1c3c5 |
| 0010 | 4→5 | c1c5c3 |
| 0011 | 6→7 | c3c5c1 |
| 0100 | 8→9 | c10c13c14 |
| 0101 | 10→11 | c10c13c14 |
| 0110 | 12→13 | c10c14c13 |
| 0111 | 14→15 | c13c14c10 |
| 1000 | 16→17 | c0c6c12 |
| 1001 | 18→19 | c0c6c12 |
| 1010 | 20→21 | c0c12c6 |
| 1011 | 22→23 | c6c12c0 |
| 1100 | 24→25 | c4c8c15 |
| 1101 | 26→27 | c4c8c15 |
| 1110 | 28→29 | c4c15c8 |
| 1111 | 30→31 | c8c15c4 |
Thus, it will be understood that only the data in the above tables 1 and 2 needs to be stored in memory, in order to allow the necessary secondary synchronisation channel encoding to be effected, following the encoding process described above, rather than having to store the data in tables of FIG. 2 and FIG. 3 as in the prior art.
An efficient encoder 400 for carrying out the above processes for CASE 1 and CASE 2 is shown generally in FIG. 4. As can be seen in this figure, in block step 410 the binary codewords a=dG+z modulo-2 are calculated. Next, in block 420, the expressions sk=2a2k+1+a2k; k=0, 1, 2, 3 are calculated. Finally, in block 430, the secondary synchronisation codes SSSC=(b0cπ(0),b1cπ(1),b2cπ(2)) are calculated.
Signalling Higher Chip Rate
As will be explained below, modification of the generator matrix allows encoding of the chip rate used in the cell.
Let Cr denote the chip rate, where
C r = { 0 3.84 Mcps 1 7.68 Mcps
We have the following:
CASE 1:
Define the following generator matrix
G
1
=
[
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
0
0
]
and a binary codeword as
a=dG1+z modulo-2
where d=(Cr,f,u0,u1,u2)T and z=u3(u2+1)g41. We note that when Cr is 0 the codeword produced by the generator matrix is unchanged. When Cr is 1, denoting the higher chip rate, the third element of the sequence b=(js0,js1,js2) becomes imaginary rather than real.
CASE 2:
Define the following generator matrix
G
2
=
[
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
]
and a binary codeword as
a=dG2+z modulo-2
where d=(Cr,K,f,u0,u1)T and z=u2(u1+1)g42. We note that when Cr is 0 the codeword produced by the generator matrix is unchanged. When Cr is 1, denoting the higher chip rate, the third element of the sequence b=(js0,js1,js2) becomes imaginary rather than real.
It will be appreciated that the process for encoding described above will typically be carried out in software running on a processor (not shown), and that the software may be provided as a computer program element carried on any suitable data carrier (not shown) such as a magnetic or optical computer disc.
It will be appreciated that the encoder described above will typically be incorporated in a base station (‘Node B’—not shown) and a mobile station (‘UE’—not shown) of a UMTS system, with complementary decoding being provided in the ‘UE’ and ‘Node B’ respectively.
It will be understood that the encoder and method for efficient synchronisation channel encoding in UTRA TDD mode described above provides the following advantages:
1. A computer-implemented method for an encoder, for efficient synchronization channel (SCH) encoding in time division duplex (TDD) mode, comprising:
producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded for synchronization channel encoding, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix;
producing values sk for synchronization channel encoding, and associated values b0,b1,b2, wherein sk is a function of a2k+1 and a2k; k=0, 1, 2, 3; and
producing a value SSSC associated with the code group for synchronization channel encoding, where Sssc=(b0cπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j).
2. The method of claim 1, wherein the generator matrix in a first case is based upon the matrix:
[ 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 ] .
3. The method of claim 1, wherein the generator matrix in a second case is based upon the matrix:
[ 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 ] .
4. The method of claim 1 wherein in a first case:
d comprises (f,u0,u1,u2), where f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u3(u2+1)g3 reduced modulo-2, where g3 represents a row of the generator matrix.
5. The method of claim 1 wherein in a second case:
d comprises (K,f,u0,u1), where K is 0 for a kth slot and 1 for a (k+1)th slot, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u2(u1+1)g3 reduced modulo-2, where g3 represents a row of the generator matrix.
6. The method of claim 1, wherein the values sk=2a2k+1+a2k; k=0, 1, 2, 3.
7. A computer-implemented method for an encoder, for efficient synchronization channel (SCH) encoding in time division duplex (TDD) mode, comprising:
producing a codeword from a predetermined code group to be encoded for synchronization channel encoding, a predetermined generator matrix G, and a function of the code group number and a row of the generator matrix, and
producing a value Sssc associated with the code group for synchronization channel encoding, where Sssc=(b0cπ(0), b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j),
wherein the generator matrix has values such that a parameter produced therefrom changes between a first value indicating a first chip rate and a second value indicating a second chip rate.
8. The method of claim 7, wherein the generator matrix in a first case is based upon the matrix:
[ 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0 ] .
9. The method of claim 7, wherein the generator matrix in a second case is based upon the matrix:
[ 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0 ] .
10. The method of claim 7, wherein the codeword a, is represented by a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix.
11. The method of claim 10 wherein in a first case:
d comprises (Cr,f,u0,u1,u2), where Cr represents a bit indicative of chip rate, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u3(u2+1)g4 reduced modulo-2, where g4 represents a row of the generator matrix.
12. The method of claim 10 wherein in a second case:
d comprises (Cr,K,f,u0,u1), where Cr represents a bit indicative of chip rate, K is 0 for a kth slot and 1 for a (k+1)th slot, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u2(u1+1)g4 reduced modulo-2, where g4 represents a row of the generator matrix.
13. An encoder for efficient synchronisation channel encoding in UTRA TDD mode, comprising:
means for producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix,
means for producing values sk, and associated values b0,b1,b2, wherein sk is a function of a2k+1 and a2k; k=0, 1, 2, 3, and
means for producing a value Sssc associated with the code group, where Sssc=(bocπ(0),b1cπ(1),b2Cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j).
14. The encoder of claim 13, wherein the generator matrix in a first case is based upon the matrix:
[ 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 ] .
15. The encoder of claim 13, wherein the generator matrix in a second case is based upon the matrix:
[ 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 ] .
16. The encoder of claim 13 wherein in a first case:
d comprises (f,u0,u1,u2), where f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u3(u2+1)g3 reduced modulo-2, where g3 represents a row of the generator matrix.
17. The encoder of claim 13 wherein in a second case:
d comprises (K,f,u0,u1), where K is 0 for a kth slot and 1 for a (k+1)th slot, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u2(u1+1)g3 reduced modulo-2, where g3 represents a row of the generator matrix.
18. The method of claim 13, wherein the values sk=2a2k+1+a2k; k=0, 1, 2, 3.
19. An encoder for efficient synchronisation channel encoding in Universal Terrestrial Radio Access time division duplex (UTRA TDD) mode, comprising:
means for producing a codeword from a predetermined code group to be encoded, a predetermined generator matrix G, and a function of the code group number and a row of the generator matrix, and
means for producing a value Sssc associated with the code group, where Sssc=(bocπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j),
wherein the generator matrix has values such that a parameter produced therefrom changes between a first value indicating a first chip rate and a second value indicating a second chip rate.
20. The encoder of claim 19, wherein the generator matrix in a first case is based upon the matrix:
[ 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 ] .
21. The encoder of claim 19, wherein the generator matrix in a second case is based upon the matrix:
[ 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 ] .
22. The encoder of claim 19, wherein the codeword a, is represented by a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents a predetermined generator matrix, and z represents a function of the code group number and a row of the generator matrix.
23. The encoder of claim 22 wherein in a first case:
d comprises (Cr,f,u0,u1,u2), where Cr represents a bit indicative of chip rate, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u3(u2+1)g4 reduced modulo-2, where g4 represents a row of the generator matrix.
24. The encoder of claim 22 wherein in a second case:
d comprises (Cr,K,f,u0,u1), where Cr represents a bit indicative of chip rate, K is 0 for a kth slot and 1 for a (k+1)th slot, f is 0 for a first frame and 1 for a second frame, u0,u1,u2 represent bits from a binary representation of the code group number, and
z=u2(u1+1)g4 reduced modulo-2, where g4 represents a row of the generator matrix.
25. A wireless base station for use for efficient synchronization channel encoding in time division duplex mode in a UMTS system, comprising:
means for producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, G represents predetermined generator matrix, and z repesents a function of the code group number and a row of the generator matrix,
means for producing values sk, and associated values b0,b1,b2, wherein sk is a function of a2k+1 and a2k; k=0, 1, 2, 3, and
means for producing a value Sssc , and associated with the code group, where Sssc=(bocπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j).
26. A computer readable medium encoded with program code for performing the method of:
producing a codeword a, where a=dG+z modulo-2, where d represents a predetermined code group to be encoded, for synchonization channel encoding, G represents a predetermined generator matrix, and z repesents a function of the code group number and a row of the generator matrix,
producing values sk, for synchonization channel encoding, and associated values b0,b1,b2, wherein sk is a function of a2k+1 and a2k; k=0, 1, 2, 3, and
producing a value Sssc associated with the code group for for synchonization channel encoding, where Sssc=(bocπ(0),b1cπ(1),b2cπ(2)), cπ represents a code within the code group, and b0,b1,b2ε(±1,±j).