• Tidak ada hasil yang ditemukan

Proposed Rate-compatible Puncturing Scheme

A Cycle-based Rate-compatible Puncturing Technique for Non-binary

6.3 Proposed Rate-compatible Puncturing Scheme

diminishes as the field size q increases. Usually, for the moderate to high values of q (q≥16), the selection of the labels is carried out uniformly at random from GF(q) [29, 35, 36, 43, 81].

Like the binary counterpart, the connectivity of an NB cycle can also be assessed with the help of its EMD value. Recall that the EMD of a cycle is the number of CNs singly-connected to the VNs involved in the cycle. For example, the EMD of the NB cycle shown in Figure 6.2(a) is 2.

6.3 Proposed Rate-compatible Puncturing Scheme

Sorting via Cycle-based Criterion

The short NB cycles with low EMD are harmful and affects the performance of iterative decoders.

If the VNs present in such a cycle are punctured, the reliability of the messages flowing in the cycle will be affected adversely. Consequently, it will make the cycle even more prone to error. The VNs which are involved in a higher number of harmful NB cycles possess smaller chances of correct recovery after being punctured. Thus the objective is to select those VNs which are involved in a lower number of short NB cycles with low EMD values. The details of the selection rule is explained below.

First, all the short NB cycles of length up to a specific lengthlmax are found out. The detrimental effect of an NB cycle is decided by two factors:

Length: If the length of a cycle is small, the messages flowing in the cycle become correlated after a small number of iterations [61]. The smaller the length of the cycle, the more is the harmfulness.

EMD: A cycle with low EMD has poor connectivity with the rest of the Tanner graph. Therefore, there is a lower chance of any error in the VNs being corrected.

By considering the above two factors, an NB cycle of lengthlcan be denoted by a 2-tuple notation:

(l, EMD). Using this notation, the NB cycles can be grouped into different classes. Let the class of (li,EMDi) cycles be denoted byCi. Noting that a smallland a low EMD contribute to the deterioration of iterative decoding, different degrees of importance can be given to these two factors in sorting the VNs: more importance tol, more importance to EMD or equal importance to both. Our experimental observations suggest to give more importance tol.

Based on the above considerations, the relative harmfulness of two classes Ci and Cj (i6=j) is determined by the following two conditions:

(1) Ifli < lj, thenCi is considered more harmful thanCj.

(2) When li=lj, thenCi is considered more harmful than Cj if EMDi <EMDj.

The short NB cycles can now be grouped into F classes C1,· · · ,CF with the decreasing order of harmfulness. The number of classes F is a variable determined by lmax and the nature of the short NB cycles for the particular code.

TH -1443_08610205

Algorithm 6.1: Sorting via Cycle-based Criterion

input : The groups of the VNs obtained from the grouping algorithm: G1, . . . ,GK, the sets of the NB cycles of the ordered classes: C1,C2,· · ·,CF

output: The setPl of the VNs selected for puncturing to achieve raterl, 1≤lm Initialize the setP0 to an empty set, k= 1;

forl←1 tom do // for all the rates rl, 1≤lm ComputeNlp ; // the number of VNs required to be punctured to attain rl

Pl=Pl−1 ; // rate compatible puncturing

δNlp =Nlp− |Pl|; // the remaining number of VNs to be selected for puncturing whileδNlp 6= 0 do // select the required number of VNs

Set Γ =Gk ; // the set of candidate VNs

foreachVN v in Γdo

Obtain the setsC1v,C2v, . . . ,CFv,

whereCiv is the set of cycles of class Ci containing v.

end

Seti= 1 ; // index for the cycle classes

whileiF do

Retain only those VNsv in Γ for which|Civ|is minimum over allv∈Γ, i.e. Γ =

v∈Γ such that |Civ|= min

v∈Γ

Civ

; // reduce the search space

if |Γ|= 1 then // Γ contains only one VN

v = Γ ; // select the lone VN for puncturing

break ; // the job is done

else if i=F then // all the cycle classes are examined Select a VN randomly from Γ and call itv;

else // |Γ|>1 and i < F

ii+ 1 ; // shrink Γ further by considering the next cycle class end

end

Pl=Pl∪ {v}; // include v in the set Pl

δNlpδNlp−1 ; Gk =Gk\ {v};

if |Gk|= 0 then // if all the VNs in Gk have been selected kk+ 1 ; // select the remaining VNs from the next group end

end end

Algorithmic Steps

The proposed sorting algorithm is shown in Algorithm 6.1. Let,r1, r2,· · · , rm (rmrmax) be the sequence of rates for which the puncturing patterns are to be fixed. Suppose, Nlp is the number of VNs required to be punctured to attain a certain raterl.

TH -1443_08610205

6.3 Proposed Rate-compatible Puncturing Scheme

The inputs to the algorithm are:

• The groups of the VNs of different recoverability levels as obtained from the grouping algorithm, G1,G2,· · · ,GK.

• The sets of the NB cycles of different classes C1,C2,· · · ,CF.

The algorithm selects the VNs required to be punctured to attain the rates r1, r2,· · ·, rm from the mother code of rate r0. The set Pl of the VNs to be punctured for rate rl includes the set Pl−1

of the VNs selected for rate rl−1 to ensure the rate-compatibility. Let the set of candidate VNs for puncturing be denoted by Γ. The VNs of the lowest recovery level, which are not yet selected, are included in Γ.

The search space Γ is gradually reduced by considering the involvement of the VNs of Γ in the formation of the NB cycles. Suppose, Civ denotes the set of all the cycles of the class Ci involving the VN v. For each VN v in Γ, the sets Cvi,i= 1, . . . , F are found out. The process of reduction of the search space Γ starts with the consideration of the first cycle class, i.e.,Ci withi= 1. Only those VNs v are retained in Γ for which |Civ| is minimum over all v ∈ Γ. Thus the search space gets reduced.

If Γ contains only one VN, then that VN is included for puncturing. Otherwise we check for the possibility of reducing the size of Γ further by considering the next cycle class. If all the cycle classes are examined and still |Γ| > 1, then a VN is selected randomly from Γ. This process of selecting a VN is repeated to obtain all the required number of VNs. The above steps are carried out till all the rates are considered. The algorithm outputs the setsPl,l= 1,· · ·, mcontaining the VNs selected for symbolwise puncturing to reach a raterl forl= 1,· · · , m.

Remark 6.2. The symbolwise puncturing scheme for the binary LDPC codes in [32] consists of a grouping algorithm followed by a sorting algorithm. The two selection criteria for the sorting algorithm in [32] are:

(a) the number of survived neighboring CNs connected to a VN and (b) the degree of a VN

For the proposed sorting scheme, the selection of the punctured VNs is accomplished only by examining the involvement of the VNs in the short NB cycles with low EMD.

TH -1443_08610205