[go: up one dir, main page]

CN114826281A - Double-layer scheduling decoder and method based on 5G LDPC (Low Density parity check) and intelligent terminal - Google Patents

Double-layer scheduling decoder and method based on 5G LDPC (Low Density parity check) and intelligent terminal Download PDF

Info

Publication number
CN114826281A
CN114826281A CN202210246019.9A CN202210246019A CN114826281A CN 114826281 A CN114826281 A CN 114826281A CN 202210246019 A CN202210246019 A CN 202210246019A CN 114826281 A CN114826281 A CN 114826281A
Authority
CN
China
Prior art keywords
layer
variable nodes
group
input
calculation
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.)
Granted
Application number
CN202210246019.9A
Other languages
Chinese (zh)
Other versions
CN114826281B (en
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.)
Xidian University
Original Assignee
Xidian 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 Xidian University filed Critical Xidian University
Priority to CN202210246019.9A priority Critical patent/CN114826281B/en
Publication of CN114826281A publication Critical patent/CN114826281A/en
Application granted granted Critical
Publication of CN114826281B publication Critical patent/CN114826281B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • H04L1/0063Single parity check
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)

Abstract

本发明属于译码器技术领域,公开了一种基于5G LDPC的双层调度译码器、方法及智能终端,基于5G LDPC的双层调度译码器包括:LLR存储器、控制单元、移位网络、计算单元和校验节点存储单元;控制单元,用于控制从LLR存储器输入到计算单元的两层变量节点的输入顺序以及更新后的变量节点写入到LLR存储器的输出顺序,同时从校验节点存储单元读取相关校验节点;移位网络,用于两层变量节点的移位;计算单元,用于更新变量节点。本发明利用了5G基础矩阵划分为正交矩阵,非正交矩阵的特点,将每一层的变量节点的输入输出顺序进行重排列,在保证性能的前提下,减少冲突变量节点带来的延时,实现了译码器的双层调度,进而提高译码器的吞吐率,满足5G高速率通信的要求。

Figure 202210246019

The invention belongs to the technical field of decoders, and discloses a 5G LDPC-based double-layer scheduling decoder, a method and an intelligent terminal. The 5G LDPC-based double-layer scheduling decoder includes: an LLR memory, a control unit, and a shift network , a calculation unit and a check node storage unit; a control unit, used to control the input sequence of the two-layer variable nodes input from the LLR memory to the calculation unit and the output sequence of the updated variable nodes written to the LLR memory, and at the same time from the check The node storage unit reads the relevant check nodes; the shift network is used to shift the two-layer variable nodes; the calculation unit is used to update the variable nodes. The invention utilizes the characteristics of dividing the 5G basic matrix into orthogonal matrices and non-orthogonal matrices, rearranges the input and output order of variable nodes in each layer, and reduces the delay caused by conflicting variable nodes on the premise of ensuring performance. At the same time, the dual-layer scheduling of the decoder is realized, thereby improving the throughput of the decoder and meeting the requirements of 5G high-speed communication.

Figure 202210246019

Description

一种基于5G LDPC的双层调度译码器、方法及智能终端A 5G LDPC-based dual-layer scheduling decoder, method and intelligent terminal

技术领域technical field

本发明属于译码器技术领域,尤其涉及一种基于5G LDPC的双层调度译码器、方法及智能终端。The invention belongs to the technical field of decoders, and in particular relates to a 5G LDPC-based dual-layer scheduling decoder, a method and an intelligent terminal.

背景技术Background technique

目前,第五代移动通信(5G)分为三大应用场景:增强的移动带宽(eMBB)、低时延高可靠(URLLC)、海量物联网(mMTC)。数据业务的特点是高速率,延迟可以在50~100ms之间;交互业务的时延在5~10ms之间;现实增强和在线游戏需要高清视频和几十毫秒的时延。At present, the fifth generation mobile communication (5G) is divided into three application scenarios: Enhanced Mobile Bandwidth (eMBB), Low Latency and High Reliability (URLLC), and Massive Internet of Things (mMTC). Data services are characterized by high speed, and the delay can be between 50 and 100 ms; the delay of interactive services is between 5 and 10 ms; augmented reality and online games require high-definition video and a delay of tens of milliseconds.

低密度校验码(LDPC)最早于1963年由Robert Gallager在其博士论文中提出。经典的LDPC在长码块时有优异的性能和较低的解码复杂度,曾多次刷新逼近香农界的逼近记录。经过多年的研究,LDPC在短码设计、在支持灵活码长及码率、码率兼容、自适应重传方面有着巨大突破,同时对LDPC解码算法的优化一直在进行。最终,凭借其优良的性能,LDPC在2016年10月最终进入要求严格的5G-NR标准中(作为eMBB数据信道的编码方案)。Low Density Check Code (LDPC) was first proposed by Robert Gallager in his doctoral dissertation in 1963. The classic LDPC has excellent performance and low decoding complexity in long code blocks, and has repeatedly refreshed the approximation record of the Shannon world. After years of research, LDPC has made great breakthroughs in short code design, supporting flexible code length and code rate, code rate compatibility, and adaptive retransmission. At the same time, the optimization of LDPC decoding algorithm has been in progress. Finally, with its excellent performance, LDPC finally entered the demanding 5G-NR standard in October 2016 (as a coding scheme for eMBB data channels).

5G LDPC为准循环LDPC码,基础校验矩阵分为BG1和BG2,支持51种提升值,最小为2,最大为384。5G LDPC is a quasi-cyclic LDPC code. The basic check matrix is divided into BG1 and BG2. It supports 51 boost values, the minimum is 2 and the maximum is 384.

LDPC的译码算法为置信传播(BP)算法,在原理上表现为变量节点与校验节点间的信息交互,并进行多次迭代,得到译码结果。节点间调度方式分为泛洪式(Flooding)和分层式(Layered)。泛洪式的特点为每一次译码迭代,先计算从变量节点到校验节点的所有软信息,再计算从校验节点到变量节点的软信息,多用于计算机模拟仿真。分层式的特点是在计算每层的软信息时,会更新此次迭代中的相关的节点信息,用于下一层的软信息计算,适用于硬件实现。The decoding algorithm of LDPC is a belief propagation (BP) algorithm, which in principle represents the information exchange between the variable node and the check node, and performs multiple iterations to obtain the decoding result. The scheduling methods between nodes are divided into flooding and layered. The characteristic of flooding is that in each decoding iteration, all the soft information from the variable node to the check node is calculated first, and then the soft information from the check node to the variable node is calculated, which is mostly used for computer simulation. The layered feature is that when calculating the soft information of each layer, the relevant node information in this iteration will be updated for the soft information calculation of the next layer, which is suitable for hardware implementation.

LDPC译码器的架构主要分为全并行结构,行并行结构和块并行结构。其中行并行结构和块并行结构采用的是分层译码调度方式。行并行结构的并行度受基础校验矩阵行数影响,最大为46,块并行结构的并行度受5G LDPC码的提升值影响,最大为384。目前5G LDPC译码器大多采用分层式调度的行并行或块并行结构。The architecture of LDPC decoder is mainly divided into full parallel structure, row parallel structure and block parallel structure. The row-parallel structure and the block-parallel structure adopt the hierarchical decoding scheduling method. The parallelism of the row parallel structure is affected by the number of rows of the basic parity check matrix, with a maximum of 46, and the parallelism of the block parallel structure is affected by the boost value of the 5G LDPC code, with a maximum of 384. At present, most 5G LDPC decoders adopt a hierarchically scheduled row-parallel or block-parallel structure.

传统分层式LDPC译码器在设计时,为了避免层间的变量节点冲突,在译码工作时只能按照顺序,单层译码,在高码率情况下的LDPC码,有着良好的吞吐率表现,但对于低码率,往往吞吐率较低,无法满足5G通信基本要求。In the design of traditional layered LDPC decoders, in order to avoid variable node conflicts between layers, they can only decode in sequence and single-layer decoding. In the case of high code rates, LDPC codes have good throughput. However, for low bit rates, the throughput is often low and cannot meet the basic requirements of 5G communication.

通过上述分析,现有技术存在的问题及缺陷为:传统分层式5G LDPC译码器译码为单层调度,在低码情况下吞吐率较低,无法满足5G通信基本要求。Through the above analysis, the existing problems and defects of the prior art are: the traditional layered 5G LDPC decoder decodes as single-layer scheduling, and the throughput rate is low in the case of low code, which cannot meet the basic requirements of 5G communication.

发明内容SUMMARY OF THE INVENTION

针对现有技术存在的问题,本发明提供了一种基于5G LDPC的双层调度译码器、方法及智能终端。BG1和BG2各层的变量节点索引为定值,即BG1和BG2两种矩阵是固定的,每层的索引值其实为矩阵每行的非零元素位置。由于矩阵固定,因此BG1和BG2的正交区域和非正交区域固定,BG1基础矩阵大小为46×68,BG2基础矩阵大小为42×52,其中BG1的正交区域为第21行~46行,正交区域为1~20行。BG2的正交区域为为21行~42行,非正交区域为1~20行。节点的输入输出顺序是本文设计的一种有效解决双层调度因冲突变量节点多而时延高的一种方案。Aiming at the problems existing in the prior art, the present invention provides a 5G LDPC-based dual-layer scheduling decoder, method and intelligent terminal. The variable node index of each layer of BG1 and BG2 is a fixed value, that is, the two matrices of BG1 and BG2 are fixed, and the index value of each layer is actually the non-zero element position of each row of the matrix. Since the matrix is fixed, the orthogonal and non-orthogonal regions of BG1 and BG2 are fixed. The size of the basic matrix of BG1 is 46 × 68, and the size of the basic matrix of BG2 is 42 × 52. The orthogonal region of BG1 is from row 21 to row 46. , the orthogonal region is 1 to 20 lines. The orthogonal region of BG2 is 21 to 42 lines, and the non-orthogonal region is 1 to 20 lines. The input and output sequence of nodes is an effective solution designed in this paper to solve the high delay caused by multiple conflicting variable nodes in double-layer scheduling.

