WO2012155425A1 - Parallel computing method and system of interleaving address - Google Patents

Parallel computing method and system of interleaving address Download PDF

Info

Publication number
WO2012155425A1
WO2012155425A1 PCT/CN2011/079997 CN2011079997W WO2012155425A1 WO 2012155425 A1 WO2012155425 A1 WO 2012155425A1 CN 2011079997 W CN2011079997 W CN 2011079997W WO 2012155425 A1 WO2012155425 A1 WO 2012155425A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
encoded
address
interleaving
interleave
Prior art date
Application number
PCT/CN2011/079997
Other languages
French (fr)
Chinese (zh)
Inventor
张彩虹
陈月强
马龙龙
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2012155425A1 publication Critical patent/WO2012155425A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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
    • H03M13/276Interleaving address generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6544IEEE 802.16 (WIMAX and broadband wireless access)
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations

Abstract

The invention provides a parallel computing method and a system of an interleaving address. The method comprises the following steps: pre-configuring and storing an interleaving address compression table; receiving the data to be coded, and reading the interleaving address compression table based on the length of a data packet of the data to be coded to acquire the PO value and the intermediate value of interleaving calculation; determining the value of the code parallelism degree K, generating an interleaving address and a read address based on the code parallelism degree, the length of the data packet of the data to be coded, the PO value, and the intermediate value of the interleaving calculation, reading the data to be coded based on the read address, and completing the interleaving operation. According to the technical solution of the invention, the parallel calculation of the interleaving address in an encoder of the WiMAX system can be realized.

Description

