[go: up one dir, main page]

CN110808742A - Efficient decoder framework suitable for 5G LDPC code - Google Patents

Efficient decoder framework suitable for 5G LDPC code Download PDF

Info

Publication number
CN110808742A
CN110808742A CN201911161918.3A CN201911161918A CN110808742A CN 110808742 A CN110808742 A CN 110808742A CN 201911161918 A CN201911161918 A CN 201911161918A CN 110808742 A CN110808742 A CN 110808742A
Authority
CN
China
Prior art keywords
message
memory
soft
output
messages
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.)
Pending
Application number
CN201911161918.3A
Other languages
Chinese (zh)
Inventor
王中风
崔航轩
林军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
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 Nanjing University filed Critical Nanjing University
Priority to CN201911161918.3A priority Critical patent/CN110808742A/en
Publication of CN110808742A publication Critical patent/CN110808742A/en
Pending legal-status Critical Current

Links

Images

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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明首次公开了一种通用于5G LDPC码的高吞吐率、低复杂度的译码器架构。首先,利用5G LDPC码基矩阵的部分正交性,采用层合并技术减少了时钟周期数,同时降低了校验信息存储器的面积消耗。其次,由于5G LDPC的行重非常不规则,采用了一种分布式存储结构来降低存储资源消耗。最后,为解决大规模读取和写入互联网络带来的高延迟、高复杂度问题,采用移位结构来实现软消息存储器,大大降低了互联网络的输入输出个数。此外,还在互联网络中应用了信息重排列来优化其内部架构。相较于常规的设计,本发明所公开的译码器的面积大大降低,并且能够提供更高的吞吐率,将吞吐率‑面积比提升至原来的2.68倍。

Figure 201911161918

The present invention discloses for the first time a high-throughput, low-complexity decoder architecture commonly used in 5G LDPC codes. First, using the partial orthogonality of the base matrix of the 5G LDPC code, the layer merging technology reduces the number of clock cycles and reduces the area consumption of the parity information memory. Second, since the row weight of 5G LDPC is very irregular, a distributed storage structure is adopted to reduce storage resource consumption. Finally, in order to solve the problem of high delay and high complexity caused by large-scale reading and writing of the Internet, a shift structure is used to realize the soft message memory, which greatly reduces the number of input and output of the Internet. In addition, information rearrangement is applied in the Internet to optimize its internal architecture. Compared with the conventional design, the area of the decoder disclosed in the present invention is greatly reduced, and it can provide a higher throughput rate, and increase the throughput rate-area ratio to 2.68 times.

Figure 201911161918

Description

一种适用于5G LDPC码的高效译码器架构An Efficient Decoder Architecture for 5G LDPC Codes

所属技术领域Technical field

本发明涉及通信编码技术领域中的译码器架构设计,特别针对适用于5G LDPC码的高吞吐率、低复杂度的译码器架构。The present invention relates to the decoder architecture design in the technical field of communication coding, in particular to a decoder architecture with high throughput and low complexity suitable for 5G LDPC codes.

背景技术Background technique

纠错码是现代通信系统中非常重要的组成部分。在最新的5G通信标准中,LDPC码由于其出众的纠错性能以及相对较低的译码复杂度,被作为信道编码方案采用。不同于常规的LDPC码,5G LDPC码为支持混合自动重传请求(HARQ),需要能够满足码率兼容。因此,其基矩阵为一个高码率的LDPC码矩阵和一个低密度生成矩阵(LDGM)的级联。5G LDPC码的行重列重极不规则,各个校验节点的行重,各个变量节点的列重之间有着很大差异。第三代合作伙伴计划(3GPP)为5G LDPC码提供了两种基矩阵,基矩阵1(BG1)和基矩阵2(BG2)。这两个基矩阵具有相似的结构。其中BG1用于较高码率和码长的码字,BG2用于较低码率和码长的码字。Error-correcting codes are a very important part of modern communication systems. In the latest 5G communication standards, LDPC codes are adopted as channel coding schemes due to their superior error correction performance and relatively low decoding complexity. Different from conventional LDPC codes, 5G LDPC codes need to be able to satisfy code rate compatibility in order to support Hybrid Automatic Repeat Request (HARQ). Therefore, its basis matrix is a concatenation of a high rate LDPC code matrix and a low density generator matrix (LDGM). The row weight and column weight of the 5G LDPC code are extremely irregular, and the row weight of each check node and the column weight of each variable node are very different. The 3rd Generation Partnership Project (3GPP) provides two basis matrices for 5G LDPC codes, basis matrix 1 (BG1) and basis matrix 2 (BG2). The two basis matrices have similar structures. BG1 is used for codewords with higher code rate and code length, and BG2 is used for codewords with lower code rate and code length.

