Patent ID: 6961782

Claim:
A method for routing packets on an array of N processors connected in a nearest neighbor configuration, comprising the steps of: for each end processor of each row and column of the array, connecting an unused output of the end processor to an unused input of the same end processor so as to create a wrapped path at each end processor of the array; and for each axis required to route a packet from a source processor to a destination processor in the array, determining whether a result of directly sending a packet from an initial processor to a target processor along said axis is less than or greater than N/2 moves along said axis; when the result is less than N/2 moves, directly sending the packet from the initial processor to the target processor along said axis without traversing a wrapped path of an end processor of said axis; and when the result is greater than N/2 moves, indirectly sending the packet from the initial processor to the target processor along said axis by traversing a wrapped path of an end processor of said axis.