CN102118217B - A kind of method for parallel processing of rate-matched and device - Google Patents
A kind of method for parallel processing of rate-matched and device Download PDFInfo
- Publication number
- CN102118217B CN102118217B CN201010000107.8A CN201010000107A CN102118217B CN 102118217 B CN102118217 B CN 102118217B CN 201010000107 A CN201010000107 A CN 201010000107A CN 102118217 B CN102118217 B CN 102118217B
- Authority
- CN
- China
- Prior art keywords
- data
- verification
- memory
- data stream
- storing
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000012795 verification Methods 0.000 claims abstract description 144
- 230000015654 memory Effects 0.000 claims abstract description 111
- 230000009897 systematic effect Effects 0.000 claims abstract description 28
- 238000003672 processing method Methods 0.000 claims abstract description 7
- 230000003139 buffering effect Effects 0.000 claims abstract description 4
- 238000004364 calculation method Methods 0.000 claims description 30
- 238000004080 punching Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010295 mobile communication Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 239000000872 buffer Substances 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
Landscapes
- Communication Control (AREA)
Abstract
本发明公开了一种码速率匹配的并行处理方法及装置,涉及移动通信系统中信道编码技术。本发明方法包括:接收系统位数据流、校验1数据流以及校验2数据流,将所述系统位数据流中N个系统位数据进行交织处理,并将所述N个系统位数据并行缓存在用于存储系统位数据的存储器中,将所述校验1数据流和校验2数据流中N个对应数据组进行交织处理,并将所述N个对应数据组并行缓存在用于存储校验数据的存储器中,其中,N与事先设定的并行度相等;从所述存储器中读取有效数据,实现速率匹配。本发明技术方案提高了系统处理能力,非常利于后续处理。
The invention discloses a parallel processing method and device for code rate matching, and relates to channel coding technology in a mobile communication system. The method of the present invention includes: receiving a systematic bit data stream, a check 1 data stream and a check 2 data stream, performing interleaving processing on N systematic bit data in the systematic bit data stream, and parallelizing the N systematic bit data Buffering in the memory for storing system bit data, interleaving the N corresponding data groups in the check 1 data stream and the check 2 data stream, and buffering the N corresponding data groups in parallel for In the memory for storing the verification data, where N is equal to the parallel degree set in advance; effective data is read from the memory to realize rate matching. The technical scheme of the invention improves the processing capacity of the system and is very beneficial to subsequent processing.
Description
技术领域 technical field
本发明涉及移动通信系统中信道编码部分,尤其涉及一种码速率匹配的并行处理方法及装置。The invention relates to a channel coding part in a mobile communication system, in particular to a parallel processing method and device for code rate matching.
背景技术 Background technique
在移动通信系统中,信道中传输的数据经过信道编码后产生部分冗余数据,这些冗余信息用于给解码器提供更多的解码信息,提高解码成功率,但是如果将这些冗余信息全部传输,造成传输效率下降。因此目前,一个比较好的方法就是根据信道的质量选择传输信息的多少,例如信道质量比较好时只传输原始信息,反之除传输原始信息位还要传输较多的校验位。即,需要对信道编码器产生的数据进行选择传输,而速率匹配就是实现编码数据选择传输的功能。In a mobile communication system, part of the redundant data is generated after the data transmitted in the channel is channel coded. These redundant information are used to provide more decoding information for the decoder and improve the success rate of decoding. However, if all the redundant information is transmission, resulting in a decrease in transmission efficiency. Therefore, at present, a better method is to select the amount of information to be transmitted according to the quality of the channel. For example, when the channel quality is relatively good, only the original information is transmitted; otherwise, more parity bits are transmitted in addition to the original information bits. That is, the data generated by the channel encoder needs to be selectively transmitted, and the rate matching is a function of realizing the selective transmission of encoded data.
现在,LTE(LongTermEvolution,长期演进)系统中采用了一种与R6完全不同的速率匹配方法——循环缓冲区速率匹配。该算法的优点在于可以方便的实现重复和打孔,即对于任意数据速率的速率匹配实现都非常的简单。其中,实现速率匹配的主要方式有软件实现方式和硬件实现方式。由于在LTE系统中数据流量非常大,留给速率匹配的处理时间非常短,如果采用软件的处理方式,则对处理器的要求非常高,随之成本也急剧增加。而按照协议描述的步骤做硬件处理,编码后的数据经过交织存储在三个存储器中,然后进行裁剪,尤其在处理校验1存储器和校验2存储器中的数据时需要交错读取,非常麻烦,而且在地址的不断转换过程中将产生大量的功耗。而采用串行实现方式,仍不能满足LTE大吞吐量的处理要求。Now, the LTE (LongTermEvolution, Long Term Evolution) system adopts a rate matching method completely different from that of R6—circular buffer rate matching. The advantage of this algorithm is that repetition and puncturing can be realized conveniently, that is, the rate matching implementation for any data rate is very simple. Among them, the main manners for implementing rate matching include software implementation and hardware implementation. Since the data traffic in the LTE system is very large, the processing time left for rate matching is very short. If software processing is used, the requirements for the processor are very high, and the cost also increases sharply. According to the steps described in the protocol for hardware processing, the encoded data is interleaved and stored in the three memories, and then cut, especially when processing the data in the verification 1 memory and the verification 2 memory, interleaved reading is required, which is very troublesome , and a large amount of power consumption will be generated during the continuous conversion of addresses. However, the serial implementation method still cannot meet the processing requirements of LTE high throughput.
因此现有实现技术作了进一步改进。Therefore, the existing implementation technology has been further improved.
例如,现有技术按照图1所示的流向,首先对系统位,校验1和校验2分别进行交织处理,并存储在3个缓冲区中,然后根据起始位置和软缓冲区(NCB)的大小从这三个缓冲区中读取数据,其中,读取的数据在系统位缓冲区中时,则顺序读取,读取的数据在校验位缓冲区中时,则交错读取校验位缓冲区,并判断读出的数据是否为有效数据,如果非有效数据则忽略继续读取,否则输出有效数据。由于采用串行的处理方式,这种处理方式非常耗费时间,且不能满足LTE大吞吐量的处理要求。For example, in the prior art, according to the flow direction shown in Figure 1, the system bit, parity 1 and parity 2 are interleaved respectively at first, and stored in 3 buffers, and then according to the starting position and the soft buffer (NCB ) reads data from these three buffers. When the read data is in the system bit buffer, it is read sequentially. When the read data is in the parity buffer, it is interleaved. Check the bit buffer, and judge whether the read data is valid data, if it is not valid data, ignore and continue to read, otherwise output valid data. Since the serial processing method is adopted, this processing method is very time-consuming, and cannot meet the processing requirement of the large throughput of the LTE.
发明内容 Contents of the invention
本发明所要解决的技术问题是,提供一种码速率匹配的并行处理方法及装置,从而提高系统的吞吐率。The technical problem to be solved by the present invention is to provide a parallel processing method and device for code rate matching, thereby improving the throughput rate of the system.
为了解决上述问题,本发明公开了一种码速率匹配的并行处理方法,包括:In order to solve the above problems, the present invention discloses a parallel processing method for code rate matching, including:
接收系统位数据流、校验1数据流以及校验2数据流,将所述系统位数据流中N个系统位数据进行交织处理,并将所述N个系统位数据并行缓存在用于存储系统位数据的存储器中,将所述校验1数据流和校验2数据流中N个对应数据组进行交织处理,并将所述N个对应数据组并行缓存在用于存储校验数据的存储器中,其中,N与事先设定的并行度相等;Receiving the systematic bit data stream, the check 1 data stream and the check 2 data stream, interleaving the N systematic bit data in the systematic bit data stream, and buffering the N systematic bit data in parallel for storage In the memory of the system bit data, the N corresponding data groups in the verification 1 data stream and the verification 2 data stream are interleaved, and the N corresponding data groups are buffered in parallel in the memory for storing the verification data. In the memory, N is equal to the preset parallelism;
从所述存储器中读取有效数据,实现速率匹配。Read valid data from the memory to implement rate matching.
进一步地,上述方法中,所述校验1数据流和校验2数据流中的对应数据组指:Further, in the above method, the corresponding data groups in the verification 1 data stream and the verification 2 data stream refer to:
校验1数据流中的第一个数据至倒数第二个数据分别与校验2数据流中第二个数据至最后一个数据构成对应数据组,校验1数据流中的最后一个数据与校验2数据流中填充的空值构成对应数据组,校验2数据流中的第一个数据与校验1数据流中填充的空值构成对应数据组。The first to penultimate data in the verification 1 data stream and the second to the last data in the verification 2 data stream respectively form a corresponding data group, and the last data in the verification 1 data stream is the same as the verification data. The null values filled in the verification 2 data stream constitute a corresponding data group, and the first data in the verification 2 data stream and the null values filled in the verification 1 data stream constitute a corresponding data group.
其中,将所述校验1数据流和校验2数据流中N个对应数据组进行交织处理指:Wherein, interleaving the N corresponding data groups in the verification 1 data stream and the verification 2 data stream refers to:
按照校验1数据流各数据的接收顺序,将校验1数据流中各数据分别与校验2数据流中各数据构成对应数据组,并将所构成的所有对应数据组中的N个对应数据组进行交织处理,直到处理完所有的对应数据组,其中,每个对应数据组作为一个数据进行交织处理。According to the receiving order of each data in the verification 1 data stream, each data in the verification 1 data stream is respectively formed with each data in the verification 2 data stream to form a corresponding data group, and N of all the corresponding data groups formed are corresponding The data groups are interleaved until all corresponding data groups are processed, wherein each corresponding data group is treated as one data to be interleaved.
从所述存储器中读取有效数据的过程如下:The process of reading valid data from the memory is as follows:
根据设定的地址和输出数据长度,从所述用于存储系统位数据的存储器中并行读取有效的系统位数据,从所述用于存储校验数据的存储器中并行读取有效的校验数据。According to the set address and output data length, read effective system bit data in parallel from the memory for storing system bit data, and read effective verification data in parallel from the memory for storing verification data data.
所述用于存储系统位数据的存储器为单口存储器时,用于存储系统位数据的存储器的数目与设定的并行度相等;When the memory for storing system bit data is a single-port memory, the number of memory for storing system bit data is equal to the set degree of parallelism;
所述用于存储系统位数据的存储器为双口存储器时,用于存储系统位数据的存储器的数目是设定的并行度的二分之一。When the memory for storing system bit data is a dual-port memory, the number of memory for storing system bit data is half of the set parallelism.
所述用于存储校验数据的存储器为单口存储器时,用于存储校验数据的存储器的数目与设定的并行度相等;When the memory for storing verification data is a single-port memory, the number of memory for storing verification data is equal to the set degree of parallelism;
所述用于存储校验数据的存储器为双口存储器时,用于存储校验数据的存储器的数目是设定的并行度的二分之一。When the memory for storing verification data is a dual-port memory, the number of memories for storing verification data is one-half of the set parallelism.
本发明还公开了一种速率匹配装置,至少包括控制模块、N个交织地址计算模块和打孔模块,其中,N与事先设定的并行度相等:The present invention also discloses a rate matching device, which at least includes a control module, N interleaving address calculation modules and a punching module, wherein N is equal to the preset parallelism:
所述控制模块,用于控制所述N个交织地址计算模块对所接收的系统位数据流中的N个系统位数据进行交织处理,并将经过交织处理的N个系统位数据并行缓存在用于存储系统位数据的存储器中;The control module is configured to control the N interleaving address calculation modules to perform interleaving processing on the N systematic bit data in the received systematic bit data stream, and buffer the interleaved N systematic bit data in parallel for use in memory for storing system bit data;
以及用于控制所述N个交织地址计算模块将所接收的校验1数据流和校验2数据流中N个对应数据组进行交织处理,并将经过交织处理的N个对应数据组并行缓存在用于存储校验数据的存储器中;And it is used to control the N interleaving address calculation modules to perform interleaving processing on N corresponding data groups in the received verification 1 data stream and verification 2 data stream, and cache the N corresponding data groups that have undergone interleaving processing in parallel in memory for storing calibration data;
所述交织地址计算模块,用于根据所述控制模块的控制对系统位数据进行交织处理,对所述校验1数据流和校验2数据流中的对应数据组进行交织处理;The interleaving address calculation module is used to perform interleaving processing on the system bit data according to the control of the control module, and perform interleaving processing on the corresponding data groups in the verification 1 data stream and the verification 2 data stream;
所述打孔模块,用于从所述用于存储系统位数据的存储器和用于存储校验数据的存储器中读取有效数据,实现速率匹配。The puncturing module is used to read valid data from the memory for storing system bit data and the memory for storing verification data, so as to realize rate matching.
进一步地,上述装置中,所述校验1数据流和校验2数据流中的对应数据组指:Further, in the above device, the corresponding data groups in the verification 1 data stream and the verification 2 data stream refer to:
校验1数据流中的第一个数据至倒数第二个数据分别与校验2数据流中第二个数据至最后一个数据构成对应数据组,校验1数据流中的最后一个数据与校验2数据流中填充的空值构成对应数据组,校验2数据流中的第一个数据与校验1数据流中填充的空值构成对应数据组。The first to penultimate data in the verification 1 data stream and the second to the last data in the verification 2 data stream respectively form a corresponding data group, and the last data in the verification 1 data stream is the same as the verification data. The null values filled in the verification 2 data stream constitute a corresponding data group, and the first data in the verification 2 data stream and the null values filled in the verification 1 data stream constitute a corresponding data group.
其中,所述控制模块,按照校验1数据流各数据的接收顺序,将校验1数据流中各数据分别与校验2数据流中各数据构成对应数据组,并将所构成的所有对应数据组中的N个对应数据组输入给N个交织地址计算模块进行交织处理,直到处理完所有的对应数据组;Wherein, the control module forms corresponding data groups with each data in the verification 1 data stream and each data in the verification 2 data stream according to the receiving sequence of the data in the verification 1 data stream, and forms all corresponding N corresponding data groups in the data group are input to N interleaving address calculation modules for interleaving processing until all corresponding data groups are processed;
交织地址计算模块,用于将所述控制模块输入的每个对应数据组作为一个数据进行交织处理。The interleaving address calculation module is configured to perform interleaving processing on each corresponding data group input by the control module as one data.
所述打孔模块从所述用于存储系统位数据的存储器和用于存储校验数据的存储器中读取有效数据的过程如下:The process of the punching module reading valid data from the memory for storing system bit data and the memory for storing verification data is as follows:
从所述用于存储系统位数据的存储器中并行读取有效的系统位数据,从所述用于存储校验数据的存储器中并行读取有效的校验数据。Reading valid systematic bit data in parallel from the memory for storing systematic bit data, and reading valid checking data in parallel from the memory for storing checking data.
所述用于存储系统位数据的存储器为单口存储器时,用于存储系统位数据的存储器的数目与设定的并行度相等;When the memory for storing system bit data is a single-port memory, the number of memory for storing system bit data is equal to the set degree of parallelism;
所述用于存储系统位数据的存储器为双口存储器时,用于存储系统位数据的存储器的数目是设定的并行度的二分之一。When the memory for storing system bit data is a dual-port memory, the number of memory for storing system bit data is half of the set parallelism.
所述用于存储校验数据的存储器为单口存储器时,用于存储校验数据的存储器的数目与设定的并行度相等;When the memory for storing verification data is a single-port memory, the number of memory for storing verification data is equal to the set degree of parallelism;
所述用于存储校验数据的存储器为双口存储器时,用于存储校验数据的存储器的数目是设定的并行度的二分之一。When the memory for storing verification data is a dual-port memory, the number of memories for storing verification data is one-half of the set parallelism.
本发明技术方案与现有技术相比,能够并行处理数据,提高了系统处理能力,而且本发明技术方案中所采用的统一存储校验位1和2的操作,实现了bit收集和软buffer,非常利于后续处理。Compared with the prior art, the technical solution of the present invention can process data in parallel, which improves the system processing capability, and the operation of uniformly storing check bits 1 and 2 adopted in the technical solution of the present invention realizes bit collection and soft buffer, Very good for follow-up processing.
附图说明 Description of drawings
图1是现有技术中速率匹配的原理框图;Fig. 1 is a functional block diagram of rate matching in the prior art;
图2是本发明中所提供的装置的结构示意图;Fig. 2 is the structural representation of the device provided in the present invention;
图3是图2所示装置中交织地址计算模块的框图;Fig. 3 is a block diagram of an interleaving address calculation module in the device shown in Fig. 2;
图4是图2所示装置实现速率匹配的流程图。Fig. 4 is a flow chart of implementing rate matching by the device shown in Fig. 2 .
具体实施方式 detailed description
本发明的主要构思是,现有速率匹配技术中,系统位数据流和校验1数据流的交织地址产生方式相同,如公式1所示,而校验2数据流的交织地址产生公式,如公式2所示:The main idea of the present invention is that in the existing rate matching technology, the interleaving address generation method of the system bit data stream and the check 1 data stream is the same, as shown in formula 1, and the interleaving address generation formula of the check 2 data stream is as follows Formula 2 shows:
公式(1) Formula 1)
公式(2) Formula (2)
比较这两个交织公式,可以看出公式(2)比公式(1)在输入数据矩阵中右偏一个位置,因此,本发明考虑将校验2数据流的输入数据左移一个位置(即将校验2数据流中第1个数据移入最后一个位置),这样,校验2数据流的交织地址产生方式与系统位数据流和校验1数据流的交织地址产生方式就完全相同,这样,就可以共用一个交织地址产生器件。而且,每次校验1数据和校验2数据的交织地址完全相同,就可以在存储过程中实现校验1和校验2的交错存储,读取数据时,只需要依次读取校验数据即可。Comparing these two interleaving formulas, it can be seen that formula (2) is shifted to the right by one position in the input data matrix than formula (1), therefore, the present invention considers that the input data of verification 2 data flow is shifted to the left by one position (to be corrected) In this way, the interleaving address generation method of the verification 2 data stream is exactly the same as the interleaving address generation method of the system bit data stream and the verification 1 data stream, so that One interleaving address generation device can be shared. Moreover, the interleaving addresses of the verification 1 data and the verification 2 data are exactly the same each time, and the interleaved storage of verification 1 and verification 2 can be realized during the storage process. When reading data, only the verification data needs to be read sequentially That's it.
下面结合附图及具体实施例对本发明技术方案作进一步详细说明。The technical solutions of the present invention will be described in further detail below in conjunction with the accompanying drawings and specific embodiments.
一种用于码速率匹配处理的装置,如图2所示,至少包括并行的N个交织地址计算模块、用于存储系统位数据的存储模块、用于存储校验数据的存储模块、打孔模块和控制模块。其中,N与事先设定的并行度相等。下面介绍各模块功能。A device for code rate matching processing, as shown in Figure 2, at least including N parallel interleaving address calculation modules, a storage module for storing system bit data, a storage module for storing check data, and punching modules and control modules. Among them, N is equal to the preset parallelism. The functions of each module are introduced below.
控制模块,主要用于控制交织地址计算模块、用于存储系统位数据的存储模块、用于存储校验数据的存储模块以及打孔模块的工作状态,其中,控制模块,将所接收的系统位数据流中的N个数据(本实施例中,N个数据即为图2中所示的系统位数据流0、1、2和3)同时输入到并行的N个交织地址计算模块,控制并行的N个交织地址计算模块同时对输入的系统位数据进行交织处理(即控制交织地址计算模块为输入的系统位数据生成地址),控制模块还控制同时经过交织处理的N个系统位数据按照各自的交织地址计算模块生成的地址,并行存储到用于存储系统位数据的存储器中;以及用于将所接收的校验1数据流和校验2数据流中的N个对应数据组同时输入到并行的N个交织地址计算模块,控制并行的N个交织地址计算模块同时对输入的对应数据组进行交织处理(即控制交织地址计算模块为输入的系统位数据生成地址),并将同时进行交织处理的N个对应数据组并行存储到用于存储校验数据的存储器中,其中,校验1数据流中的第一个数据至倒数第二个数据分别与校验2数据流中第二个数据至最后一个数据构成对应数据组,校验1数据流中的最后一个数据与校验2数据流中填充的空值构成对应数据组,校验2数据流中的第一个数据与校验1数据流中填充的空值构成对应数据组,控制模块将每个对应数据组按照校验1数据在前,校验2数据在后的顺序作为一个数据进行存储。交织地址计算模块,主要用于对控制模块输入的数据进行交织地址的计算,其中,交织地址计算模块将控制模块输入的校验1数据流和校验2数据流中的对应数据组作为一个数据进行交织处理;The control module is mainly used to control the working status of the interleaving address calculation module, the storage module for storing system bit data, the storage module for storing verification data, and the punching module, wherein the control module converts the received system bit N data in the data stream (in the present embodiment, N data is the system bit data stream 0, 1, 2 and 3 shown in Figure 2) is simultaneously input to parallel N interleaving address calculation modules, and the control parallel The N interleaving address calculation modules simultaneously interleave the input system bit data (that is, control the interleaving address calculation module to generate an address for the input system bit data), and the control module also controls the N system bit data that have been interleaved at the same time according to their respective The address generated by the interleaving address calculation module is stored in parallel in the memory for storing system bit data; and N corresponding data groups in the received parity 1 data stream and parity 2 data stream are simultaneously input to Parallel N interleaving address calculation modules, control the parallel N interleaving address calculation modules to perform interleaving processing on the corresponding input data group at the same time (that is, control the interleaving address calculation module to generate addresses for the input system bit data), and perform interleaving at the same time The processed N corresponding data groups are stored in parallel in the memory for storing verification data, wherein the first to penultimate data in the verification 1 data stream are respectively the same as the second data in the verification 2 data stream Data to the last data form the corresponding data group, the last data in the verification 1 data stream and the null value filled in the verification 2 data stream constitute the corresponding data group, the first data in the verification 2 data stream and the verification 1 The null values filled in the data stream form the corresponding data group, and the control module stores each corresponding data group as a data in the order that the verification 1 data comes first and the verification 2 data follows. The interleaving address calculation module is mainly used to calculate the interleaving address for the data input by the control module, wherein the interleaving address calculation module uses the corresponding data groups in the verification 1 data stream and the verification 2 data stream input by the control module as a data set perform interleaving;
具体地,交织地址计算模块,如图3所示,可以根据每个输入数据对应的行列信息,首先将列号按照协议交织变换表进行变换,再将列交织变换后的结果与矩阵的行总数相乘,最后将列交织变换后的结果与矩阵的行总数相乘的结果与数据所在行数相加就得到交织地址。Specifically, the interleaving address calculation module, as shown in Figure 3, can first convert the column number according to the protocol interleaving transformation table according to the row and column information corresponding to each input data, and then compare the result of the column interleaving transformation with the total number of rows of the matrix Multiply, and finally add the result of multiplying the result of the column interleaving transformation with the total number of rows of the matrix and the number of rows where the data is located to obtain the interleaving address.
在本实施例中,根据并行度需要至少设置与并行度N相同的交织地址计算模块,分别计算并行输入的每个数据的交织地址,其中,并行度指,图1中dk(i)每次并行输入到交织地址计算模块的数据个数。In this embodiment, according to the degree of parallelism, at least an interleaving address calculation module equal to the degree of parallelism N is required to calculate the interleaving address of each data input in parallel, wherein the degree of parallelism refers to dk(i) in Fig. 1 each time The number of data input to the interleaving address calculation module in parallel.
用于存储系统位数据的存储模块,主要用于根据控制模块的控制存储系统位数据,当该存储模块采用单口存储器时,用于存储系统位数据的单口存储器的数目与设定的并行度相同,当该存储模块采用真双口存储器时,用于存储系统位数据的真双口存储器的数目是设定的并行度的二分之一;The storage module used to store system bit data is mainly used to store system bit data according to the control of the control module. When the storage module uses single-port memory, the number of single-port memory used to store system bit data is the same as the set parallelism , when the storage module uses a true dual-port memory, the number of true dual-port memories used to store system bit data is one-half of the set parallelism;
用于存储校验数据的存储模块,主要用于根据控制模块的控制存储系统位数据,当该存储模块采用单口存储器时,用于存储校验数据的单口存储器的数目与设定的并行度相同,当该存储模块采用真双口存储器时,真双口存储器的数目是设定的并行度的二分之一。The storage module used to store verification data is mainly used to store system bit data according to the control of the control module. When the storage module uses a single-port memory, the number of single-port memories used to store verification data is the same as the set parallelism , when the storage module adopts true dual-port memory, the number of true dual-port memory is one-half of the set parallelism.
打孔模块,主要用于根据起始参数,结束参数,取出个数参数配置,从存储器中读出数据,判断读出数据是否为无效数据,如果是则去掉无效数据,如果不是则输出,当读到结束参数位置时还没有取够数据,那么从存储器的第一个位置继续读取,直到取够需要的数据;The punching module is mainly used to read data from the memory according to the start parameter, end parameter, and take out parameter configuration, and judge whether the read data is invalid data. If it is, remove the invalid data, and if not, output it. If there is not enough data when reading the end parameter position, then continue to read from the first position of the memory until the required data is fetched;
在其他实施例中,上述系统还可以有2N个并行的交织地址计算模块,此时,N个交织地址计算模块专用于并行处理输入的N个系统位数据,另外N个交织地址计算模块专用于并行处理输入的N个对应数据组。In other embodiments, the above-mentioned system can also have 2N parallel interleaving address calculation modules. At this time, the N interleaving address calculation modules are dedicated to parallel processing of input N system bit data, and the N interleaving address calculation modules are dedicated to The input N corresponding data sets are processed in parallel.
下面以设定的并行度为4举例说明,上述装置所实现码速率匹配并行处理的具体过程,如图4所示,包括以下步骤:The specific process of parallel processing of code rate matching implemented by the above-mentioned device is illustrated below with a set parallelism of 4, as shown in Figure 4, including the following steps:
步骤401:速率匹配装置并行接收系统位数据流,校验1数据流以及校验2数据流后,对所接收的系统位数据流中的N个系统位数据同时进行交织处理,将所接收的校验1数据流和校验2数据流中的N个对应数据组同时进行交织处理;Step 401: The rate matching device receives the systematic bit data stream in parallel, and after verifying the 1 data stream and the verifying 2 data stream, simultaneously performs interleaving processing on the N systematic bit data in the received systematic bit data stream, and converts the received The N corresponding data groups in the verification 1 data stream and the verification 2 data stream are simultaneously interleaved;
该步骤中,校验1数据流和校验2数据流中的对应数据组指,校验1数据流中的第一个数据至倒数第二个数据分别与校验2数据流中第二个数据至最后一个数据构成对应数据组,校验1数据流中的最后一个数据与校验2数据流中填充的空值构成对应数据组,校验2数据流中的第一个数据与校验1数据流中填充的空值构成对应数据组;其中,可以将每个对应数据组作为一个数据进行交织处理。In this step, the corresponding data groups in the verification 1 data stream and the verification 2 data stream refer to the first to penultimate data in the verification 1 data stream and the second data in the verification 2 data stream respectively. Data to the last data form the corresponding data group, the last data in the verification 1 data stream and the null value filled in the verification 2 data stream constitute the corresponding data group, the first data in the verification 2 data stream and the verification 1. Null values filled in the data stream form corresponding data groups; wherein, each corresponding data group can be interleaved as one data.
在本实施例中,可以将接收输入的校验1数据流和校验2数据流分别缓冲,即为校验1数据流分配缓冲器1和缓冲器2,为校验2数据流分配暂存器,所接收的校验1数据先进入缓冲器1然后进入缓冲器2,校验2数据进入缓冲器1,其中,将所接收的校验2的第一个数据暂存在暂存器,再将校验2数据流的缓冲器1中的数据与校验1数据流的缓冲器2中的数据构成对应数据组,当校验2数据流的缓冲器1中不再缓存有数据(即校验2数据流的所有数据均接收完成)时,开始为校验2数据流填充设定数目的NULL,这样,校验1数据流的缓冲器1中的数据(即所接收的校验1数据流中的最后一个数据)即与校验2数据流中所填充的NULL构成对应数据组,当校验1数据流的最后一个数据与校验2数据流中填充的NULL构成对应数据组后,开始为校验1数据流填充设定数目的NULL,此时,当校验1数据流中所填充的NULL的个数达到设定值(即填充最后一个NULL)时,暂存在暂存器中的数据(即所接收的校验2数据流中的第一个数据)即与校验1数据流中所填充的NULL构成对应数据组,将所构成的所有对应数据组中的N个对应数据组同时按照交织公式进行交织处理,直到处理完所有的对应数据组即可,其中,对每个对应数据组进行交织处理时,可以将这个对应数据组看作为一个数据进行处理。In this embodiment, the received and input check 1 data stream and check 2 data stream can be buffered separately, that is, buffer 1 and buffer 2 are allocated for the check 1 data stream, and temporary storage is allocated for the check 2 data stream The received verification 1 data first enters the buffer 1 and then enters the buffer 2, and the verification 2 data enters the buffer 1, wherein the first data of the received verification 2 is temporarily stored in the temporary register, and then The data in the buffer 1 of the verification 2 data stream and the data in the buffer 2 of the verification 1 data stream form a corresponding data group. When all the data of the verification 2 data stream has been received), start to fill the set number of NULLs for the verification 2 data stream, so that the data in the buffer 1 of the verification 1 data stream (that is, the received verification 1 data The last data in the stream) and the NULL filled in the verification 2 data stream form the corresponding data group. When the last data of the verification 1 data stream and the NULL filled in the verification 2 data stream form the corresponding data group, Start to fill the set number of NULLs for the check 1 data stream. At this time, when the number of NULLs filled in the check 1 data stream reaches the set value (that is, fill the last NULL), it will be temporarily stored in the temporary register The data (that is, the first data in the received verification 2 data stream) and the NULL filled in the verification 1 data stream form a corresponding data group, and the N corresponding data in all corresponding data groups formed Groups perform interleaving processing according to the interleaving formula at the same time until all corresponding data groups are processed. When performing interleaving processing on each corresponding data group, the corresponding data group can be treated as one data for processing.
步骤402:速率匹配装置按照设定的并行度N将交织处理后的系统位数据流的N个系统位数据并行存储在用于存储系统位数据的存储器中,将交织处理后的校验1和校验2数据流中的N个对应数据组并行存储在用于存储校验位数据的存储器中,其中,用于存储系统位数据的存储器是一个数据位宽的存储器,用于存储校验位数据的存储器是两个数据位宽的存储器;Step 402: The rate matching device stores N systematic bit data of the interleaved systematic bit data stream in parallel in the memory for storing systematic bit data according to the set parallelism degree N, and stores the interleaved checksum and The N corresponding data groups in the check 2 data stream are stored in parallel in the memory for storing the check bit data, wherein the memory for storing the system bit data is a memory with a data bit width for storing the check bit The memory of the data is a memory with a width of two data bits;
本实施例中,根据协议中交织函数规律,以并行度为4说明:将协议中交织函数变换为以下4x8矩阵形式In this embodiment, according to the law of the interleaving function in the protocol, the degree of parallelism is 4: transform the interleaving function in the protocol into the following 4x8 matrix form
0,16,8,24,4,20,12,28,0, 16, 8, 24, 4, 20, 12, 28,
2,18,10,26,6,22,14,30,2, 18, 10, 26, 6, 22, 14, 30,
1,17,9,25,5,21,13,29,1, 17, 9, 25, 5, 21, 13, 29,
3,19,11,27,7,23,15,313, 19, 11, 27, 7, 23, 15, 31
由于并行度为4,故同时来四个数据时由于速率匹配中添加的NULL个数为4的整数倍,因此必然从交织矩阵第一行开始,第二个数据在第三行,第三个数据在第二行,最后一个数据在第四行,以此类推,那么可以将数据分别存储在四个存储器中,而每个存储器中存储放8列数据,具体地,先根据并行度写出存储图样,再根据并行度需求将连续的列号按照表1中提供的列交织方式放在不同的存储器中,其中每个存储器存储连续列号的一列。Since the degree of parallelism is 4, when four data come at the same time, the number of NULLs added in the rate matching is an integer multiple of 4, so it must start from the first row of the interleaving matrix, the second data is in the third row, and the third The data is in the second row, the last data is in the fourth row, and so on, then the data can be stored in four memories, and each memory stores 8 columns of data. Specifically, first write according to the degree of parallelism The pattern is stored, and the continuous column numbers are placed in different memories according to the column interleaving method provided in Table 1 according to the requirement of parallelism, wherein each memory stores a column of continuous column numbers.
步骤403:速率匹配装置从用于存储系统位数据的存储器中依次读取系统数据,从用于存储校验位数据的存储器中依次读取校验位数据,并进行裁剪。Step 403: the rate matching device sequentially reads the system data from the storage for storing the system bit data, sequentially reads the check bit data from the storage for storing the check bit data, and performs clipping.
当然,用于存储系统位数据的存储器也可以采用真双口存储器,此时,真双口存储器的数目是设定的并行度的二分之一。并且,由于每个数据的交织地址不同,因此在真双口存储器内也不会产生地址冲突。Of course, the memory for storing system bit data may also be a true dual-port memory. In this case, the number of true dual-port memory is 1/2 of the set parallelism. Moreover, since the interleaving address of each data is different, there will be no address conflict in the true dual-port memory.
在其他应用场景中,设定的并行度可以是2到32位的任一值,当并行度为2时,速率匹配装置所确定的存储图样如下:In other application scenarios, the set parallelism can be any value from 2 to 32 bits. When the parallelism is 2, the storage pattern determined by the rate matching device is as follows:
0,16,8,24,4,20,12,28,2,18,10,26,6,22,14,30,0, 16, 8, 24, 4, 20, 12, 28, 2, 18, 10, 26, 6, 22, 14, 30,
1,17,9,25,5,21,13,29,3,19,11,27,7,23,15,311, 17, 9, 25, 5, 21, 13, 29, 3, 19, 11, 27, 7, 23, 15, 31
当并行度为3时,速率匹配装置所确定的存储图样如下:When the degree of parallelism is 3, the storage pattern determined by the rate matching device is as follows:
0,16,8,24,4,20,12,28,0, 16, 8, 24, 4, 20, 12, 28,
2,18,10,26,6,22,14,30,2, 18, 10, 26, 6, 22, 14, 30,
1,17,9,25,5,21,13,29,3,19,11,27,7,23,15,311, 17, 9, 25, 5, 21, 13, 29, 3, 19, 11, 27, 7, 23, 15, 31
从上述实施例可以看出,本发明技术方案将输入数据按照需求的并行度统一存储,从而增加了系统吞吐率。同时,本发明技术方案在存储校验1和校验2时就实现了交错存储,从而简化了存储结构,降低了系统复杂度。It can be seen from the above embodiments that the technical solution of the present invention uniformly stores the input data according to the required degree of parallelism, thereby increasing the system throughput. At the same time, the technical solution of the present invention realizes interleaved storage when storing the verification 1 and the verification 2, thereby simplifying the storage structure and reducing the complexity of the system.
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。Of course, the present invention can also have other various embodiments, and those skilled in the art can make various corresponding changes and deformations according to the present invention without departing from the spirit and essence of the present invention. All changes and deformations should belong to the protection scope of the appended claims of the present invention.
Claims (8)
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201010000107.8A CN102118217B (en) | 2010-01-04 | 2010-01-04 | A kind of method for parallel processing of rate-matched and device |
| PCT/CN2010/077389 WO2011079633A1 (en) | 2010-01-04 | 2010-09-28 | Serial processing method, parallel processing method of bit rate matching and device thereof |
| US13/393,298 US8843799B2 (en) | 2010-01-04 | 2010-09-28 | Serial processing method, parallel processing method of bit rate matching and device thereof |
| EP10840422.9A EP2461511A4 (en) | 2010-01-04 | 2010-09-28 | Serial processing method, parallel processing method of bit rate matching and device thereof |
| EP17155831.5A EP3193452A1 (en) | 2010-01-04 | 2010-09-28 | Parallel processing method of bit rate matching and device thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201010000107.8A CN102118217B (en) | 2010-01-04 | 2010-01-04 | A kind of method for parallel processing of rate-matched and device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102118217A CN102118217A (en) | 2011-07-06 |
| CN102118217B true CN102118217B (en) | 2016-03-30 |
Family
ID=44216832
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201010000107.8A Active CN102118217B (en) | 2010-01-04 | 2010-01-04 | A kind of method for parallel processing of rate-matched and device |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN102118217B (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102769471B (en) * | 2012-06-26 | 2016-02-17 | 北京北方烽火科技有限公司 | A kind of Turbo code coding method and encoder |
| WO2020215326A1 (en) * | 2019-04-26 | 2020-10-29 | 深圳市大疆创新科技有限公司 | Rate matching method and device for transmission channel, unmanned aerial vehicle and storage medium |
| CN110190934B (en) * | 2019-06-18 | 2022-02-18 | 普联技术有限公司 | Data punching method and equipment |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101090293A (en) * | 2006-06-15 | 2007-12-19 | 华为技术有限公司 | Method and system for transmitting information |
| CN101510879A (en) * | 2009-03-26 | 2009-08-19 | 腾讯科技(深圳)有限公司 | Method and apparatus for filtering rubbish contents |
-
2010
- 2010-01-04 CN CN201010000107.8A patent/CN102118217B/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101090293A (en) * | 2006-06-15 | 2007-12-19 | 华为技术有限公司 | Method and system for transmitting information |
| CN101510879A (en) * | 2009-03-26 | 2009-08-19 | 腾讯科技(深圳)有限公司 | Method and apparatus for filtering rubbish contents |
Also Published As
| Publication number | Publication date |
|---|---|
| CN102118217A (en) | 2011-07-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2011079633A1 (en) | Serial processing method, parallel processing method of bit rate matching and device thereof | |
| CN101547064B (en) | Interleaving and rate matching and de-interleaving and rate de-matching methods | |
| CN101938325B (en) | Rate de-matching method and device for finite length circular buffering rate matching | |
| CN109347486B (en) | Low-complexity high-throughput 5G LDPC encoder and encoding method | |
| WO2018090629A1 (en) | Method of deinterleaving and de-rate matching, device, and computer storage medium | |
| CN101499875A (en) | Variant processing rate supporting apparatus for LTE rate de-matching and de-interleaving | |
| WO2012034097A1 (en) | Accessing memory during parallel turbo decoding | |
| CN103905067B (en) | More weighted current D/A decoder implementation methods and device | |
| CN101060374B (en) | Turbo coding stream processing device and method | |
| WO2009152770A1 (en) | Method and apparatus for implementing interleaving and de-interleaving at second time | |
| CN101800625B (en) | Method and device for deinterlacing | |
| CN102118217B (en) | A kind of method for parallel processing of rate-matched and device | |
| CN103986557B (en) | The parallel block-wise decoding method of LTE Turbo codes in low path delay | |
| CN102111163A (en) | Turbo encoder and encoding method | |
| CN103873188B (en) | A parallel solution rate matching method and device | |
| CN104486033B (en) | A kind of descending multimode channel coded system and method based on C RAN platforms | |
| CN105187162A (en) | Multi-granularity parallel rate de-matching method and apparatus | |
| CN101515805B (en) | A turbo decoder and its decoding method | |
| CN102035558B (en) | Turbo decoding method and device | |
| CN111600613A (en) | A verification method, device, decoder, receiver and computer storage medium | |
| WO2012149741A1 (en) | De-interleaving method and device for rate de-matching | |
| CN102136878B (en) | Rate matching realization method and system | |
| CN103888224A (en) | Parallel realization method and device for LTE system Turbo code-inner interleaving | |
| CN102118219A (en) | Serial processing method and serial processing device for rate matching | |
| WO2017000682A1 (en) | Decoding method and apparatus and storage medium |
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 | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20221110 Address after: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong Patentee before: ZTE Corp. |
|
| TR01 | Transfer of patent right |