本发明是这样实现的,一种基于5G LDPC的双层调度译码器,所述基于5G LDPC的双层调度译码器包括:The present invention is implemented in this way, a 5G LDPC-based dual-layer scheduling decoder, and the 5G LDPC-based dual-layer scheduling decoder includes:

LLR存储器、全局控制单元、先算层控制单元、等待层控制单元、两组移位网络、768个计算单元和校验节点存储单元;LLR memory, global control unit, precomputing layer control unit, waiting layer control unit, two sets of shift networks, 768 calculation units and check node storage units;

全局控制单元,控制当前译码组以及译码迭代次数;The global control unit controls the current decoding group and the number of decoding iterations;

先算层控制单元和等待层控制单元,用于控制从LLR存储器输入到计算单元的两层变量节点的输入顺序,以及计算单元更新后的变量节点写入到LLR存储器的输出顺序,同时控制从校验节点存储单元读取相关校验节点;The first-level control unit and the waiting-level control unit are used to control the input sequence of the two-layer variable nodes input from the LLR memory to the calculation unit, and the output sequence of the updated variable nodes from the calculation unit written to the LLR memory. The check node storage unit reads the relevant check node;

两组移位网络,分别用于两层变量节点的移位;Two sets of shift networks are used for the shift of two-layer variable nodes;

计算单元,用于两层变量节点与对应的校验节点交互并得到更新后的变量节点。The computing unit is used for two-layer variable nodes to interact with the corresponding check nodes and obtain the updated variable nodes.

进一步,所述两层变量节点包括:先算层变量节点和等待层变量节点;所述先算层变量节点为奇数层变量节点;所述等待层变量节点为偶数层变量节点。Further, the two-layer variable node includes: a first-layer variable node and a waiting-layer variable node; the first-layer variable node is an odd-layer variable node; the waiting-layer variable node is an even-layer variable node.

本发明的另一目的在于提供一种应用于所述基于5G LDPC的双层调度译码器双层调度方法,所述基于5G LDPC的双层调度译码器双层调度方法包括:Another object of the present invention is to provide a dual-layer scheduling method applied to the 5G LDPC-based dual-layer scheduling decoder, where the 5G LDPC-based dual-layer scheduling decoder includes:

控制单元从LLR存储器读取两层变量节点分别经过移位网络进入计算单元,与对应的校验节点交互,得到更新后的变量节点。The control unit reads the two-layer variable nodes from the LLR memory and enters the calculation unit through the shift network respectively, interacts with the corresponding check nodes, and obtains the updated variable nodes.

进一步,所述基于5G LDPC的双层调度译码器双层调度方法包括以下步骤:Further, the 5G LDPC-based dual-layer scheduling method for a decoder and decoder includes the following steps:

步骤一,将5G的基础校验矩阵各个层划分为奇数层和偶数层,每相邻的奇数层和偶数层同时译码,并将相邻的奇数层和偶数层分为一组;Step 1: Divide each layer of the basic check matrix of 5G into odd-numbered layers and even-numbered layers, decode each adjacent odd-numbered layer and even-numbered layer at the same time, and divide adjacent odd-numbered layers and even-numbered layers into one group;

步骤二,先算层计算单元输入本层计算所需要的变量节点,立即计算并输出更新后的变量节点。对于非正交组,先算层与等待层由于存在冲突变量节点而不同时计算。冲突的变量节点先进入先算层计算单元计算,等待层先输入无冲突的变量节点,待先算层计算结束后输出更新后的变量节点,等待层计算单元继续输入属于冲突变量节点,开始计算;对于正交组,先算层和等待层不存在冲突变量节点,同时计算;In step 2, the first layer computing unit inputs the variable nodes required for the calculation of this layer, and immediately calculates and outputs the updated variable nodes. For non-orthogonal groups, the first layer and the waiting layer are not calculated at the same time due to the existence of conflicting variable nodes. Conflicting variable nodes first enter the calculation unit of the first calculation layer for calculation, and the waiting layer first inputs the non-conflicting variable nodes. After the calculation of the first calculation layer is completed, the updated variable nodes are output, and the waiting layer calculation unit continues to input the conflicting variable nodes. ; For orthogonal groups, there are no conflicting variable nodes in the first layer and the waiting layer, and they are calculated simultaneously;

步骤三,等待层计算结束,开始输出更新后的变量节点时,译码控制单元控制先算层和等待层计算单元输入下一组各自的变量节点,开始下一组的计算;Step 3: Waiting for the end of the layer calculation and starting to output the updated variable node, the decoding control unit controls the first calculation layer and the waiting layer calculation unit to input the next group of respective variable nodes, and starts the calculation of the next group;

步骤四,当所有组计算结束后,译码迭代次数加1,若达到最大译码迭代次数,则译码器结束计算,输出译码结果,否则重复步骤二和步骤三。Step 4: After the calculation of all groups is completed, the number of decoding iterations is incremented by 1. If the maximum number of decoding iterations is reached, the decoder ends the calculation and outputs the decoding result; otherwise, steps 2 and 3 are repeated.

进一步,所述5G LDPC的双层调度译码器的每一层计算均采用块并行结构。Further, each layer of computation of the dual-layer scheduling decoder of the 5G LDPC adopts a block parallel structure.

进一步,所述将相邻的奇数层和偶数层分为一组包括:每一组的两层分为先算层和等待层;所述奇数层为先算层;所述偶数层为等待层。Further, the grouping of adjacent odd-numbered layers and even-numbered layers into one group includes: the two layers of each group are divided into a pre-calculated layer and a waiting layer; the odd-numbered layer is a pre-calculated layer; the even-numbered layer is a waiting layer .

进一步,所述步骤二还包括:在译码调度时,对每层的变量节点输入输出顺序重新排列。Further, the second step further includes: rearranging the input and output order of the variable nodes of each layer during the decoding and scheduling.

进一步,所述对每层的变量节点输入输出顺序重新排列包括:Further, the rearranging the input and output order of the variable nodes of each layer includes:

非正交组等待层中,有冲突的变量节点在最后输入,并且等待先算层更新冲突变量节点的结果。In the non-orthogonal group waiting layer, the conflicting variable nodes are input at the end, and the waiting-precompute layer updates the result of conflicting variable nodes.

进一步,所述对每层的变量节点输入输出顺序重新排列还包括:当前组各层首先输出与下一组有冲突的变量节点。Further, the rearranging the input and output sequence of the variable nodes of each layer further includes: each layer of the current group first outputs the variable nodes that conflict with the next group.

所有组的先算层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点。The input order of the first-computation layer of all groups is adjusted so that the variable nodes that do not conflict with the previous group are input first, and then other variable nodes are input.

非正交组的等待层输入顺序调整为,先输入与本组先算层无冲突的变量节点,再输入与上一组冲突的组间冲突变量节点,等待先算层更新冲突变量节点后,最后输入组内冲突变量节点。The input sequence of the waiting layer of the non-orthogonal group is adjusted as: first input the variable nodes that do not conflict with the first calculation layer of this group, then input the conflict variable nodes between the groups that conflict with the previous group, and wait for the first calculation layer to update the conflict variable nodes. Finally, enter the intragroup conflict variable node.

正交组的等待层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点,中间无需等待。The input order of the waiting layer of the orthogonal group is adjusted to first input the variable nodes that have no conflict with the previous group, and then input other variable nodes, without waiting in the middle.

非正交组的先算层输出顺序调整为,先输出与本组等待层冲突的组内冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the non-orthogonal group is adjusted to output the conflict variable nodes in the group that conflict with the waiting layer of this group first, and then output other variable nodes.

正交组的先算层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the orthogonal group is adjusted to output the conflicting variable nodes between groups that conflict with the next group first, and then output other variable nodes.

所有组的等待层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the waiting layer of all groups is adjusted to output the conflict variable nodes between groups that conflict with the next group first, and then output other variable nodes.

本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于执行所述基于5G LDPC的双层调度译码器双层调度方法。Another object of the present invention is to provide an information data processing terminal configured to execute the 5G LDPC-based dual-layer scheduling method for a decoder.

结合上述的技术方案和解决的技术问题,请从以下几方面分析本发明所要保护的技术方案所具备的优点及积极效果为:In combination with the above-mentioned technical solutions and the technical problems solved, please analyze the advantages and positive effects of the technical solutions to be protected by the present invention from the following aspects:

第一、针对上述现有技术存在的技术问题以及解决该问题的难度,紧密结合本发明的所要保护的技术方案以及研发过程中结果和数据等,详细、深刻地分析本发明技术方案如何解决的技术问题,解决问题之后带来的一些具备创造性的技术效果。具体描述如下:First, in view of the technical problems existing in the above-mentioned prior art and the difficulty of solving the problems, closely combine the technical solutions to be protected of the present invention and the results and data in the research and development process, etc., and analyze in detail and profoundly how to solve the technical solutions of the present invention. Technical problems, some creative technical effects brought about by solving problems. The specific description is as follows:

