Browse Prior Art Database

Net Ordering for an Autowire Program

IP.com Disclosure Number: IPCOM000081021D
Original Publication Date: 1974-Mar-01
Included in the Prior Art Database: 2005-Feb-27
Document File: 3 page(s) / 28K

Publishing Venue

IBM

Related People

Atkins, JD: AUTHOR [+2]

Abstract

Function. Ordering is the process of determining the sequence of connection of pins in a net. Given the component placement and the net optimization, ordering will: a) decide the sequence in which the ROUTING program will attempt to wire the net, b) build a via availability table, so that ROUTING can distinguish module pins and service pins and vias available for wiring, and c) flag the service wiring and prime row connections.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 3

Net Ordering for an Autowire Program

Function.

Ordering is the process of determining the sequence of connection of pins in a net. Given the component placement and the net optimization, ordering will: a) decide the sequence in which the ROUTING program will attempt to wire the net,
b) build a via availability table, so that ROUTING can distinguish module pins and service pins and vias available for wiring, and c) flag the service wiring and prime row connections. Algorithm.

Net ordering of distinct modules is achieved by a process called Zig-Zag. The maximum horizontal and vertical distances between points in the net are determined. The maximum vertical distance is multiplied by 2,since the vertical dimension of the card is less. The points of the net are then ordered in the direction of maximum span, left to right, or top to bottom. The Zig-Zag approach to ordering facilitates ROUTING efforts to `tee' or `stub' on vias whenever possible (see Fig. 1). Consider the order A-B-C-D. Assume that A-B has been routed. The connection between B and C can be made by wiring from C to any available via on the connection from A to B.

The same type of possibilities exist for the connection from C to D.

Ordering within a module emphasizes horizontal and vertical direct connections, as well as consideration for teeing possibilities. The first step is to determine if possible horizontal or vertical direct connections exist. If they do, the ordering between those two points is made. If not, the shortest rectangular distance is ordered. Teeing possibilities are considered as indicated by Fig. 2. The connection from C can be made to any point on the wire from A to B. If street space exists, the connection can be made directly to B,

Using the ordered nets, ROUTING can determine wire paths with the aid of the via availability table, which contains available wiring vias as well as card tab information, and priority flags set for service wires and prime row connections. Technique.

Ordering is coded in PL/I and makes use of dynamic allocation of storage dependent on card size to be wired. Input is 1) a placement list which flags sixteen-pin modules and discrete components as well as giving the module placement, and 2) the optimized net list.

As the placement list is read in, a sixteen-pin module table and discrete component table are dynamically created. This component information is used to create the via availability table, which will communicate vias which are candidates for wires to ROUTING. The via availability table is a 2-...