一种交织地址的并行计算方法及系统 技术领域  Parallel computing method and system for interleaving address
本发明涉及通信领域的全球微波互联接入 (WiMAX , Worldwide Interoperability for Microwave Access ) 系统, 尤其涉及一种编码器内交织地 址的并行计算方法及系统。 背景技术  The present invention relates to a Worldwide Interoperability for Microwave Access (WiMAX) system in the field of communications, and more particularly to a parallel computing method and system for interleaving addresses in an encoder. Background technique
为了抵抗传输过程中的突发错误, WiMAX系统中在编码器中采用交织 技术。 由于交织地址的计算比较复杂, 为了达到较高的编码吞吐率, 在编 码过程中使用并行方式完成编码。 编码器的结构要求内交织器可以实时完 成与编码并行度一致的并行交织计算, 或将码块的交织地址提前存储, 编 码时读取存储的交织地址, 从而获得交织地址, 完成数据的交织计算, 进 行编码。  In order to resist burst errors during transmission, interleaving techniques are employed in the encoder in WiMAX systems. Since the calculation of the interleaved address is complicated, in order to achieve a higher encoding throughput, the encoding is performed in parallel using the encoding process. The structure of the encoder requires that the inner interleaver can complete the parallel interleaving calculation consistent with the coding parallelism in real time, or store the interleaving address of the code block in advance, and read the stored interleaving address during encoding, thereby obtaining the interleaving address, and completing the interleaving calculation of the data. , coding.
由于 WiMAX系统支持多达 17种包长,且最大包长为 2400比特对(bit pair ), 如果存储全部交织地址, 需要 100Kbit的存储空间, 因此占用存储资 源比较大, 而且还需要根据包长查找不同的表, 实现方法较为复杂。 发明内容  Since the WiMAX system supports up to 17 types of packet lengths and the maximum packet length is 2400 bit pairs, if all the interleaved addresses are stored, 100Kbits of storage space is required, so the storage resources are relatively large, and it is also necessary to search according to the packet length. Different tables, the implementation method is more complicated. Summary of the invention
有鉴于此, 本发明的主要目的在于提供一种交织地址的并行计算方法 及系统, 能够实现 WiMAX系统中编码器内交织地址的并行计算。  In view of this, the main object of the present invention is to provide a parallel computing method and system for interleaving addresses, which can implement parallel computing of interleaved addresses in an encoder in a WiMAX system.
为达到上述目的, 本发明的技术方案是这样实现的:  In order to achieve the above object, the technical solution of the present invention is achieved as follows:
本发明提供一种交织地址的并行计算系统, 包括: 交织地址緩存单元、 处理前緩存单元、 控制单元; 其中,  The present invention provides a parallel computing system for interleaving addresses, including: an interleaving address buffer unit, a pre-processing buffer unit, and a control unit;
交织地址緩存单元, 用于预先配置并存储交织地址压缩表; 处理前緩存单元, 用于接收待编码数据, 并根据待编码数据的数据包 的长度, 读取交织地址压缩表, 获取 P。值和交织计算中间值; An interleave address buffer unit, configured to pre-configure and store an interleave address compression table; The pre-processing buffer unit is configured to receive data to be encoded, and read the interleave address compression table according to the length of the data packet to be encoded to obtain P. Value and interleaving calculate the intermediate value;
控制单元, 用于判断编码并行度 K的值, 并根据编码并行度、 待编码 数据的数据包的长度、 P。值和交织计算中间值生成交织地址和读地址, 根 据读地址读取待编码数据, 完成交织操作。  The control unit is configured to determine the value of the coding parallelism K, and according to the coding parallelism, the length of the data packet to be encoded, and P. The value and the interleave calculation intermediate value generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
本发明还提供一种交织地址的并行计算方法, 包括:  The present invention also provides a parallel computing method for interleaving addresses, including:
预先配置并存储交织地址压缩表;  Pre-configuring and storing an interleave address compression table;
接收待编码数据, 并根据待编码数据的数据包的长度, 读取交织地址 压缩表, 获取 P。值和交织计算中间值;  The data to be encoded is received, and according to the length of the data packet of the data to be encoded, the interleave address compression table is read to obtain P. Value and interleaving calculate the intermediate value;
判断编码并行度 K的值, 并根据编码并行度、 待编码数据的数据包的 长度、 P。值和交织计算中间值生成交织地址和读地址, 根据读地址读取待 编码数据, 完成交织操作。  The value of the coding parallelism K is judged according to the degree of coding parallelism, the length of the data packet to be encoded, and P. The value and the intermediate value of the interleaving calculation generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
上述方法中, 所述判断编码并行度 K的值为:  In the above method, the value of the judgment coding parallel degree K is:
根据 WiMAX系统中预先配置的吞吐率, 判断编码并行度 K的值。 上述方法中, 所述根据编码并行度、 待编码数据的数据包的长度、 P0 值和交织计算中间值生成交织地址和读地址为: The value of the coding parallelism K is judged based on the pre-configured throughput rate in the WiMAX system. In the above method, the interleaving address and the read address are generated according to the coding parallel degree, the length of the data packet to be encoded, the P 0 value, and the intermediate value of the interleaving calculation:
A、计算处理前緩存单元中每个数据緩沖区中緩存的待编码数据的个数 A. Calculate the number of data to be encoded buffered in each data buffer in the buffer unit before processing
Δ ; Δ ;
B、根据编码并行度 K、每个数据緩沖区中緩存的待编码数据的个数和 交织计算基地址, 递推生成 Κ个交织地址;  B. Recursively generating an interleave address according to the coding parallelism K, the number of data to be encoded buffered in each data buffer, and the interleaving calculation base address;
C、 生成的 K路交织地址分别对 K进行取模, 得到 K个交织地址对应 的待编码数据的数据緩沖区编号;  C. The generated K-way interleaving addresses respectively modulo K, and obtain data buffer numbers of the data to be encoded corresponding to the K interleave addresses;
D、 生成的 K路交织地址分别对 K进行取整, 得到 K个交织地址对应 的待编码数据的各自的数据緩沖区的读地址。  D. The generated K-way interleaving addresses respectively round up K to obtain the read addresses of the respective data buffers of the data to be encoded corresponding to the K interleave addresses.
上述方法中, 所述根据读地址读取待编码数据为: E、根据生成的 K个读地址,从处理前緩存单元中对应的待编码数据的 数据緩沖区中读数据, 将读出的 Κ个待编码数据输入并行编码器进行编码 处理。 In the above method, the reading the data to be encoded according to the read address is: E. Read data from the data buffer corresponding to the data to be encoded in the buffer unit before processing according to the generated K read addresses, and input the read data to be encoded into the parallel encoder for encoding processing.
上述方法中, 该方法还包括:  In the above method, the method further includes:
F、将 K个交织地址中的第一路交织地址緩存到处理前緩存单元, 记为 temp;  F. Cache the first interleave address of the K interleave addresses to the pre-processing buffer unit, and record it as temp;
G、 将编码并行度 K与 PQ相乘后, 再与 temp相加, 将得到的结果对每 个数据緩沖区中緩存的待编码数据的个数 Δ耳 4莫,将取模后的结果作为下一 轮交织计算的基地址。 G. Multiply the coding parallelism K by P Q , and then add it to temp, and the obtained result is the number of data to be encoded buffered in each data buffer. As the base address of the next round of interleaving calculations.
上述方法中, 该方法还包括:  In the above method, the method further includes:
H、 判断索引值 i与每个数据緩沖区中緩存的待编码数据的个数 Δ的大 小, 如果索引值 i小于每个数据緩沖区中緩存的待编码数据的个数 Δ , 执行 步驟 A, 直到索引值 i等于每个数据緩沖区中緩存的待编码数据的个数 。  H. Determine the size of the index value i and the number of data to be encoded Δ buffered in each data buffer. If the index value i is smaller than the number Δ of data to be encoded buffered in each data buffer, perform step A. Until the index value i is equal to the number of data to be encoded buffered in each data buffer.
上述方法中, 所述步驟 B为:  In the above method, the step B is:
K个交织地址中, 将第 K-1路交织地址 inter_addrK-2与 Τ。、 Τ\、 Τ2、 Τ3中的一个相加, 对相加结果取模, 得到第 Κ路交织地址 inter_addrK-l。 Among the K interleave addresses, the K-1th interleave address inter_addrK-2 and Τ are used. Add one of Τ\, Τ 2 and Τ 3 , and modulate the addition result to obtain the second interleaving address inter_addrK-l.
本发明提供的交织地址的并行计算方法及系统, 预先配置并存储交织 地址压缩表; 接收待编码数据, 并根据待编码数据的数据包的长度, 读取 交织地址压缩表, 获取 P。值和交织计算中间值; 判断编码并行度 K的值, 并根据编码并行度、 待编码数据的数据包的长度、 P。值和交织计算中间值 生成交织地址和读地址, 根据读地址读取待编码数据, 完成交织操作, 能 够实现 WiMAX 系统中编码器内交织地址的并行计算; 而且, 由于使用緩 存的交织地址压缩表, 因此能够降低存储资源的消耗; 此外, 使用本发明 中提出的方法, 能够降低 WiMAX 系统中编码器内交织地址的并行计算的 实现难度, 对于 WiMAX系统的实现成本的降低具有很大的意义。 附图说明 The parallel computing method and system for interleaving addresses provided by the present invention pre-configure and store an interleave address compression table; receive data to be encoded, and read an interleave address compression table according to the length of the data packet to be encoded to obtain P. The value and the interleave calculate the intermediate value; determine the value of the encoding parallelism K, and according to the encoding parallelism, the length of the data packet to be encoded, P. The intermediate value of the value and the interleaving calculation generates an interleave address and a read address, reads the data to be encoded according to the read address, completes the interleaving operation, and can implement parallel calculation of the interleave address in the encoder in the WiMAX system; and, because the buffered interleave address is used to compress the table Therefore, the consumption of the storage resources can be reduced; in addition, the method proposed in the present invention can reduce the difficulty in realizing the parallel computing of the interleave addresses in the encoder in the WiMAX system, and has great significance for the reduction of the implementation cost of the WiMAX system. DRAWINGS
图 1是本发明实现交织地址的并行计算系统的结构示意图;  1 is a schematic structural diagram of a parallel computing system for implementing an interleaved address according to the present invention;
图 2是本发明实现交织地址的并行计算方法的流程示意图;  2 is a schematic flow chart of a parallel computing method for implementing an interleaved address according to the present invention;
图 3是本发明实现图 2中步驟 203的方法的流程示意图;  3 is a schematic flow chart of a method for implementing step 203 of FIG. 2 according to the present invention;
图 4是本发明中编码并行度 K为 4时的递推生成交织地址的示意图; 图 5是本发明实现交织地址的并行计算方法的实施例一的流程示意图; 图 6是将待编码数据緩存在处理前緩存单元的数据緩沖区的示意图。 具体实施方式  4 is a schematic diagram of a recursively generated interleaving address when the coding parallelism K is 4; FIG. 5 is a schematic flowchart of Embodiment 1 of a parallel computing method for implementing an interleaved address according to the present invention; FIG. 6 is a buffer for data to be encoded. Schematic diagram of the data buffer of the cache unit before processing. detailed description
本发明的基本思想是: 预先配置并存储交织地址压缩表; 接收待编码 数据, 并根据待编码数据的数据包的长度, 读取交织地址压缩表, 获取 Po 值和交织计算中间值; 判断编码并行度 K的值, 并根据编码并行度、 待编 码数据的数据包的长度、 P。值和交织计算中间值生成交织地址和读地址, 根据读地址读取待编码数据, 完成交织操作。  The basic idea of the present invention is: pre-configuring and storing an interleave address compression table; receiving data to be encoded, and reading an interleave address compression table according to the length of the data packet to be encoded, obtaining a Po value and interleaving calculation intermediate value; The value of the degree of parallelism K, and according to the degree of coding parallelism, the length of the data packet to be encoded, P. The value and the interleave calculation intermediate value generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
下面通过附图及具体实施例对本发明再做进一步的详细说明。  The invention will be further described in detail below with reference to the drawings and specific embodiments.
本发明提供一种交织地址的并行计算系统, 图 1是本发明实现交织地 址的并行计算系统的结构示意图, 如图 1 所示, 该系统包括: 交织地址緩 存单元 11、 处理前緩存单元 12、 控制单元 13; 其中,  The present invention provides a parallel computing system for interleaving addresses. FIG. 1 is a schematic structural diagram of a parallel computing system for implementing an interleaved address according to the present invention. As shown in FIG. 1, the system includes: an interleaving address buffer unit 11, a pre-processing buffer unit 12, Control unit 13; wherein
交织地址緩存单元 11 , 用于预先配置并存储交织地址压缩表; 处理前緩存单元 12, 用于接收待编码数据, 并根据待编码数据的数据 包的长度, 读取交织地址压缩表, 获取 P。值和交织计算中间值;  The interleave address buffer unit 11 is configured to pre-configure and store the interleave address compression table. The pre-processing buffer unit 12 is configured to receive data to be encoded, and read the interleave address compression table according to the length of the data packet to be encoded, to obtain P. . Value and interleaving calculate the intermediate value;
控制单元 13, 用于判断编码并行度 K的值, 并根据编码并行度、 待编 码数据的数据包的长度、 P。值和交织计算中间值生成交织地址和读地址, 根据读地址读取待编码数据, 完成交织操作。  The control unit 13 is configured to determine the value of the coding parallelism K, and according to the coding parallelism, the length of the data packet to be encoded, and P. The value and the interleave calculation intermediate value generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
基于上述系统, 本发明还提供一种交织地址的并行计算方法, 图 2是 本发明实现交织地址的并行计算方法的流程示意图, 如图 2所示, 该方法 包括以下步驟: Based on the foregoing system, the present invention further provides a parallel computing method for interleaving addresses, and FIG. 2 is a schematic flowchart of a parallel computing method for implementing an interleaved address according to the present invention. As shown in FIG. 2, the method is Includes the following steps:
步驟 201 , 预先配置并存储交织地址压缩表;  Step 201: Pre-configure and store an interleave address compression table.
具体的, 交织地址緩存单元预先配置交织地址压缩表, 该交织地址压 缩表如表 1所示, 交织地址压缩表用于保存待编码数据的数据包长度与 P0、 τ。、 τ τ2、 τ3的对应关系; 其中, τ。、 τ τ2、 τ3为交织地址的中间值; 将交织地址压缩表存储在交织地址緩存单元。 Specifically, the interleave address buffering unit pre-configures the interleave address compression table, as shown in Table 1, the interleave address compression table is used to store the packet length of the data to be encoded and P 0 , τ. Correspondence between τ τ 2 and τ 3 ; where τ. τ τ 2 and τ 3 are intermediate values of the interleave address; and the interleave address compression table is stored in the interleave address buffer unit.
Figure imgf000007_0001
Figure imgf000007_0001
表 1  Table 1
步驟 202, 接收待编码数据, 并根据待编码数据的数据包的长度, 读取 具体的, 处理前緩存单元接收输入的待编码数据, 并緩存待编码数据; 处理前緩存单元根据输入的待编码数据的数据包的长度 N, 在交织地址压 缩表中读取与该待编码数据的数据包的长度 N对应的 P。值和交织计算中间 值 Τ0、 Τ2、 Τ3Step 202: Receive data to be encoded, and read according to the length of the data packet of the data to be encoded. Specifically, the pre-processing buffer unit receives the input data to be encoded, and buffers the data to be encoded. The pre-processing buffer unit reads the data to be encoded in the interleave address compression table according to the length N of the input data packet to be encoded. The length of the packet N corresponds to P. The value and interleaving calculate the intermediate values Τ 0 , Τ 2 , Τ 3 .
步驟 203 , 判断编码并行度 Κ的值, 并根据编码并行度、 待编码数据 的数据包的长度、 Ρ。值和交织计算中间值生成交织地址和读地址, 根据读 地址读取待编码数据, 完成交织操作。  Step 203: Determine a value of the coding parallel degree ,, and according to the coding parallel degree, the length of the data packet to be encoded, and Ρ. The value and the intermediate value of the interleaving calculation generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
图 3是本发明实现图 2中步驟 203的方法的流程示意图, 如图 3所示, 该方法包括以下步驟:  FIG. 3 is a schematic flowchart of a method for implementing step 203 in FIG. 2 according to the present invention. As shown in FIG. 3, the method includes the following steps:
步驟 301 , 判断编码并行度 Κ的值;  Step 301: Determine a value of the coding parallel degree Κ;
具体为, 根据 WiMAX系统中预先配置的吞吐率, 判断编码并行度 K 的值, 如果配置的吞吐率较高, 则编码并行度 K的值较大, 例如编码并行 度 K等于 8; 如果配置的吞吐率较低, 则编码并行度 K的值较小, 例如编 码并行度 K等于 4。  Specifically, the value of the coding parallelism K is determined according to the pre-configured throughput rate in the WiMAX system. If the configured throughput rate is high, the value of the coding parallelism K is large, for example, the coding parallelism K is equal to 8; If the throughput is low, the value of the coding parallelism K is small, for example, the coding parallelism K is equal to 4.
步驟 302, 根据待编码数据的数据包的长度 N和编码并行度 K, 计算 处理前緩存单元中每个数据緩沖区中緩存的待编码数据的个数 Δ ,即个数等 于獄。  Step 302: Calculate, according to the length N of the data packet to be encoded and the coding parallelism K, the number Δ of data to be encoded buffered in each data buffer in the buffer unit before processing, that is, the number is equal to the prison.
步驟 303, 根据编码并行度 、每个数据緩沖区中緩存的待编码数据的 个数 和交织计算基地址, 递推生成 K个交织地址;  Step 303: Recursively generate K interleave addresses according to coding parallelism, number of data to be encoded buffered in each data buffer, and interleaving calculation base address;
具体的,根据交织计算的基地址和交织计算中间值生成 K个交织地址, 例如, 当 K=4时, 根据交织计算的基地址和交织计算中间值 T。、 T T2递 推生成 4个交织地址; 当 Κ=8时, 根据交织计算的基地址和交织计算中间 值 Τ。、 Τ\、 Τ2、 Τ3递推生成 8交织地址; Specifically, K interleave addresses are generated according to the base address of the interleave calculation and the intermediate value of the interleave calculation. For example, when K=4, the intermediate value T is calculated according to the base address and the interlace calculated by the interleave. TT 2 recursively generates 4 interleaving addresses; when Κ=8, the intermediate value Τ is calculated according to the base address and interleaving calculated by the interleaving. , Τ\, Τ 2 , Τ 3 recursively generate 8 interleaved addresses;
图 4是本发明中编码并行度 Κ为 4时的递推生成交织地址的示意图, 如图 4所示, 所述递推生成交织地址具体为: K个交织地址中, 根据基地址对待编码数据的数据包的长度 Ν进行取 模处理, 得到第一路交织地址 inter_addrO; 将第一路交织地址 inter_addrO 与 T。相加后, 对相加结果取模, 得到第二路交织地址 inter_addrl ; 将第二 路交织地址 inter_addrl与 1\相加后, 对相加结果取模, 得到第三路交织地 址 inter_addr2; 将第三路交织地址 inter_addr2与 T2相加后, 对相加结果取 模, 得到第四路交织地址 inter_addr3; 对于 K=4的情况, 这里得到了四路 交织地址, 可以停止计算, 对于 Κ=8的情况, 还需要继续计算, 即将第四 路交织地址 inter_addr3与 Τ3相加后, 对相加结果取模, 得到第五路交织地 址 inter_addr4; 将第五路交织地址 inter_addr4与 T。相加后, 对相加结果取 模, 得到第六路交织地址 inter_addr5; 以此类推, 将第 K-1 路交织地址 inter_addrK-2与 T0、 Τ2、 Τ3中的一个相加, 对相加结果耳 4莫, 得到第 Κ路交织地址 inter_addrK-l。 4 is a schematic diagram of a recursively generated interleave address when the coding parallel degree Κ is 4 in the present invention. As shown in FIG. 4, the recursively generated interleave address is specifically: Among the K interleave addresses, the length of the data packet of the base data to be encoded is subjected to modulo processing to obtain a first interleave address inter_addr0; and the first interleave address inter_addr0 and T are obtained. After adding, the modulo result is modulo, and the second interleave address inter_addrl is obtained; after the second interleave address inter_addrl is added to 1\, the addition result is modulo, and the third interleave address inter_addr2 is obtained; After the three-way interleave address inter_addr2 is added to T 2 , the addition result is modulo, and the fourth interleave address inter_addr3 is obtained; for the case of K=4, the four-way interleave address is obtained, and the calculation can be stopped, for Κ=8 case, also need to continue calculation, i.e. with the fourth way interleaving address inter_addr3 Τ 3 after the addition of modulo addition result, to obtain a fifth way interleaving address inter_addr4; the fifth passage and the interleaving address inter_addr4 T. After adding, the modulo result is modulo, and the sixth interleave address inter_addr5 is obtained; and so on, the K-1 way interleave address inter_addrK-2 is added to one of T 0 , Τ 2 , Τ 3 , The result of the addition is 4, and the second interleaving address inter_addrK-l is obtained.
步驟 304, 生成的 K路交织地址分别对 K进行取模, 得到 K个交织地 址对应的待编码数据的数据緩沖区编号。  Step 304: The generated K-way interleaving addresses respectively modulo K, and obtain data buffer numbers of the data to be encoded corresponding to the K interleaved addresses.
步驟 305 , 生成的 K路交织地址分别对 K进行取整, 得到 K个交织地 址对应的待编码数据的各自的数据緩沖区的读地址。  Step 305: The generated K-way interleaving addresses respectively round up K to obtain read addresses of respective data buffers of the data to be encoded corresponding to the K interleaved addresses.
步驟 306, 根据生成的 K个读地址, 从处理前緩存单元中对应的待编 码数据的数据緩沖区中读数据, 一共可以读出 K个待编码数据, 将读出的 K个待编码数据输入并行编码器进行编码处理。  Step 306: Read data from the data buffer corresponding to the data to be encoded in the buffer unit before processing according to the generated K read addresses, and read K data to be encoded, and input the K data to be encoded. The parallel encoder performs encoding processing.
步驟 307, 将步驟 302中的 K个交织地址中的第一路交织地址緩存到 处理前緩存单元, 记为 temp, 作为计算下一轮交织地址的中间值。  Step 307: The first interleave address of the K interleave addresses in step 302 is buffered to the pre-processing buffer unit, denoted as temp, as an intermediate value for calculating the next round of interleave addresses.
步驟 308, 将编码并行度 K与 P。相乘后, 再与 temp相加, 将得到的结 果对每个数据緩沖区中緩存的待编码数据的个数 Δ取模,将取模后的结果作 为下一轮交织计算的基地址。  Step 308, encoding the parallel degrees K and P. After multiplying, it is added to temp, and the obtained result is modulo the number of data to be encoded Δ buffered in each data buffer, and the modulo result is used as the base address of the next round of interleaving calculation.
此时索引值 i=l ,如果小于每个数据緩沖区中緩存的待编码数据的个数 Δ , 那么索引值 i加 1 , 循环步驟 302至步驟 308, 直到索引值等于每个数 据緩沖区中緩存的待编码数据的个数 Δ时为止,此时当前待编码数据的并行 交织地址计算完毕。 At this time, the index value is i=l, if it is less than the number of data to be encoded buffered in each data buffer. Δ , then the index value i is incremented by one, and the steps 302 to 308 are looped until the index value is equal to the number Δ of the data to be encoded buffered in each data buffer, and the parallel interleaving address of the current data to be encoded is calculated. .
图 5是本发明实现交织地址的并行计算方法的实施例一的流程示意图, 本实施例中, 以待编码数据的数据包的长度 N=36为例, 如图 5所示, 该方 法包括以下步驟:  FIG. 5 is a schematic flowchart of the first embodiment of the method for implementing the interleaving address in the parallel computing method. In this embodiment, the length of the data packet to be encoded is N=36. As shown in FIG. 5, the method includes the following steps. Steps:
步驟 501 , 根据 WiMAX系统中预先配置的吞吐率, 确定本实施例中, 编码并行度 κ为 4; 如图 6所示, 将待编码数据緩存在处理前緩存单元的 4 个数据緩沖区中。  Step 501: Determine, according to the pre-configured throughput rate in the WiMAX system, that the coding parallelism κ is 4; as shown in FIG. 6, the data to be encoded is buffered in four data buffers of the pre-processing buffer unit.
步驟 502, 根据待编码数据的数据包的长度 N, 读取交织地址压缩表, 得到 p。=ll、 T。=ll、 1\=11、 T2=ll、 T3=ll。 Step 502: Read the interleave address compression table according to the length N of the data packet of the data to be encoded, and obtain p. =ll, T. =ll, 1\=11, T 2 =ll, T 3 =ll.
步驟 503 ,计算处理前緩存单元中每个数据緩沖区中緩存的待编码数据 的个数 Δ=Ν/Κ=36/4=9。  Step 503: Calculate the number of data to be encoded buffered in each data buffer in the buffer unit before processing Δ=Ν/Κ=36/4=9.
步驟 504,根据编码并行度 Κ=4、每个数据緩沖区中緩存的待编码数据 的个数 =9、交织计算的基地址 1生成 4个交织地址,分别为 inter_addrO=l、 inter_addrl=12、 inter_addr2=23、 inter_addr3=34; 此时, 索引值 i=0。  Step 504: Generate four interleave addresses according to the coding parallel degree Κ=4, the number of data to be encoded buffered in each data buffer=9, and the base address 1 of the interleave calculation, respectively, inter_addrO=l, inter_addrl=12 Inter_addr2=23, inter_addr3=34; At this time, the index value i=0.
步驟 505 , 生成 4个交织地址对应的数据緩沖区编号: 1、 0、 3、 2。 步驟 506, 生成 4个待编码数据在各自緩沖区的读地址: 0、 3、 5、 8。 步驟 507 ,根据生成的 4个读地址,从处理前緩存单元中对应的数据緩 沖区中读数据, 将读出的 4个待编码数据输入并行编码器进行编码处理; 具体的, 从数据緩沖区 1的读地址 2读出对应的待编码数据, 输入并 行编码器第 0路;  Step 505: Generate data buffer numbers corresponding to the four interleaved addresses: 1, 0, 3, and 2. Step 506, generating a read address of the four data to be encoded in the respective buffers: 0, 3, 5, 8. Step 507, according to the generated four read addresses, read data from the corresponding data buffer in the pre-processing buffer unit, and input the read four data to be encoded into the parallel encoder for encoding processing; specifically, the data buffer Reading address 2 of 1 reads the corresponding data to be encoded, and inputs the parallel encoder 0th channel;
从数据緩沖区 0的读地址 5读出对应的待编码数据, 送入并行编码器 第 1路;  Read the corresponding data to be encoded from the read address 5 of the data buffer 0, and send it to the parallel encoder 1st;
从数据緩沖区 3的读地址 7读出对应的待编码数据, 送入并行编码器 第 2路; Read the corresponding data to be encoded from the read address 7 of the data buffer 3, and send it to the parallel encoder. Second road;
从数据緩沖区 2的读地址 1读出对应的待编码数据, 送入并行编码器 第 3路。  The corresponding data to be encoded is read from the read address 1 of the data buffer 2, and sent to the parallel encoder 3rd.
步驟 508, 緩存第一路交织地址 temp=l。  Step 508: Cache the first interleave address temp=l.
步驟 509, 计算下一轮交织地址计算的基地址: 1+ ( 4*11 ) =45 , 用 45 对 36取模, 等于 9。  Step 509: Calculate the base address of the next round of interleaving address calculation: 1+ ( 4*11 ) =45, and modulo 45 pairs of 36, equal to 9.
步驟 510, 索引值 i加 1 , 累加后索引值 i=l , 由于索引值 i<N=9, 因此 进入步驟 504, 进行下一轮交织地址计算。  In step 510, the index value i is incremented by 1, and the index value i=l is accumulated. Since the index value i<N=9, the process proceeds to step 504, where the next round of interleave address calculation is performed.
步驟 511 ,根据编码并行度 K=4、每个数据緩沖区中緩存的待编码数据 的个数 Δ=9、 交织计算基地址 9生成 4个交织地址, 分别为 inter_addr0=9、 inter_addrl=20、 inter_addr2=31、 inter_addr3=6。  Step 511: Generate four interleave addresses according to the coding parallelism K=4, the number of data to be encoded buffered in each data buffer Δ=9, and the interleave calculation base address 9, which are respectively inter_addr0=9, inter_addrl=20, Inter_addr2=31, inter_addr3=6.
步驟 512, 生成 4个交织地址对应的数据緩沖区编号: 1、 0、 3、 2。 步驟 513 , 生成 4个待编码数据在各自緩沖区的读地址: 2、 5、 7、 1。 步驟 514,根据生成的 4个读地址,从处理前緩存单元中对应的数据緩 沖区中读数据, 将读出的 4个待编码数据输入并行编码器进行编码处理; 具体的, 从数据緩沖区 1的读地址 2读出对应的待编码数据, 输入并 行编码器第 0路;  Step 512: Generate data buffer numbers corresponding to the four interleaved addresses: 1, 0, 3, and 2. Step 513, generating a read address of the four data to be encoded in the respective buffers: 2, 5, 7, and 1. Step 514, according to the generated four read addresses, read data from the corresponding data buffer in the pre-processing buffer unit, and input the read four data to be encoded into the parallel encoder for encoding processing; specifically, the data buffer Reading address 2 of 1 reads the corresponding data to be encoded, and inputs the parallel encoder 0th channel;
从数据緩沖区 0的读地址 5读出对应的待编码数据, 送入并行编码器 第 1路;  Read the corresponding data to be encoded from the read address 5 of the data buffer 0, and send it to the parallel encoder 1st;
从数据緩沖区 3的读地址 7读出对应的待编码数据, 送入并行编码器 第 2路;  Read the corresponding data to be encoded from the read address 7 of the data buffer 3, and send it to the parallel encoder 2nd channel;
从数据緩沖区 2的读地址 1读出对应的待编码数据, 送入并行编码器 第 3路。  The corresponding data to be encoded is read from the read address 1 of the data buffer 2, and sent to the parallel encoder 3rd.
步驟 515 , 緩存第一路交织地址 temp=9。  Step 515, buffering the first interleave address temp=9.
步驟 516, 计算下一轮交织地址计算的基地址为 17。 步驟 517, 索引值 i加 1 , 累加后索引值 i=2, 由于索引值 i<N=9, 因此 进入步驟 504, 进行下一轮交织地址计算, 以此类推, 直至索引值 i=N=9。 In step 516, the base address calculated by the next round of interleave address calculation is 17. In step 517, the index value i is incremented by one, and the index value i=2 is accumulated. Since the index value i<N=9, the process proceeds to step 504, where the next round of interleave address calculation is performed, and so on, until the index value i=N= 9.
以上所述, 仅为本发明的较佳实施例而已, 并非用于限定本发明的保 护范围, 凡在本发明的精神和原则之内所作的任何修改、 等同替换和改进 等, 均应包含在本发明的保护范围之内。  The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included. Within the scope of protection of the present invention.

Claims

权利要求书 Claim
1、 一种交织地址的并行计算系统, 其特征在于, 该系统包括: 交织地 址緩存单元、 处理前緩存单元、 控制单元; 其中,  A parallel computing system for interleaving addresses, the system comprising: an interleaved address buffer unit, a pre-processing buffer unit, and a control unit;
交织地址緩存单元, 用于预先配置并存储交织地址压缩表;  An interleave address buffer unit, configured to pre-configure and store an interleave address compression table;
处理前緩存单元, 用于接收待编码数据, 并根据待编码数据的数据包 的长度, 读取交织地址压缩表, 获取 P。值和交织计算中间值;  The pre-processing buffer unit is configured to receive data to be encoded, and read the interleave address compression table according to the length of the data packet to be encoded to obtain P. Value and interleaving calculate the intermediate value;
控制单元, 用于判断编码并行度 K的值, 并根据编码并行度、 待编码 数据的数据包的长度、 P。值和交织计算中间值生成交织地址和读地址, 根 据读地址读取待编码数据, 完成交织操作。  The control unit is configured to determine the value of the coding parallelism K, and according to the coding parallelism, the length of the data packet to be encoded, and P. The value and the interleave calculation intermediate value generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
2、 一种交织地址的并行计算方法, 其特征在于, 该方法包括: 预先配置并存储交织地址压缩表;  2. A parallel computing method for interleaving addresses, the method comprising: pre-configuring and storing an interleave address compression table;
接收待编码数据, 并根据待编码数据的数据包的长度, 读取交织地址 压缩表, 获取 P。值和交织计算中间值;  The data to be encoded is received, and according to the length of the data packet of the data to be encoded, the interleave address compression table is read to obtain P. Value and interleaving calculate the intermediate value;
判断编码并行度 K的值, 并根据编码并行度、 待编码数据的数据包的 长度、 P。值和交织计算中间值生成交织地址和读地址, 根据读地址读取待 编码数据, 完成交织操作。  The value of the coding parallelism K is judged according to the degree of coding parallelism, the length of the data packet to be encoded, and P. The value and the intermediate value of the interleaving calculation generate an interleave address and a read address, and the data to be encoded is read according to the read address to complete the interleaving operation.
3、 根据权利要求 2所述的方法, 其特征在于, 所述判断编码并行度 K 的值为:  3. The method according to claim 2, wherein the value of the judgment coding parallelism K is:
根据 WiMAX系统中预先配置的吞吐率, 判断编码并行度 K的值。 The value of the coding parallelism K is judged based on the pre-configured throughput rate in the WiMAX system.
4、 根据权利要求 2所述的方法, 其特征在于, 所述根据编码并行度、 待编码数据的数据包的长度、 P。值和交织计算中间值生成交织地址和读地 址为: 4. The method according to claim 2, wherein the length of the data packet according to the coding parallelism, the data to be encoded, P. The intermediate value of the value and interleaving calculation generates the interleave address and the read address as:
A、计算处理前緩存单元中每个数据緩沖区中緩存的待编码数据的个数 A. Calculate the number of data to be encoded buffered in each data buffer in the buffer unit before processing
Δ ; Δ ;
B、 根据编码并行度^ 每个数据緩沖区中緩存的待编码数据的个数 Δ 和交织计算基地址, 递推生成 K个交织地址; B, according to the degree of coding parallelism ^ the number of data to be encoded cached in each data buffer Δ And interleaving the base address, and recursively generating K interleave addresses;
C、 生成的 K路交织地址分别对 K进行取模, 得到 K个交织地址对应 的待编码数据的数据緩沖区编号;  C. The generated K-way interleaving addresses respectively modulo K, and obtain data buffer numbers of the data to be encoded corresponding to the K interleave addresses;
D、 生成的 K路交织地址分别对 K进行取整, 得到 K个交织地址对应 的待编码数据的各自的数据緩沖区的读地址。  D. The generated K-way interleaving addresses respectively round up K to obtain the read addresses of the respective data buffers of the data to be encoded corresponding to the K interleave addresses.
5、 根据权利要求 2所述的方法, 其特征在于, 所述根据读地址读取待 编码数据为:  5. The method according to claim 2, wherein the reading the data to be encoded according to the read address is:
E、根据生成的 K个读地址,从处理前緩存单元中对应的待编码数据的 数据緩沖区中读数据, 将读出的 K个待编码数据输入并行编码器进行编码 处理。  E. Read data from the data buffer corresponding to the data to be encoded in the buffer unit before processing according to the generated K read addresses, and input the read K data to be encoded into the parallel encoder for encoding processing.
6、 根据权利要求 5所述的方法, 其特征在于, 该方法还包括: 6. The method according to claim 5, wherein the method further comprises:
F、将 K个交织地址中的第一路交织地址緩存到处理前緩存单元,记为 temp; F, buffering the first interleave address of the K interleave addresses to the pre-processing buffer unit, denoted as temp;
G、 将编码并行度 K与 P(^¾乘后, 再与 temp相加, 将得到的结果对每 个数据緩沖区中緩存的待编码数据的个数 Δ耳 4莫,将取模后的结果作为下一 轮交织计算的基地址。  G, the coding parallelism K and P (^3⁄4 multiplied, and then added to temp, the result will be the number of data to be encoded buffered in each data buffer Δ ear 4, will be modulo The result is the base address of the next round of interleaving calculations.
7、 根据权利要求 6所述的方法, 其特征在于, 该方法还包括: The method according to claim 6, wherein the method further comprises:
H、 判断索引值 i与每个数据緩沖区中緩存的待编码数据的个数 Δ的大 小, 如果索引值 i小于每个数据緩沖区中緩存的待编码数据的个数 Δ , 执行 步驟 A, 直到索引值 i等于每个数据緩沖区中緩存的待编码数据的个数 。 H. Determine the size of the index value i and the number of data to be encoded Δ buffered in each data buffer. If the index value i is smaller than the number Δ of data to be encoded buffered in each data buffer, perform step A. Until the index value i is equal to the number of data to be encoded buffered in each data buffer.
8、 根据权利要求 4所述的方法, 其特征在于, 所述步驟 B为: 8. The method according to claim 4, wherein the step B is:
K个交织地址中, 将第 K-1路交织地址 inter_addrK-2与 T。、 T Τ2、 Τ3中的一个相加, 对相加结果取模, 得到第 Κ路交织地址 inter_addrK-l。 Among the K interleave addresses, the K-1th interleave address inter_addrK-2 and T are used. Add one of T Τ 2 and Τ 3 , and modulate the addition result to obtain the second interleaving address inter_addrK-l.
PCT/CN2011/079997 2011-05-17 2011-09-22 Parallel computing method and system of interleaving address WO2012155425A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110127779.X 2011-05-17
CN201110127779.XA CN102170333B (en) 2011-05-17 2011-05-17 A kind of parallel calculating method of interleaving address and system

Publications (1)

Publication Number Publication Date
WO2012155425A1 true WO2012155425A1 (en) 2012-11-22

Family

ID=44491324

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/079997 WO2012155425A1 (en) 2011-05-17 2011-09-22 Parallel computing method and system of interleaving address

Country Status (2)

Country Link
CN (1) CN102170333B (en)
WO (1) WO2012155425A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102324999B (en) * 2011-05-16 2015-12-16 中兴通讯股份有限公司 A kind of parallel calculating method of interleaving address and system
CN102170333B (en) * 2011-05-17 2016-01-20 中兴通讯股份有限公司 A kind of parallel calculating method of interleaving address and system
CN102769471B (en) * 2012-06-26 2016-02-17 北京北方烽火科技有限公司 A kind of Turbo code coding method and encoder

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154957A (en) * 2006-09-30 2008-04-02 华为技术有限公司 Turbo code interweaver and interweaved address transmission method
CN101478316A (en) * 2009-01-07 2009-07-08 比克奇(北京)技术有限公司 Quick implementation method for intra-LTE Turbo code interleaver
CN101540654A (en) * 2009-05-04 2009-09-23 普天信息技术研究院有限公司 Method for interlacing rate matching and de-interlacing off-rate matching
KR20100027631A (en) * 2008-09-03 2010-03-11 엘지전자 주식회사 A method for decoding data in a wireless communication system
CN101938330A (en) * 2010-09-02 2011-01-05 复旦大学 Multi-code rate Turbo encoder and storage resource optimization method thereof
CN102035558A (en) * 2009-09-27 2011-04-27 中兴通讯股份有限公司 Turbo decoding method and device
CN102170333A (en) * 2011-05-17 2011-08-31 中兴通讯股份有限公司 Parallel computing method and system of interleave address

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101116249B (en) * 2005-02-03 2010-10-13 松下电器产业株式会社 Parallel interleaver, parallel deinterleaver, and interleave method
CN101707490B (en) * 2009-09-22 2013-03-20 重庆重邮信科通信技术有限公司 Parallel Turbo code interleaving method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154957A (en) * 2006-09-30 2008-04-02 华为技术有限公司 Turbo code interweaver and interweaved address transmission method
KR20100027631A (en) * 2008-09-03 2010-03-11 엘지전자 주식회사 A method for decoding data in a wireless communication system
CN101478316A (en) * 2009-01-07 2009-07-08 比克奇(北京)技术有限公司 Quick implementation method for intra-LTE Turbo code interleaver
CN101540654A (en) * 2009-05-04 2009-09-23 普天信息技术研究院有限公司 Method for interlacing rate matching and de-interlacing off-rate matching
CN102035558A (en) * 2009-09-27 2011-04-27 中兴通讯股份有限公司 Turbo decoding method and device
CN101938330A (en) * 2010-09-02 2011-01-05 复旦大学 Multi-code rate Turbo encoder and storage resource optimization method thereof
CN102170333A (en) * 2011-05-17 2011-08-31 中兴通讯股份有限公司 Parallel computing method and system of interleave address

Also Published As

Publication number Publication date
CN102170333B (en) 2016-01-20
CN102170333A (en) 2011-08-31

Similar Documents

Publication Publication Date Title
WO2017054164A1 (en) Polar code encoding and decoding method, and device for same
US8593307B2 (en) Methods of compressing data in storage device
WO2014075267A1 (en) Decoding processing method and decoder
US8638244B2 (en) Encoding module, apparatus and method for determining a position of a data bit within an interleaved data stream
WO2012083714A1 (en) Method for turbo codes data interleaving and interleaver for interleaving turbo codes data
JP2013532924A (en) Turbo code parallel interleaver and its parallel interleaving method
KR102244117B1 (en) Method and apparatus for processing rate matching of polar codes
WO2012155425A1 (en) Parallel computing method and system of interleaving address
WO2016050323A1 (en) Method and device for calculating a crc code in parallel
JP7047092B2 (en) Decoding method, device and storage medium for stair code
US20120151295A1 (en) Device and method for turbo-encoding a block of data
CN108270452B (en) Turbo decoder and decoding method
CN109327276B (en) Security coding method, decoding method and device
US20140281367A1 (en) Address calculation for received data
CN109639393B (en) Sliding window network coding method based on quadratic permutation polynomial
KR20020030170A (en) Method for turbo decoding
WO2012155426A1 (en) Method and system for interleaving address parallel calculation
WO2012109872A1 (en) Method, apparatus and lte terminals for cyclic redundancy checking in communication system
CN109245775B (en) Decoder and method for realizing decoding
WO2008028419A1 (en) Interleaving/de-interleaving method and system in communication system
US20200220653A1 (en) Staircase code decoding method and staircase code decoding apparatus
KR101436973B1 (en) Supercharged codes
WO2012109851A1 (en) Interleaving and de-interleaving method, interleaver and de-interleaver
WO2014154074A1 (en) Methods and devices for coding and decoding depth information, and video processing and playing device
WO2017000682A1 (en) Decoding method and apparatus and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11865706

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11865706

Country of ref document: EP

Kind code of ref document: A1