A method for performing quasi-cyclic low-density parity-check, QC-LDPC, decoding for hybrid automatic repeat request, HARQ, transmission using a QC-LDPC rate-compatible design, the method comprising: receiving soft bits associated to a QC-LDPC codeword of a QC-LDPC code of the QC-LDPC rate-compatible design; and performing QC-LDPC decoding of the soft bits using a parity check matrix of the QC-LDPC code obtained by lifting an LDPC base graph, wherein the parity check matrix comprises: a first plurality of rows representing a core portion corresponding to a high-rate QC-LDPC code and a second plurality of HARQ rows after the first plurality of rows used to lower the rate of the high-rate of the QC-LDPC code; each row of the first and second plurality of rows of the parity check matrix comprises non-empty entries each with an integer value representing a ZxZ cyclic rotated identity matrix or empty entries each representing a ZxZ all-zero submatrix; at least two columns wherein two columns (1310, 1312) correspond to two high-degree punctured variable nodes of the LDPC base graph; at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected and at least two rows below a lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected; and wherein the parity check matrix has row orthogonality between each pair of consecutive rows that are below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected in that no column has a non-empty entry in each pair of consecutive rows that are below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected; and characterized in that the two high-degree punctured variable nodes of the LDPC base graph alternate, from row to row, their respective row connectivity for all rows in the parity check matrix, below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected. receiving soft bits associated to a QC-LDPC codeword of a QC-LDPC code of the QC-LDPC rate-compatible design; and performing QC-LDPC decoding of the soft bits using a parity check matrix of the QC-LDPC code obtained by lifting an LDPC base graph, a first plurality of rows representing a core portion corresponding to a high-rate QC-LDPC code and a second plurality of HARQ rows after the first plurality of rows used to lower the rate of the high-rate of the QC-LDPC code; each row of the first and second plurality of rows of the parity check matrix comprises non-empty entries each with an integer value representing a ZxZ cyclic rotated identity matrix or empty entries each representing a ZxZ all-zero submatrix; at least two columns wherein two columns (1310, 1312) correspond to two high-degree punctured variable nodes of the LDPC base graph; at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected and at least two rows below a lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected; and wherein the parity check matrix has row orthogonality between each pair of consecutive rows that are below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected in that no column has a non-empty entry in each pair of consecutive rows that are below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected; and characterized in that the two high-degree punctured variable nodes of the LDPC base graph alternate, from row to row, their respective row connectivity for all rows in the parity check matrix, below said lowest row of said at least one row to which the two high-degree punctured variable nodes of the LDPC base graph are both connected.