现有的LDPC译码器架构主要分为三种类型,全并行架构,全串行架构和部分并行架构。为了在吞吐率与硬件复杂度中得到很好的折中,目前常用的是基于部分并行的分层译码架构。采用分层译码还可以在不影响译码性能的情况下加快收敛速度,从而降低所需迭代次数,进而提升吞吐率。尽管LDPC的译码架构设计已经得到了广泛的研究,然而,目前还没有专门针对5G LDPC码设计的译码器。考虑到其结构上的特殊性,若采用通用的译码架构会造成很大的资源浪费以及不甚理想的吞吐率。因此,在5G LDPC码译码器的设计与优化问题上还存在很大的研究空间。Existing LDPC decoder architectures are mainly divided into three types, fully parallel architecture, fully serial architecture and partially parallel architecture. In order to obtain a good compromise between throughput and hardware complexity, a layered decoding architecture based on partial parallelism is commonly used at present. Hierarchical decoding can also speed up the convergence speed without affecting the decoding performance, thereby reducing the number of iterations required, thereby improving throughput. Although the decoding architecture design of LDPC has been extensively studied, however, there is currently no decoder specifically designed for 5G LDPC codes. Considering the particularity of its structure, if a general decoding structure is adopted, it will cause a great waste of resources and an unsatisfactory throughput rate. Therefore, there is still a lot of research space in the design and optimization of 5G LDPC code decoders.

发明内容SUMMARY OF THE INVENTION

发明目的:本发明旨在针对上述问题,提供一种高吞吐率、低复杂度的5G LDPC译码器。具体发明内容如下:Object of the invention: The present invention aims to provide a 5G LDPC decoder with high throughput and low complexity in view of the above problems. The specific contents of the invention are as follows:

一种通用于5G LDPC码的高吞吐率、低复杂度的译码器架构,其特征在于,包含以下单元:A high-throughput, low-complexity decoder architecture commonly used in 5G LDPC codes, characterized in that it includes the following units:

1)控制器,用于生成译码器中所有的控制信号;1) a controller for generating all control signals in the decoder;

2)软消息存储器,用于存储每个比特的软判决消息。为了能够支持大规模并行地读取和初始化所有比特的软判决消息,该存储器由寄存器组实现。为降低输入到互联网络的资源消耗,将对应扩展比特的软判决消息与对应核心比特的软判决消息分开存储。其中存储对应扩展比特的软判决消息的存储器采用移位架构实现,因此可以固定所需数据的地址。基于此,对应于该部分的存储器每次只需输入和输出一组数据;2) Soft message memory for storing the soft decision message of each bit. To be able to support massively parallel reading and initialization of soft decision messages for all bits, the memory is implemented by a register bank. In order to reduce the resource consumption input to the Internet, the soft-decision messages corresponding to the extension bits and the soft-decision messages corresponding to the core bits are stored separately. The memory storing the soft-decision message corresponding to the extended bit is implemented by a shift architecture, so the address of the required data can be fixed. Based on this, the memory corresponding to this part only needs to input and output a set of data at a time;

3)校验信息存储器,用于存储每个校验节点计算得到的校验信息。为了能够支持同时读写操作,该单元采用双端口随机存取存储器(DRAM)实现。为减小面积消耗,采用了分布式结构。首先,预设一个阈值

Figure BSA0000195616320000021
用于判定每层行重的大小。其次,对于行重小于等于的层,将其校验节点输出的所有校验消息存在第一个子存储器中。对于行重大于
Figure BSA0000195616320000023
的层,对于每个校验节点输出的校验消息,将其中的地址消息存在第二个子存储器中,其余部分的校验消息存在第一个子存储器中。值得注意的是,因为第二个子存储器只应用于行重大于
Figure BSA0000195616320000024
的层,所以其深度远小于第一个子存储器;3) A verification information memory, which is used to store the verification information calculated by each verification node. To be able to support simultaneous read and write operations, the unit is implemented using dual-port random access memory (DRAM). In order to reduce the area consumption, a distributed structure is adopted. First, preset a threshold
Figure BSA0000195616320000021
Used to determine the size of the row weight of each layer. Second, for row weights less than or equal to It stores all check messages output by its check nodes in the first sub-memory. For row weights greater than
Figure BSA0000195616320000023
For the check message output by each check node, the address message is stored in the second sub-memory, and the rest of the check messages are stored in the first sub-memory. It's worth noting that because the second submemory is only used for row weights greater than
Figure BSA0000195616320000024
, so its depth is much smaller than the first sub-memory;

4)读取互联网络,用于从软消息存储器中读取软消息值,并选择出对应于当前执行层的最大行重组软消息进行输出。为减小互联网络消耗,按照最小化产生每个输出所需输入个数的方式,将每个输出在每层中对应的输入消息重新排序。该排序离线完成,因此不占用硬件资源;4) Read the Internet, which is used to read the soft message value from the soft message memory, and select the maximum row weight corresponding to the current execution layer. Group soft messages are output. In order to reduce the consumption of the interconnection network, the input messages corresponding to each output in each layer are reordered in a way that minimizes the number of inputs required to generate each output. The sorting is done offline, so it does not occupy hardware resources;

