Patent ID: 8341362

Claim:
A method for data processing, the method comprising: storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns; and transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory, wherein the transposing comprises repeating the stages of: writing content of a source row of memory cells to a first row of associative memory section cells; writing at least a portion of a shift mask to a second row of associative memory section cells; comparing in parallel multiple columns of associative memory cells to a comparand, wherein each column of the associative memory cells comprises one cell of the first row of associative memory cells and a corresponding cell of the second row of associative memory section cells; writing a comparison result to a destination row of the memory; shifting the shift mask; and selecting a new source row and selecting a new destination row.