Patent ID: 7673120

Claim:
A data processor comprising: a plurality of operational clusters, each operational cluster including a plurality of sub-clusters, each sub-cluster including a local register file including a plurality of local data registers storing data, a plurality of functional elements operable to perform instruction specified data operations on instruction specified operand data registers and store resultant data in an instruction specified destination data register, a transport switch connected to each sub-cluster operable to transfer data from an instruction specified source data register in a first instruction specified sub-cluster to an instruction specified destination data register in a second instruction specified sub-cluster; a global data register file including a plurality of global data registers storing data, said global data register file connected to said transport switch in each of said sub-clusters; and said transport switch of each sub-cluster further operable to transfer data from an instruction specified source data register in an instruction specified sub-cluster of said cluster to an instruction specified destination data register in said global data register file, and transfer data from an instruction specified destination data register in said global data register file to an instruction specified sub-cluster of said cluster; and said transport switch of each sub-cluster includes a plurality of permute registers, each specifying a permute of transferred data; and said transport switch of each sub-cluster is further operable to permute transferred data according to an instruction specified one of said plurality of permute registers.