5)移位器,根据每组软判决消息所对应的移位因子对其进行移位,使其内部能够按照正确的顺序排列。每组消息在当前层的移位因子为其对应基矩阵的列在当前层的移位系数减去该列的上一个非负移位系数。因此,省去了将消息写入软消息存储器时的再次移位。此外,输入数据在载入软消息存储器前需要根据其对应基矩阵的列的最后一个移位系数进行反向移位,以保证每组消息在首次移位时的位置正确性。输出数据在输出前需要根据其对应基矩阵的列的最后一个移位系数进行移位,以保证输出码字按照正确顺序排序;5) A shifter, which shifts each group of soft-decision messages according to their corresponding shift factors, so that the inside can be arranged in the correct order. The shift factor of each group of messages in the current layer is the shift coefficient of the column of the corresponding base matrix in the current layer minus the previous non-negative shift coefficient of the column. Therefore, the re-shifting when writing the message to the soft message memory is omitted. In addition, before the input data is loaded into the soft message memory, it needs to be reversely shifted according to the last shift coefficient of the column of the corresponding base matrix, so as to ensure the correctness of the position of each group of messages when they are shifted for the first time. The output data needs to be shifted according to the last shift coefficient of the column of the corresponding base matrix before output to ensure that the output code words are sorted in the correct order;

6)变量节点单元,用于生成变量节点传递给校验节点的变量消息;6) a variable node unit, used to generate a variable message that the variable node transmits to the check node;

7)校验节点单元,用于产生传递给变量节点的校验消息。为降低存储宽度,输出数据按照压缩格式排列。例如对于最小和译码器,在每个校验节点中,只输出每个校验消息的符号位,最小输入变量消息以及其对应的地址,和第二小输入变量消息;7) A check node unit for generating a check message to be passed to the variable node. To reduce storage width, the output data is arranged in a compressed format. For example, for the minimum sum decoder, in each check node, only the sign bit of each check message, the minimum input variable message and its corresponding address, and the second small input variable message are output;

8)解压缩器,用于将校验信息由压缩形式转换为非压缩形式;8) a decompressor for converting the check information from a compressed form to an uncompressed form;

9)写入互联网络,基于当前执行层产生的

Figure BSA0000195616320000026
组更新后的软消息生成软消息存储器中所需的消息。9) Write to the Internet, based on the current execution layer
Figure BSA0000195616320000026
The group updated soft message generates the desired message in the soft message memory.

在所提出架构中,利用5G LDPC码的基矩阵的部分正交性,将正交部分的两层看作一层进行译码。因此,可大大减小所需的时钟周期数,进而提升吞吐率。此外,校验消息存储器的深度也可以相应降低。In the proposed architecture, the partial orthogonality of the basis matrix of the 5G LDPC code is utilized, and the two layers of the orthogonal part are regarded as one layer for decoding. As a result, the required number of clock cycles can be greatly reduced, thereby increasing throughput. In addition, the depth of the verification message memory can also be reduced accordingly.

本发明提出的译码器架构,具有以下有益效果:The decoder architecture proposed by the present invention has the following beneficial effects:

首先,降低了译码器的层数,进而降低了所需的时钟周期数,提升了吞吐率;First, the number of layers of the decoder is reduced, which in turn reduces the number of clock cycles required and improves the throughput;

其次,大大减少了校验信息存储器的宽度与深度,减少了其面积消耗;Secondly, the width and depth of the verification information memory are greatly reduced, and its area consumption is reduced;

最后,优化了读取和写入互联网络的面积和延迟。Finally, the area and latency of reading and writing the interconnect are optimized.

基于上述优点,本发明所提出的译码器架构极大的降低了5G LDPC译码器所需的面积与延迟,提升了吞吐率-面积效能比。Based on the above advantages, the decoder architecture proposed by the present invention greatly reduces the area and delay required by the 5G LDPC decoder, and improves the throughput-area-efficiency ratio.

附图说明Description of drawings

图1是本发明译码器顶层架构示意图;1 is a schematic diagram of a top-level architecture of a decoder of the present invention;

图2是基矩阵2的正交特性示意图;Fig. 2 is the orthogonal characteristic schematic diagram of basis matrix 2;

图3是本发明译码器中校验信息存储器的具体结构示意图;Fig. 3 is the concrete structural representation of check information memory in the decoder of the present invention;

图4是本发明译码器中软消息存储器移位结构示意图;4 is a schematic diagram of the shift structure of the soft message memory in the decoder of the present invention;

图5是BG2矩阵结构示意图。FIG. 5 is a schematic diagram of the structure of the BG2 matrix.

具体实施方式Detailed ways

下面将结合附图对本发明所提出的译码器架构作更进一步的说明。特别说明的是参考附图描述的实施是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。The decoder architecture proposed by the present invention will be further described below with reference to the accompanying drawings. It is particularly noted that the implementations described with reference to the accompanying drawings are exemplary, and are intended to be used to explain the present invention, but not to be construed as a limitation of the present invention.

图1是本发明译码器顶层架构示意图,其中采用了分层译码结构,层数等于所对应码字基矩阵的行数,记做L。译码器的并行系数等于基矩阵的扩展因子,记做z。在所提出译码架构中,所有控制信号均由控制器产生。首先,从信道得到的消息经过输入移位器移位后载入到软消息存储器中。其中,输入移位器根据每组消息对应基矩阵的列上的最后一个移位系数进行反向移位。每次译码迭代由L个译码层组成。在每个译码层中,首先,从软消息存储器中读出软判决消息并将其输入到读取互联网络,该网络根据当前的译码层产生对应于当前执行层的最大行重

