A polar code decoding method suitable for ReRAM memory

By dynamically adjusting the size of the valid list and introducing elite and panic group mechanisms, combined with CRC and parity checks, the polar code decoding scheme of ReRAM memory is optimized, solving the problems of decoding time extension and high computational complexity, and achieving high-efficiency decoding performance.

CN121237170BActive Publication Date: 2026-06-09HUAQIAO UNIVERSITY +2

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUAQIAO UNIVERSITY
Filing Date
2025-09-28
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

Existing polar code decoding schemes in ReRAM memory suffer from problems such as high computational complexity, high resource consumption, extended decoding time, loss of erroneous paths due to path pruning, strong dependence on CRC assistance, insufficient parallelization capability, and fixed list size that cannot adapt to changes in channel conditions.

Method used

By dynamically adjusting the size of the effective list, introducing elite and panic group mechanisms, and combining CRC and parity checks, path pruning and flipping are performed by calculating reliability and path metric thresholds, dynamically adjusting the list length, optimizing path filtering and updating, and reducing decoding latency.

Benefits of technology

While reducing the bit error rate, it significantly reduces the decoding latency of the ReRAM memory, improves the robustness and efficiency of decoding, adapts to changes in channel conditions, and reduces the number of path extensions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121237170B_ABST
    Figure CN121237170B_ABST
Patent Text Reader

Abstract

This invention discloses a polar code decoding method suitable for ReRAM memory, relating to the field of next-generation communication technology. The method includes: detecting the reliability metric of the polar code and determining an expansion threshold; calculating a path metric threshold based on the expansion threshold, pruning candidate paths to obtain a valid list; calculating the panic index of the valid list, dynamically adjusting the size of the valid list, and dividing the surviving paths in the valid list into a calm group and a panic group; randomly flipping the panic group and updating the path metric values; calculating an elite selection threshold based on the path metric values, selecting paths and including them in an elite pool; updating the paths in the elite pool in conjunction with the paths in the calm group; performing CRC check on the paths in the elite pool, selecting the path with the smallest path metric value PM among the valid paths, and outputting an information sequence with redundant bits removed. This significantly reduces the decoding delay of signal transmission while lowering the bit error rate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of next-generation communication technology, and in particular to a polar code decoding method suitable for ReRAM memory. Background Technology

[0002] ReRAM combines the advantages of traditional random access memory and flash memory, demonstrating enormous application potential in non-volatile memory, artificial neural networks, chaotic circuits, programmable logic devices, information processing, and pattern recognition circuits. As a key representative of emerging storage technologies, ReRAM boasts a wealth of classic applications. It can be used in next-generation communication systems and next-generation computer storage, providing efficient support for data transmission and storage. It also plays a crucial role in artificial intelligence neural network accelerators, helping to improve computational efficiency. Furthermore, it is suitable for biomimetic brain-inspired computing scenarios, providing strong support for simulating human brain neural functions and promoting the development of brain-inspired technologies. However, the high-density integration of ReRAM also brings serious data interference problems, the most prominent of which is the hidden path problem.

[0003] A through-path refers to a closed path formed in a ReRAM memory cross-connect array when traversing logic 1 cells using alternating vertical and horizontal steps. This path can cause current leakage during the read process, interfering with the read result of the target cell and reducing data reliability. To solve this problem, memristors are often connected in series with selectors to avoid current interference between different cells. However, during memory manufacturing and maintenance, the nondeterministic failure of selectors can introduce new problems of inter-array resistance interference. Therefore, a more sophisticated solution is needed to address the memory nondeterminism problem throughout the entire array.

[0004] The aforementioned problems are addressed using polar coding techniques. Polar coding utilizes channel polarization to recursively construct sub-channels, placing information bits in a highly reliable channel for transmission. It is currently the only error-correcting code proven to approach the Shannon limit. The SCL decoding scheme for polar codes effectively overcomes the limitations of traditional successive elimination (SC) decoding, significantly reducing the risk of error propagation, especially with short code lengths, achieving near-maximum likelihood decoding performance. Furthermore, SCL can be combined with Cyclic Redundancy Check (CRC) assisted decoding (CA-SCL) to further enhance reliability by selecting the optimal path through verification. Simultaneously, SCL is naturally suited to the channel polarization characteristics of polar codes, efficiently utilizing reliable channel information and compensating for potential errors in unreliable channels through a multi-path mechanism. Its complexity increases linearly with the list size L, allowing for flexible trade-offs between performance and computational resources, making it more practical than algorithms such as belief propagation.