本发明利用重排列后的译码器的双层调度,可以极大的减小中间变量节点的输入输出时延,在低码率情况下,也有着较高的吞吐率。The invention utilizes the double-layer scheduling of the rearranged decoder, which can greatly reduce the input and output delay of the intermediate variable node, and also has a higher throughput rate in the case of a low code rate.

本发明提出一种双层调度的块并行结构的5G LDPC译码器,根据5G的基础校验矩阵,将每两层划分为一组,每一组包含一个先算层和等待层,其中奇数层为先算层,偶数层为等待层。在译码调度时,将会对每层的变量节点输入输出顺序重新排列。影响每层变量节点的输入顺序来自于组间和组内有冲突的变量节点。等待层中,有冲突的变量节点在最后输入,并等待先算层更新冲突变量节点的结果。组间的冲突变量节点会影响每层的变量节点更新顺序,当前组会首先输出与下一组有冲突的变量节点,以此减少下一组的等待。经过重排列后的译码器的双层调度,可以极大的减小中间变量节点的输入输出时延,在低码率情况下,也有着较高的吞吐率。The present invention proposes a 5G LDPC decoder with a block parallel structure of double-layer scheduling. According to the basic parity check matrix of 5G, every two layers are divided into a group, and each group includes a pre-calculation layer and a waiting layer. Layers are pre-calculated layers, and even-numbered layers are waiting layers. During decoding and scheduling, the input and output order of variable nodes in each layer will be rearranged. The input order that affects the variable nodes at each level comes from conflicting variable nodes between and within groups. In the waiting layer, the conflicting variable nodes are input at the end, and wait for the result of updating the conflicting variable nodes in the first layer. Conflicting variable nodes between groups will affect the update order of variable nodes in each layer. The current group will first output the variable nodes that conflict with the next group, thereby reducing the wait for the next group. The double-layer scheduling of the decoder after the rearrangement can greatly reduce the input and output delay of the intermediate variable node, and also has a high throughput rate in the case of low code rate.

第二,把技术方案看作一个整体或者从产品的角度,本发明所要保护的技术方案具备的技术效果和优点,具体描述如下:Second, considering the technical solution as a whole or from the product point of view, the technical effects and advantages of the technical solution to be protected by the present invention are specifically described as follows:

本发明利用了5G基础矩阵划分为正交矩阵,非正交矩阵的特点,将每一层的变量节点的输入输出顺序进行重排列,在保证性能的前提下,减少有冲突的变量节点带来的延时,实现了译码器的双层调度,进而提高了译码器的吞吐率,满足5G高速率通信的要求。The invention utilizes the characteristics of dividing the 5G basic matrix into orthogonal matrices and non-orthogonal matrices, rearranging the input and output order of variable nodes in each layer, and on the premise of ensuring performance, reducing conflicting variable nodes brought about by It realizes the double-layer scheduling of the decoder, thereby improving the throughput rate of the decoder and meeting the requirements of 5G high-speed communication.

第三,作为本发明的权利要求的创造性辅助证据,还体现在以下几个重要方面:Third, as an auxiliary evidence of inventive step for the claims of the present invention, it is also reflected in the following important aspects:

(1)本发明的技术方案填补了国内外业内技术空白:本发明填补了5G LDPC译码器在双层调度实现困难,意义不大的问题。通过将每层的变量节点输入输出顺序重排列,使得译码器在计算时,避免了冲突变量节点引起的较大时延,同时保证了译码器性能,且重排列后的译码器内部计算的数据输入输出更加流水线化,有更高的吞吐率。(1) The technical solution of the present invention fills the technical gap in the industry at home and abroad: the present invention fills the problem that the 5G LDPC decoder is difficult to implement in double-layer scheduling and has little meaning. By rearranging the input and output order of the variable nodes of each layer, the decoder avoids the large delay caused by conflicting variable nodes during calculation, and at the same time ensures the performance of the decoder. The data input and output of the calculation are more pipelined and have higher throughput.

(2)本发明的技术方案是否解决了人们一直渴望解决、但始终未能获得成功的技术难题:本发明解决了5G LDPC译码器在低码率下吞吐量较低的问题,在最低码率1/3码率情况下,吞吐率大小可达到9.6f,f为工作频率,即当频率为1Gbps时,译码器吞吐率为9.6Gbps,而单层调度条件下,1/3码率的译码器吞吐率仅为2.4f。(2) Whether the technical solution of the present invention solves the technical problem that people have been eager to solve, but has not been successful: the present invention solves the problem of low throughput of the 5G LDPC decoder under low code rate, and at the lowest code rate When the rate is 1/3 the code rate, the throughput rate can reach 9.6f, and f is the operating frequency, that is, when the frequency is 1Gbps, the decoder throughput rate is 9.6Gbps, and under the single-layer scheduling condition, the 1/3 code rate The decoder throughput rate is only 2.4f.

(3)本发明的技术方案是否克服了技术偏见:本发明克服了由于存在冲突变量节点,相较于单层调度方案,双层调度方案的资源翻倍,吞吐量却无法达到单层调度吞吐量二倍,提升效率过低的偏见,在低码率情况,本发明设计的双层调度的吞吐量可以达到单层调度吞吐量的三倍以上。(3) Whether the technical solution of the present invention overcomes technical prejudice: the present invention overcomes the existence of conflicting variable nodes. Compared with the single-layer scheduling scheme, the resources of the double-layer scheduling scheme are doubled, but the throughput cannot reach the single-layer scheduling throughput. In the case of low bit rate, the throughput of double-layer scheduling designed by the present invention can reach more than three times that of single-layer scheduling.

附图说明Description of drawings

图1是本发明实施例提供的基于5G LDPC的双层调度译码器示意图。FIG. 1 is a schematic diagram of a 5G LDPC-based dual-layer scheduling decoder provided by an embodiment of the present invention.

图2是本发明实施例提供的基于5G LDPC的双层调度译码器双层调度方法流程图。FIG. 2 is a flowchart of a dual-layer scheduling method for a 5G LDPC-based dual-layer scheduling decoder provided by an embodiment of the present invention.

图3是本发明实施例提供的有冲突的变量节点示意图。FIG. 3 is a schematic diagram of a conflicting variable node provided by an embodiment of the present invention.

图4是本发明实施例提供的第8组和第9组时序关系图。FIG. 4 is a timing diagram of the eighth group and the ninth group provided by an embodiment of the present invention.

图5是本发明实施例提供的第18组和第19组的输入输出关系示意图。FIG. 5 is a schematic diagram of the input-output relationship of the eighteenth group and the nineteenth group provided by an embodiment of the present invention.

图6是本发明实施例提供的LDPC码的浮点仿真性能与双层调度的定点硬件仿真性能图。FIG. 6 is a graph showing the floating-point simulation performance of the LDPC code and the fixed-point hardware simulation performance of double-layer scheduling provided by the embodiment of the present invention.

图7是本发明实施例提供的5G LDPC的基础矩阵结构示意图。FIG. 7 is a schematic diagram of a basic matrix structure of a 5G LDPC provided by an embodiment of the present invention.

具体实施方式Detailed ways

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。In order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention, but not to limit the present invention.

一、解释说明实施例。为了使本领域技术人员充分了解本发明如何具体实现,该部分是对权利要求技术方案进行展开说明的解释说明实施例。1. Explain the embodiment. In order for those skilled in the art to fully understand how the present invention is specifically implemented, this part is an explanatory embodiment for explaining the technical solutions of the claims.

如图1所示,本发明实施例提供的基于5G LDPC的双层调度译码器包括:As shown in FIG. 1 , the 5G LDPC-based dual-layer scheduling decoder provided by the embodiment of the present invention includes:

LLR存储器、全局控制控制单元、先算层控制单元,等待层控制单元,两组移位网络、768个计算单元和校验节点存储单元;LLR memory, global control control unit, precomputing layer control unit, waiting layer control unit, two groups of shift networks, 768 calculation units and check node storage units;

全局控制单元,控制当前译码组以及译码迭代次数;The global control unit controls the current decoding group and the number of decoding iterations;

先算层控制单元和等待层控制单元,用于控制从LLR存储器输入到计算单元的两层变量节点的输入顺序,以及计算单元更新后的变量节点写入到LLR存储器的输出顺序,同时控制从校验节点存储单元读取相关校验节点;The first-level control unit and the waiting-level control unit are used to control the input sequence of the two-layer variable nodes input from the LLR memory to the calculation unit, and the output sequence of the updated variable nodes from the calculation unit written to the LLR memory. The check node storage unit reads the relevant check node;

两组移位网络,分别用于两层变量节点的移位;Two sets of shift networks are used for the shift of two-layer variable nodes;

计算单元,用于将两层变量节点与对应的校验节点交互并得到更新后的变量节点。The computing unit is used to interact the two-layer variable node with the corresponding check node and obtain the updated variable node.

本发明实施例提供的两层变量节点包括:先算层变量节点和等待层变量节点;所述先算层变量节点为奇数层变量节点;所述等待层变量节点为偶数层变量节点。The two-layer variable node provided by the embodiment of the present invention includes: a first-layer variable node and a waiting-layer variable node; the first-layer variable node is an odd-layer variable node; and the waiting-layer variable node is an even-layer variable node.