Figure BSA0000195616320000031
组软消息。其次,每组软消息在移位器中被循环移位,移位因子为该组消息对应基矩阵的列在当前层的移位系数减去该列的上一个非负移位系数。经过移位后的消息被送入到变量节点单元用于产生变量消息,这些变量消息会被送到校验节点单元产生校验消息。对于不同的译码算法,校验消息的产生方式会有不同,因此本发明不指定校验节点单元的实现方式。校验消息随后有两个用途。其一为将其存入校验信息存储器中,用于在下一次译码迭代中产生变量消息。为降低校验信息存储器位宽,其按照压缩格式排列。例如对于最小和译码器,在每个校验节点中,只输出校验消息的符号位,最小输入变量消息以及其对应的地址,和第二小输入变量消息。其二是在经过解压缩器对其进行解压后与当前迭代的变量消息结合,产生更新后的软判决消息值。更新后的软判决消息会在写入互联网络中进行排序和选择,以保证其被存储到正确的软消息译码器地址中。在完成所有译码层操作后,译码便完成了一次迭代。当到达了最大迭代次数Tmax后,译码终止并输出译码码字。值得注意的是,译码码字在输出前需要根据其对应基矩阵的列的最后一个移位系数进行移位,以保证输出数据按照正确顺序排序。1 is a schematic diagram of the top-level architecture of the decoder of the present invention, wherein a layered decoding structure is adopted, and the number of layers is equal to the number of rows of the corresponding codeword base matrix, denoted as L. The parallel coefficient of the decoder is equal to the expansion factor of the base matrix, denoted as z. In the proposed decoding architecture, all control signals are generated by the controller. First, the message from the channel is shifted by the input shifter and loaded into the soft message memory. The input shifter performs reverse shifting according to the last shift coefficient on the column of the base matrix corresponding to each group of messages. Each decoding iteration consists of L decoding layers. In each decoding layer, first, the soft-decision message is read from the soft message memory and input to the read internetwork, which generates the maximum row weight corresponding to the current execution layer according to the current decoding layer
Figure BSA0000195616320000031
Group soft messages. Secondly, each group of soft messages is cyclically shifted in the shifter, and the shift factor is the shift coefficient of the column of the base matrix corresponding to the group of messages in the current layer minus the previous non-negative shift coefficient of the column. The shifted messages are sent to the variable node unit for generating variable messages, and these variable messages will be sent to the check node unit to generate check messages. For different decoding algorithms, the generation methods of the check message will be different, so the present invention does not specify the realization method of the check node unit. The verification message then serves two purposes. One is to store it in the parity information memory for generating variable messages in the next decoding iteration. In order to reduce the bit width of the parity information memory, it is arranged in a compressed format. For example, for the minimum sum decoder, in each check node, only the sign bit of the check message, the minimum input variable message and its corresponding address, and the second small input variable message are output. The second is to combine it with the variable message of the current iteration after it is decompressed by the decompressor to generate an updated soft decision message value. The updated soft-decision messages are sorted and selected in the write internetwork to ensure that they are stored in the correct soft-message decoder address. After all decoding layer operations are completed, the decoding completes one iteration. When the maximum number of iterations T max is reached, the decoding is terminated and the decoded codeword is output. It is worth noting that the decoded codeword needs to be shifted according to the last shift coefficient of the column of the corresponding base matrix before output, so as to ensure that the output data is sorted in the correct order.

图2是基矩阵2的正交特性示意图。可以看到,该矩阵的第21到第42行是正交的,这意味着任意一个变量节点不会同时连接到正交部分中的连续两层。因此,我们可以将正交部分中的连续的两层当作一层处理,这样做可以带来两点好处。其一,通过减少译码层数可以降低所需周期数进而提升吞吐率;其二,译码层数的降低可以使得校验信息存储器的深度相应降低,进而降低存储资源消耗。考虑到正交部分的行重都小于

Figure BSA0000195616320000041
采用层合并也不会引起存储器宽度的增加。对于BG2矩阵,采用层合并可以将L从42降低到31。因此,译码周期数和校验信息存储器的消耗均可减少26.2%。对于BG1矩阵,减少百分比为28.3%。FIG. 2 is a schematic diagram of the orthogonal characteristic of the basis matrix 2 . As you can see, rows 21 to 42 of this matrix are orthogonal, which means that no one variable node is connected to two consecutive layers in the orthogonal part at the same time. Therefore, we can treat two consecutive layers in the orthogonal part as one layer, which brings two benefits. First, by reducing the number of decoding layers, the required number of cycles can be reduced to improve throughput; second, the reduction in the number of decoding layers can correspondingly reduce the depth of the parity information memory, thereby reducing storage resource consumption. Considering that the row weights of the orthogonal parts are all less than
Figure BSA0000195616320000041
There is also no increase in memory width caused by layer merging. For BG2 matrices, L can be reduced from 42 to 31 with layer binning. Therefore, the number of decoding cycles and the consumption of the parity information memory can be reduced by 26.2%. For the BG1 matrix, the percentage reduction is 28.3%.

