16K mode interleaver in a digital video broadcasting (DVB) standard
RE048147 ยท 2020-08-04
Assignee
Inventors
- Matthew Paul Athol Taylor (Ringwood, GB)
- Samuel Asangbeng Atungsiri (Basingstoke, GB)
- John Nicholas Wilson (Swallowfield, GB)
Cpc classification
H04L5/0044
ELECTRICITY
International classification
H04K1/10
ELECTRICITY
Abstract
A data processing apparatus maps input symbols to be communicated onto a predetermined number of sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol. The data processor includes an interleaver memory which reads-in the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals. The interleaver memory reads-out the data symbols on to the OFDM sub-carriers to effect the mapping, the read-out being in a different order than the read-in, the order being determined from a set of addresses, with the effect that the data symbols are interleaved on to the sub-carrier signals. The set of addresses are generated from an address generator which comprises a linear feedback shift register and a permutation circuit.
Claims
.[.1. A data processing apparatus configured to map input symbols to be communicated onto a predetermined number of sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol, the data processing apparatus comprising: an interleaver configured to read-into a memory the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals, and to read-out of the memory the data symbols for the OFDM sub-carriers to effect the mapping, the read-out being in a different order than the read-in, the order being determined from a set of addresses, with the effect that the data symbols are interleaved on the sub-carrier signals, and an address generator configured to generate the set of addresses, an address being generated for each of the input symbols to indicate one of the sub-carrier signals onto which the data symbol is to be mapped, the address generator comprising: a linear feedback shift register including a predetermined number of register stages and being configured to generate a pseudo-random bit sequence in accordance with a generator polynomial, a permutation circuit configured to receive the content of the shift register stages and to permute the bits present in the register stages in accordance with a permutation order to form an address of one of the OFDM subcarriers, and a control unit configured in combination with an address check circuit to re-generate an address when a generated address exceeds a predetermined maximum valid address, wherein the predetermined maximum valid address is approximately sixteen thousand, the linear feedback shift register has thirteen register stages with a generator polynomial for the linear feedback shift register of R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], and the permutation order forms, with an additional bit, a fourteen bit address R.sub.i[n] for the i-th data symbol from the bit present in the n-th register stage R.sub.i[n] in accordance with a code defined by the table: TABLE-US-00006 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions. .].
.[.2. The data processing apparatus as claimed in claim 1, wherein the predetermined maximum valid address is a value substantially between twelve thousand and sixteen thousand three hundred and eighty four..].
.[.3. The data processing apparatus as claimed in claim 1, wherein the OFDM symbol includes pilot sub-carriers, which are arranged to carry known symbols, and the predetermined maximum valid address depends on a number of the pilot sub-carrier symbols present in the OFDM symbol..].
.[.4. The data processing apparatus as claimed in claim 1, wherein the interleaver memory is configured to effect the mapping of the input data symbols onto the sub-carrier signals for even OFDM symbols by reading in the data symbols according to the set of addresses generated by the address generator and reading out in a sequential order, and for odd OFDM symbols by reading in the symbols into the memory in a sequential order and reading out the data symbols from the memory in accordance with the set of addresses generated by the address generator..].
.[.5. The data processing apparatus as claimed claim 1, wherein the permutation circuit is configured to change the permutation code, which permutes the order of the bits of the register stages to form the addresses from one OFDM symbol to another..].
.[.6. The data processing apparatus as claimed in claim 5, wherein the permutation circuit is configured to cycle through a sequence of different permutation codes for successive OFDM symbols..].
.[.7. The data processing apparatus as claimed in claim 6, wherein the sequence of permutation codes comprises two permutation codes, which are TABLE-US-00007 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions and TABLE-US-00008 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 7 9 5 3 11 1 4 0 2 12 10 8 6 positions. .].
.[.8. The data processing apparatus as claimed in claim 5, wherein for both odd OFDM symbols and even OFDM symbols the interleaver is configured to read-into the memory the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals in a sequential order, and to read-out of the memory the data symbols for the OFDM sub-carriers to effect the mapping according to the set of addresses generated by the address generator..].
.[.9. A transmitter for transmitting data using Orthogonal Frequency Division Multiplexing (OFDM), the transmitter including the data processing apparatus according to claim 1..].
.[.10. The transmitter as claimed in claim 9, wherein the transmitter is configured to transmit data in accordance with a Digital Video Broadcasting standard such as including the Digital Video Broadcasting-Terrestrial standard, the Digital Video Broadcasting-Handheld standard, or the Digital Video Broadcasting-Terrestrial2 standard..].
.[.11. A method of mapping input symbols to be communicated onto a predetermined number of sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol, the method comprising; reading-into a memory the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals, reading-out of the memory the data symbols for the OFDM sub-carriers to effect the mapping, the read-out being in a different order than the read-in, the order being determined from a set of addresses, with the effect that the data symbols are interleaved on the sub-carrier signals, and generating the set of addresses, an address being generated for each of the input symbols to indicate one of the sub-carrier signals onto which the data symbol is to be mapped, the generating the set of addresses comprising: using a linear feedback shift register including a predetermined number of register stages to generate a pseudo-random bit sequence in accordance with a generator polynomial, using a permutation circuit configured to receive the content of the shift register stages to permute the bits present in the register stages in accordance with a permutation order to form an address, and re-generating an address when a generated address exceeds a predetermined maximum valid address, wherein the predetermined maximum valid address is approximately sixteen thousand, the linear feedback shift register has thirteen register stages with a generator polynomial for the linear feedback shift register of R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], and the permutation order forms, with an additional bit, a fourteen bit address R.sub.i[n] for the i-th data symbol from the bit present in the n-th register stage R.sub.i[n] in accordance with a code defined by the table: TABLE-US-00009 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions. .].
.[.12. The method as claimed in claim 11, wherein the predetermined maximum valid address is a value substantially between twelve thousand and sixteen thousand three hundred and eighty four..].
.[.13. The method as claimed in claim 11, wherein the OFDM symbol includes pilot sub-carriers, which are arranged to carry known symbols, and the predetermined maximum valid address depends on a number of the pilot sub-carrier symbols present in the OFDM symbol..].
.[.14. The method as claimed in claim 11, wherein the using a permutation circuit to receive the content of the shift register stages and permuting the bits present in the register stages in accordance with a permutation code to form an address, includes changing the permutation code, which permutes the order of the bits of the register stages to form the addresses, from one OFDM symbol to another..].
.[.15. The method as claimed in claim 14, wherein the changing the permutation code, which permutes the order of the bits of the register stages to form the addresses, from one OFDM symbol to another includes cycling through a sequence of different permutation codes for successive OFDM symbols..].
.[.16. The method as claimed in claim 15, wherein the sequence of permutation codes comprises two permutation codes, which are TABLE-US-00010 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions and TABLE-US-00011 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 7 9 5 3 11 1 4 0 2 12 10 8 6 positions. .].
.[.17. The method as claimed in claim 14, wherein the reading-into the memory the predetermined number of data symbols from the OFDM sub-carrier signals, includes for both odd OFDM symbols and even OFDM symbols reading in the data symbols into the memory the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals in a sequential order, and the reading-out of the memory the data symbols for the OFDM sub-carriers, includes for both odd OFDM symbols and even OFDM symbols reading-out of the memory the data symbols for the OFDM sub-carriers to effect the mapping according to addresses generated by the address generator..].
.[.18. A method of transmitting data symbols via a predetermined number of sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol, the method comprising; receiving a predetermined number of data symbols for mapping onto the predetermined number of sub-carrier signals, reading-into a memory the predetermined number of data symbols for mapping onto the OFDM sub-carrier signals, reading-out of the memory the data symbols for the OFDM sub-carriers to effect the mapping, the read-out being in a different order than the read-in, the order being determined from a set of addresses, with the effect that the data symbols are interleaved on the sub-carrier signals, and generating the set of addresses, an address being generated for each of the input symbols to indicate one of the sub-carrier signals onto which the data symbol is to be mapped, the generating the set of addresses comprising: using a linear feedback shift register including a predetermined number of register stages to generate a pseudo-random bit sequence in accordance with a generator polynomial, using a permutation circuit configured to receive the content of the shift register stages to permute the bits present in the register stages in accordance with a permutation order to form an address, and re-generating an address when a generated address exceeds a predetermined maximum valid address, wherein the predetermined maximum valid address is approximately sixteen thousand, the linear feedback shift register has thirteen register stages with a generator polynomial for the linear feedback shift register of R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], and the permutation order forms, with an additional bit, a fourteen bit address R.sub.i[n] for the i-th data symbol from the bit present in the n-th register stage R.sub.i[n] in accordance with a code defined by the table: TABLE-US-00012 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions. .].
.[.19. An address generator for use with transmission of data symbols interleaved onto sub-carriers of an Orthogonal Frequency Division Multiplexed symbol, the address generator being configured to generate a set of addresses, each address being generated for each of the data symbols to indicate one of the sub-carrier signals onto which the data symbol is to be mapped, the address generator comprising: a linear feedback shift register including a predetermined number of register stages and being configured to generate a pseudo-random bit sequence in accordance with a generator polynomial, a permutation circuit configured to receive the content of the shift register stages and to permute the bits present in the register stages in accordance with a permutation order to form an address, and a control unit configured in combination with an address check circuit to re-generate an address when a generated address exceeds a predetermined maximum valid address, wherein the predetermined maximum valid address is approximately sixteen thousand, the linear feedback shift register has thirteen register stages with a generator polynomial for the linear feedback shift register of R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], and the permutation order forms, with an additional bit, a fourteen bit address R.sub.i[n] for the i-th data symbol from the bit present in the n-th register stage R.sub.i[n] in accordance with the table: TABLE-US-00013 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions. .].
.Iadd.20. A data processing apparatus configured to map symbols received from sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol into an output symbol stream, the data processing apparatus comprising: de-interleaver circuitry configured to read, into a memory, data symbols from the OFDM sub-carrier signals, and to read out of the memory the data symbols into the output symbol stream to effect the mapping, the read out being in a different order than the read in, the order being determined from a set of addresses, so that the data symbols are de-interleaved from the OFDM sub-carrier signals, and address generating circuitry configured to generate the set of addresses, an address being generated for each of the received data symbols to indicate the OFDM sub-carrier signal from which the received data symbol is to be mapped into the output symbol stream, wherein the address generating circuitry is further configured to form an address comprising 14 bits with an offset, when a maximum valid address is approximately sixteen thousand for a 16k mode, and the address generating circuitry is further configured to generate a first 13 bits of the 14 bits in accordance with a first generator polynomial being R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], with a fourteenth bit of the 14 bits being a toggle bit..Iaddend.
.Iadd.21. The data processing apparatus as claims in claim 20, wherein the address generating circuitry is further configured to regenerate an address when the generated address exceeds the maximum valid address..Iaddend.
.Iadd.22. The data processing apparatus as claimed in claim 20, wherein the address generating circuitry is further configured to determine the offset based on a random sequence..Iaddend.
.Iadd.23. The data processing apparatus as claimed in claim 20, wherein a number of the sub-carrier signals is in accordance with one of a plurality of modes including an 8k mode, the 16k mode and a 32k mode; and the address generating circuitry is further configured to determine the offset in accordance with a generator polynomial to be used with one of the plurality of modes..Iaddend.
.Iadd.24. The data processing apparatus as claimed in claim 20, wherein the address generating circuitry is further configured to generate the first 13 bits of the 14 bits in accordance with a first permutation and a second permutation..Iaddend.
.Iadd.25. The data processing apparatus as claimed in claim 24, wherein the first permutation and the second permutation are defined according to a table: TABLE-US-00014 RI bit position 12 11 10 9 8 7 6 5 4 3 2 1 0 First 8 4 3 2 0 11 1 5 12 10 6 7 9 permutation Second 7 9 5 3 11 1 4 0 2 12 10 8 6 permutation. .Iaddend.
.Iadd.26. The data processing apparatus as claimed in claim 24, wherein the first permutation and the second permutation are changed from one symbol to another..Iaddend.
.Iadd.27. A receiver configured to receive data using Orthogonal Frequency Division Multiplexing (OFDM), the receiver comprising: the data processing apparatus of claim 20; and a recovering circuit configured to correct errors and recover an estimate of source data..Iaddend.
.Iadd.28. A method of mapping symbols received from sub-carrier signals of an Orthogonal Frequency Division Multiplexed (OFDM) symbol into an output symbol stream, the method comprising: de-interleaving by reading into a memory data symbols from the OFDM sub-carrier signals, and reading out of the memory the data symbols into the output symbol stream to effect the mapping, the reading out being in a different order than the reading in, the order being determined from a set of addresses, with the effect that the data symbols are de-interleaved from the OFDM sub-carrier signals, and generating the set of addresses, an address being generated for each of the received data symbols to indicate the OFDM sub-carrier signal from which the received data symbol is to be mapped into the output symbol stream, wherein the generating includes forming an address comprising 14 bits with an offset when a maximum valid address is approximately sixteen thousand for a 16K mode, and generating the first 13 bits of the 14 bits in accordance with a first generator polynomial being R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11], with the fourteenth bit of the 14 bits being a toggle bit..Iaddend.
.Iadd.29. The method of claim 28, wherein the generating of the set of addresses comprises regenerating an address when the generated address exceeds the maximum valid address..Iaddend.
.Iadd.30. The method of claim 28, wherein the offset is determined based on a random sequence..Iaddend.
.Iadd.31. The method of claim 28, wherein a number of the sub-carrier signals is in accordance with one of a plurality of modes including an 8k mode, the 16k mode and a 32k mode; and the generating of the set of addresses comprises determining the offset in accordance with a generator polynomial to be used with one of the plurality of modes..Iaddend.
.Iadd.32. The method of claim 28, wherein the generating of the set of addresses comprises generating the first 13 bits of the 14 bits in accordance with a first permutation and a second permutation..Iaddend.
.Iadd.33. The method of claim 32, wherein the first permutation and the second permutation are defined according to a table: TABLE-US-00015 Ri bit position 12 11 10 9 8 7 6 5 4 3 2 1 0 First 8 4 3 2 0 11 1 5 12 10 6 7 9 permutation Second 7 9 5 3 11 1 4 0 2 12 10 8 6 permutation. .Iaddend.
.Iadd.34. The method of claim 32, wherein the first permutation and the second permutation are changed from one symbol to another..Iaddend.
.Iadd.35. The method of claim 28, further comprising: correcting errors and recovering an estimate of source data..Iaddend.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) Embodiments of the present invention will now be described by way of example only with reference to the accompanying drawings, wherein like parts are provided with corresponding reference numerals, and in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
DESCRIPTION OF PREFERRED EMBODIMENTS
(13) It has been proposed that the number of modes, which are available within the DVB-T2 standard should be extended to include a 1k mode, a 16k mode and a 32k mode. The following description is provided to illustrate the operation of a symbol interleaver in accordance with the present technique, although it will be appreciated that the symbol interleaver can be used with other modes and other DVB standards.
(14)
(15) As shown in
(16) The data cells are received by a frame builder 32, with data cells produced by branch B etc in
(17) TABLE-US-00002 Number of Sub-carriers Adapted from DVB-T/H Mode Sub-carriers 1k 756 2k 1512 4k 3024 8k 6048 16k 12096 32k 24192
(18) Thus in one example, the number of sub-carriers for the 16k mode is twelve thousand and ninety six. For the DVB-T2 system, the number of sub-carriers per OFDM symbol can vary depending upon the number of pilot and other reserved carriers. Thus, in DVB-T2, unlike in DVB-T, the number of sub-carriers for carrying data is not fixed. Broadcasters can select one of the operating modes from 1k, 2k, 4k, 8k, 16k, 32k each providing a range of sub-carriers for data per OFDM symbol, the maximum available for each of these modes being 1024, 2048, 4096, 8192, 16384, 32768 respectively. In DVB-T2 a physical layer frame is composed of many OFDM symbols. Typically the frame starts with one or more pre-amble or P2 OFDM symbols, which are then followed by a number payload carrying OFDM symbols. The end of the physical layer frame is marked by a frame closing symbols. For each operating mode, the number of sub-carriers may be different for each type of symbol. Furthermore, this may vary for each according to whether bandwidth extension is selected, whether tone reservation is enabled and according to which pilot sub-carrier pattern has been selected. As such a generalisation to a specific number of sub-carriers per OFDM symbol is difficult. However, the frequency interleaver for each mode can interleave any symbol whose number of sub-carriers is smaller than or the same as the maximum available number of sub-carriers for the given mode. For example, in the 1k mode, the interleaver would work for symbols with the number of sub-carriers being less than or equal to 1024 and for 16k mode, with the number of sub-carriers being less than or equal to 16384. The sequence of data cells to be carried in each COFDM symbol is then passed to the symbol interleaver 33. The COFDM symbol is then generated by a COFDM symbol builder block 37 which introduces pilot and synchronising signals fed from a pilot and embedded signal former 36. An OFDM modulator 38 then forms the OFDM symbol in the time domain which is fed to a guard insertion processor 40 for generating a guard interval between symbols, and then to a digital to analogue convertor 42 and finally to an RF amplifier within an RF frontend 44 for eventual broadcast by the COFDM transmitter from an antenna 46.
(19) Providing a 16k Mode
(20) To create a new 16k mode, several elements are to be defined, one of which is the 16k symbol interleaver 33. The bit to constellation mapper 28, symbol interleaver 33 and the frame builder 32 are shown in more detail in
(21) As explained above, the present invention provides a facility for providing a quasi-optimal mapping of the data symbols onto the OFDM sub-carrier signals. According to the example technique the symbol interleaver is provided to effect the optimal mapping of input data symbols onto COFDM sub-carrier signals in accordance with a permutation code and generator polynomial, which has been verified by simulation analysis.
(22) As shown in
(23) The frame builder 32 receives the data cells from the bit to constellation mapper 28 through channel 29, together with data cells from the other channels 31. After building a frame of many COFDM cell sequences, the cells of each COFDM symbol are then written into an interleaver memory 100 and read out of the interleaver memory 100 in accordance with write addresses and read addresses generated by an address generator 102. According to the write-in and read-out order, interleaving of the data cells is achieved, by generating appropriate addresses. The operation of the address generator 102 and the interleaver memory 100 will be described in more detail shortly with reference to
(24) Interleaver
(25)
(26) In the example shown in
(27) Although
(28) The input and output addressing of the interleaver memory 100 shown in
(29) For odd symbols the same interleaver memory 124.2 is used. However, as shown in
(30) In summary, as represented in
y.sub.H(q)=y.sub.q for even symbols for q=0, . . . ,N.sub.max1
y.sub.q=y.sub.H(q) for odd symbols for q=0, . . . ,N.sub.max1
(31) In other words, for even OFDM symbols the input words are written in a permutated way into a memory and read back in a sequential way, whereas for odd symbols, they are written sequentially and read back permutated. In the above case, the permutation H(q) is defined by the following table:
(32) TABLE-US-00003 TABLE 1 permutation for simple case where Nmax = 4 q 0 1 2 3 H(q) 1 3 0 2
(33) As shown in
(34) Address Generation for the 16k Mode
(35) A schematic block diagram of the algorithm used to generate the permutation function H(q) is represented in
(36) An implementation of the address generator 102 for the 16k mode is shown in
R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4] R.sub.i1[5] R.sub.i1[9] R.sub.i1[11]
(37) According to the generator polynomial a pseudo random bit sequence is generated from the content of the shift register 200. However, in order to generate an address for the 16k mode as illustrated, a permutation circuit 210 is provided which effectively permutes the order of the bits within the shift register 200 from an order
(38) R.sub.i[n] to an order R.sub.i[n] at the output of the permutation circuit 210. Thirteen bits from the output of the permutation circuit 210 are then fed on a connecting channel 212 to which is added a most significant bit via a channel 214 which is provided by a toggle circuit 218. A fourteen bit address is therefore generated on channel 212. However, in order to ensure the authenticity of an address, an address check circuit 216 analyses the generated address to determine whether it exceeds a predetermined maximum value. The predetermined maximum value may correspond to the maximum number of sub-carrier signals, which are available for data symbols within the COFDM symbol, available for the mode which is being used. However, the interleaver for the 16k mode may also be used for other modes, so that the address to generator 102 may also be used for the 2k mode, 4k mode, 8k mode, 16k mode and the 32k mode, by adjusting accordingly the number of the maximum valid address.
(39) If the generated address exceeds the predetermined maximum value then a control signal is generated by the address check unit 216 and fed via a connecting channel 220 to a control unit 224. If the generated address exceeds the predetermined maximum value then this address is rejected and a new address regenerated for the particular symbol.
(40) For the 16k mode, an (N.sub.r1) bit word R.sub.i is defined, with N.sub.r=log.sub.2 M.sub.max, where M.sub.max=16384 using a LFSR (Linear Feedback Shift Register). The polynomials used to generate this sequence is:
16K mode: R.sub.i[12]=R.sub.i1[0] R.sub.i1[1] R.sub.i1[4]R.sub.i1[5]R.sub.i1[9]R.sub.i1[11]
(41) where i varies from 0 to M.sub.max1
(42) Once one R.sub.i, word has been generated, the R.sub.i, word goes through a permutation to produce another (N.sub.r1) bit word called R.sub.i. R.sub.i is derived from R.sub.i by the bit permutations given as follows:
(43) TABLE-US-00004 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 R.sub.i bit 8 4 3 2 0 11 1 5 12 10 6 7 9 positions
(44) Bit permutation for the 16k mode
(45) As an example, this means that for the mode 16k, the bit number 12 of R.sub.i is sent in bit position number 8 of R.sub.i.
(46) The address H(q) is then derived from R, through the following equation:
(47)
(48) The (i mod2).Math.2.sup.N.sup.
(49) An address check is then performed on H(q) to verify that the generated address is within the range of acceptable addresses: if (H(q)<N.sub.max), where N.sub.max=12096 for example in the 16k mode, then the address is valid. If the address is not valid, the control unit is informed and it will try to generate a new H(q) by incrementing the index i.
(50) The role of the toggle block is to make sure that we do not generate an address exceeding N.sub.max twice in a row. In effect, if an exceeding value was generated, this means that the MSB (i.e. the toggle bit) of the address H(q) was one. So the next value generated will have a MSB set to zero, insuring to produce a valid address.
(51) The following equations sum up the overall behaviour and help to understand the loop structure of this algorithm:
(52)
(53) As will be explained shortly, in one example of the address generator, the above mentioned permutation code is used for generating addresses for all OFDM symbols. In another example, the permutation codes may be changed between symbols, with the effect that a set of permutation codes are cycled through for successive OFMD symbols. To this end, the control lines 108, 110 providing an indication as to whether the OFDM symbol is odd or even and the current mode are used to select the permutation code. This example mode in which a plurality of permutation codes are cycled through is particularly appropriate for the example in which the odd interleaver only is used, which will be explained later. A signal indicating that a different permutation code should be used is provided via a control channel 111. In one example the possible permutation codes are pre-stored in the permutation code circuit 210. In another example, the control unit 224 supplies the new permutation code to be used for an OFDM symbol.
(54) Analysis Supporting the Address Generator for the 16k Mode
(55) The selection of the polynomial generator and the permutation code explained above for the address generator 102 for the 16k mode has been identified following simulation analysis of the relative performance of the interleaver. The relative performance of the interleaver has been evaluated using a relative ability of the interleaver to separate successive symbols or an interleaving quality. As mentioned above, effectively the interleaving must perform for both odd and even symbols, in order to use a single interleaver memory. The relative measure of the interleaver quality is determined by defining a distance D (in number of sub-carriers). A criterion C is chosen to identify a number of sub-carriers that are at distanceD at the output of the interleaver that were at distanceD at the input of the interleaver, the number of sub-carriers for each distance D then being weighted with respect to the relative distance. The criterion C is evaluated for both odd and even COFDM symbols. Minimising C produces a superior quality interleaver.
(56)
(57) where: N.sub.even(d) and N.sub.odd(d) are number of sub-carriers in an even and odd symbol respectively at the output of the interleaver that remain within d sub-carrier spacing of each other.
(58) Analysis of the interleaver identified above for the 16k mode for a value of D=5 is shown in
(59) A corresponding analysis is provided for an alternative permutation code for even COFDM symbols in
(60) Alternative Permutation Codes
(61) The following nine alternative possible codes ([a]R.sub.i bit positions, where n=1 to 9) have been found to provide a symbol interleaver with a good quality as determined by the criterion C identified above.
(62) TABLE-US-00005 R.sub.i bit positions 12 11 10 9 8 7 6 5 4 3 2 1 0 [1]R.sub.i bit 7 12 5 8 9 1 2 3 4 10 6 11 0 positions [2]R.sub.i bit 8 5 4 9 2 3 0 1 6 11 7 12 10 positions [3]R.sub.i bit 7 5 6 9 11 2 3 0 8 4 1 12 10 positions [4]R.sub.i bit 11 5 10 4 2 1 0 7 12 8 9 6 3 positions [5]R.sub.i bit 3 9 4 10 0 6 1 5 8 11 7 2 12 positions [6]R.sub.i bit 4 6 3 2 0 7 1 5 8 10 12 9 11 positions [7]R.sub.i bit 10 4 3 2 1 8 0 6 7 9 11 5 12 positions [8]R.sub.i bit 10 4 11 3 7 1 5 0 2 12 8 6 9 positions [9]R.sub.i bit 2 4 11 9 0 10 1 7 8 6 12 3 5 positions
(63) Bit permutation for the 16k mode
(64) Receiver
(65)
(66) The symbol de-interleaver 314 is formed from a data processing apparatus as shown in
(67) The remaining parts of the COFDM receiver shown in
(68) One advantage provided by the present technique for both the receiver and the transmitter is that a symbol interleaver and a symbol de-interleaver operating in the receivers and transmitters can be switched between the 1k, 2k, 4k, 8k, 16k and the 32k mode by changing the generator polynomials and the permutation order. Hence the address generator 542 shown in
(69) Optimal Use of Odd Interleavers
(70) As shown in
(71) As mentioned above, during an experimental analysis of the performance of the interleavers (using criterion C as defined above) and for example shown in
(72) As will be understood, the amount of interleaver memory required to implement a symbol interleaver is dependent on the number of data symbols to be mapped onto the COFDM carrier symbols. Thus a 16k mode symbol interleaver requires half the memory required to implement a 32k mode symbol interleaver and similarly, the amount of memory required to implement an 8k symbol interleaver is half that required to implement a 16k interleaver. Therefore a transmitter or receiver which is arranged to implement a symbol interleaver of a mode, which sets the maximum number of data symbols which can be carried per OFDM symbol, then that receiver or transmitter will include sufficient memory to implement two odd interleaving processes for any other mode, which provides half or smaller than half the number of sub-carriers per OFDM symbol in that given maximum mode. For example a receiver or transmitter including a 32k interleaver will have enough memory to accommodate two 16k odd interleaving processes each with their own 16k memory.
(73) Therefore, in order to exploit the better performance of the odd interleaving processes, a symbol interleaver capable of accommodating multiple modulation modes can be arranged so that only an odd symbol interleaving process is used if in a mode which comprises half or less than half of the number of sub-carriers in a maximum mode, which represents the maximum number of sub-carriers per OFDM symbol. This maximum mode therefore sets the maximum memory size. For example, in a transmitter/receiver capable of the 32k mode, when operating in a mode with fewer carriers (i.e. 16k, 8k, 4k or 1k) then rather than employing separate odd and even symbol interleaving processes, two odd interleavers would be used.
(74) An illustration of an adaptation of the symbol interleaver 33 which is shown in
(75) A corresponding example of the interleaver in the receiver, which appears in
(76) Correspondingly, a second subsequent set of data symbols which are recovered from a successive OFDM symbol are written into the second half of the interleaver memory 412 in accordance with the addresses generated by the address generator 542 in a permuted order and read out into the output data stream in a sequential order.
(77) In one example the addresses generated for a first set of data symbols to write into the first half of the interleaver memory 410 can be reused to write a second subsequent set of data symbols into the interleaver memory 412. Correspondingly, the transmitter may also reuse addresses generated for one half of the interleaver for a first set of data symbols for reading out a second set of data symbols which have been written into the second half of the memory in sequential order.
(78) Odd Interleaver with Offset
(79) The performance of an interleaver, which uses two odd interleavers could be further improved by using a sequence of odd only interleavers rather than a single odd only interleaver, so that any bit of data input to the interleave does not always modulate the same carrier in the OFDM symbol.
(80) A sequence of odd only interleavers could be realised by either: adding an offset to the interleaver address modulo the number of data carriers, or using a sequence of permutations in the interleaver
Adding an Offset
(81) Adding an offset to the interleaver address modulo the number of data carriers effectively shifts and wraps-round the OFDM symbol so that any bit of data input to the interleaver does not always modulate the same carrier in the OFDM symbol. Thus the address generator, could optionally include an offset generator, which generates an offset in an address generated by the address generator on the output channel H(q).
(82) The offset would change each symbol. For example, this offset could provide be a cyclic sequence. This cyclic sequence could be, for example, of length 4 and could consist of, for example, prime numbers. For example, such a sequence could be:
(83) 0, 41, 97, 157
(84) Furthermore, the offset may be a random sequence, which may be generated by another address generator from a similar OFDM symbol interleaver or may be generated by some other means.
(85) Using a Sequence of Permutations
(86) As shown in
(87) For example, this could be a cyclic sequence, so that a different permutation code in a set of permutation codes in a sequence is used for successive OFDM symbols and then repeated. This cyclic sequence could be, for example, of length two or four. For the example of the 16k symbol interleaver a sequence of two permutation codes which are cycled through per OFDM symbol could be for example:
(88) 8 4 3 2 0 11 1 5 12 10 6 7 9
(89) 7 9 5 3 11 1 4 0 2 12 10 8 6
(90) whereas a sequence of four permutation codes could be:
(91) 8 4 3 2 0 11 1 5 12 10 6 7 9
(92) 7 9 5 3 11 1 4 0 2 12 10 8 6
(93) 6 11 7 5 2 3 0 1 10 8 12 9 4
(94) 5 12 9 0 3 10 2 4 6 7 8 11 1
(95) The switching of one permutation code to another could be effected in response to a change in the Odd/Even signal indicated on the control channel 108. In response the control unit 224 changes the permutation code in the permutation code circuit 210 via the control line 111.
(96) For the example of a 1k symbol interleaver, two permutation codes could be:
(97) 4 3 2 1 0 5 6 7 8
(98) 3 2 5 0 1 4 7 8 6
(99) whereas four permutation codes could be:
(100) 4 3 2 1 0 5 6 7 8
(101) 3 2 5 0 1 4 7 8 6
(102) 7 5 3 8 2 6 1 4 0
(103) 1 6 8 2 5 3 4 0 7
(104) Other combinations of sequences may be possible for 2k, 4k and 8k carrier modes or indeed 0.5k carrier mode. For example, the following permutation codes for each of the 0.5k, 2k, 4k and 8k provide good de-correlation of symbols and can be used cyclically to generate the offset to the address generated by an address generator for each of the respective modes:
(105) 2k Mode:
(106) 0 7 5 1 8 2 6 9 3 4*
(107) 4 8 3 2 9 0 1 5 6 7
(108) 8 3 9 0 2 1 5 7 4 6
(109) 7 0 4 8 3 6 9 1 5 2
(110) 4k Mode:
(111) 7 10 5 8 1 2 4 9 0 3 6**
(112) 6 2 7 10 8 0 3 4 1 9 5
(113) 9 5 4 2 3 10 1 0 6 8 7
(114) 1 4 10 3 9 7 2 6 5 0 8
(115) 8k Mode:
(116) 5 11 3 0 10 8 6 9 2 4 1 7*
(117) 10 8 5 4 2 9 1 0 6 7 3 11
(118) 11 6 9 8 4 7 2 1 0 10 5 3
(119) 8 3 11 7 9 1 5 6 4 0 2 10
(120) For the permutation codes indicated above, the first two could be used in a two sequence cycle, whereas all four could be used for a four sequence cycle. In addition, some further sequences of four permutation codes, which are cycled through to provide the offset in an address generator to produce a good de-correlation in the interleaved symbols (some are common to the above) are provided below:
(121) 0.5k Mode:
(122) 3 7 4 6 1 2 0 5
(123) 4 2 5 7 3 0 1 6
(124) 5 3 6 0 4 1 2 7
(125) 6 1 0 5 2 7 4 3
(126) 2k Mode:
(127) 0 7 5 1 8 2 6 9 3 4*
(128) 3 2 7 0 1 5 8 4 9 6
(129) 4 8 3 2 9 0 1 5 6 7
(130) 7 3 9 5 2 1 0 6 4 8
(131) 4k Mode:
(132) 7 10 5 8 1 2 4 9 0 3 6**
(133) 6 2 7 10 8 0 3 4 1 9 5
(134) 10 3 4 1 2 7 0 6 8 5 9
(135) 0 8 9 5 10 4 6 3 2 1 7
(136) 8k Mode:
(137) 5 11 3 0 10 8 6 9 2 4 1 7*
(138) 8 10 7 6 0 5 2 1 3 9 4 11
(139) 11 3 6 9 2 7 4 10 5 1 0 8
(140) 10 8 1 7 5 6 0 11 4 2 9 3
(141) * these are the permutations in the DVB-T standard
(142) ** these are the permutations in the DVB-H standard
(143) Examples of address generators, and corresponding interleavers, for the 2k, 4k and 8k modes are disclosed in European patent application number 04251667.4, which corresponds to U.S. Patent Application Publication No. 2008/298487, the contents of which are incorporated herein by reference. An address generator for the 0.5k mode are disclosed in our co-pending UK patent application number 0722553.5. Various modifications may be made to the embodiments described above without departing from the scope of the present invention. In particular, the example representation of the generator polynomial and the permutation order which have been used to represent aspects of the invention are not intended to be limiting and extend to equivalent forms of the generator polynomial and the permutation order.
(144) As will be appreciated the transmitter and receiver shown in
(145) As explained above the permutation codes and generator polynomial of the interleaver, which has been described with reference to an implementation of a particular mode, can equally be applied to other modes, by changing the predetermined maximum allowed address in accordance with the number of sub-carriers for that mode.
(146) As mentioned above, embodiments of the present invention find application with DVB standards such as DVB-T, DVB-T2 (published as EN 302 755) and DVB-H (published as ETSI EN 302 304 V 1.1.1 (November 2004)), which are incorporated herein by reference. For example embodiments of the present invention may be used in a transmitter or receiver operating in accordance with the DVB-H standard, in hand-held mobile terminals. The mobile terminals may be integrated with mobile telephones (whether second, third or higher generation) or Personal Digital Assistants or Tablet PCs for example. Such mobile terminals may be capable of receiving DVB-H or DVB-T compatible signals inside buildings or on the move in for example cars or trains, even at high speeds. The mobile terminals may be, for example, powered by batteries, mains electricity or low voltage DC supply or powered from a car battery. Services that may be provided by DVB-H may include voice, messaging, internet browsing, radio, still and/or moving video images, television services, interactive services, video or near-video on demand and option. The services might operate in combination with one another. In other examples embodiments of the present invention finds application with the DVB-T2 standard as specified in accordance with ETSI standard EN 302 755. In other examples embodiments of the present invention find application with the cable transmission standard known as DVB-C2. However, it will be appreciated that the present invention is not limited to application with DVB and may be extended to other standards for transmission or reception, both fixed and mobile.