本发明实施例提供的基于5G LDPC的双层调度译码器双层调度方法包括:The dual-layer scheduling method for a 5G LDPC-based dual-layer scheduling decoder provided by the embodiment of the present invention includes:

控制单元从LLR存储器读取两层变量节点分别经过移位网络进入计算单元,与对应的校验节点交互,得到更新后的变量节点。The control unit reads the two-layer variable nodes from the LLR memory and enters the calculation unit through the shift network respectively, interacts with the corresponding check nodes, and obtains the updated variable nodes.

如图2所示,本发明实施例提供的基于5G LDPC的双层调度译码器双层调度方法包括以下步骤:As shown in FIG. 2 , a 5G LDPC-based dual-layer scheduling method for a decoder provided by an embodiment of the present invention includes the following steps:

将5G的基础校验矩阵各个层划分为奇数层和偶数层,每相邻的奇数层和偶数层同时译码,并将相邻的奇数层和偶数层分为一组;Divide each layer of the 5G basic check matrix into odd and even layers, decode each adjacent odd and even layers at the same time, and group adjacent odd and even layers into one group;

先算层计算单元输入本层计算所需要的变量节点,立即计算并输出更新后的变量节点。非正交组的等待层先输入无冲突的变量节点并等待,待先算层计算单元计算结束开始输出更新后的变量节点,等待层计算单元继续输入剩余冲突变量节点并开始计算。正交组的等待层与先算层与等待层同时计算,中间无需输入等待。The first-layer computing unit inputs the variable nodes required for the calculation of this layer, and immediately calculates and outputs the updated variable nodes. The waiting layer of the non-orthogonal group first inputs the non-conflicting variable nodes and waits. After the calculation of the first layer computing unit is completed, it starts to output the updated variable nodes, and the waiting layer computing unit continues to input the remaining conflicting variable nodes and starts the calculation. The waiting layer and the precomputing layer and the waiting layer of the orthogonal group are calculated at the same time, and there is no need to input waiting in the middle.

本发明实施例提供的5G LDPC双层调度译码器的每一层计算均采用块并行结构。Each layer of computation of the 5G LDPC dual-layer scheduling decoder provided by the embodiment of the present invention adopts a block parallel structure.

本发明实施例提供的将相邻奇数层和偶数层分为一组包括:每一组的两层分为先算层和等待层;所述奇数层为先算层;所述偶数层为等待层。The method of dividing adjacent odd-numbered layers and even-numbered layers into a group provided by the embodiment of the present invention includes: the two layers of each group are divided into a first-calculated layer and a waiting layer; the odd-numbered layer is a first-calculated layer; the even-numbered layer is a waiting layer Floor.

本发明实施例提供的步骤S102还包括:在译码调度时,对每层的变量节点输入输出顺序重新排列。The step S102 provided by the embodiment of the present invention further includes: during the decoding and scheduling, rearranging the input and output order of the variable nodes of each layer.

本发明实施例提供的对每层的变量节点输入输出顺序重新排列包括:The rearrangement of the input and output order of the variable nodes of each layer provided by the embodiment of the present invention includes:

所有组的先算层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点。The input order of the first-computation layer of all groups is adjusted so that the variable nodes that do not conflict with the previous group are input first, and then other variable nodes are input.

非正交组的等待层的输入顺序调整为,先输入与本组先算层无冲突的变量节点,再输入与上一组冲突的组间冲突变量节点,等待先算层更新冲突变量节点后,最后输入组内冲突变量节点。The input order of the waiting layer of the non-orthogonal group is adjusted to first input the variable nodes that do not conflict with the first calculation layer of this group, and then input the conflict variable nodes between the groups that conflict with the previous group, and wait for the first calculation layer to update the conflict variable nodes. , and finally enter the intragroup conflict variable node.

正交组的等待层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点,中间无需等待。The input sequence of the waiting layer of the orthogonal group is adjusted so that the variable nodes that do not conflict with the previous group are input first, and then the other variable nodes are input, and there is no need to wait in the middle.

非正交组的先算层输出顺序调整为,先输出与本组等待层冲突的组内冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the non-orthogonal group is adjusted to output the conflict variable nodes in the group that conflict with the waiting layer of this group first, and then output other variable nodes.

正交组的先算层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the orthogonal group is adjusted to output the conflicting variable nodes between groups that conflict with the next group first, and then output other variable nodes.

所有组的等待层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the waiting layer of all groups is adjusted to output the conflict variable nodes between groups that conflict with the next group first, and then output other variable nodes.

本发明实施例提供的对每层的变量节点输入输出顺序重新排列还包括:当前组首先输出与下一组有冲突的变量节点。The rearrangement of the input and output sequence of the variable nodes of each layer provided by the embodiment of the present invention further includes: the current group first outputs the variable nodes that conflict with the next group.

下面结合具体实施例对本发明的技术方案做进一步说明。The technical solutions of the present invention will be further described below with reference to specific embodiments.

1、系统模型1. System model

LPDC双层译码器结构如图1所示,控制单元从LLR存储器读取两层变量节点分别经过两个移位网络进入计算单元,与相应的校验节点交互,并最终得到更新后的变量节点。The structure of the LPDC double-layer decoder is shown in Figure 1. The control unit reads the two-layer variable nodes from the LLR memory and enters the calculation unit through two shift networks respectively, interacts with the corresponding check nodes, and finally obtains the updated variables. node.

将基础矩阵各个层分为奇数层和偶数层,每相邻的奇数层和偶数层同时译码,并将相邻的奇数层和偶数层分为一组,如第1组的第1层和第2层可以同时译码,第2组的第3层和第4层可以同时译码,且每一层计算都采用块并行结构,并行度最大为384。同时将每一组的两层分为先算层和等待层,以便区分。Divide each layer of the basic matrix into odd-numbered layers and even-numbered layers, decode each adjacent odd-numbered and even-numbered layers at the same time, and group adjacent odd-numbered and even-numbered layers into one group, such as the first layer and The second layer can be decoded at the same time, the third layer and the fourth layer of the second group can be decoded at the same time, and the calculation of each layer adopts a block parallel structure, and the maximum parallelism is 384. At the same time, the two layers of each group are divided into the first layer and the waiting layer for distinguishing.

双层调度的思想是先算层和等待层同时输入各自的变量节点,当遇到有冲突的变量节点时,如图2,冲突的变量节点先进入先算层更新,等待层停止输入,等待先算层计算结束后,更新后的有冲突的变量节点继续输入进等待层,进行变量节点的更新。表1和表2为BG1和BG2各层的变量节点索引,表3和表4为BG1和BG2各组相邻层间的冲突变量节点。其中,BG1中的组1~组10为非正交组,组11~组23为正交组,BG2中的组1~组10为非正交组,组11~21为正交组。观察表3和表4可知,在双层计算时,正常输入顺序下,非正交区域的组(组1~组10)会由于冲突变量节点的影响带来大量的输入输出延迟,同时由表5和表6可知,组与组间也存在大量的冲突变量节点,正常输出顺序下,各组会由于组间冲突变量节点的影响带来大量的输入输出延时。因此在设计时,各组的变量节点输入输出顺序会重新排列,同时对于正交区域的组和非正交区域的组会有不同的排列策略。The idea of double-layer scheduling is that the first-computation layer and the waiting layer input their respective variable nodes at the same time. When encountering conflicting variable nodes, as shown in Figure 2, the conflicting variable nodes first enter the first-computation layer to update, the waiting layer stops input, and waits for After the calculation of the first layer is completed, the updated conflicting variable nodes continue to be input into the waiting layer to update the variable nodes. Table 1 and Table 2 are the variable node indexes of each layer of BG1 and BG2, and Table 3 and Table 4 are the conflicting variable nodes between adjacent layers of BG1 and BG2. Among them, groups 1 to 10 in BG1 are non-orthogonal groups, groups 11 to 23 are orthogonal groups, groups 1 to 10 in BG2 are non-orthogonal groups, and groups 11 to 21 are orthogonal groups. Observing Tables 3 and 4, it can be seen that in the double-layer calculation, under the normal input sequence, the groups in the non-orthogonal region (group 1 to group 10) will bring a large amount of input and output delay due to the influence of conflict variable nodes, and the table It can be seen from Table 5 and Table 6 that there are also a large number of conflicting variable nodes between groups. Under normal output sequence, each group will bring a large amount of input and output delay due to the influence of conflicting variable nodes between groups. Therefore, during design, the input and output order of variable nodes in each group will be rearranged, and there will be different arrangement strategies for groups in orthogonal regions and groups in non-orthogonal regions.

观察到只有BG1的第5层和第6层的行重差值较大,其中第5层的行重为3,第6层的行重为8,且第5层的前两个变量节点为冲突变量节点,如果考虑让第6层为先算层,则第5层需要额外等待大量的时间才会得到第6层更新后的冲突变量节点。若将第5层作为先算层,第6层作为等待层,当第5层输出更新后的冲突变量节点后,由于第6层行重较大,所以只会产生很少的等待时钟消耗,时间利用效率最大。It is observed that only the 5th layer and the 6th layer of BG1 have a large difference in row weight, where the row weight of the 5th layer is 3, the row weight of the 6th layer is 8, and the first two variable nodes of the 5th layer are For conflict variable nodes, if the sixth layer is considered to be the first layer, the fifth layer needs to wait a lot of time to get the updated conflict variable nodes of the sixth layer. If the fifth layer is used as the first calculation layer and the sixth layer is used as the waiting layer, when the fifth layer outputs the updated conflict variable node, due to the large row weight of the sixth layer, only a small amount of waiting clock consumption will be generated. The most efficient use of time.