图3是本发明译码器中校验信息存储器的具体结构示意图。由于5G LDPC码的行重极不规则,各行的行重之间有很大的差异。通常情况下存储器的宽度需要匹配最大行重。当采用最小和译码器进行译码时,校验信息存储器的宽度可表示为

Figure BSA0000195616320000042
其中q为校验消息的量化比特数。这种设计方式对于行重较低的层来说是一种浪费。因此,本发明为校验信息存储器提出了一种分布式的存储方式,具体结构如图二所示。首先,预设一个阈值
Figure BSA0000195616320000043
用于判定每层行重的大小。其次,对于行重小于等于
Figure BSA0000195616320000044
的层,将其校验节点输出的所有校验消息存在第一个子存储器中。对于行重大于
Figure BSA0000195616320000045
的层,对于每个校验节点输出的校验消息,将其中的地址消息存在第二个子存储器中,其余部分的校验消息存在第一个子存储器中。值得注意的是,因为第二个子存储器只应用于行重大于的层,所以其深度远小于第一个子存储器。基于此,校验信息存储器的资源消耗可进一步降低。例如,对于BG1矩阵可将
Figure BSA0000195616320000051
设为15,此时校验信息存储器大小可降低15.2%;对于BG2矩阵可将设为8,此时校验信息存储器大小可降低13.7%。当与层合并技术相结合时,对于BG1和BG2矩阵,校验信息存储器的大小可分别降低39.1%和36.3%。FIG. 3 is a schematic diagram of a specific structure of a check information memory in the decoder of the present invention. Since the line weight of 5G LDPC codes is extremely irregular, there is a large difference between the line weights of each line. Usually the width of the memory needs to match the maximum line weight. When the minimum sum decoder is used for decoding, the width of the parity information memory can be expressed as
Figure BSA0000195616320000042
where q is the number of quantized bits of the check message. This design is wasteful for layers with lower row weights. Therefore, the present invention proposes a distributed storage method for the verification information storage, and the specific structure is shown in FIG. 2 . First, preset a threshold
Figure BSA0000195616320000043
Used to determine the size of the row weight of each layer. Second, for row weights less than or equal to
Figure BSA0000195616320000044
It stores all check messages output by its check nodes in the first sub-memory. For row weights greater than
Figure BSA0000195616320000045
For the check message output by each check node, the address message is stored in the second sub-memory, and the rest of the check messages are stored in the first sub-memory. It's worth noting that because the second submemory is only used for row weights greater than layer, so its depth is much smaller than the first sub-memory. Based on this, the resource consumption of the verification information storage can be further reduced. For example, for the BG1 matrix, we can use
Figure BSA0000195616320000051
Set to 15, at this time, the size of the parity information memory can be reduced by 15.2%; for the BG2 matrix, the If it is set to 8, the size of the verification information memory can be reduced by 13.7%. When combined with the layer merging technique, the size of the parity information memory can be reduced by 39.1% and 36.3% for the BG1 and BG2 matrices, respectively.

图4是本发明译码器中软消息存储器移位结构示意图。由于互联网络的大小对译码器整体的面积、功耗、延时起着主导作用,为降低其资源消耗,本发明提出了两种改进方式。首先,降低互联网络的输入和输出消息的数目。以BG2矩阵为例,图5是BG2矩阵结构示意图。由于其包含52列,因此读取互联网络的输入消息组个数为52。考虑到BG2的右下角(矩阵I)为单位矩阵,因此每一个迭代层只会按顺序用到与该部分矩阵对应的一组软判决消息。基于此,本发明将与该部分矩阵对应的软判决消息独立存储,采用循环移位的方式来实现该部分存储器,具体结构如图4所示。采用这种架构,可将所有迭代层在该部分所需软消息的存储地址固定为同一个。因此,该部分的存储器每次只输出和输入一组数据,从而大大降低了互联网络的输入输出个数。对于BG2矩阵,读取互联网络输入个数和写入互联网络的输出个数可由52降为16。其次,为了最小化在互联网络中产生每个输出所需的面积和延时,按照最小化产生每个输出所需输入个数的方式,将每个输出在每层中对应的输入消息重新排序。该排序离线完成,因此不占用硬件资源。FIG. 4 is a schematic diagram of the shift structure of the soft message memory in the decoder of the present invention. Since the size of the internet network plays a leading role in the overall area, power consumption and delay of the decoder, in order to reduce its resource consumption, the present invention proposes two improvement methods. First, reduce the number of incoming and outgoing messages to the Internet. Taking the BG2 matrix as an example, FIG. 5 is a schematic structural diagram of the BG2 matrix. Since it contains 52 columns, the number of input message groups to read the internet is 52. Considering that the lower right corner (matrix I) of BG2 is an identity matrix, each iterative layer will only use a set of soft decision messages corresponding to this partial matrix in sequence. Based on this, the present invention independently stores the soft decision message corresponding to the partial matrix, and implements the partial memory by means of cyclic shift. The specific structure is shown in FIG. 4 . With this architecture, the storage addresses of the soft messages required by all iteration layers in this part can be fixed to the same one. Therefore, this part of the memory only outputs and inputs one set of data at a time, thereby greatly reducing the number of inputs and outputs of the Internet. For the BG2 matrix, the number of inputs to read the internet and the number of outputs to write to the internet can be reduced from 52 to 16. Second, in order to minimize the area and delay required to generate each output in the interconnected network, the input messages corresponding to each output in each layer are reordered in a way that minimizes the number of inputs required to generate each output. . This sorting is done offline and therefore does not consume hardware resources.

