River routing is the running of multiple parallel wires between two facing rows (presumably two cell instances or two rows of instances). The wires must remain in sequential order and cannot cross each other. Thus, they appear as a flowing stream of lines, and have the appearance of a river. |

To specify an intended path for the river-router, every connection must be made with an Unrouted arc. Thus, before river-routing, there should be a series of direct (and presumably nonmanhattan) unrouted arcs. These arcs are replaced with the appropriate geometry during river-routing.

To convert the unrouted wires into layout, use the River-Route command (in menu Tools / Routing). If there are unrouted arcs selected, these will be the only ones converted. Otherwise, all unrouted arcs in the cell will be converted. If it is necessary, nodes may be moved to make room for the river-routed wires.

The river router always routes to the left or bottom side of the routing channel. Thus, if there is a vertical channel that is very wide, the wires will run to the left side and then jog to their proper location there. The only way to force routing to the right or top side is to rotate the entire circuit so that these sides are on the left and bottom.

For an example of river routing, open the Samples library and edit the cell "tool-RoutingRiver" (you can read the library with the Load Sample Cells Library command, in menu Help).