其他组的相邻层间的行重差值不大,奇数层或偶数层作先算层的额外时钟消耗差别不大,因此考虑到所有组的情况,将BG1和BG2中,所有的奇数层作为先算层,所有的偶数层作为等待层,The line weight difference between adjacent layers in other groups is not large, and the extra clock consumption of the odd-numbered or even-numbered layers as the first-calculated layer is not very different. Therefore, considering the situation of all groups, all odd-numbered layers in BG1 and BG2 As the first layer, all even-numbered layers are used as waiting layers,

表1 BG1各层变量节点索引和行重值Table 1 Variable node index and row weight value of each layer of BG1

Figure BDA0003544628350000101
Figure BDA0003544628350000101

Figure BDA0003544628350000111
Figure BDA0003544628350000111

表2 BG2各层变量节点索引值和行重值Table 2 Variable node index value and row weight value of each layer of BG2

Figure BDA0003544628350000112
Figure BDA0003544628350000112

Figure BDA0003544628350000121
Figure BDA0003544628350000121

表3 BG1相邻层间的冲突变量节点Table 3 Conflict variable nodes between adjacent layers of BG1

Figure BDA0003544628350000122
Figure BDA0003544628350000122

Figure BDA0003544628350000131
Figure BDA0003544628350000131

表4 BG2相邻层间冲突变量节点Table 4 Conflict variable nodes between adjacent layers of BG2

Figure BDA0003544628350000132
Figure BDA0003544628350000132

Figure BDA0003544628350000141
Figure BDA0003544628350000141

表5 BG1组间冲突的变量节点Table 5. Variable Nodes Conflicting Between BG1 Groups

Figure BDA0003544628350000142
Figure BDA0003544628350000142

表6 BG2组间冲突的变量节点Table 6 Variable nodes of conflict between BG2 groups

Figure BDA0003544628350000143
Figure BDA0003544628350000143

Figure BDA0003544628350000151
Figure BDA0003544628350000151

2、非正交组变量节点的输入输出顺序2. Input and output order of non-orthogonal group variable nodes

下面以BG1中的第8组和第9组为例,描述非正交组的各层变量节点输入输出顺序排列策略。第8组和第9组各层的变量节点原索引顺序如下,The following takes the 8th group and the 9th group in BG1 as examples to describe the input and output sequence arrangement strategy of each layer variable node of the non-orthogonal group. The original index order of the variable nodes of each layer in the 8th and 9th groups is as follows,

第8组:Group 8:

15层:1,3,16,17,18,22,3715 floors: 1, 3, 16, 17, 18, 22, 37

16层:1,2,11,14,19,26,3816 floors: 1, 2, 11, 14, 19, 26, 38

第9组:Group 9:

17层:2,4,12,21,23,3917 floors: 2, 4, 12, 21, 23, 39

18层:1,15,17,18,22,4018 floors: 1, 15, 17, 18, 22, 40

对于组内输入输出顺序,观察到只有第8组的15层和16层间存在索引值为1的变量节点冲突,第9组没有,因此首先将15层和16层的变量节点输入顺序进行重排列,如下For the order of input and output within the group, it is observed that only the 15th and 16th layers of the 8th group have variable node conflicts with an index value of 1, and the 9th group does not. Therefore, the input order of the variable nodes of the 15th and 16th layers is firstly reset. arranged as follows

15层:1,3,16,17,18,22,3715 floors: 1, 3, 16, 17, 18, 22, 37

16层:2,11,14,19,26,38,116 floors: 2, 11, 14, 19, 26, 38, 1

重排列的策略为将16层中有冲突的节点放在最后输入,因此在第8组双层计算的前6个时钟输入是没有冲突的,当第7个时钟时,只有15层输入索引值为37的变量节点值,16层进行等待。当15层计算结束,开始输出更新后的变量节点时,遵循先输出与等待层冲突的变量节点的规则,因此在输出时,索引值为1的变量节点会最先输出,这个变量节点在送入变量节点存储模块的同时,也会送如等待层计算单元,开始16层的变量节点计算。这种输入方式可以保证在不影响计算结果的前提下,减少输入带来的延迟。The rearrangement strategy is to put the conflicting nodes in the 16th layer on the last input, so there is no conflict in the first 6 clock inputs of the 8th double-layer calculation. When the 7th clock, only the 15th layer input index value For the variable node value of 37, 16 layers wait. When the calculation of the 15th layer is completed and the updated variable node is output, it follows the rule of outputting the variable node that conflicts with the waiting layer first. Therefore, when outputting, the variable node with an index value of 1 will be output first, and this variable node is sending When entering the variable node storage module, it will also be sent to the waiting layer computing unit to start the 16-layer variable node calculation. This input method can ensure that the delay caused by the input can be reduced without affecting the calculation result.

对于组间输入输出顺序,观察到第8组和第9组冲突的变量节点为1,2,17,18,22。考虑到译码器在计算时,每层的变量节点输入和输出分别要经过一次移位器,每个移位器消耗2个时钟,每层变量节点中间的计算等待为3个时钟,即等待层的更新后的变量节点结果比正常情况需要多等待(冲突变量节点数+6)个时钟,同时由于非正交组先算层比等待层更快的能得到更新后的变量节点结果,因此只要当前组的(组内冲突变量节点数+6)大于本组的先算层的行重值,即可满足等待层计算单元在输出更新后的变量节点时,先算层计算单元已将本层更新后的变量节点全部输出,因此在设计时,只需统计当前组的等待层与下一组先算层和等待层间的冲突变量节点。由表1~表4可知,BG1和BG2中的非正交组(组1~组10)都满足这一条件。第8组中等待层与下一组的冲突变量节点为1,2,为保证系统吞吐率最高,计算单元工作效率最大,即计算单元完成当前组计算时,同时开始接收下一组的变量节点。因此第8组等待层会首先更新变量节点1和2再更新其他变量节点,第9组首先输入与第8组无冲突的变量节点,最后输入变量节点1和2,由此即可满足第8组等待层输出更新后的变量节点的同时,可以开始输入第9组的变量节点,且没有冲突的发生,即第9组输入的变量节点是已更新的变量节点。最终,第8组和第9组的变量节点输入顺序For the between-group input-output order, the conflicting variable nodes for groups 8 and 9 were observed to be 1, 2, 17, 18, 22. Considering that when the decoder is calculating, the input and output of the variable nodes of each layer have to go through a shifter respectively, each shifter consumes 2 clocks, and the calculation waiting in the middle of the variable nodes of each layer is 3 clocks, that is, waiting The updated variable node result of the layer needs to wait (the number of conflicting variable nodes + 6) clocks more than the normal situation. At the same time, because the non-orthogonal group precomputing layer can get the updated variable node result faster than the waiting layer, so As long as the current group (the number of conflicting variable nodes in the group + 6) is greater than the row weight value of the precomputed layer of this group, it can satisfy the requirement that the precomputed layer computing unit has already calculated the current value when the layer computing unit outputs the updated variable nodes. All the variable nodes after the layer update are output, so in the design, it is only necessary to count the conflicting variable nodes between the waiting layer of the current group and the next group of precomputed layers and waiting layers. As can be seen from Tables 1 to 4, the non-orthogonal groups (group 1 to group 10) in BG1 and BG2 all satisfy this condition. The conflict variable nodes between the waiting layer and the next group in the eighth group are 1 and 2. In order to ensure the highest system throughput and the highest working efficiency of the computing unit, that is, when the computing unit completes the calculation of the current group, it starts to receive the variable nodes of the next group at the same time. . Therefore, the eighth group of waiting layers will first update variable nodes 1 and 2 and then update other variable nodes. The ninth group will first input variable nodes that do not conflict with the eighth group, and finally input variable nodes 1 and 2, thus satisfying the eighth While the group is waiting for the layer to output the updated variable node, it can start to input the variable node of the ninth group, and there is no conflict, that is, the variable node input of the ninth group is the updated variable node. Finally, the variable node input order for groups 8 and 9

15层:1,3,16,17,18,22,3715 floors: 1, 3, 16, 17, 18, 22, 37

16层:2,11,14,19,26,38,116 floors: 2, 11, 14, 19, 26, 38, 1

17层:4,12,21,23,29,217 floors: 4, 12, 21, 23, 29, 2

18层:15,17,18,22,40,118 floors: 15, 17, 18, 22, 40, 1

第8组和第9组的变量节点输出顺序Variable node output order for groups 8 and 9

15层:1,3,16,17,18,22,3715 floors: 1, 3, 16, 17, 18, 22, 37

16层:1,2,11,14,19,26,3816 floors: 1, 2, 11, 14, 19, 26, 38

17层:2,4,12,21,23,2917 floors: 2, 4, 12, 21, 23, 29

18层:1,15,17,18,22,4018 floors: 1, 15, 17, 18, 22, 40

由此可以推导出BG1和BG2中非正交组的变量节点输入输出顺序From this, the input and output order of variable nodes of non-orthogonal groups in BG1 and BG2 can be deduced

表7 BG1重排列非正交组变量节点输入输出顺序Table 7 BG1 rearrangement of non-orthogonal group variable node input and output order

Figure BDA0003544628350000171
Figure BDA0003544628350000171

Figure BDA0003544628350000181
Figure BDA0003544628350000181