实施例:以码长为2600,码率为1/5,由BG2定义的5G LDPC码为例,来实现本发明所公布的译码器架构。译码器采用Verilog语言进行描述,得到的RTL用Synopsys工具进行综合,采用的工艺是TSMC 90nm的CMOS工艺。综合结果显示,在使用本发明所公布的优化方法后,译码器的工作频率由121Mhz提升至164MHZ,面积由1.831mm2降至1.236mm2,吞吐率由524Mbps提升到947Mbps。为了更直观的比较,我们还比较了吞吐率-功耗比。通过使用本发明所公布的优化方法,译码器的吞吐率-功耗比由286.1Mbps/mm2提升至766.2Mbps/mm2,提升至原来的2.68倍。Embodiment: Take a 5G LDPC code defined by BG2 with a code length of 2600 and a code rate of 1/5 as an example to implement the decoder architecture disclosed in the present invention. The decoder is described in Verilog language, the RTL obtained is synthesized by Synopsys tool, and the technology adopted is TSMC 90nm CMOS technology. The comprehensive results show that after using the optimization method disclosed in the present invention, the working frequency of the decoder is increased from 121Mhz to 164MHz, the area is reduced from 1.831mm 2 to 1.236mm 2 , and the throughput rate is increased from 524Mbps to 947Mbps. For a more intuitive comparison, we also compared the throughput-to-power ratio. By using the optimization method disclosed in the present invention, the throughput-power consumption ratio of the decoder is increased from 286.1 Mbps/mm 2 to 766.2 Mbps/mm 2 , which is increased to 2.68 times.

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化和替换,都应该涵盖在本发明的保护范围之内。The above is only a preferred embodiment of the present invention, but the protection scope of the present invention is not limited to this. Any person skilled in the art who is familiar with the technical scope disclosed by the present invention can easily think of changes and Substitutions should be covered within the protection scope of the present invention.

Claims (7)

