DE-INTERLEAVING CIRCUIT AND DE-INTERLEAVING METHOD
20180077447 ยท 2018-03-15
Inventors
Cpc classification
H03M13/2785
ELECTRICITY
H04N21/42692
ELECTRICITY
H04N21/4385
ELECTRICITY
H03M13/2782
ELECTRICITY
H04N21/4382
ELECTRICITY
H03M13/2735
ELECTRICITY
H04N21/44004
ELECTRICITY
International classification
H04N21/4385
ELECTRICITY
H04N21/426
ELECTRICITY
H04N21/44
ELECTRICITY
Abstract
A de-interleaving circuit that performs a time de-interleaving process on an interleaved block of an interleave signal includes: an input buffer, buffering multiple information units included in a time interleaved block; a writing address generator, generating multiple writing addresses according to a predetermined rule to write the information units buffered in the input buffer to a memory; a reading address generator, generating multiple reading addresses according to the predetermined rule to read the information units from the memory; and an output buffer, buffering the information units read from the memory. The information units are stored in multiple tiles of the memory. The tiles correspond to multiple regions of the time interleaved block, the multiple regions include a first region and a second region, and the dimensions of each tile in the first region are different from the dimensions of each tile in the second region.
Claims
1. A de-interleaving circuit, performing a time de-interleaving process on a time interleaved block of an interleaved signal, the time interleaved block comprising a plurality of information units, the de-interleaving circuit comprising: an input buffer, buffering the information units; a writing address generator, generating a plurality of writing addresses according to a predetermined rule to write the information units buffered in the input buffer to a memory; a reading address generator, generating a plurality of reading addresses according to the predetermined rule to read the information units stored in the memory; and an output buffer, buffering the information units read from the memory; wherein, the information units are stored in a plurality of tiles, each of the tiles is a part or all of storage units of one row of the memory, a memory address associated with each of the tiles is different from a memory address associated with any other tile, the tiles correspond to a plurality of regions of the time interleaved block according to the predetermined rule, the regions comprise a first region and a second region, and dimensions of each of the tiles in the first region are different from dimensions of each of the tiles in the second region.
2. The de-interleaving circuit according to claim 1, wherein the time interleaved block comprises N.sub.rN.sub.c information units, where N.sub.r and N.sub.c are positive integers, the regions comprise the first region, the second region and a third region, and dimensions of each of the tiles in the first region are different from dimensions of each of the tiles in the third region.
3. The de-interleaving circuit according to claim 1, wherein in a same-row writing operation, quantities of information units allowed to be successively written to any two differently-dimensioned tiles are different.
4. The de-interleaving circuit according to claim 1, wherein in a same-row reading operation, quantities of information units allowed to be successively read from any two differently-dimensioned tiles are different.
5. The de-interleaving circuit according to claim 1, wherein a quantity of storage units in each of the tiles is equal to a quantity of storage units in any other tile.
6. The de-interleaving circuit according to claim 1, wherein a quantity of storage units of each of the tiles is a power of 2.
7. The de-interleaving circuit according to claim 1, wherein each of the storage units of each of the tiles in the first region stores at least one of the information units.
8. The de-interleaving circuit according to claim 1, wherein at least one storage unit of at least one of the tiles in the second region does not store any of the information units.
9. The de-interleaving circuit according to claim 1, wherein a quantity of all of the tiles in the first region is greater than a quantity of all of the tiles in the second region.
10. The de-interleaving circuit according to claim 9, wherein the regions comprise the first region, the second region and a third region, dimensions of each of the tiles in the first region are different from dimensions of each of the tiles in the third region, and the quantity of all of the tiles in the first region is greater than the quantity of all of the tiles in the third region.
11. The de-interleaving circuit according to claim 1, wherein each of the tiles in the first region is T.sub.rT.sub.c storage units, each of the tiles in the second region is T.sub.r1T.sub.c1 storage units, a value of T.sub.r determines a quantity of information units allowed to be successively written to each of the tiles in the first region in a same-row writing operation, a value of T.sub.c determines a quantity of information units allowed to be successively read from each of the tiles in the first region in a same-row reading operation, a value of T.sub.r1 determines a quantity of information units allowed to be successively written to each of the tiles in the second region in a same-row writing operation, a value of T.sub.c1 determines a quantity of information units allowed to be successively read from each of the tiles in the second region in a same-row reading operation, T.sub.r1 is not equal to T.sub.r, T.sub.c1 is not equal to T.sub.c, T.sub.r multiplied by T.sub.c is equal to T.sub.r1 multiplied by T.sub.c1, and T.sub.r, T.sub.r1, T.sub.c and T.sub.c1 are positive integers.
12. The de-interleaving circuit according to claim 11, wherein the regions comprise the first region, the second region and a third region, each of the tiles in the third region is T.sub.r2T.sub.c2 storage units, a value of T.sub.r2 determines a quantity of information units allowed to be successively written to each of the tiles in the third region in a same-row writing operation, a value of T.sub.c2 determines a quantity of information units allowed to be successively read from each of the tiles in the third region in a same-row reading operation, T.sub.r2 is not equal to T.sub.r, T.sub.c2 is not equal to T.sub.c, T.sub.r multiplied by T.sub.c is equal to T.sub.r2 multiplied by T.sub.c2, and T.sub.r2 and T.sub.c2 are positive integers.
13. The de-interleaving circuit according to claim 12, wherein T.sub.r2 is not equal to T.sub.r1, and T.sub.c2 is not equal to T.sub.c1.
14. The de-interleaving circuit according to claim 1, wherein a sequence according to which the memory stores the information units is different from a sequence according to which the memory outputs the information units.
15. A de-interleaving method, applied to a signal receiving device to perform a time de-interleaving process on an interleaved signal, a time interleaved block of the interleaved signal comprising a plurality of information units, the method comprising: generating a plurality of writing addresses according to a predetermined rule; generating a plurality of reading addresses according to the predetermined rule; and storing the information units to a memory according to the writing addresses, and outputting the information units from the memory according to the reading addresses; wherein, the information units are stored in a plurality of tiles, each of the tiles is a part or all of storage units of one row of the memory, a memory address associated with each of the tiles is different from a memory address associated with any other tile, the tiles correspond to a plurality of regions of the time interleaved block according to the predetermined rule, the regions comprise a first region and a second region, and in a same-row writing operation, a quantity of information units allowed to be successively written to each of the tiles in the first region is different from a quantity of information units allowed to be successively written to each of the tiles in the second region.
16. The method according to claim 15, wherein the information units are N.sub.rN.sub.c information units, where N.sub.r and N.sub.c are positive integers, the regions comprise the first region, the second region and a third region, and in a same-row writing operation, a quantity of information units allowed to be successively written to each of the tiles in the third region is different from a quantity of information units allowed to be successively written to each of the tiles in the first region.
17. The method according to claim 15, wherein each of the tiles in the first region is T.sub.rT.sub.c storage units, each of the tiles in the second region is T.sub.r1T.sub.c1 storage units, a value of T.sub.r determines a quantity of information units allowed to be successively written to each of the tiles in the first region in a same-row writing operation, a value of T.sub.c determines a quantity of information units allowed to be successively read from each of the tiles in the first region in a same-row reading operation, a value of T.sub.r1 determines a quantity of information units allowed to be successively written to each of the tiles in the second region in a same-row writing operation, a value of T.sub.c1 determines a quantity of information units allowed to be successively read from each of the tiles in the second region in a same-row reading operation, T.sub.r1 is not equal to T.sub.r, T.sub.c1 is not equal to T.sub.c, T.sub.r multiplied by T.sub.c is equal to T.sub.r1 multiplied by T.sub.c1, and T.sub.r, T.sub.r1, T.sub.c and T.sub.c1 are positive integers.
18. The method according to claim 17, wherein the regions comprise the first region, the second region and a third region, each of the tiles in the third region is T.sub.r2T.sub.c2 storage units, a value of T.sub.r2 determines a quantity allowed to be successively written to each of the tiles in the third region in a same-row writing operation, a value of T.sub.c2 determines a quantity allowed to be successively read from each of the tiles in the third region in a same-row reading operation, T.sub.r2 is not equal to T.sub.r, T.sub.c2 is not equal to T.sub.c, T.sub.r multiplied by T.sub.c is equal to T.sub.r2 multiplied by T.sub.c2, and T.sub.r2 and T.sub.c2 are positive integers.
19. The method according to claim 18, wherein T.sub.r2 is not equal to T.sub.r1, and T.sub.c2 is not equal to T.sub.c1.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
DETAILED DESCRIPTION OF THE INVENTION
[0031] The present invention discloses a time de-interleaving circuit and a time de-interleaving method, which are capable of effectively reducing the number of times that time de-interleaving process accesses a memory in a as well as the memory capacity needed for the time de-interleaving process to enhance both performance and cost-effectiveness.
[0032]
[0033] More specifically, the above information units are information units of N.sub.r rows multiplied by N.sub.c columns, where N.sub.r and N.sub.c define the memory size that the TI block needs. Further, N.sub.r is associated with a maximum quantity of consecutive information units under a vertical reading/writing sequence (the maximum quantity of consecutive information units associated with N.sub.r under a vertical reading/writing sequence is 18 in
[0034] In continuation, for example, the foregoing information units of N.sub.r rows multiplied by N.sub.c columns are information units of 18 rows multiplied by 13 columns (i.e., N.sub.r=18, and N.sub.c=13).
[0035] More specifically, based on the number of rows (N.sub.r=18) and the number of columns (N.sub.c=13) of the information units and the dimensions T.sub.rT.sub.c (44 in this example) of the basic tile, an equation below may be applied to the foregoing predetermined rule to determine the number of tiles in the region 0:
Maximum number N.sub.c.sub._.sub.0 of successive horizontal tiles: N.sub.c/T.sub.c=13/4=3
Maximum number N.sub.r.sub._.sub.0 of successive vertical tiles: N.sub.r/T.sub.r=18/4=4
[0036] Quantity of tiles in region 0: N.sub.c.sub._.sub.0N.sub.r.sub._.sub.0=12
[0037] In the above, means rounding down to an integer function. Further, by causing the dimensions of the tiles in the region 1 to be equal to T.sub.r.sup.1T.sub.c.sup.1, an equation below may be applied to the foregoing predetermined rule to determine the quantity of the tiles in the region 1:
T.sub.c.sup.1=2.sup.log.sup.
T.sub.r.sup.1=T.sub.rT.sub.c/T.sub.c.sup.1=16
[0038] Quantity of tiles in region 1: ([N.sub.c/T.sub.c]T.sub.c)/T.sub.c.sup.1=16/16=1
[0039] In the above, represents rounding up to an integer function. Further, the dimensions of tiles in the region 2 are caused to be T.sub.r.sup.2T.sub.c.sup.2, and an equation below may be applied to the foregoing predetermined rule to determine the quantity of the tiles in the region 2:
T.sub.r.sup.2=2=2.sup.log.sup.
T.sub.c.sup.2=T.sub.rT.sub.c/T.sub.r.sup.2=8
Quantity of tiles in region 2 N.sub.c/T.sub.c.sup.2=13/8=2:
[0040] Therefore, the total quantity of tiles in the three regions is:
N.sub.c/T.sub.cN.sub.r/T.sub.r+(N.sub.c/T.sub.cT.sub.c)/T.sub.c.sup.1+N.sub.c/T.sub.c.sup.2=+1+2=15
[0041] It should be noted that, the quantity of storage units in each tile in the embodiment is a power of 2, and the dimensions of the basic tile are not limited to the example in the application and may be determined by a designer based actual implementation requirements.
[0042] Refer to
[0043] As previously stated, each tile is a part or all of the storage units of one row of the memory, and the access of the information units in the same tile does not involve any row switching access operation of the memory. Thus, by representing the tiles in
[0044] As shown in
[0062] Thus, the total number of times of tile changing (or the number of times of row switching, as all of the storage units of the same tile are located at the same row of the memory) involved in the above writing operation 62 times.
[0063] As shown in
[0074] Thus, the total number of times of tile changing (or the number of row switching) is 68 times.
[0075] It is known from
[0076] It should be noted that, one person skilled in the art may modify the predetermined rule for determining the tile region based on the disclosure of the application, so as to apply the modified predetermined rule to time de-interleaving. For example, the information units received by the time de-interleaving circuit 500 are information units of 19 rows multiplied by 13 columns (i.e., N.sub.r=19, and N.sub.c=13), and the
[0077] More specifically, according to the number of rows (N.sub.r=19) and the number of columns (N.sub.c=13) of the information units and the dimensions T.sub.rT.sub.c (44 in this example) of the basic tile, an equation below may be applied to the modified predetermined rule to determine the quantity of tiles in the region 0:
Maximum number N.sub.c.sub._.sub.0 of successive horizontal tiles: N.sub.c/T.sub.c=13/4=3
Maximum number N.sub.r.sub._.sub.0 of successive vertical tiles: N.sub.r/T.sub.r=19/4=4
Quantity of tiles in region 0: N.sub.c.sub._.sub.0N.sub.r.sub._.sub.0=12
[0078] Further, an equation below may be applied to the modified predetermined rule to determine the quantity of tiles in the region 1:
(N.sub.r/T.sub.rT.sub.r)(N.sub.cN.sub.c/T.sub.cT.sub.c)/(T.sub.rT.sub.c)=[(44)(1334)/16=16/16=1
[0079] Further, an equation below may be applied to the modified predetermined rule to determine the quantity of tiles in the region 2:
(N.sub.rN.sub.r/T.sub.rT.sub.r)N.sub.c/(T.sub.rT.sub.c)=(1944)13/16=39/16=3
[0080] Thus, the sum of the quantities of tiles in the three regions is:
N.sub.r/T.sub.rN.sub.c/T.sub.c+(N.sub.c/T.sub.cT.sub.c)(N.sub.rN.sub.r/T.sub.rT.sub.r)/(T.sub.rT.sub.c)+(N.sub.cN.sub.c/T.sub.cT.sub.c)N.sub.r/(T.sub.rT.sub.c)=12+1+3=16
[0081] It should be noted that, the quantity of storage units in each tile in the embodiment is a power of 2, and the dimensions of the basic tile are not limited to the example in the application and may be determined by a designer based actual implementation requirements.
[0082] Refer to
[0083] As previously stated, each tile is a part or all of the storage units of one row of the memory, and the access of the information units in the same tile does not involve any row switching access operation of the memory. Thus, by representing the tiles in
[0084] As shown in
[0107] Thus, the total number of times of tile changing (or the number of times of row switching) involved in the above writing operation 70 times.
[0108] As shown in
[0124] Thus, the total number of times of tile changing (or the number of row switching) is 73 times.
[0125] It is known from
[0126] In addition to the foregoing circuit, the present invention further discloses a time de-interleaving method applied to a signal receiver of a communication system to perform a time de-interleaving process on a time interleaved block of an interleaved signal. The time interleaved block includes a plurality of information units. Referring to
[0127] In step S1210, a plurality of writing addresses are generated according to a predetermined rule.
[0128] In step S1220, a plurality of reading addresses are generated according to the predetermined rule.
[0129] In step S1230, the information units are stored to a memory according to the writing addresses, and are outputted from the memory according to the reading addresses. The information units are stored in a plurality of tiles, each of which being a part or all of the storage units of one row of the memory. A memory address associated with each tile is different from a memory address associated with any other tile. The tiles belong to a plurality of regions according to the predetermined rule. The regions include a first region and a second region. In one same-row writing operation, the quantity of information units allowed to be successively written to each tile of the first region is different from the quantity of information units allowed to be successively written to each tile in the second region.
[0130] One person skilled in the art may understand the implementation details and variations of the method of the present invention based on the disclosure of the foregoing circuit; that is, the technical features of the foregoing circuit may be reasonably applied to the method of the present invention. Without affecting the disclosure and possible implementation of the present invention, such repeated details are omitted herein.
[0131] It should be noted that, the time de-interleaving circuit may directly serve as a time interleaving circuit, and the time de-interleaving method may also directly serve as a time interleaving method.
[0132] In conclusion, the time de-interleaving circuit and the time de-interleaving method of the present invention are capable of reducing the number of times of accessing a memory as well as the memory capacity needed for the time de-interleaving process to enhance both performance and cost-effectiveness.
[0133] While the invention has been described by way of example and in terms of the preferred embodiments, it is to be understood that the invention is not limited thereto. On the contrary, it is intended to cover various modifications and similar arrangements and procedures, and the scope of the appended claims therefore should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements and procedures.