表8 BG2重排列后非正交组变量节点输入输出顺序Table 8 Input and output order of non-orthogonal group variable nodes after BG2 rearrangement

Figure BDA0003544628350000182
Figure BDA0003544628350000182

3正交组变量节点输入输出顺序3 Orthogonal group variable node input and output order

以BG1中的18组和19组为例来解释正交组的输入输出关系。由于正交组组内无冲突的变量节点,所以等待层与先算层同时计算,没有额外的时钟延时。在考虑组间的输入输出等待关系时,需要同时考虑当前组的先算层和等待层与下一组的冲突关系。第18组和19组的变量节点索引如下,第18组Take the 18 groups and 19 groups in BG1 as examples to explain the input-output relationship of the quadrature groups. Since there are no conflicting variable nodes in the orthogonal group, the waiting layer and the precomputing layer are calculated at the same time, and there is no additional clock delay. When considering the input-output waiting relationship between groups, it is necessary to consider the conflict relationship between the precomputing layer and the waiting layer of the current group and the next group at the same time. The variable node indices for groups 18 and 19 are as follows, group 18

35层:1,8,16,18,5735 floors: 1, 8, 16, 18, 57

36层:2,7,13,23,5836 floors: 2, 7, 13, 23, 58

第19组:Group 19:

37层:1,15,16,19,5937 floors: 1, 15, 16, 19, 59

38层:2,14,26,6038 floors: 2, 14, 26, 60

其中18组的先算层中的变量节点1,16与下一组的先算层有冲突,等待层的变量节2与下一组的等待层有冲突,同时由于先算层的变量节点1和等待层的变量节点2可以同时更新,为了减小时钟消耗,每一组在输入时,会最后输入与上一组有冲突的变量节点,在输出时会优先输出与下一组有冲突的变量节点,所以重排后的18组和19组的输出变量节点输入输出顺序如下所示,Among them, the variable nodes 1 and 16 in the first calculation layer of the 18 groups conflict with the first calculation layer of the next group, and the variable node 2 of the waiting layer conflicts with the waiting layer of the next group. At the same time, due to the variable node 1 of the first calculation layer The variable node 2 of the waiting layer can be updated at the same time. In order to reduce the clock consumption, each group will input the variable node that conflicts with the previous group at the end when inputting, and will give priority to outputting the conflicting variable node with the next group when outputting. variable node, so the rearranged 18 and 19 groups of output variable node input and output order are as follows,

18组35层,18 groups of 35 layers,

输入顺序:1,8,16,18,57,输出顺序:1,16,8,18,57Input order: 1, 8, 16, 18, 57, Output order: 1, 16, 8, 18, 57

18组36层18 groups of 36 layers

输入顺序:2,7,13,23,58,输出顺序:2,7,13,23,58Input order: 2, 7, 13, 23, 58, Output order: 2, 7, 13, 23, 58

19组37层19 groups of 37 layers

输入顺序:15,19,59,1,16,输出顺序:1,15,16,19,59Input order: 15, 19, 59, 1, 16, Output order: 1, 15, 16, 19, 59

19组38层19 groups of 38 layers

输入顺序:14,24,60,2,输出顺序:2,14,24,60Input order: 14, 24, 60, 2, Output order: 2, 14, 24, 60

具体第18组和19组的时序关系如图3所示。The specific timing relationship between the 18th group and the 19th group is shown in Figure 3.

由此可得到表9和表10中的BG1和BG2重排列后的正交区域的组各层变量节点输入和输出顺序。经过重排列后,正交区域的各组间无需额外等待时钟,只要当前组得到计算结果,下一组的变量节点就可以进行输入,使得当前组的变量节点输出和下一组的变量节点输入同时进行,更符合硬件的流水线设计,进而提高译码器的吞吐率。From this, the input and output order of the variable nodes of each layer of the group of the orthogonal regions after the rearrangement of BG1 and BG2 in Table 9 and Table 10 can be obtained. After the rearrangement, there is no need to wait for an additional clock between the groups in the orthogonal region. As long as the current group gets the calculation result, the variable nodes of the next group can be input, so that the variable nodes of the current group are output and the variable nodes of the next group are input. At the same time, it is more in line with the pipeline design of the hardware, thereby improving the throughput rate of the decoder.

表9 BG1重排列正交区域的组变量节点输入输出顺序Table 9 Input and output order of group variable nodes in BG1 rearranged orthogonal region

Figure BDA0003544628350000201
Figure BDA0003544628350000201

表10 BG2重排列正交区域的组变量节点输入输出顺序Table 10 Input and output order of group variable nodes in BG2 rearranged orthogonal region

Figure BDA0003544628350000202
Figure BDA0003544628350000202

Figure BDA0003544628350000211
Figure BDA0003544628350000211

二、应用实施例。为了证明本发明的技术方案的创造性和技术价值,该部分是对权利要求技术方案进行具体产品上或相关技术上的应用实施例。2. Application examples. In order to prove the creativity and technical value of the technical solution of the present invention, this part is an application example of the technical solution in the claims on specific products or related technologies.

本发明提供了一种信息数据处理终端,所述信息数据处理终端用于执行所述基于5G LDPC的双层调度译码器双层调度方法。The present invention provides an information data processing terminal, which is used for executing the 5G LDPC-based double-layer scheduling method for a decoder.

本发明提供了一种实施基于5G LDPC的双层调度译码器双层调度方法的基于5GLDPC的双层调度译码器,并能够应用于5G高速率通信。The present invention provides a 5G LDPC-based double-layer scheduling decoder implementing the 5G LDPC-based double-layer scheduling method, and can be applied to 5G high-rate communication.

本发明提供了一种兼容多种码率的5G LDPC译码器,兼容1/3,1/2,2/3,3/4,5/6,8/9等多种码率,并能灵活切换。The present invention provides a 5G LDPC decoder compatible with multiple code rates, compatible with multiple code rates such as 1/3, 1/2, 2/3, 3/4, 5/6, 8/9, etc. Flexible switching.

本发明提供了一种支持多种码长的5G LDPC译码器,支持的最短码长为40,最长码长为25344。The present invention provides a 5G LDPC decoder supporting multiple code lengths, the shortest code length supported is 40, and the longest code length is 25344.

本发明提供了一种同时支持BG1和BG2所有矩阵的5G LDPC译码器,并支持所有提升值大小,提升值最小为2,最大为384。The present invention provides a 5G LDPC decoder that supports all matrices of BG1 and BG2 at the same time, and supports all boost value sizes, with the minimum boost value being 2 and the maximum being 384.

本发明提供了一种基于5G LDPC译码的双层调度方案,在保证性能前提下,有效地降低了双层译码变量节点发生冲突的概率。The present invention provides a double-layer scheduling scheme based on 5G LDPC decoding, which effectively reduces the probability of collision of variable nodes of double-layer decoding on the premise of ensuring performance.

本发明提供了一种基于5G LDPC的双层调度译码器的系统结构,在没有过多占用存储资源的条件下,实现双层译码。The present invention provides a system structure of a 5G LDPC-based double-layer scheduling decoder, which can realize double-layer decoding without occupying too much storage resources.

本发明提供了一种基于5G LDPC的译码器流水线方案,即改变输入输出变量节点顺序,使得节点输入,计算和输出流水线化,降低中间延时,进一步提高译码器吞吐率。The present invention provides a decoder pipeline scheme based on 5G LDPC, namely changing the order of input and output variable nodes, so that node input, calculation and output are pipelined, intermediate delay is reduced, and the throughput rate of the decoder is further improved.

本发明提供了一种基于LDPC的双层调度译码方案,适用于包括5G LDPC所在内的所有LDPC码。The present invention provides a double-layer scheduling decoding scheme based on LDPC, which is suitable for all LDPC codes including 5G LDPC.

本发明提供了一种可持续发展的5G LDPC译码器,不仅适用于当前5G标准中的基础矩阵BG1和BG2,同时适用于未来的BG3和BG4。The present invention provides a sustainable 5G LDPC decoder, which is not only applicable to the basic matrices BG1 and BG2 in the current 5G standard, but also applicable to the future BG3 and BG4.

三、实施例相关效果的证据。本发明实施例在研发或者使用过程中取得了一些积极效果,和现有技术相比的确具备很大的优势,下面内容结合试验过程的数据、图表等进行描述。3. Evidence of the relevant effects of the embodiment. The embodiments of the present invention have achieved some positive effects in the process of research and development or use, and indeed have great advantages compared with the prior art.

1、译码器性能分析1. Decoder performance analysis

1.1吞吐率1.1 Throughput

吞吐率的计算公式如下The formula for calculating the throughput rate is as follows

Figure BDA0003544628350000221
Figure BDA0003544628350000221

其中NLDPC表示编码后的LDPC码长,cycle表示每次迭代需要的时钟数,niter表示迭代次数,f表示时钟频率。Among them, N LDPC represents the length of the encoded LDPC code, cycle represents the number of clocks required for each iteration, n iter represents the number of iterations, and f represents the clock frequency.

在相同条件下,本发明设计的双层调度LDPC译码器与单层调度LDPC译码器的吞吐率性能对比如下。Under the same conditions, the throughput performance comparison between the double-layer scheduling LDPC decoder designed by the present invention and the single-layer scheduling LDPC decoder is as follows.

表11 8/9码率吞吐率对比Table 11 8/9 bit rate throughput comparison

