A method of wireless communication at a transmitting wireless communication device, comprising: encoding an information block to produce a code block comprising a plurality of coded bits; interleaving the plurality of coded bits utilizing an interleaver to produce an interleaved code block, wherein the interleaver comprises a plurality of rows and a plurality of columns, wherein a number of the plurality of columns varies between the plurality of rows, wherein interleaving the plurality of coded bits further comprises: feeding the plurality of coded bits into successive rows of the plurality of rows of the interleaver starting with a first row of the plurality of rows; and reading out the plurality of coded bits from successive columns of the plurality of columns of the interleaver starting with a first column of the plurality of columns; wherein a first one of the coded bits in the first row is a first one of the coded bits in the first column; wherein a number of rows in a first column of the plurality of columns and a number of columns in a first row of the plurality of rows are equal and selected based on a number of the plurality of coded bits in the code block, and the number of coded bits in each row decreases from the highest number of coded bits in the first row to the lowest number of coded bits in a last row, and wherein the number of rows in the first column is equal to the smallest integer P that satisfies an equation P ∗ (P+1)/2 ≥ N, where N corresponds to the number of the plurality of coded bits in the code block; and transmitting the interleaved code block to a receiving wireless communication device over a wireless air interface. encoding an information block to produce a code block comprising a plurality of coded bits; interleaving the plurality of coded bits utilizing an interleaver to produce an interleaved code block, wherein the interleaver comprises a plurality of rows and a plurality of columns, wherein a number of the plurality of columns varies between the plurality of rows, wherein interleaving the plurality of coded bits further comprises: feeding the plurality of coded bits into successive rows of the plurality of rows of the interleaver starting with a first row of the plurality of rows; and reading out the plurality of coded bits from successive columns of the plurality of columns of the interleaver starting with a first column of the plurality of columns; wherein a first one of the coded bits in the first row is a first one of the coded bits in the first column; wherein a number of rows in a first column of the plurality of columns and a number of columns in a first row of the plurality of rows are equal and selected based on a number of the plurality of coded bits in the code block, and the number of coded bits in each row decreases from the highest number of coded bits in the first row to the lowest number of coded bits in a last row, and wherein the number of rows in the first column is equal to the smallest integer P that satisfies an equation P ∗ (P+1)/2 ≥ N, where N corresponds to the number of the plurality of coded bits in the code block; and transmitting the interleaved code block to a receiving wireless communication device over a wireless air interface. feeding the plurality of coded bits into successive rows of the plurality of rows of the interleaver starting with a first row of the plurality of rows; and reading out the plurality of coded bits from successive columns of the plurality of columns of the interleaver starting with a first column of the plurality of columns; wherein a first one of the coded bits in the first row is a first one of the coded bits in the first column; wherein a number of rows in a first column of the plurality of columns and a number of columns in a first row of the plurality of rows are equal and selected based on a number of the plurality of coded bits in the code block, and the number of coded bits in each row decreases from the highest number of coded bits in the first row to the lowest number of coded bits in a last row, and wherein the number of rows in the first column is equal to the smallest integer P that satisfies an equation P ∗ (P+1)/2 ≥ N, where N corresponds to the number of the plurality of coded bits in the code block; and transmitting the interleaved code block to a receiving wireless communication device over a wireless air interface.