A method for generating a physical layer, PHY, data unit for transmission via a communication channel, the method comprising: selecting a modulation scheme from a plurality of modulation schemes; encoding information bits to generate encoded data using one or more encoders; selecting a number of spatial streams in a plurality of spatial streams to be used for transmission; parsing the encoded data into the number of spatial streams; selecting an interleaving parameter N COL, selecting an interleaving parameter N ROT using the selected number of spatial streams, wherein N ROT varies depending on the number of spatial streams; interleaving the encoded data that was parsed into said number of spatial streams, including entering the encoded data into a matrix having N ROW rows and N COL columns on a row by row basis, reading the encoded data out in the N COL columns, and applying a frequency rotation r according to r = j − f ∗ N ROT ∗ N BPSCS i SS mod N CBPSS i SS where i SS is a spatial stream index, N CBPSS ( i SS) is a number of coded bits per symbol for an i SS -th spatial stream, N BPSCS ( i SS) is a number of coded bits per carrier for the i SS -th spatial stream, j = 0,1,..., N CBPSS ( i SS)-1, and f is an integer that varies based on the spatial stream index i SS and the total number of spatial streams; modulating the payload information of the PHY data unit according to the modulation scheme, wherein the payload information includes the interleaved encoded data; and forming a plurality of orthogonal frequency division multiplexing, OFDM, symbols based on the modulated payload information. selecting a modulation scheme from a plurality of modulation schemes; encoding information bits to generate encoded data using one or more encoders; selecting a number of spatial streams in a plurality of spatial streams to be used for transmission; parsing the encoded data into the number of spatial streams; selecting an interleaving parameter N COL, selecting an interleaving parameter N ROT using the selected number of spatial streams, wherein N ROT varies depending on the number of spatial streams; interleaving the encoded data that was parsed into said number of spatial streams, including entering the encoded data into a matrix having N ROW rows and N COL columns on a row by row basis, reading the encoded data out in the N COL columns, and applying a frequency rotation r according to r = j − f ∗ N ROT ∗ N BPSCS i SS mod N CBPSS i SS where i SS is a spatial stream index, N CBPSS ( i SS) is a number of coded bits per symbol for an i SS -th spatial stream, N BPSCS ( i SS) is a number of coded bits per carrier for the i SS -th spatial stream, j = 0,1,..., N CBPSS ( i SS)-1, and f is an integer that varies based on the spatial stream index i SS and the total number of spatial streams; entering the encoded data into a matrix having N ROW rows and N COL columns on a row by row basis, reading the encoded data out in the N COL columns, and applying a frequency rotation r according to r = j − f ∗ N ROT ∗ N BPSCS i SS mod N CBPSS i SS where i SS is a spatial stream index, N CBPSS ( i SS) is a number of coded bits per symbol for an i SS -th spatial stream, N BPSCS ( i SS) is a number of coded bits per carrier for the i SS -th spatial stream, j = 0,1,..., N CBPSS ( i SS)-1, and f is an integer that varies based on the spatial stream index i SS and the total number of spatial streams; modulating the payload information of the PHY data unit according to the modulation scheme, wherein the payload information includes the interleaved encoded data; and forming a plurality of orthogonal frequency division multiplexing, OFDM, symbols based on the modulated payload information.