[0005] While existing SCL (Successive Cancellation List) decoding schemes for polar codes significantly improve decoding reliability, they still suffer from several drawbacks. Firstly, their computational complexity and resource consumption are high; the linear growth of the list size L leads to a surge in storage and computational costs, posing challenges to hardware implementation power consumption and latency, especially with long codes or large L values. Secondly, path pruning may result in the loss of correct paths, particularly in low signal-to-noise ratio or small L scenarios, where correct paths may be prematurely eliminated due to fluctuations in intermediate metric values. Furthermore, the strong dependence on CRC assistance leads to coding efficiency losses, and improper check bit design can cause multi-path collisions. Simultaneously, the serial decoding logic limits parallelization capabilities, making it difficult to improve throughput, while frequent path sorting and storage access in hardware implementation further exacerbate latency bottlenecks. Moreover, the fixed list size lacks a dynamic adjustment mechanism, making it difficult to adapt to changes in channel conditions. Additionally, numerical stability issues and insufficient path diversity also constrain decoding robustness.

[0006] Therefore, optimizing the decoding scheme of polar codes in ReRAM memory and reducing decoding latency is a problem that needs to be solved by those skilled in the art. Summary of the Invention

[0007] The purpose of this invention is to provide a polar code decoding method suitable for ReRAM memory, aiming to solve or improve at least one of the above-mentioned technical problems.

[0008] To achieve the above objectives, the present invention provides the following solution:

[0009] A polar code decoding method suitable for ReRAM memory, comprising:

[0010] Calculate the reliability metric of the polar code after detection, and determine the extension threshold based on the reliability metric;

[0011] The path metric threshold is calculated based on the expansion threshold, and the candidate paths are pruned based on the path metric threshold to obtain the effective list.

[0012] Calculate the panic index of the effective list, dynamically adjust the size of the effective list, and divide the surviving paths in the effective list into calm group and panic group based on the path metric.

[0013] Randomly flip the panic groups and update the path metrics of the paths in the panic groups;

[0014] The elite selection threshold is calculated based on the path metric, and the selected paths are included in the elite pool; the paths in the elite pool are then updated in conjunction with the paths in the calming group.

[0015] Perform CRC check on the paths in the elite pool. If multiple paths pass the CRC check, select the path with the smallest path metric value PM among all the paths that pass the check and output the information sequence with redundant bits removed. If there is only one path, output the information sequence with redundant bits removed for that path. If all paths fail the CRC check, select the path with the smallest path metric value PM among the valid paths and output the information sequence with redundant bits removed.

[0016] Furthermore, the reliability metric of the polar code after detection is calculated, and the extension threshold is determined based on the reliability metric, including:

[0017] Obtain the output of the BP detector and calculate the log-likelihood ratio at each bit position. The expression is:

[0018]

[0019] In the formula, LLR i,j P(r) represents the log-likelihood ratio of cell (i,j) in the ReRAM memory array; i is the row index in the ReRAM memory array; j is the column index in the ReRAM memory array; P(r) represents the log-likelihood ratio of cell (i,j) in the ReRAM memory array. i,j =R1|y i,j ) represents the conditional probability that the storage resistance of cell (i,j) is low; r is the conditional probability that the storage resistance of cell (i,j) is low. i,j y is the logic resistance value of cell (i,j); i,j The actual resistance value of the (i,j) unit;

[0020] The probability of a BP detector misclassifying the state of a ReRAM memory array cell is calculated based on the log-likelihood ratio (LLR), expressed as follows:

[0021]

[0022] In the formula, P err This represents the probability of misjudgment.

[0023] Based on the misjudgment probability P err The extended threshold is calculated using the following expression:

[0024]

[0025] In the formula, LLR thresh To expand the threshold; P err This represents the probability of misjudgment.

[0026] Furthermore, a path metric threshold is calculated based on the expansion threshold, and candidate paths are pruned according to the path metric threshold to obtain a valid list, including:

[0027] The path metric is calculated using the following expression:

[0028]

[0029] In the formula, PM (i) [l] represents the path metric for the current path; PM (i-1) [l] represents the path metric of the previous bit of the current decoded bit; i is the bit index; l is the path index; L i Let x be the log-likelihood ratio of the i-th bit; i This is the hard decision value for the i-th bit of the current path;

[0030] The path metric threshold is calculated based on the expansion threshold, and the expression is:

[0031]

[0032] In the formula, PM_thresh is the path metric threshold; LLR thresh To expand the threshold; x i This is the hard decision value for the i-th bit of the current path;

[0033] Pruning is performed based on the path metric threshold PM_thresh to obtain the valid list.

[0034] Furthermore, pruning is performed based on the path metric threshold PM_thresh, including:

[0035] When the path metric PM of a node is less than the path metric threshold PM_thresh, the subsequent path expansion of the current node is terminated.

[0036] If the path metric PM of the two extended paths at a node is less than the path metric threshold PM_thresh, then the two extended paths are kept in the decoding list and proceed to the next level of decoding.

[0037] If the path metric PM of both extended paths at a node is greater than the path metric threshold PM_thresh, then the process returns to the previous decoding stage to restore the path and perform renormalization.

[0038] Further, renormalization includes:

[0039] Calculate the ratio of the path metric PM of each path to the sum of the path metric PM of all paths. Multiply the ratio by the path metric threshold PM_thresh and use the sum as the new path metric PM for the path.

[0040] The specific expression is as follows In the formula, PMnew is the new path metric value for the path, PMold is the original calculated PM value, PM_thresh is the path metric threshold, i is the path index of the existing path, and n is the total number of existing paths.

[0041] Furthermore, the panic index of the effective list is calculated, and the size of the effective list is dynamically adjusted, including:

[0042] The fear index for the valid list is calculated using the following expression:

[0043]

[0044] In the formula, P t φ is the panic index of the valid list; P0 is the initial panic coefficient, which is determined based on the noise level of the channel transmission; φ is the reliability sequence index of the current decoded bit; N is the reliability sequence among all decoded bits.

[0045] The size of the effective list is dynamically adjusted based on the fear index, expressed as:

[0046] L effective =max(L,L·(1+P) t ));

[0047] In the formula, L effective P represents the maximum number of paths in the adjusted valid list; L represents the preset maximum list length; P represents the maximum number of paths in the adjusted list. t The fear index for the valid list;

[0048] Furthermore, the panic groups are randomly flipped, and the path metrics of paths within the panic groups are updated, including:

[0049] The deviation from the path in the panic group is calculated based on the path metric, expressed as follows:

[0050]

[0051] In the formula, PanicLevel l The degree of deviation from path l; PM l PM is the path metric for path l; max PM is the largest path metric among all paths; min PM is the smallest path metric among all paths;

[0052] The number of path flips is calculated based on the degree of deviation from the path, and the path is then flipped. The expression is as follows:

[0053]

[0054] In the formula, num_flips represents the number of flips required for the current path; The degree of deviation from path l;

[0055] After the flip, the path metric PM of the panic group is updated, and a penalty term is added, expressed as follows:

[0056] PM l =PM l +γ·|LLR k |·(1+PanicLevel l );

[0057] In the formula, PM l The path metric for path l after the flip is performed; γ is the penalty coefficient, selected as the general setting of 0.5 in the simulation, used to control the overall strength of the penalty; LLR k PanicLevel is the contrast likelihood ratio corresponding to the k-th bit being flipped; k is the index of the flipped bit; PanicLevel l Let l be the degree of deviation from path l.

[0058] Furthermore, an elite selection threshold is calculated based on the path metric, and the selected paths are included in the elite pool, including:

[0059] The expression for the elite pool threshold is:

[0060] Threshold=sorted_pm(α·|active_paths|);

[0061] In the formula, Threshold is the final elite selection threshold, and paths with a path metric value (PM) lower than the elite selection threshold are included in the elite pool; sorted_pm is the array of valid lists sorted in ascending order according to the path metric value (PM); α is the preset proportion of the elite pool; |active_paths| is the total number of currently active paths.

[0062] When initially determining the elite pool, paths in the calm group whose path metric PM is less than the current elite selection threshold Threshold are used as the initial elite pool.

[0063] Furthermore, the paths in the elite pool are updated based on the paths in the calming group, including:

[0064] The path with the smallest path metric (PM) in the elite pool is identified as the elite path.

[0065] The learning ratio η is preset. The paths of the calming group are sorted in ascending order according to the PM value. The top η calming learning paths are selected according to the sorting. At the same time, N / 2*η bits are randomly selected from all bits of the elite path. Where N is the bit length of the elite path.

[0066] Change the bits at the corresponding positions in the calm learning path to the bits at the corresponding positions in the elite path to obtain the new elite path;

[0067] Based on the preset weights of the original path and the elite path, determine the path metric value PM of the new elite path.

[0068] All new elite paths after learning are added to the elite pool.

[0069] Furthermore, updating the paths within the elite pool also includes:

[0070] Paths in the elite pool are filtered. When the path metric PM exceeds the elite filtering threshold, or the number of consecutive failures of CRC check exceeds the set threshold, the current path is eliminated.

[0071] The preset revival ratio η1 and reset ratio η2 are used. η1 is randomly selected from the eliminated paths. The reset path metric PM is η2, which is the average PM value of the paths in the current panic group, and then added to the panic group.

[0072] According to specific embodiments provided by the present invention, the present invention discloses the following technical effects:

[0073] This invention discloses a polar code decoding method suitable for ReRAM memory, based on the ESC algorithm and the SCL polar code decoding algorithm. It adds CRC and parity check mechanisms to the traditional SCL decoding algorithm. Furthermore, to address the possibility of local optima and premature deletion of correct results due to the inherent list length in the traditional SCL decoding scheme, an elite group and a panic group are introduced for retention and expansion. To address the significant decoding delay caused by the fixed list length of the traditional SCL decoding algorithm under good channel conditions, a dynamic list length is adopted to reduce path expansion and lower decoding delay while maintaining a certain level of accuracy. This significantly reduces the decoding delay of signal transmission while lowering the bit error rate. Attached Figure Description

[0074] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0075] Figure 1 This is a schematic flowchart of the method of the present invention;

[0076] Figure 2 This is an example of path expansion in this embodiment;

[0077] Figure 3 This is a schematic diagram of the simulation results of the final path count after decoding in this embodiment; where the horizontal axis Sigma(σ) is the noise standard deviation;

[0078] Figure 4 This is a performance diagram comparing the decoding scheme in this embodiment with the traditional scheme. Detailed Implementation

[0079] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0080] The purpose of this invention is to provide a polar code decoding method suitable for ReRAM memory, aiming to solve or improve at least one of the above-mentioned technical problems.

[0081] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0082] like Figure 1 As shown, this invention provides a polar code decoding method suitable for ReRAM memory, comprising:

[0083] Step S1 involves calculating the reliability metric of the polar code after detection and determining the extension threshold based on the reliability metric, including the following steps:

[0084] Obtain the output of the BP detector and calculate the log-likelihood ratio at each bit position. The expression is:

[0085]

[0086] In the formula, LLR i,j P(r) represents the log-likelihood ratio of the cell in the i-th row and j-th column of the ReRAM memory array; i is the row index of the ReRAM memory array; j is the column index of the array; P(r) i,j =R1|y i,j ) represents the conditional probability that the storage resistance of cell (i,j) is low; r is the conditional probability that the storage resistance of cell (i,j) is low. i,j Store the logic resistance value corresponding to the data in cell (i,j); y i,j This represents the actual resistance value of the (i,j) unit.

[0087] The probability of a BP detector misclassifying the state of a ReRAM memory array cell is calculated based on the log-likelihood ratio (LLR), expressed as follows:

[0088]

[0089] In the formula, P err This represents the probability of misjudgment.

[0090] In the above steps, the absolute value of the log-likelihood ratio (LLR), |LLR|, directly reflects the decision confidence of the BP detector. The false positive probability P... err Defined as the probability of a BP detector misjudging the state of a ReRAM memory array cell. In engineering practice, a misjudgment probability of 0.001 is usually used as the basis for high confidence; therefore, the misjudgment probability P is adopted. err =0.001.

[0091] Based on the misjudgment probability P err The extended threshold is calculated using the following expression:

[0092]

[0093] In the formula, LLR thresh To expand the threshold; P err This represents the probability of misjudgment.

[0094] Step 2: Calculate the path metric threshold based on the expansion threshold, and prune the candidate paths according to the path metric threshold to obtain the valid list, including the following steps:

[0095] During the SCL decoder's decoding process, each node is split into two paths to be used for any unfrozen bits. i The estimate, where i represents the i-th bit, u i This refers to the specific data of the i-th bit.

[0096] During the SCL decoder's decoding process, the path metric value for each path is calculated, expressed as:

[0097]

[0098] In the formula, PM (i) [l] represents the path metric for the current path; PM (i-1) [l] represents the path metric of the previous bit of the current decoded bit; i is the bit index; l is the path index; L i Let x be the log-likelihood ratio of the i-th bit; i This is the hard decision value for the i-th bit of the current path.

[0099] In the above steps, the increment of the path metric depends only on the log-likelihood ratio (LLR) of the current bit.

[0100] Based on the extended threshold LLR thresh The path metric threshold PM_thresh is calculated using the following expression:

[0101]

[0102] In the formula, PM_thresh is the path metric threshold; LLR thresh To expand the threshold; x i This is the hard decision value for the i-th bit of the current path.

[0103] like Figure 2 As shown, when the path metric PM of a node with only one path is less than the path metric threshold PM_thresh, the subsequent path expansion of the current node is terminated.

[0104] The results of the above steps indicate that the current path has a very high probability of correct decoding. At this point, regardless of whether the current list is full (i.e., whether the maximum list size has been reached), the subsequent path expansion of the current node is terminated to reduce computational overhead.

[0105] If the path metric PM of the two extended paths at the node is less than the path metric threshold PM_thresh, then the two extended paths are kept in the decoding list and proceed to the next level of decoding.

[0106] The results of the above steps indicate that both extended paths are potential correct candidate paths, and their decoding correctness probabilities are not negligible.

[0107] If the path metric PM of both extended paths at a node is greater than the path metric threshold PM_thresh, then the process returns to the previous decoding stage to recover the path and perform renormalization. The path metric PM of all paths is added together, and the ratio of the path metric PM of each path to the sum of the path metric PM of all paths is calculated. The sum of the ratio and the path metric threshold PM_thresh is used as the new path metric PM of that path.

[0108] The specific expression is as follows In the formula, PMnew is the new path metric value for the path, PMold is the original calculated PM value, PM_thresh is the path metric threshold, i is the path index of the existing path, and n is the total number of existing paths.

[0109] The above steps correspond to the decoding process being limited by channel noise and potential estimation errors. Some nodes may be incorrectly classified as high-confidence nodes in the early stages, leading to non-ideal pruning of correct paths. This results in the path metric (PM) of extended paths at a certain node being greater than the path metric threshold (PM_thresh) in subsequent decoding, indicating that path deletion may have occurred in the early stages. To address this, a dynamic backtracking mechanism is triggered. Specifically: First, a backtracking operation is performed, i.e., the decoder retreats to the previous level decoding node. After retreating to the previous level node, path recovery is performed, i.e., the discarded paths are restored to the list, and the previous level node is re-explored. After completing the backtracking and path recovery, the path metric (PM) of all currently active paths in the list is renormalized. At this point, the number of paths may increase to four: the original two surviving paths plus the recovered path and its complementary / sibling path, to ensure the relative consistency of the path metric (PM) comparison at subsequent levels.

[0110] like Figure 3 As shown, to verify that the dynamic list scheme proposed in this invention can effectively reduce the number of actual extended paths in the array and reduce decoding latency, simulation experiments were conducted. The experimental conditions used a polar code with a code rate of 0.8, an initial maximum list length of 16, and transmission through a ReRAM channel. The detection scheme used was the traditional BP detection scheme, and the decoding schemes were the traditional SCL decoding and the improved SCL decoding scheme described above. To evaluate the effectiveness of the scheme, all paths existing in the current program after all bits were decoded were counted. 10 simulations were performed. 5 Experiments were conducted to count the total number of paths in the current program after all bits were decoded in each experiment. It can be seen that when the noise level increases from 20 to 80, the original SCL decoding scheme maintains a constant 16 paths, while the improved SCL decoding scheme in this paper reduces the number of paths from 1 to 9, a significant decrease. This demonstrates that the proposed dynamic list scheme can effectively reduce the actual number of paths extended in the array, thereby reducing decoding latency.

[0111] like Figure 4 As shown, step 3 involves calculating the panic index of the effective list, dynamically adjusting the size of the effective list, and dividing the paths in the effective list into calm and panic groups based on the path metric PM. This includes the following steps:

[0112] The panic index of the valid list is calculated using the following expression:

[0113]

[0114] In the formula, P t φ is the panic index of the valid list; P0 is the initial panic coefficient, which is determined based on the noise level of the channel transmission; φ is the reliability sequence index of the current decoded bit; N is the number of bits in all decoded bits.

[0115] In the above steps, the reliability sequence is achieved by sorting N bits according to polarization weights using the polarization weight construction method. The largest bit has the highest reliability, and the fear index approaches 0. The smallest bit has the lowest reliability.

[0116] The size of the effective list is dynamically adjusted based on the fear index, expressed as:

[0117] L effective =max(L,L·(1+P) t ));

[0118] In the formula, L effective P represents the maximum number of paths in the adjusted valid list; L represents the preset maximum list length; P represents the maximum number of paths in the adjusted list. t The fear index for the valid list;

[0119] All paths in the program are sorted according to the path metric PM, and these paths are divided into panic group and calm group; the calm group consists of the top 30% of paths sorted by PM in ascending order, and disturbance is prohibited; the panic group consists of the bottom 30% of paths sorted by PM in ascending order.

[0120] Step 4 involves randomly flipping the panic groups and updating the path metrics of the paths within the panic groups, including the following steps:

[0121] The deviation from the path in the panic group is calculated based on the path metric PM, expressed as follows:

[0122]

[0123] In the formula, PanicLevel l The degree of deviation from path l; PM l PM is the path metric for path l; max PM is the largest path metric among all paths; min PM is the smallest path metric among all paths.

[0124] The deviation calculated in the above steps is used to measure the difference between the current path and the optimal path.

[0125] The number of path flips is calculated based on the degree of deviation from the path, and the path is then flipped. The expression is as follows:

[0126]

[0127] In the formula, num_flips represents the number of flips required for the current path; The degree of deviation from path l;

[0128] Based on the above steps, when flipping the path in the panic group, it must be flipped at least once and at most three times.

[0129] After flipping, the path metric (PM) for the panic group is updated, and a penalty is added. The expression for updating the path metric (PM) each time a flip occurs is:

[0130] PM l =PM l +γ·|LLR k |·(1+PanicLevel l );

[0131] In the formula, PM l The path metric for path l after the flip is performed; γ is the penalty coefficient, selected as the general setting of 0.5 in the simulation, used to control the overall strength of the penalty; LLR k PanicLevel is the contrast likelihood ratio corresponding to the k-th bit being flipped; k is the index of the flipped bit; PanicLevel l To determine the degree of deviation of path l, num_flips flips are performed, and num_flips updates are required.

[0132] In the above steps, a penalty term is added to prevent excessive perturbation.

[0133] Step 5: Calculate the elite screening threshold based on the path metric, and include the selected paths in the elite pool; then update the paths in the elite pool based on the paths in the cooling-off group, including the following steps:

[0134] The elite pool is updated every 20 bits decoded. The initial elite path is determined by calculating the elite selection threshold based on the path metric (PM) of the currently valid paths, expressed as:

[0135] Threshold=sorted_pm(α·|active_paths|);

[0136] In the formula, Threshold is the final elite selection threshold, and paths with a path metric value (PM) lower than the elite selection threshold are included in the elite pool; sorted_pm is the array of valid lists sorted in ascending order according to the path metric value (PM); α is the preset proportion of the elite pool; |active_paths| is the total number of currently active paths.

[0137] When the elite pool is initially determined, paths in the calm group whose path metric PM is less than the current threshold Threshold are used as the initial elite pool.

[0138] Once determined, the path with the smallest path metric (PM) in the elite pool is designated as the elite path. Subsequent elite path selection also follows the same principle, choosing the path with the smallest PM in the current elite pool. The subsequent elite pool is determined by the Calm Group's learning process.

[0139] The first 30% of paths in the "calm learning" group, sorted by PM values ​​in ascending order, are designated as "calm learning paths" for further study. Based on a preset probability of 30%, N / 2*30% of the N bits from all N bits in the "elite path" are randomly selected, where N represents the bit length of the elite path.

[0140] Change the bits at the corresponding positions of the calm learning path to the bits at the corresponding positions of the selected elite path to obtain the new elite path. Set the new path metric PM of the new elite path to 70% of the original path and 30% of the path metric of the elite path.

[0141] Add all new elite paths to the elite pool;

[0142] The paths in the elite pool are filtered. When the path metric PM exceeds the elite screening threshold Threshold, or when the number of consecutive CRC check failures of the path in the elite pool is ≥2, the current path is eliminated.

[0143] Randomly select 10% of the eliminated paths, reset the path metric PM to 90% of the average PM of panic group paths in the current program, and add them to the panic group.

[0144] Step 6: Perform CRC check on the paths in the elite pool. If multiple paths pass the CRC check, select the path with the smallest path metric value PM and output the information sequence with redundant bits removed. If there is only one path, output the information sequence with redundant bits removed for that path. If all paths fail the CRC check, select the path with the smallest path metric value PM among the valid paths and output the information sequence with redundant bits removed.

[0145] like Figure 4 As shown, a comparison of the bit error rate and frame error rate for the traditional CRC-SCL decoding scheme and the decoding scheme proposed in this paper is presented. The simulation experiment used a code length of 256, a code rate of 0.8, and a selector failure probability p. f =0.001, the polar code is constructed using the traditional PW construction scheme, with 1000 trials. The results show the bit error rate and frame error rate of the traditional CRC-SCL decoding scheme and the scheme of this invention. The noise level is reduced from 70 to 55, thus reducing the error ratio.

[0146] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0147] This document uses specific examples to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the core ideas of the present invention. Furthermore, those skilled in the art will recognize that, based on the ideas of the present invention, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A polar code decoding method suitable for ReRAM memory, characterized in that, include: Calculate the reliability metric of the polar code after detection, and determine the extension threshold based on the reliability metric; The path metric threshold is calculated based on the expansion threshold, and the candidate paths are pruned based on the path metric threshold to obtain a valid list. Calculate the panic index of the effective list, dynamically adjust the size of the effective list, and divide the surviving paths in the effective list into a calm group and a panic group based on the path metric. The panic groups are randomly flipped, and the path metrics of the paths in the panic groups are updated. The elite selection threshold is calculated based on the path metric, and the selected path is included in the elite pool. The paths in the elite pool are updated based on the paths in the aforementioned calming group; Perform CRC check on the paths in the elite pool. If multiple paths pass the CRC check, select the path with the smallest path metric value PM among all the paths that pass the check and output the information sequence with redundant bits removed. If there is only one path, output the information sequence with redundant bits removed for that path. If all paths fail the CRC check, select the path with the smallest path metric value PM among the valid paths and output the information sequence with redundant bits removed. The step of randomly flipping the panic groups and updating the path metrics of the paths within the panic groups includes: The deviation from the path in the panic group is calculated based on the path metric, expressed as follows: ; In the formula, For path The degree of deviation; For path The path metric PM; The maximum path metric PM among all paths; PM is the smallest path metric among all paths; The number of path flips is calculated based on the degree of deviation from the path, and the path is then flipped. The expression is as follows: ; In the formula, This represents the number of times the current path needs to be flipped. For path The degree of deviation; After the flip, the path metric PM of the panic group is updated, and a penalty term is added, expressed as follows: ; In the formula, To perform the path flip Path metric; The penalty coefficient is set to 0.5, a common setting in the simulation, to control the overall intensity of the penalty. For the flipped first k The contrast likelihood ratio for each bit; k is the position index of the flipped bit; For path The degree of deviation.

2. The polar code decoding method for ReRAM memory according to claim 1, characterized in that, Calculate the reliability metric of the polar code after detection, and determine the extension threshold based on the reliability metric, including: Obtain the output of the BP detector and calculate the log-likelihood ratio at each bit position. The expression is: ; In the formula, For ReRAM memory array The log-likelihood ratio of the unit; For row indexes in the ReRAM memory array; For column indexes in a ReRAM memory array; for The conditional probability that the cell storage resistance is low; for The logic resistance value of the cell; for The actual resistance value of the unit; The probability of a BP detector misclassifying the state of a ReRAM memory array cell is calculated based on the log-likelihood ratio (LLR), expressed as follows: In the formula, This represents the probability of misjudgment. Based on the aforementioned misjudgment probability The expansion threshold is calculated using the following expression: ; In the formula, To expand the threshold; This represents the probability of misjudgment.

