CN102801488B - A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device - Google Patents
A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device Download PDFInfo
- Publication number
- CN102801488B CN102801488B CN201110133676.4A CN201110133676A CN102801488B CN 102801488 B CN102801488 B CN 102801488B CN 201110133676 A CN201110133676 A CN 201110133676A CN 102801488 B CN102801488 B CN 102801488B
- Authority
- CN
- China
- Prior art keywords
- address
- interleaving
- read
- write
- factor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6522—Intended application, e.g. transmission or communication standard
- H03M13/6544—IEEE 802.16 (WIMAX and broadband wireless access)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种适用于WiMAX的交织或解交织的实现方法,所述方法包括:根据待交织或待解交织的原始数据的数据包长度获取交织矩阵列因子;根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,完成交织或解交织操作。本发明还公开了一种适用于WiMAX的交织或解交织的实现装置,通过上述方法和装置,减少了原始数据的读写地址所需求的存储空间,简化了交织或解交织的过程。
The invention discloses an interleaving or deinterleaving implementation method suitable for WiMAX, the method comprising: obtaining the column factor of an interleaving matrix according to the packet length of original data to be interleaved or to be deinterleaved; according to the column factor of the interleaving matrix , and combine the interleaving address compression table to calculate the read-write control address to complete the interleaving or deinterleaving operation. The present invention also discloses a WiMAX interleaving or deinterleaving realization device, through the method and device, the storage space required for the read and write addresses of original data is reduced, and the interleaving or deinterleaving process is simplified.
Description
技术领域 technical field
本发明涉及第三代合作伙伴计划长期演进系统中数据传输技术,特别是指一种适用于WiMAX的交织或解交织的实现方法和装置。The present invention relates to the data transmission technology in the long-term evolution system of the third generation partnership project, in particular to a method and device for implementing WiMAX interweaving or deinterleaving.
背景技术 Background technique
交织技术广泛应用于通讯领域,用于将突发错误转换为随机错误,以降低纠错的集中性和技术成本。为了抵抗传输过程中的突发错误,全球微波互联接入(WorldwideInteroperabilityforMicrowaveAccess,WiMAX)系统中子块在进行信道循环卷积编码后进行了内部交织。同理,接收方需要进行解交织。Interleaving technology is widely used in the communication field to convert burst errors into random errors, so as to reduce the concentration and technical cost of error correction. In order to resist burst errors in the transmission process, sub-blocks in the Worldwide Interoperability for Microwave Access (WiMAX) system are internally interleaved after channel circular convolution coding. Similarly, the receiver needs to perform deinterleaving.
由于交织或解交织过程中,原始数据的读写地址的计算比较复杂,因此在现有技术中均采用提前计算地址,然后存储并进一步使用的方式。由于WiMAX系统支持多达17种包长,且最大包长为2400,因此存储交织或解交织过程中,原始数据的读写地址需要比较大的存储空间,并且需要根据包长查找不同的表,用以找出对应的地址,实现较为复杂。Since the calculation of the read-write address of the original data is relatively complicated during the interleaving or de-interleaving process, the address is calculated in advance in the prior art, and then stored and used further. Since the WiMAX system supports up to 17 packet lengths, and the maximum packet length is 2400, during the process of storing interleaving or deinterleaving, the read and write addresses of the original data need relatively large storage space, and different tables need to be searched according to the packet length. It is used to find out the corresponding address, and the implementation is relatively complicated.
发明内容 Contents of the invention
有鉴于此,本发明的主要目的在于提供一种适用于WiMAX的交织或解交织的实现方法和装置,减少了原始数据的读写地址所需求的存储空间,简化了交织或解交织的过程。In view of this, the main purpose of the present invention is to provide a method and device for realizing interleaving or deinterleaving suitable for WiMAX, which reduces the storage space required for the read and write addresses of original data, and simplifies the process of interleaving or deinterleaving.
为达到上述目的,本发明的技术方案是这样实现的:In order to achieve the above object, technical solution of the present invention is achieved in that way:
本发明提供了一种适用于WiMAX的交织或解交织的实现方法,所述方法包括:The present invention provides a method for implementing interleaving or deinterleaving suitable for WiMAX, the method comprising:
根据待交织或待解交织的原始数据长度(N)获取交织矩阵列因子(m);Obtain the interleaving matrix column factor (m) according to the original data length (N) to be interleaved or to be deinterleaved;
根据所述交织矩阵列因子(m),并结合交织地址压缩表计算读写控制地址,完成交织或解交织操作。According to the column factor (m) of the interleaving matrix and combined with the interleaving address compression table, the read-write control address is calculated to complete the interleaving or deinterleaving operation.
其中,所述获取交织矩阵列因子,具体为:通过查询数据包长度和交织矩阵列因子的映射表,获取交织矩阵列因子。Wherein, the obtaining the column factors of the interleaving matrix specifically includes: obtaining the column factors of the interleaving matrix by querying the mapping table of the data packet length and the column factors of the interleaving matrix.
其中,所述读写控制地址,包括:存储了待交织或待解交织的原始数据的处理前缓存单元的读控制地址,以及处理后缓存单元的写控制地址;Wherein, the read-write control address includes: the read control address of the cache unit before processing, which stores the original data to be interleaved or deinterleaved, and the write control address of the cache unit after processing;
所述根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,完成交织或解交织操作具体包括:初始化原始地址基地址、索引因子和衍生因子,结合交织地址压缩表得到交织地址基地址;根据所述交织地址基地址和原始地址基地址计算生成读写控制地址;根据所述读写控制地址将处理前缓存单元数据写入处理后缓存控制单元。According to the column factors of the interleaving matrix, and combining the interleaving address compression table to calculate the read-write control address, the completion of the interleaving or deinterleaving operation specifically includes: initializing the original address base address, index factor and derivative factor, and combining the interleaving address compression table to obtain the interleaving address base address; calculate and generate a read-write control address according to the interleaved address base address and the original address base address; write the pre-processed cache unit data into the processed cache control unit according to the read-write control address.
其中,所述根据交织地址基地址和原始地址基地址计算生成读写控制地址,具体为:将所述交织地址基地址分别加0、1、2和3,得到4个处理前缓存单元的读控制地址;Wherein, the calculation and generation of the read-write control address according to the base address of the interleaving address and the base address of the original address is specifically: adding 0, 1, 2, and 3 to the base address of the interleaving address respectively to obtain the read-write address of the four cache units before processing. control address;
将所述原始地址基地址分别加0、N/4、2N/4和3N/4,得到4个处理后缓存单元的写控制地址。Add 0, N/4, 2N/4 and 3N/4 to the base address of the original address respectively to obtain the write control addresses of the four processed cache units.
其中,所述写入处理后缓存单元之后,还包括:原始地址基地址累加1,衍生因子累加1,如果交织地址基地址累加2^m后小于原始数据的数据包长度,则重新缓存交织地址基地址,生成读写控制地址,进行读写操作;如果不小于原始数据的数据包长度,则对缓存的交织地址基地址累加2^(m-1),然后生成读写控制地址,进行读写操作;当缓存的交织地址基地址使用完毕,索引因子累加1,如果索引因子不小于N/4,则结束流程,否则返回初始化衍生因子,并执行后续流程。Wherein, after the cache unit after the write process, it also includes: the original address base address is accumulated by 1, and the derivation factor is accumulated by 1. If the interleaved address base address is accumulated by 2^m and is less than the packet length of the original data, then re-cache the interleaved address Base address, generate a read-write control address, and perform read-write operations; if it is not less than the packet length of the original data, add 2^(m-1) to the cached interleaved address base address, and then generate a read-write control address, and perform read and write operations. Write operation; when the base address of the cached interleaving address is used up, the index factor is accumulated by 1, and if the index factor is not less than N/4, the process ends, otherwise, return to initialize the derivation factor, and execute the subsequent process.
本发明还提供了一种适用于WiMAX的交织或解交织的实现装置,所述装置包括:处理前缓存单元、读写控制单元和处理后缓存单元,其中,The present invention also provides an interleaving or deinterleaving implementation device suitable for WiMAX, the device includes: a pre-processing buffer unit, a read-write control unit and a post-processing buffer unit, wherein,
所述读写控制单元,用于根据待交织或待解交织的原始数据长度获取交织矩阵列因子,根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元,完成交织或解交织操作。The read-write control unit is used to obtain the column factor of the interleaving matrix according to the length of the original data to be interleaved or to be deinterleaved, calculate the read-write control address according to the column factor of the interleave matrix and in combination with the interleaving address compression table, and calculate the read-write control address according to the read Write the control address, read the original data to be interleaved or de-interleaved from the pre-processing cache unit, write into the post-processing cache unit, and complete the interleaving or de-interleaving operation.
其中,所述读写控制单元获取交织矩阵列因子,具体为:通过查询数据包长度和交织矩阵列因子的映射表,获取交织矩阵列因子。Wherein, the read-write control unit obtains the column factors of the interleaving matrix, specifically: by querying the mapping table of the data packet length and the column factors of the interleaving matrix, the column factors of the interleaving matrix are obtained.
其中,所述读写控制地址,包括:存储了待交织或待解交织的原始数据的处理前缓存单元的读控制地址,以及处理后缓存单元的写控制地址;Wherein, the read-write control address includes: the read control address of the cache unit before processing, which stores the original data to be interleaved or deinterleaved, and the write control address of the cache unit after processing;
所述根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元,具体包括:初始化原始地址基地址、索引因子、衍生因子,结合交织地址压缩表得到交织地址基地址;根据交织地址基地址和原始地址基地址计算生成读写控制地址;根据所述读写控制地址将处理前缓存单元数据写入处理后缓存单元。According to the column factor of the interleaving matrix, combined with the interleaving address compression table, the read-write control address is calculated, and according to the read-write control address, the original data to be interleaved or to be deinterleaved is read from the pre-processing cache unit, and written into the processing The rear cache unit specifically includes: initializing the original address base address, index factor, and derivation factor, and combining the interleaving address compression table to obtain the interleaving address base address; calculating and generating the read-write control address according to the interleaving address base address and the original address base address; according to the The read-write control address writes the pre-processing cache unit data into the post-processing cache unit.
本发明所提供的适用于WiMAX的交织或解交织的实现方法和装置,将待交织或待解交织的原始数据缓存入处理前缓存单元;根据所述原始数据的数据包长度获取交织矩阵列因子;结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元,完成交织或解交织操作。通过对WiMAX系统支持的17种包长的交织地址进行了整理,根据从中发现的规律进行存储内容规划,最终给出一个适合全部包长数据使用的压缩的交织地址存储表,并配合该存储表提出了一种交织地址计算方法,从而实现了降低存储资源的消耗,并通过与之相应的读写地址产生机制降低了交织与解交织的实现难度。本发明的使用对于WiMAX系统的实现成本降低具有较大意义。The implementation method and device for interleaving or deinterleaving suitable for WiMAX provided by the present invention caches the original data to be interleaved or deinterleaved into the buffer unit before processing; obtains the column factor of the interleaving matrix according to the packet length of the original data ; Combining the interleaving address compression table to calculate the read-write control address, according to the read-write control address, read the original data to be interleaved or to be deinterleaved from the pre-processing cache unit, write into the post-processing cache unit, and complete the interleaving or deinterleaving operation . By sorting out the interleaving addresses of 17 kinds of packet lengths supported by the WiMAX system, and planning the storage content according to the rules discovered therein, a compressed interleaving address storage table suitable for all packet length data is finally given, and cooperates with the storage table A calculation method for interleaving addresses is proposed, which reduces the consumption of storage resources, and reduces the difficulty of interleaving and deinterleaving through the corresponding read and write address generation mechanism. The use of the present invention has great significance for reducing the realization cost of the WiMAX system.
附图说明 Description of drawings
图1为本发明一种适用于WiMAX的交织或解交织的实现方法流程示意图;Fig. 1 is a schematic flow chart of an implementation method of interleaving or deinterleaving suitable for WiMAX according to the present invention;
图2为数据包长度和交织矩阵列因子的映射表的结构示意图;Fig. 2 is the structural representation of the mapping table of data packet length and interleaving matrix column factor;
图3为交织地址压缩表的结构示意图;Fig. 3 is a schematic structural diagram of an interleaving address compression table;
图4为本发明一种适用于WiMAX的交织或解交织的实现装置结构示意图。FIG. 4 is a schematic structural diagram of an implementation device for interleaving or deinterleaving suitable for WiMAX according to the present invention.
具体实施方式 Detailed ways
本发明的基本思想是将待交织或待解交织的原始数据缓存入处理前缓存单元;根据所述原始数据的数据包长度获取交织矩阵列因子;结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元,完成交织或解交织操作。The basic idea of the present invention is to cache the original data to be interleaved or to be deinterleaved into the buffer unit before processing; obtain the column factor of the interleaving matrix according to the data packet length of the original data; combine the interleaving address compression table to calculate the read and write control address, according to The read-write control address reads the original data to be interleaved or deinterleaved from the pre-processing cache unit, writes it into the post-process cache unit, and completes the interleaving or deinterleaving operation.
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。The technical solutions of the present invention will be further elaborated below in conjunction with the accompanying drawings and specific embodiments.
图1为本发明一种适用于WiMAX的交织或解交织的实现方法流程示意图,如图1所示,所述方法包括:Fig. 1 is a schematic flow chart of an implementation method of interleaving or deinterleaving suitable for WiMAX according to the present invention. As shown in Fig. 1, the method includes:
步骤101,将待交织或待解交织的原始数据缓存入处理前缓存单元;Step 101, buffering the original data to be interleaved or to be deinterleaved into the pre-processing buffer unit;
步骤102,根据所述原始数据长度获取交织矩阵列因子;Step 102, obtaining an interleaving matrix column factor according to the length of the original data;
具体的,所述获取交织矩阵列因子,具体为:通过查询原始数据的长度,即原始数据的数据包长度N和交织矩阵列因子m的映射表,获取交织矩阵列因子m。图2为数据包长度和交织矩阵列因子的映射表的结构示意图。Specifically, obtaining the column factor of the interleaving matrix specifically includes: obtaining the column factor m of the interleaving matrix by querying the length of the original data, that is, the mapping table of the packet length N of the original data and the column factor m of the interleaving matrix. FIG. 2 is a schematic structural diagram of a mapping table between data packet length and interleaving matrix column factors.
步骤103,根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,完成交织或解交织操作。Step 103: Calculate the read-write control address according to the column factors of the interleaving matrix and in combination with the interleaving address compression table, and complete the interleaving or deinterleaving operation.
具体的,所述读写控制地址,包括:从处理前缓存单元中读取原始数据的读控制地址(以下简称读地址),以及写入处理后缓存单元的写控制地址(以下简称写地址)。所述根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,完成交织或解交织操作具体包括:初始化原始地址基地址、索引因子和衍生因子,结合交织地址压缩表得到交织地址基地址;根据所述交织地址基地址和原始地址基地址计算生成读写控制地址;根据所述读写控制地址将处理前缓存单元数据写入处理后缓存控制单元。Specifically, the read-write control address includes: the read control address (hereinafter referred to as the read address) for reading the original data from the cache unit before processing, and the write control address (hereinafter referred to as the write address) for writing into the cache unit after processing . According to the column factors of the interleaving matrix, and combining the interleaving address compression table to calculate the read-write control address, the completion of the interleaving or deinterleaving operation specifically includes: initializing the original address base address, index factor and derivative factor, and combining the interleaving address compression table to obtain the interleaving address base address; calculate and generate a read-write control address according to the interleaved address base address and the original address base address; write the pre-processed cache unit data into the processed cache control unit according to the read-write control address.
进一步的,步骤103中具体包括以下步骤:Further, step 103 specifically includes the following steps:
步骤103a,初始化原始地址基地址为0,初始化索引因子i为0;Step 103a, initialize the base address of the original address to 0, and initialize the index factor i to 0;
进一步的,在后续步骤103e中原始地址基地址将作为,生成处理后缓存单元的写地址的依据。Further, in the subsequent step 103e, the base address of the original address will be used as a basis for generating the write address of the processed cache unit.
步骤103b,初始化衍生因子j为0,根据索引因子i和交织矩阵列因子m从交织地址压缩表中查询,得到交织地址基地址;Step 103b, initialize the derivation factor j to be 0, query from the interleaving address compression table according to the index factor i and the interleaving matrix column factor m, and obtain the interleaving address base address;
具体的,图3为交织地址压缩表的结构示意图,如图3所示,Index为索引因子,ADDR为索引因子对应的交织地址压缩表的读地址。查表取值与步骤102获取的交织矩阵列因子m有关,具体为:m为10时,根据索引因子,从交织地址压缩表中逐行取值;m为9时,根据索引因子,从交织地址压缩表中每两行取值;m为8时,根据索引因子,从交织地址压缩表中每四行取值;依次类推,直至m为3时,根据索引因子,从交织地址压缩表中,每128行取值;上述规律可总结为,根据索引因子,从交织地址压缩表中,每2^(10-m)行取值。Specifically, FIG. 3 is a schematic structural diagram of the interleaving address compression table. As shown in FIG. 3 , Index is an index factor, and ADDR is a read address of the interleaving address compression table corresponding to the index factor. The value of the table lookup is related to the column factor m of the interleaving matrix obtained in step 102, specifically: when m is 10, the value is obtained row by row from the interleaving address compression table according to the index factor; when m is 9, according to the index factor, the Take values from every two rows in the address compression table; when m is 8, take values from every four rows in the interleaved address compression table according to the index factor; and so on, until m is 3, according to the index factor, take values from the interleaved address compression table , take a value every 128 rows; the above rule can be summarized as, according to the index factor, take a value every 2^(10-m) rows from the interleaved address compression table.
步骤103c,缓存所述交织地址基地址;Step 103c, cache the base address of the interleaving address;
具体的,由于步骤103b中是由交织地址压缩表中,每2^(10-m)行读取一个交织地址基地址,因此所述缓存的交织地址基地址为1个或多个。Specifically, since in step 103b, an interleaving address base address is read every 2^(10-m) rows from the interleaving address compression table, the cached interleaving address base address is one or more.
步骤103d,根据交织地址基地址生成4个地址,作为处理前缓存单元的读地址;Step 103d, generate 4 addresses according to the base address of the interleaved address, as the read address of the cache unit before processing;
具体的,所述处理前缓存单元的读地址的生成方式为:交织地址基地址分别加0、1、2和3。Specifically, the method of generating the read address of the cache unit before processing is: adding 0, 1, 2 and 3 to the base address of the interleaving address respectively.
步骤103e,根据原始地址基地址生成4个地址,作为处理后缓存单元的写地址;Step 103e, generate 4 addresses according to the base address of the original address, as the write address of the cache unit after processing;
具体的,所述处理后缓存单元的写地址的生成方式为:原始地址基地址分别加0、N/4、2N/4和3N/4,其中,N为原始数据的数据包长度。Specifically, the write address of the cache unit after processing is generated in the following manner: add 0, N/4, 2N/4, and 3N/4 to the base address of the original address, where N is the packet length of the original data.
步骤103f,根据读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元;Step 103f, according to the read-write control address, read the original data to be interleaved or to be deinterleaved from the pre-processing cache unit, and write it into the post-processing cache unit;
步骤103g,原始地址基地址累加1,衍生因子j累加1,交织地址基地址累加2^m,如果新交织地址基地址不小于原始数据的数据包长度N,则执行步骤103h,否则执行步骤103c;Step 103g, add 1 to the base address of the original address, add 1 to the derivation factor j, add 2^m to the base address of the interleaved address, if the base address of the new interleaved address is not less than the packet length N of the original data, then execute step 103h, otherwise execute step 103c ;
步骤103h,对步骤103c中缓存的交织地址基地址累加2^(m-1),然后执行步骤103d至步骤103f,如果步骤103c中缓存的交织地址基地址使用完毕,或缓存的交织地址基地址累加2^m后,新交织地址基地址大于N时,则执行步骤103i;Step 103h, add 2^(m-1) to the base address of the interleaving address cached in step 103c, and then perform steps 103d to 103f, if the base address of the interleaving address cached in step 103c is used up, or the base address of the cached interleaving address After accumulating 2^m, when the base address of the new interleaving address is greater than N, then execute step 103i;
步骤103i,索引因子i累加1,如果索引因子i不小于N/4,则结束流程,否则执行步骤103b。In step 103i, the index factor i is incremented by 1, and if the index factor i is not less than N/4, the process ends, otherwise step 103b is executed.
进一步需要说明的是,本发明所述的解交织方法,与交织方法基本相同,所不同的是“处理前缓存单元”存储的是待解交织数据,“处理后缓存单元”存储的是解交织后的结果,中间计算流程相同。It should be further noted that the deinterleaving method described in the present invention is basically the same as the interleaving method, the difference is that the "pre-processing buffer unit" stores the data to be deinterleaved, and the "post-processing buffer unit" stores the deinterleaved data. The final result, the intermediate calculation process is the same.
进一步的,本发明的交织地址压缩表是对WiMAX系统支持的17种包长的交织地址进行了整理,根据其中的规律进行存储内容规划,进而得到了交织地址压缩表。对交织或解交织处理后的数据进行分析可以得到,WiMAX的子块内交织可以总结为:按行写入,再按交织后列出;列数为2^m,行数为j;最后一行末尾补哑元,输出时删除哑元;列输出顺序是经过交织的。表1为以数据包长度N=36为例的添加哑元的处理后数据:Further, the interleaving address compression table of the present invention organizes the interleaving addresses of 17 kinds of packet lengths supported by the WiMAX system, plans the storage content according to the rules therein, and then obtains the interleaving address compression table. Analysis of the data after interleaving or deinterleaving can be obtained. The interleaving within a sub-block of WiMAX can be summarized as follows: write by row, and then list after interleaving; the number of columns is 2^m, the number of rows is j; the last row Add dummy at the end and delete dummy when outputting; the order of column output is interleaved. Table 1 is the processed data after adding dummy elements with the packet length N=36 as an example:
表1Table 1
其中,x表示哑元。Among them, x represents a dummy.
为了加快解交织速度,采用4路并行处理,采用交织读取、顺序存储的方式完成解交织过程。并行处理时,交织后的地址如表2所示,具体为:In order to speed up the de-interleaving speed, 4-way parallel processing is adopted, and the de-interleaving process is completed by means of interleaved reading and sequential storage. During parallel processing, the address after interleaving is shown in Table 2, specifically:
表2Table 2
由表2可以看出,同一时刻,第二路、第三路和第四路分别是第一路读地址+1、+2和+3后的结果。根据此规律简化表格,则应用本发明的简化后交织地址压缩表的可以节省3/4的存储空间。此外进一步发现,表2中,每3行为一个重复,每行递增16,直至累加16后大于36(即N)时,以哑元x代替。据此,可以只存储每3行中的第一行,其它行的值由上述规律推算。经此操作后,应用本发明简化后交织地址压缩表,可以使存储空间进一步节省约2/3。由表2中还可以看出,每3行中的第一行,偶数组第一行加8即为奇数组第一行的值,据此可以再将表格内容压缩一半。根据上述规律,简化表格则得到本发明的交织地址压缩表及其使用方法。由此可见,采用本发明的方法可以节省大量的读写地址的存储空间,实现也更为简单。It can be seen from Table 2 that at the same time, the second, third, and fourth paths are the results of the first path reading addresses +1, +2, and +3 respectively. If the table is simplified according to this rule, 3/4 of the storage space can be saved by applying the simplified interleaving address compression table of the present invention. In addition, it is further found that in Table 2, every 3 rows is repeated, and each row is incremented by 16, until the accumulated 16 is greater than 36 (ie N), the dummy x is used instead. According to this, only the first row in every 3 rows can be stored, and the values of other rows can be calculated according to the above rules. After this operation, applying the simplified interleaving address compression table of the present invention can further save about 2/3 of the storage space. It can also be seen from Table 2 that in the first row of every 3 rows, adding 8 to the first row of the even group is the value of the first row of the odd group, and thus the table content can be compressed by half. According to the above rules, the table is simplified to obtain the interleaved address compression table and its usage method of the present invention. It can be seen that, adopting the method of the present invention can save a large amount of storage space for reading and writing addresses, and the implementation is also simpler.
下面结合一个具体的实施例阐述一下本发明的交织或解交织的实现方法,本实施例中原始数据的码块长度等于36为例,所述方法包括:The implementation method of interleaving or deinterleaving of the present invention will be set forth below in conjunction with a specific embodiment. In this embodiment, the code block length of the original data is equal to 36 as an example, and the method includes:
步骤401,将待交织的原始数据缓存入处理前缓存单元;Step 401, buffering the original data to be interleaved into the pre-processing buffer unit;
步骤402,由于N=36,通过查询图2可以得到m=4;Step 402, since N=36, m=4 can be obtained by querying Figure 2;
步骤403a,初始化原始地址基地址为0,初始化索引因子i为0;Step 403a, initialize the base address of the original address to 0, and initialize the index factor i to 0;
步骤403b,初始化衍生因子j为0;由于m为4,因此从图3中根据每2^(10-4)=64行取值,读取到的交织地址基地址为0;Step 403b, initialization derivation factor j is 0; Since m is 4, therefore from Fig. 3 according to every 2^(10-4)=64 row values, the interleaving address base address that reads is 0;
步骤403c,缓存交织地址基地址0;Step 403c, cache interleaving address base address 0;
步骤403d,根据交织地址基地址0生成4个地址,分别为0、1、2、3作为处理前缓存单元的读地址;Step 403d, generate 4 addresses according to the base address 0 of the interleaving address, which are respectively 0, 1, 2, and 3 as the read addresses of the cache unit before processing;
步骤403e,使用原始地址基地址0衍生4个地址,分别为0、N/4=9、2N/4=18、3N/4=27作为处理后缓存单元的写地址;Step 403e, using the original address base address 0 to derive 4 addresses, respectively 0, N/4=9, 2N/4=18, 3N/4=27, as the write address of the cache unit after processing;
步骤403f,分别从处理前缓存单元的地址0、1、2和3读出数据,写入到处理后缓存单元的地址0、9、18、27中;Step 403f, read data from addresses 0, 1, 2, and 3 of the cache unit before processing, and write data into addresses 0, 9, 18, and 27 of the cache unit after processing;
步骤403g,原始地址基地址累加1,累加后为1,衍生因子j累加1,累加后为1,交织地址基地址累加2^m,累加后为16,因16小于N=36,则重新缓存交织地址基地址16(相当于步骤103g中,返回执行步骤103c);Step 403g, the base address of the original address is accumulated by 1, which is 1 after accumulation, the derivative factor j is accumulated by 1, and is 1 after accumulation, the base address of the interleaving address is accumulated by 2^m, and it is 16 after accumulation, because 16 is less than N=36, then re-cache Interleaving address base address 16 (equivalent to step 103g, return to execute step 103c);
步骤403h,根据交织地址基地址16生成4个地址,分别为16、17、18、19作为处理前缓存单元的读地址;Step 403h, generate 4 addresses according to the interleaving address base address 16, respectively 16, 17, 18, 19 as the read address of the pre-processing cache unit;
步骤403i,使用原始地址基地址1衍生4个地址,分别为1、1+N/4=10、1+2N/4=19、1+3N/4=28作为处理后缓存单元的写地址;Step 403i, using the original address base address 1 to derive 4 addresses, respectively 1, 1+N/4=10, 1+2N/4=19, 1+3N/4=28, as the write address of the cache unit after processing;
步骤403j,分别从处理前缓存单元的地址16、17、18、19读出数据,写入到处理后缓存单元的地址1、10、19、28中;Step 403j, read data from addresses 16, 17, 18, and 19 of the cache unit before processing, and write data into addresses 1, 10, 19, and 28 of the cache unit after processing;
步骤403k,原始地址基地址累加1,累加后为2,衍生因子j累加1,累加后为2,交织地址基地址累加2^m,累加后为32,因32小于N=36,则重新缓存交织地址基地址32(相当于步骤103g中,返回执行步骤103c);Step 403k, the base address of the original address is accumulated by 1, and the accumulated value is 2, the derivation factor j is accumulated by 1, and the accumulated value is 2, the base address of the interleaved address is accumulated by 2^m, and the accumulated value is 32, because 32 is less than N=36, then re-cache Interleave address base address 32 (equivalent to in step 103g, return to execute step 103c);
步骤4031,根据交织地址基地址32生成4个地址,分别为32、33、34、35作为处理前缓存单元的读地址;Step 4031, generate 4 addresses according to the interleaving address base address 32, which are respectively 32, 33, 34, and 35 as the read addresses of the cache unit before processing;
步骤403m,使用原始地址基地址2衍生4个地址,分别为2、2+N/4=11、2+2N/4=20、2+3N/4=29作为处理后缓存单元的写地址;Step 403m, using the original address base address 2 to derive 4 addresses, respectively 2, 2+N/4=11, 2+2N/4=20, 2+3N/4=29 as the write address of the cache unit after processing;
步骤403n,分别从处理前缓存单元的地址32、33、34、35读出数据,写入到处理后缓存单元的地址2、11、20、29中;Step 403n, read data from addresses 32, 33, 34, and 35 of the cache unit before processing, and write data into addresses 2, 11, 20, and 29 of the cache unit after processing;
步骤403o,原始地址基地址累加1,累加后为3,衍生因子j累加1,累加后为3,交织地址基地址累加2^m,累加后为48,因48大于N=36,进而使用缓存的交织地址基地址,计算新的交织地址基地址,重复执行类似于步骤103d至步骤103f,最终当索引因子不小于N/4,则结束流程。Step 403o, the base address of the original address is accumulated by 1, and the accumulated value is 3, the derivation factor j is accumulated by 1, and the accumulated value is 3, the base address of the interleaving address is accumulated by 2^m, and the accumulated value is 48, because 48 is greater than N=36, and then the cache is used The base address of the interleaving address, calculate the new base address of the interleaving address, repeat steps similar to step 103d to step 103f, and finally when the index factor is not less than N/4, the process ends.
图4为本发明一种适用于WiMAX的交织或解交织的实现装置结构示意图,如图4所示,所述装置,包括:处理前缓存单元41、读写控制单元42和处理后缓存单元43,其中,Fig. 4 is a schematic structural diagram of an implementation device for interleaving or deinterleaving suitable for WiMAX according to the present invention. As shown in Fig. 4, the device includes: a pre-processing buffer unit 41, a read-write control unit 42 and a post-processing buffer unit 43 ,in,
所述处理前缓存单元41,用于缓存待交织或待解交织的原始数据;The pre-processing buffer unit 41 is used for buffering the original data to be interleaved or to be deinterleaved;
进一步的,本发明所述的解交织方法,与交织方法基本相同,所不同的是:当进行交织处理时,处理前缓存单元41存储的是待交织数据,处理后缓存单元43存储的是交织后的结果;当进行解交织处理时,处理前缓存单元41存储的是待解交织数据,处理后缓存单元43存储的是解交织后的结果,中间计算流程相同。Further, the deinterleaving method described in the present invention is basically the same as the interleaving method, the difference is: when performing interleaving processing, what the buffer unit 41 stores before processing is the data to be interleaved, and what the buffer unit 43 stores after processing is the interleaved data. The result after deinterleaving; when performing deinterleaving processing, the buffer unit 41 before processing stores the data to be deinterleaved, and the buffer unit 43 after processing stores the result after deinterleaving, and the intermediate calculation process is the same.
所述读写控制单元42,用于根据待交织或待解交织的原始数据长度获取交织矩阵列因子,根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元41读取待交织或待解交织的原始数据,写入处理后缓存单元43,完成交织或解交织操作。The read-write control unit 42 is used to obtain the column factor of the interleaving matrix according to the length of the original data to be interleaved or to be deinterleaved, and calculate the read-write control address according to the column factor of the interleaving matrix and in combination with the interleaving address compression table, according to the The read and write control address reads the original data to be interleaved or deinterleaved from the pre-processing cache unit 41, and writes the processed cache unit 43 to complete the interleaving or deinterleaving operation.
具体的,所述获取交织矩阵列因子,具体为:通过查询数据包长度和交织矩阵列因子的映射表,获取交织矩阵列因子。所述读写控制地址,包括:从处理前缓存单元41中读取原始数据的读地址,以及写入处理后缓存单元43的写地址。所述根据所述交织矩阵列因子,并结合交织地址压缩表计算读写控制地址,根据所述读写控制地址,从处理前缓存单元读取待交织或待解交织的原始数据,写入处理后缓存单元,具体包括:初始化原始地址基地址、索引因子、衍生因子,结合交织地址压缩表得到交织地址基地址;根据交织地址基地址和原始地址基地址计算生成读写控制地址;根据所述读写控制地址将处理前缓存单元41的数据写入处理后缓存单元43。Specifically, the obtaining the column factors of the interleaving matrix specifically includes: obtaining the column factors of the interleaving matrix by querying the mapping table of the data packet length and the column factors of the interleaving matrix. The read-write control address includes: a read address for reading original data from the cache unit 41 before processing, and a write address for writing into the cache unit 43 after processing. According to the column factor of the interleaving matrix, combined with the interleaving address compression table, the read-write control address is calculated, and according to the read-write control address, the original data to be interleaved or to be deinterleaved is read from the pre-processing cache unit, and written into the processing The rear cache unit specifically includes: initializing the original address base address, index factor, and derivation factor, and combining the interleaving address compression table to obtain the interleaving address base address; calculating and generating the read-write control address according to the interleaving address base address and the original address base address; according to the The read/write control address writes the data of the pre-processing cache unit 41 into the post-processing cache unit 43 .
其中,所述根据交织地址基地址生成4个处理前缓存单元的读地址,具体为:将交织地址基地址分别加0、1、2和3,得到4个处理前缓存单元的读地址;所述根据原始地址基地址生成4个处理后缓存单元的写地址,具体为:将原始地址基地址分别加0、N/4、2N/4和3N/4,得到4个处理后缓存单元的写地址。Wherein, said generating the read addresses of the 4 pre-processing cache units according to the interleaving address base address is specifically: adding 0, 1, 2 and 3 to the interleaving address base address respectively to obtain the read addresses of the 4 pre-processing cache units; The write addresses of the four processed cache units are generated according to the base address of the original address, specifically: add 0, N/4, 2N/4, and 3N/4 to the base address of the original address respectively to obtain the write addresses of the four processed cache units. address.
进一步的,所述读写控制单元42,还用于在写入处理后缓存单元43之后,原始地址基地址累加1,衍生因子累加1,如果交织地址基地址累加2^m后小于原始数据的数据包长度,则重新缓存交织地址基地址,生成读写控制地址,进行读写操作;如果不小于原始数据的数据包长度,则对缓存的交织地址基地址累加2^(m-1),然后生成读写控制地址,进行读写操作;当缓存的交织地址基地址使用完毕,索引因子累加1,如果索引因子不小于N/4,则结束交织或解交织操作,否则返回初始化衍生因子,并执行后续流程。Further, the read-write control unit 42 is also used for adding 1 to the base address of the original address and adding 1 to the derivation factor after writing into the cache unit 43 after processing, if the base address of the interleaving address is accumulated 2^m and is less than the value of the original data data packet length, re-cache the interleaved address base address, generate read and write control addresses, and perform read and write operations; if it is not less than the original data packet length, add 2^(m-1) to the cached interleaved address base address, Then generate a read-write control address and perform read-write operations; when the base address of the cached interleaving address is used up, the index factor is accumulated by 1, and if the index factor is not less than N/4, the interleaving or deinterleaving operation is ended, otherwise, the initialization derivative factor is returned, and execute subsequent procedures.
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention.
Claims (8)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110133676.4A CN102801488B (en) | 2011-05-23 | 2011-05-23 | A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device |
| PCT/CN2011/081260 WO2012159415A1 (en) | 2011-05-23 | 2011-10-25 | Interleaving or de-interleaving implementation method and device applicable to wimax |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201110133676.4A CN102801488B (en) | 2011-05-23 | 2011-05-23 | A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102801488A CN102801488A (en) | 2012-11-28 |
| CN102801488B true CN102801488B (en) | 2015-12-16 |
Family
ID=47200468
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201110133676.4A Expired - Fee Related CN102801488B (en) | 2011-05-23 | 2011-05-23 | A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN102801488B (en) |
| WO (1) | WO2012159415A1 (en) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101043284A (en) * | 2007-04-10 | 2007-09-26 | 中兴通讯股份有限公司 | Interleaver of TURBO coder in WCDMA system |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001230810A (en) * | 2000-02-16 | 2001-08-24 | Fujitsu Ltd | Packet flow control apparatus and method |
| US6868519B2 (en) * | 2001-04-23 | 2005-03-15 | Lucent Technologies Inc. | Reducing scintillation effects for optical free-space transmission |
| US7764595B2 (en) * | 2008-01-16 | 2010-07-27 | Newport Media, Inc. | Area and power efficient architectures of time deinterleaver for ISDB-T receivers |
-
2011
- 2011-05-23 CN CN201110133676.4A patent/CN102801488B/en not_active Expired - Fee Related
- 2011-10-25 WO PCT/CN2011/081260 patent/WO2012159415A1/en not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101043284A (en) * | 2007-04-10 | 2007-09-26 | 中兴通讯股份有限公司 | Interleaver of TURBO coder in WCDMA system |
Non-Patent Citations (1)
| Title |
|---|
| Air Interface for Broadband Wireless Access Systems;LAN/MAN Standards Committee;《IEEE Standard for Local and metropolitan area networks Part 16:Air Interface for Broadband Wireless Access Systems》;20090529;第1042页,表505 * |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2012159415A1 (en) | 2012-11-29 |
| CN102801488A (en) | 2012-11-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5490320B2 (en) | Turbo code parallel interleaver and its parallel interleaving method | |
| CN105490776B (en) | Deinterleaving method and interleaver | |
| CN101610089B (en) | Methods and devices for secondly interlacing and deinterlacing | |
| WO2003044965A1 (en) | Interleaving order generator, interleaver, turbo encoder, and turbo decoder | |
| CN102111163B (en) | Turbo encoder and encoding method | |
| Le Gal et al. | Low-latency and high-throughput software turbo decoders on multi-core architectures | |
| TWI569587B (en) | Convolutional de-interleaver | |
| CN102801488B (en) | A kind ofly be applicable to the intertexture of WiMAX or the implementation method of deinterleaving and device | |
| CN102594369A (en) | Quasi-cyclic low-density parity check code decoder based on FPGA (field-programmable gate array) and decoding method | |
| CN103560797B (en) | Method and the device of five iterative decodings of super forward error correction | |
| CN102170333A (en) | Parallel computing method and system of interleave address | |
| JP2013504953A (en) | Rate matching method, rate matching device, rate dematching method, and rate dematching device | |
| CN103888224B (en) | Parallel realization method and device for LTE system Turbo code-inner interleaving | |
| CN101515805B (en) | Turbo encoder and encoding method thereof | |
| CN113872615A (en) | Variable-length Turbo code decoder device | |
| WO2014002043A1 (en) | Determining control bits of butterfly networks for parallel turbo decoding | |
| CN108270452A (en) | A kind of Turbo decoders and interpretation method | |
| CN103391104A (en) | Method and device for processing LDPC encoding | |
| CN114598419B (en) | Interleaver, deinterleaver, and method of implementation thereof | |
| CN102201892B (en) | A kind of implementation method interweaved or deinterleave and device | |
| CN102035558A (en) | Turbo decoding method and device | |
| CN105577196B (en) | Turbo code data interleaving method and interleaver based on broadband OFDM power line communication system | |
| CN102324999A (en) | Method and system for parallel computing of interweaved address | |
| CN102104387A (en) | Decoder and decoding method | |
| CN100438344C (en) | Interleaving Method and Related Devices in Turbo Code Coding |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20151216 Termination date: 20190523 |
|
| CF01 | Termination of patent right due to non-payment of annual fee |