Patent ID: 7224689

Claim:
A method for routing a message from a source node to a destination node, wherein the source node and the destination node are connected by a plurality of nodes in a cycle-based system, comprising: generating a maze data structure comprising the plurality of nodes, wherein each of the plurality of nodes is associated with a dimension corresponding to time; and routing the message from the source node to the destination node using the dimension corresponding to time, wherein routing the message comprises: obtaining a neighbor list for a current node if routing the message can proceed from the current node, wherein the current node is one of the plurality of nodes; analyzing the neighbor list to obtain a prioritized list; determining whether the message can move to a highest priority unevaluated node on the prioritized list, wherein determining whether the message can move uses the dimension corresponding to time associated with the current node and the dimension corresponding to time associated with the highest priority unevaluated node, and wherein determining whether the message can move to the highest priority unevaluated node on the prioritized list comprises determining whether the highest priority unevaluated node is occupied at a time when the message is attempting to enter the highest priority unevaluated node; and saving static routing information if the current node is the destination node.