性能指标Performance 传统单层调度Traditional single-tier scheduling 本发明this invention 码长code length 90009000 90009000 码率code rate 8/98/9 8/98/9 工作频率working frequency 200MHZ200MHZ 200MHZ200MHZ 迭代次数number of iterations 88 88 吞吐率Throughput 2.44Gbps2.44Gbps 4.89Gbps4.89Gbps

表12 1/3码率吞吐率对比Table 12 1/3 bit rate throughput comparison

性能指标Performance 传统单层调度Traditional single-tier scheduling 本发明this invention 码长code length 2534425344 2534425344 码率code rate 1/31/3 1/31/3 工作频率working frequency 200MHZ200MHZ 200MHZ200MHZ 迭代次数number of iterations 88 88 吞吐率Throughput 480Mbps480Mbps 1.92Gps1.92Gps

由表中可知,不管在高码率或低码率上,本发明设计的双层调度LDPC译码器都相比单层调度译码器的吞吐率有着明显提高,尤其在低码率上提升尤为明显,在1/3码率下,本发明设计的双层调度译码器的吞吐率是单层调度译码器的吞吐率的3倍以上。同时本发明设计的双层调度译码器兼容多种码率,可以在1/3~8/9码率间手动切换,同时支持基础矩阵BG1和基础矩阵BG2下所有的51种提升值,提升值最小为2,最大为384,因此本发明设计的双层调度译码器具有良好的通用性和可配性。It can be seen from the table that the throughput rate of the double-layer scheduling LDPC decoder designed by the present invention is significantly improved compared with the single-layer scheduling decoder, especially at low code rate, no matter at high code rate or low code rate. It is especially obvious that the throughput rate of the double-layer scheduling decoder designed by the present invention is more than 3 times that of the single-layer scheduling decoder under the 1/3 code rate. At the same time, the dual-layer scheduling decoder designed by the present invention is compatible with multiple code rates, can be manually switched between 1/3 and 8/9 code rates, and supports all 51 boost values under the basic matrix BG1 and the basic matrix BG2 at the same time. The minimum value is 2 and the maximum value is 384, so the dual-layer scheduling decoder designed by the present invention has good generality and configurability.

1.2资源占用1.2 Resource occupation

译码器资源占用情况如下The resource occupancy of the decoder is as follows

表13双层调度译码器资源占用情况Table 13 Resource occupancy of dual-layer scheduling decoder

资源resource 单层调度译码single layer scheduling decoding 本发明this invention LUTLUTs 136640136640 273280273280 LUTRAMLUTRAM 15601560 41494149 FFFF 4660846608 7374873748 BRAMBRAM 177177 201201 DSPDSP 11 22 IOIO 22 22 BUFGBUFG 55 88 PLLPLL 11 11

由于本发明设计的双层调度译码器需要同时读取双层的变量节点并同时计算,因此在资源占用上会消耗更多的BRAM资源和LUT资源,但由于在设计对变量节点的存取地址进行合理的分配,因此总资源并没有成倍增长。Since the double-layer scheduling decoder designed by the present invention needs to read the variable nodes of the double-layer and calculate at the same time, it will consume more BRAM resources and LUT resources in terms of resource occupation. Addresses are allocated reasonably, so the total resources are not multiplied.

1.3仿真结果1.3 Simulation results

下面是LDPC码的浮点仿真性能与双层调度的定点硬件仿真性能对比,可以观察到,本发明下设计的LDPC译码器在双层调度下,几乎不会损失LDPC码的性能。The following is a comparison between the floating-point simulation performance of LDPC codes and the fixed-point hardware simulation performance of double-layer scheduling. It can be observed that the LDPC decoder designed under the present invention hardly loses the performance of LDPC codes under double-layer scheduling.

由仿真结果和吞吐率结果可知,本发明的译码器在保证性能的前提下,对于高低低码率的LDPC码,都能拥有较高的吞吐率,满足5G通信的基本要求。It can be seen from the simulation results and throughput rate results that under the premise of ensuring performance, the decoder of the present invention can have higher throughput rates for LDPC codes with high and low code rates, and meet the basic requirements of 5G communication.

应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。It should be noted that the embodiments of the present invention may be implemented by hardware, software, or a combination of software and hardware. The hardware portion may be implemented using special purpose logic; the software portion may be stored in memory and executed by a suitable instruction execution system, such as a microprocessor or specially designed hardware. Those of ordinary skill in the art will appreciate that the apparatus and methods described above may be implemented using computer-executable instructions and/or embodied in processor control code, for example on a carrier medium such as a disk, CD or DVD-ROM, such as a read-only memory Such code is provided on a programmable memory (firmware) or a data carrier such as an optical or electronic signal carrier. The device of the present invention and its modules can be implemented by hardware circuits such as very large scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, etc., or programmable hardware devices such as field programmable gate arrays, programmable logic devices, etc., It can also be implemented by software executed by various types of processors, or by a combination of the above-mentioned hardware circuits and software, such as firmware.

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。The above are only specific embodiments of the present invention, but the protection scope of the present invention is not limited to this. Any person skilled in the art is within the technical scope disclosed by the present invention, and all within the spirit and principle of the present invention Any modifications, equivalent replacements and improvements made within the scope of the present invention should be included within the protection scope of the present invention.

Claims (10)