3. The polar code decoding method for ReRAM memory according to claim 1, characterized in that, The step of calculating the path metric threshold based on the expansion threshold and pruning the candidate paths according to the path metric threshold to obtain a valid list includes: The path metric is calculated using the following expression: ; In the formula, This is the path metric for the current path. is the path metric of the previous bit of the current decoded bit; i is the bit index; For path index; Let be the log-likelihood ratio of the i-th bit; This is the hard decision value for the i-th bit of the current path; The path metric threshold is calculated based on the aforementioned expansion threshold, and the expression is as follows: In the formula, Path measurement threshold; To expand the threshold; This is the hard decision value for the i-th bit of the current path; Based on the path metric threshold Pruning is performed to obtain the valid list.

4. The polar code decoding method for ReRAM memory according to claim 3, characterized in that, The threshold based on the path measurement Pruning includes: The path metric when there is only one extended path at the node. Less than the path metric threshold When this happens, terminate the subsequent path expansion of the current node; When the path metric of the two extended paths at the node All are less than the path metric threshold. If so, the two extended paths will be retained in the decoding list and proceed to the next level of decoding. If the path metrics of the two extended paths at the node All are greater than the path metric threshold If the path is not found, the code will revert to the previous decoding stage, restore the path, and renormalize it.

5. A polar code decoding method suitable for ReRAM memory according to claim 4, characterized in that, The renormalization includes: Calculate the ratio of the path metric PM for each path to the sum of the path metric PM for all paths, and then compare this ratio with the path metric threshold. The sum of the multiplications is used as the new path metric PM. The specific expression is as follows In the formula This is the new path metric for this path. The original PM value was obtained from the calculation. is the path metric threshold, i is the path index of an existing path, and n is the total number of existing paths.

6. The polar code decoding method for ReRAM memory according to claim 1, characterized in that, The calculation of the panic index of the effective list and the dynamic adjustment of the size of the effective list include: The panic index of the valid list is calculated using the following expression: ; In the formula, The fear index for the valid list; The initial panic coefficient, Determined based on the noise level transmitted through the channel; This is the reliability sequence index of the currently decoded bits; For the reliability sequence of all decoded bits; The size of the effective list is dynamically adjusted based on the fear index, expressed as: ; In the formula, This represents the maximum number of paths in the adjusted valid list. Set the maximum list length; The fear index for the valid list.

7. A polar code decoding method suitable for ReRAM memory according to claim 1, characterized in that, The step of calculating the elite screening threshold based on the path metric and including the selected path in the elite pool includes: The expression for the elite pool threshold is: ; In the formula, The path metric (PM) below the final elite selection threshold is used to include paths in the elite pool. This is an array of valid lists sorted in ascending order based on the path metric PM; The percentage of the preset elite pool; This represents the total number of currently active paths; When the elite pool was initially determined, the path metric PM in the calm group was less than the current elite selection threshold. The path is used as the initial elite pool.

8. A polar code decoding method suitable for ReRAM memory according to claim 1, characterized in that, The step of updating the paths in the elite pool by combining the paths in the calming group includes: The path with the smallest path metric value PM in the elite pool is identified as the elite path. With a preset learning ratio η, the paths in the calming group are sorted in ascending order of PM value, and the top η calming learning paths are selected based on this order; simultaneously, bits from all the elite paths are randomly selected. *η bits; where N is the bit length of the elite path; Change the bits at the corresponding positions in the calm learning path to the bits at the corresponding positions in the elite path to obtain a new elite path; The path metric value PM of the new elite path is determined based on the preset weights of the original path and the elite path. All new elite paths described after learning are included in the elite pool.

9. A polar code decoding method suitable for ReRAM memory according to claim 1, characterized in that, After updating the paths in the elite pool, the following also applies: Paths in the elite pool are filtered. When the path metric PM exceeds the elite filtering threshold, or the number of consecutive failures of CRC check exceeds a set threshold, the current path is eliminated. The preset revival ratio η1 and reset ratio η2 are used. η1 is randomly selected from the eliminated paths. The reset path metric PM is η2, which is the average PM value of the paths in the current panic group, and then added to the panic group.