1.一种通用于5G LDPC码的高吞吐率、低复杂度的译码器架构,采用分层译码结构,其特征在于,包含以下单元:1. a general high-throughput, low-complexity decoder architecture for 5G LDPC codes, adopts a layered decoding structure, and is characterized in that, comprises the following units: 1)控制器,用于生成译码器中所有的控制信号;1) a controller for generating all control signals in the decoder; 2)软消息存储器,用于存储每个比特的软判决消息。为了能够支持大规模并行地读取和初始化操作,该存储器由寄存器组实现;2) Soft message memory for storing the soft decision message of each bit. To be able to support massively parallel read and initialization operations, the memory is implemented by register banks; 3)校验信息存储器,用于存储每个校验节点计算得到的校验信息。为了能够支持同时读写操作,该单元采用双端口随机存取存储器(DRAM)实现;3) A verification information memory, which is used to store the verification information calculated by each verification node. In order to support simultaneous read and write operations, the unit is implemented with dual-port random access memory (DRAM); 4)读取互联网络,用于从软消息存储器中读取软消息,并选择出对应于当前执行层的最大行重
Figure FSA0000195616310000011
组软消息进行输出;
4) Read the Internet, which is used to read soft messages from the soft message memory, and select the maximum row weight corresponding to the current execution layer.
Figure FSA0000195616310000011
Group soft messages for output;
5)移位器,根据每组软判决消息所对应的移位因子对其进行移位,使其内部能够按照正确的顺序排列;5) a shifter, which is shifted according to the shift factor corresponding to each group of soft-decision messages, so that the interior can be arranged in the correct order; 6)变量节点单元,用于生成变量节点传递给校验节点的变量消息;6) a variable node unit, used to generate a variable message that the variable node transmits to the check node; 7)校验节点单元,用于产生对应于每个变量节点的校验消息;7) a check node unit for generating a check message corresponding to each variable node; 8)解压缩器,用于将校验消息由压缩形式转换为非压缩形式;8) a decompressor for converting the check message from a compressed form to an uncompressed form; 9)写入互联网络,基于当前生成的
Figure FSA0000195616310000012
组更新后的软消息生成输入到软消息存储器中的消息。
9) Write to the Internet, based on the currently generated
Figure FSA0000195616310000012
The group-updated soft message generates a message that is input into the soft message memory.
2.根据权利要求1所述的高吞吐率、低复杂度的译码器架构,其特征在于,利用5G LDPC码的基矩阵的部分正交性,将正交部分的两层看作一层进行译码。因此,可减小所需的时钟周期数,进而提升吞吐率。此外,权利要求1所述的校验消息存储器的深度也可相应降低。2. the decoder architecture of high throughput rate according to claim 1, low complexity, it is characterized in that, utilize the partial orthogonality of the base matrix of 5G LDPC code, two layers of orthogonal part are regarded as one layer to decode. As a result, the required number of clock cycles can be reduced, thereby increasing throughput. In addition, the depth of the verification message memory according to claim 1 can also be correspondingly reduced. 3.根据权利要求1所述的软消息存储器,其特征在于,为降低输入到权利要求1所述的读取互联网络和写入互联网络的资源消耗,将对应扩展比特的软判决消息与对应核心比特的软判决消息分开存储。其中存储对应扩展比特的软判决消息的存储器采用移位架构实现,因此可以固定所需数据的存储地址。基于此,该部分存储器每次只需输入和输出一组数据。3. soft message memory according to claim 1, is characterized in that, in order to reduce the resource consumption that is input into the described read internet network of claim 1 and write internet network, the soft decision message corresponding to the expansion bit and corresponding Soft decision messages for core bits are stored separately. The memory for storing the soft-decision message corresponding to the extended bit is implemented by a shift architecture, so the storage address of the required data can be fixed. Based on this, this part of the memory only needs to input and output one set of data at a time. 4.根据权利要求1所述的移位器,其特征在于,4. The shifter of claim 1, wherein 1)每组消息在当前层的移位因子为其对应基矩阵的列在当前层的移位系数减去该列的上一个非负移位系数。因此,省去了将消息写入软消息存储器时所需的再次移位;1) The shift factor of each group of messages in the current layer is the shift coefficient of the column of the corresponding base matrix in the current layer minus the previous non-negative shift coefficient of the column. Therefore, the re-shifting required when writing the message to the soft message memory is omitted; 2)输入数据在载入软消息存储器前需要根据其对应基矩阵的列的最后一个移位系数进行反向移位,以保证每组消息在首次移位时的位置正确性;2) The input data needs to be reversely shifted according to the last shift coefficient of the column of its corresponding base matrix before being loaded into the soft message memory, to ensure the correctness of the position of each group of messages during the first shift; 3)输出数据在输出前需要根据其对应基矩阵的列的最后一个移位系数进行移位,以保证输出码字按照正确顺序排序。3) The output data needs to be shifted according to the last shift coefficient of the column of the corresponding base matrix before output, so as to ensure that the output code words are sorted in the correct order. 5.根据权利要求1所述的校验节点单元,其特征在于,输出数据按照压缩格式排列。例如对于最小和译码器,在每个校验节点中,只输出校验消息的符号位,最小输入变量消息以及其对应的地址,和第二小输入变量消息。5. The check node unit according to claim 1, wherein the output data is arranged in a compressed format. For example, for the minimum sum decoder, in each check node, only the sign bit of the check message, the minimum input variable message and its corresponding address, and the second small input variable message are output. 6.根据权利要求1所述的校验信息存储器,为减小面积消耗,采用分布式结构实现,其特征在于:6. verification information memory according to claim 1, in order to reduce area consumption, adopts distributed structure to realize, it is characterized in that: 1)预设一个阈值
Figure FSA0000195616310000021
用于判定每层行重的大小;
1) Preset a threshold
Figure FSA0000195616310000021
Used to determine the size of the row weight of each layer;
2)对于行重小于等于
Figure FSA0000195616310000022
的层,将其校验节点输出的所有校验消息存在第一个子存储器中;
2) For row weight less than or equal to
Figure FSA0000195616310000022
layer, store all the check messages output by its check nodes in the first sub-memory;
3)对于行重大于的层,对于每个校验节点输出的校验消息,将其中的地址消息存在第二个子存储器中,其余部分消息存在第一个子存储器中;3) For row weights greater than layer, for the check message output by each check node, the address message is stored in the second sub-memory, and the rest of the messages are stored in the first sub-memory; 4)第二个子存储器只应用于行重大于
Figure FSA0000195616310000024
的层,因此其深度远小于第一个子存储器。
4) The second sub-memory should only be used for row weights greater than
Figure FSA0000195616310000024
, so its depth is much smaller than the first sub-memory.
7.根据权利要求1所述的读取互联网络和写入互联网络,其特征在于,为减小互联网络的硬件资源消耗,按照最小化产生每个输出所需输入个数的方式,将每个输出在每层中对应的输入消息重新排序。该排序离线完成,因此不占用硬件资源。7. The reading internet network according to claim 1 and the writing internet network are characterized in that, in order to reduce the hardware resource consumption of the internet, according to the mode of minimizing the number of inputs required to generate each output, each Each output is reordered corresponding to the input message in each layer. The sorting is done offline and therefore does not consume hardware resources.
CN201911161918.3A 2019-11-22 2019-11-22 Efficient decoder framework suitable for 5G LDPC code Pending CN110808742A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911161918.3A CN110808742A (en) 2019-11-22 2019-11-22 Efficient decoder framework suitable for 5G LDPC code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911161918.3A CN110808742A (en) 2019-11-22 2019-11-22 Efficient decoder framework suitable for 5G LDPC code

Publications (1)

Publication Number Publication Date
CN110808742A true CN110808742A (en) 2020-02-18

Family

ID=69491592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911161918.3A Pending CN110808742A (en) 2019-11-22 2019-11-22 Efficient decoder framework suitable for 5G LDPC code

Country Status (1)

Country Link
CN (1) CN110808742A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111211790A (en) * 2020-02-25 2020-05-29 重庆邮电大学 A high-throughput LDPC decoding algorithm and architecture for 5G terminals
WO2021233788A1 (en) * 2020-05-18 2021-11-25 Accelercomm Ltd Low density parity check decoder, electronic device, and method therefor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101707485A (en) * 2009-02-03 2010-05-12 天津博微科技有限公司 LDPC decoding method combining bit flipping (BF) and majority logic (MLG)
US20160197701A1 (en) * 2013-07-22 2016-07-07 Samsng Electronics Co., Ltd. Apparatus and Method for Receiving Signal in Communication System Supporting Low Density Parity Check Code
CN106571829A (en) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 FPGA-based high-speed adaptive DVB-S2 LDPC decoder and decoding method
CN110071726A (en) * 2019-04-16 2019-07-30 南京大学深圳研究院 The building method and its code translator of combining LDPC code in multi-layered unit flash memory
CN110192349A (en) * 2017-01-06 2019-08-30 诺基亚技术有限公司 Method and apparatus for use and generation of vector-based LDPC fundamental matrices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101707485A (en) * 2009-02-03 2010-05-12 天津博微科技有限公司 LDPC decoding method combining bit flipping (BF) and majority logic (MLG)
US20160197701A1 (en) * 2013-07-22 2016-07-07 Samsng Electronics Co., Ltd. Apparatus and Method for Receiving Signal in Communication System Supporting Low Density Parity Check Code
CN106571829A (en) * 2016-10-27 2017-04-19 西安空间无线电技术研究所 FPGA-based high-speed adaptive DVB-S2 LDPC decoder and decoding method
CN110192349A (en) * 2017-01-06 2019-08-30 诺基亚技术有限公司 Method and apparatus for use and generation of vector-based LDPC fundamental matrices
CN110071726A (en) * 2019-04-16 2019-07-30 南京大学深圳研究院 The building method and its code translator of combining LDPC code in multi-layered unit flash memory

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111211790A (en) * 2020-02-25 2020-05-29 重庆邮电大学 A high-throughput LDPC decoding algorithm and architecture for 5G terminals
CN111211790B (en) * 2020-02-25 2023-09-29 重庆邮电大学 High throughput LDPC decoding algorithm and architecture for 5G terminal
WO2021233788A1 (en) * 2020-05-18 2021-11-25 Accelercomm Ltd Low density parity check decoder, electronic device, and method therefor
US11962326B2 (en) 2020-05-18 2024-04-16 Accelercomm Limited Low density parity check decoder, electronic device, and method therefor

Similar Documents

Publication Publication Date Title
CN101106381B (en) Hierarchical LDPC decoder and decoding processing method
CN104868925B (en) Encoding method, decoding method, encoding device and decoding device of structured LDPC code
US8566667B2 (en) Low density parity check code decoding system and method
Mansour et al. High-throughput LDPC decoders
CN111786683B (en) A Low-Complexity Polar Code Multi-Block Decoder
CN109347486B (en) Low-complexity high-throughput 5G LDPC encoder and encoding method
CN101854177B (en) LDPC decoder with high throughput rate
CN103501210B (en) High-performance multistandard FEC (Forward Error Correction) decoder
CN108696282A (en) A kind of QC-LDPC code full parellel layered structure decoders of high-efficient low-complexity
CN111384970B (en) Decoding method, device and communication equipment
CN1767397A (en) High-efficiency decoding device and method for low-density parity-check codes
US11483011B2 (en) Decoding method, decoding device, and decoder
CN101777921B (en) Structured LDPC code decoding method and device for system on explicit memory chip
CN113612575B (en) Wimax protocol-oriented QC-LDPC decoder decoding method and system
CN101931416A (en) Parallel layered decoder of LDPC code in mobile digital multimedia broadcasting system
CN113328756A (en) Method for improving hardware processing performance of layered QC-LDPC decoder
CN110808742A (en) Efficient decoder framework suitable for 5G LDPC code
CN118473423A (en) Low-complexity DVB-S2 LDPC decoder and decoding method
CN110868225B (en) LDPC code decoder
CN102201817B (en) Low-power-consumption LDPC decoder based on optimization of memory folding architecture
CN101090274A (en) A Viterbi decoder and its backtracking decoding method and backtracking decoding device
CN102594369A (en) Quasi-cyclic low-density parity check code decoder based on FPGA (field-programmable gate array) and decoding method
WO2017193614A1 (en) Encoding method and device and decoding method and device for structured ldpc
Zhang et al. High‐Throughput Fast‐SSC Polar Decoder for Wireless Communications
CN105515588B (en) A kind of LDPC CC high speed decoders

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200218