1.一种基于5G LDPC的双层调度译码器,其特征在于,所述基于5G LDPC的双层调度译码器包括:1. a double-layer scheduling decoder based on 5G LDPC, is characterized in that, the described double-layer scheduling decoder based on 5G LDPC comprises: LLR存储器、全局控制单元、先算层控制单元、等待层控制单元、两组移位网络、768个计算单元和校验节点存储单元;LLR memory, global control unit, precomputing layer control unit, waiting layer control unit, two groups of shift networks, 768 calculation units and check node storage units; 全局控制单元,控制当前译码组以及译码迭代次数;The global control unit controls the current decoding group and the number of decoding iterations; 先算层控制单元和等待层控制单元,用于控制从LLR存储器输入到计算单元的两层变量节点的输入顺序以及更新后的变量节点写入到LLR存储器的输出顺序,同时从校验节点存储单元读取相关校验节点;The precomputing layer control unit and the waiting layer control unit are used to control the input sequence of the two-layer variable nodes input from the LLR memory to the calculation unit and the output sequence of the updated variable nodes written to the LLR memory, and store the data from the check node at the same time. The unit reads the relevant check node; 两组移位网络,分别用于两层变量节点的移位;Two sets of shift networks are used for the shift of two-layer variable nodes; 计算单元,用于两层变量节点与对应的校验交互并得到更新后的变量节点。The calculation unit is used for the interaction between the two-layer variable node and the corresponding checksum to obtain the updated variable node. 2.如权利要求1所述基于5G LDPC的双层调度译码器,其特征在于,所述两层变量节点包括:先算层变量节点和等待层变量节点;所述先算层变量节点为奇数层变量节点;所述等待层变量节点为偶数层变量节点。2. The double-layer scheduling decoder based on 5G LDPC as claimed in claim 1, wherein the two-layer variable node comprises: a first-layer variable node and a waiting-layer variable node; the first-layer variable node is odd-numbered layer variable nodes; the waiting layer variable nodes are even-numbered layer variable nodes. 3.一种应用于如权利要求1-2任意一项所述基于5G LDPC的双层调度译码器的基于5GLDPC的双层调度译码器双层调度方法,其特征在于,所述基于5GLDPC的双层调度译码器双层调度方法包括:3. A 5GLDPC-based double-layer scheduling decoder double-layer scheduling method applied to the 5G LDPC-based double-layer scheduling decoder according to any one of claims 1-2, it is characterized in that, described based on 5GLDPC The double-layer scheduling method of the double-layer scheduling decoder includes: 控制单元从LLR存储器读取两层变量节点分别经过移位网络进入计算单元,与对应的校验节点交互,得到更新后的变量节点。The control unit reads the two-layer variable nodes from the LLR memory and enters the calculation unit through the shift network respectively, interacts with the corresponding check nodes, and obtains the updated variable nodes. 4.如权利要求3所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述基于5G LDPC的双层调度译码器双层调度方法包括以下步骤:4. The 5G LDPC-based double-layer scheduling decoder double-layer scheduling method according to claim 3, wherein the 5G LDPC-based double-layer scheduling decoder double-layer scheduling method comprises the following steps: 步骤一,将5G的基础校验矩阵各个层划分为奇数层和偶数层,每相邻的奇数层和偶数层同时译码,并将相邻的奇数层和偶数层分为一组;Step 1: Divide each layer of the basic check matrix of 5G into odd-numbered layers and even-numbered layers, decode each adjacent odd-numbered layer and even-numbered layer at the same time, and divide adjacent odd-numbered layers and even-numbered layers into one group; 步骤二,先算层计算单元输入本层计算所需要的变量节点,立即计算并输出更新后的变量节点。对于非正交组,先算层与等待层由于存在冲突变量节点而不同时计算。冲突的变量节点先进入先算层计算单元计算,等待层先输入无冲突的变量节点,待先算层计算结束后输出更新后的的变量节点,等待层计算单元继续输入属于冲突变量节点,开始计算;对于正交组,先算层和等待层不存在冲突变量节点,同时计算;In step 2, the first layer computing unit inputs the variable nodes required for the calculation of this layer, and immediately calculates and outputs the updated variable nodes. For non-orthogonal groups, the first layer and the waiting layer are not calculated at the same time due to the existence of conflicting variable nodes. The conflicting variable nodes first enter the calculation unit of the first calculation layer for calculation, the waiting layer first inputs the non-conflicting variable nodes, and after the calculation of the first calculation layer is completed, the updated variable nodes are output, and the waiting layer calculation unit continues to input the conflicting variable nodes. Calculation; for the orthogonal group, there are no conflicting variable nodes in the first calculation layer and the waiting layer, and the calculation is performed at the same time; 步骤三,等待层计算结束后,开始输出更新有冲突的变量节点和其他变量节点时,译码控制单元控制先算层和等待层输入下一组各自的变量节点,开始下一组的计算;Step 3: After the calculation of the waiting layer is completed, when the output and update conflicting variable nodes and other variable nodes are started, the decoding control unit controls the first calculation layer and the waiting layer to input the next group of respective variable nodes, and starts the calculation of the next group; 步骤四,当所有组计算结束后,译码迭代次数加1,若达到最大译码迭代次数,则译码器结束计算,输出译码结果,否则重复步骤二和步骤三。Step 4: After the calculation of all groups is completed, the number of decoding iterations is incremented by 1. If the maximum number of decoding iterations is reached, the decoder ends the calculation and outputs the decoding result; otherwise, steps 2 and 3 are repeated. 5.如权利要求4所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述5G的基础校验矩阵的每一层均采用块并行结构。5 . The 5G LDPC-based dual-layer scheduling method for a decoder according to claim 4 , wherein each layer of the 5G basic parity check matrix adopts a block parallel structure. 6 . 6.如权利要求4所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述将相邻的奇数层和偶数层分为一组包括:每一组的两层分为先算层和等待层;所述奇数层为先算层;所述偶数层为等待层。6. The 5G LDPC-based dual-layer scheduling decoder double-layer scheduling method according to claim 4, wherein said dividing adjacent odd-numbered layers and even-numbered layers into one group comprises: two layers of each group It is divided into a pre-computation layer and a waiting layer; the odd-numbered layer is a pre-computation layer; the even-numbered layer is a waiting layer. 7.如权利要求4所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述步骤二还包括:在译码调度时,对每层的变量节点输入输出顺序重新排列。7. The double-layer scheduling method for a 5G LDPC-based decoder according to claim 4, wherein the step 2 further comprises: during the decoding and scheduling, reordering the input and output sequence of the variable nodes of each layer arrangement. 8.如权利要求7所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述对每层的变量节点输入输出顺序重新排列包括:8. The double-layer scheduling method for a 5G LDPC-based decoder according to claim 7, wherein the rearranging the input and output order of the variable nodes of each layer comprises: 所有组先算层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点。The input order of the first calculation layer for all groups is adjusted so that the variable nodes that do not conflict with the previous group are input first, and then other variable nodes are input. 非正交组的等待层的输入顺序调整为,先输入与本组先算层无冲突的变量节点,再输入与上一组冲突的组间冲突变量节点,等待先算层更新冲突变量节点后,最后输入组内冲突变量节点。The input order of the waiting layer of the non-orthogonal group is adjusted to first input the variable nodes that do not conflict with the first calculation layer of this group, and then input the conflict variable nodes between the groups that conflict with the previous group, and wait for the first calculation layer to update the conflict variable nodes. , and finally enter the intragroup conflict variable node. 正交组的等待层输入顺序调整为,先输入与上一组无冲突的变量节点,再输入其他变量节点,中间无需等待。The input order of the waiting layer of the orthogonal group is adjusted to first input the variable nodes that have no conflict with the previous group, and then input other variable nodes, without waiting in the middle. 非正交组的先算层输出顺序调整为,先输出与本组等待层冲突的组内冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the non-orthogonal group is adjusted to output the conflict variable nodes in the group that conflict with the waiting layer of this group first, and then output other variable nodes. 正交组的先算层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the precomputed layer of the orthogonal group is adjusted to output the conflicting variable nodes between groups that conflict with the next group first, and then output other variable nodes. 所有组的等待层输出顺序调整为,先输出与下一组冲突的组间冲突变量节点,再输出其他变量节点。The output order of the waiting layer of all groups is adjusted to output the conflict variable nodes between groups that conflict with the next group first, and then output other variable nodes. 9.如权利要求7所述基于5G LDPC的双层调度译码器双层调度方法,其特征在于,所述对每层的变量节点输入输出顺序重新排列还包括:当前组首先输出与下一组有冲突的变量节点。9. The double-layer scheduling method of a 5G LDPC-based decoder according to claim 7, wherein the rearrangement of the input and output sequence of the variable nodes of each layer further comprises: the current group first outputs and the next The group has conflicting variable nodes. 10.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于执行如权利要求1-7任意一项所述基于5G LDPC的双层调度译码器双层调度方法。10 . An information data processing terminal, wherein the information data processing terminal is configured to execute the 5G LDPC-based double-layer scheduling method for a decoder and decoder according to any one of claims 1-7. 11 .
CN202210246019.9A 2022-03-14 2022-03-14 A dual-layer scheduling decoder, method and intelligent terminal based on 5G LDPC Active CN114826281B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210246019.9A CN114826281B (en) 2022-03-14 2022-03-14 A dual-layer scheduling decoder, method and intelligent terminal based on 5G LDPC

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210246019.9A CN114826281B (en) 2022-03-14 2022-03-14 A dual-layer scheduling decoder, method and intelligent terminal based on 5G LDPC

Publications (2)

Publication Number Publication Date
CN114826281A true CN114826281A (en) 2022-07-29
CN114826281B CN114826281B (en) 2025-05-06

Family

ID=82529446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210246019.9A Active CN114826281B (en) 2022-03-14 2022-03-14 A dual-layer scheduling decoder, method and intelligent terminal based on 5G LDPC

Country Status (1)

Country Link
CN (1) CN114826281B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401647A (en) * 2013-07-22 2013-11-20 西安电子科技大学 Double-layer lengthened LDPC (Low Density Parity Check) code-based relay transmission method
CN106788461A (en) * 2016-12-13 2017-05-31 天津光电通信技术有限公司 LDPC decoding algorithms based on the lazy serial layering scheduling of variable node
CN108566211A (en) * 2018-03-27 2018-09-21 西安电子科技大学 Layered LDPC interpretation methods based on H-matrix layer processing sequence dynamic change
CN110661533A (en) * 2018-06-28 2020-01-07 西南电子技术研究所(中国电子科技集团公司第十研究所) Method for optimizing decoding performance of decoder for storing polarization code

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401647A (en) * 2013-07-22 2013-11-20 西安电子科技大学 Double-layer lengthened LDPC (Low Density Parity Check) code-based relay transmission method
CN106788461A (en) * 2016-12-13 2017-05-31 天津光电通信技术有限公司 LDPC decoding algorithms based on the lazy serial layering scheduling of variable node
CN108566211A (en) * 2018-03-27 2018-09-21 西安电子科技大学 Layered LDPC interpretation methods based on H-matrix layer processing sequence dynamic change
CN110661533A (en) * 2018-06-28 2020-01-07 西南电子技术研究所(中国电子科技集团公司第十研究所) Method for optimizing decoding performance of decoder for storing polarization code

Also Published As

Publication number Publication date
CN114826281B (en) 2025-05-06

Similar Documents

Publication Publication Date Title
CN102281125B (en) Laminated and partitioned irregular low density parity check (LDPC) code decoder and decoding method
CN101106381B (en) Hierarchical LDPC decoder and decoding processing method
CN103220003B (en) Improve the implementation method of the QC-LDPC decoder of node processing degree of parallelism
CN101212277A (en) Multi-protocol supporting LDPC decoder
CN101854177B (en) LDPC decoder with high throughput rate
CN102075198A (en) Quasi-cyclic low-density odd-even check convolution code coding-decoding system and coding-decoding method thereof
CN101931416A (en) Parallel layered decoder of LDPC code in mobile digital multimedia broadcasting system
US20230037965A1 (en) Layered semi parallel ldpc decoder system having single permutation network
CN101800559A (en) High-speed configurable QC-LDPC code decoder based on TDMP
US11483011B2 (en) Decoding method, decoding device, and decoder
CN102195655A (en) Quasi-cyclic LDPC (Low Density Parity Check) decoder and decoding method thereof
CN103220002A (en) Quasi-cyclic low-density parity-check (LDPC) code construction method capable of eliminating decoder access conflict
CN1822510A (en) High-speed LDPC decoder with reduced memory requirements
Ueng et al. Jointly designed architecture-aware LDPC convolutional codes and memory-based shuffled decoder architecture
CN114826281A (en) Double-layer scheduling decoder and method based on 5G LDPC (Low Density parity check) and intelligent terminal
CN111431543B (en) Variable code length and variable code rate QC-LDPC decoding method and device
CN101917249A (en) QC-LDPC code decoder and its realization method
CN118353476A (en) A LDPC code decoding method and device based on Da Vinci architecture
CN102611462B (en) LDPC-CC (Low-Density Parity-Check Convolution Codes) decoding algorithm and decoder
CN105515588A (en) LDPC-CC high speed decoder
CN102624401B (en) Compatible structure and unstructured low density parity check (LDPC) decoder and decoding algorithm
CN115133937A (en) Multi-element LDPC code decoding method and decoder
Liu et al. High-throughput multi-codeword decoder for non-binary LDPC codes on GPU
CN113014270B (en) Partially folded polarization code decoder with configurable code length
CN113055025A (en) Reconfigurable polar code and low density parity check code decoder

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant