## 3 Entropy Feature-Based LNMS LDPC Decoding Optimization
### Serial Entropy Feature-Based LNMS (S-EFB-LNMS) LDPC Decoding Optimization Scheme  
In this section, we introduce a new S-EFB-LNMS LDPC decoding method based on the similarity between the entropy feature vector and the check matrix (see Section 2.1). This decoding strategy aims to reduce the decoding delay by dynamically adjusting the number of LPUs executed during the iterative decoding process. Specifically, we evaluate the reliability of each LPU by \(CS(\mathbf{f}_{\text{evf}},\mathbf{c}_{\text{cmp}})\). Each LPU corresponds to a row in the check matrix \(\mathbf{H}\) and is responsible for processing the information interaction between the CN, represented by the row and the adjacent VNs. According to \(\mathbf{f}_{\text{evf}}\), a value of 1 indicates that the LLR of the corresponding bit received from the channel shows high unreliability. These LLRs are crucial as the initial information of the VNs in the decoding process. If the \(CS(\mathbf{f}_{\text{evf}},\mathbf{c}_{\text{cmp}})\) of an LPU is 0, it means that the LPU does not process LLRs with high unreliability, so the output information of the LPU is considered reliable and classified as a reliable LPU (RLPU). On the contrary, LPUs with non-zero cosine similarity are marked as unreliable (URLPU). It is worth noting that, even within the voltage range defined as the reliable region, there are still voltage intervals with non-zero entropy values, which indicates that the bit LLR reliability in these intervals is low. If only the LPUs marked as unreliable are executed, the information of some unreliable VNs may not be updated, and the errors of the relevant bits cannot be corrected. To solve this problem, the interleaving parameter \(\beta\) is introduced to adjust the execution frequency of reliable and unreliable LPUs. For example, when \(\beta=2\) is set, only RLPUs are executed in one decoding iteration, and only URLPUs are executed in the subsequent decoding iteration. If \(\beta=3\), URLPUs are executed in two consecutive decoding iteration, and then reliable LPUs are executed in the third decoding iteration. This strategy effectively reduces the need to execute all LPUs in each iteration, thereby significantly reducing the decoding latency. In addition, by monitoring and comparing the bit state changes before and after each iteration, the LPUs that will participate in the next decoding iteration are screened and optimized to improve the decoding performance further. This dynamic adjustment strategy ensures that the entropy feature vector always accurately maps the latest bit reliability data. The detailed implementation of this method has been fully described in Algorithm 1. In Algorithm 1 (line 9), the operator \"%\" represents the modulus (remainder) operation. It returns the remainder when dividing \((l-1)\) by \(\beta\), which is commonly used to check divisibility. ```
1:The LLR of one codeword from the flash-memory channel \(LLR_{\text{ch}}\), the entropy feature vector \(\mathbf{f}_{\text{evf}}\), the maximum iteration number \(T_{\text{max}}\), and the interleaving parameter \(\beta\). 2:Decoded bits \(\mathbf{c}\). 3:Initialize the posterior information of VN to the LLR from flash-memory channel, i.e., \(v_{j}^{(0)}=LLR_{\text{ch},j}\). Clear the check-to-variable information, i.e., \(CI_{ij}^{(0)}=0\).