The next two cycles are used for row and column re-permutations, which are the inverse operations of permutations. This is done by passing the data through the crossbar in the reverse direction with the configuration unchanged. This sections gives detailed description for each block, except for plain latches and multiplexers. This is a slightly modified Batcher sorting network, having 5 comparators instead of 6. Each node in the sorting network has one comparator and two multiplexers.
Multiplexers control the data flow depending on the result of comparison.
At the last stage of the sorting network, port lengths are discarded, and only the port lengths are used. For row permutation, the request matrix coming to the crossbar is grouped by the columns. This minimizes the distance that signals have to travel within the crossbar during the permutation. In order to facilitate the column permutation that follows, these bits have to be grouped by the rows before entering the crossbar again. This is done by Transpose Box, which is simply a fixed mesh of wires that changes the grouping of the bits.