Netlist Input Format

The Net Input Format for Theseus is the same as the Netlist / Generic Hypergraph format used in Placement Software. Since this input format is already desrcibed in detail, we will point you to where the information can be found. 

You can visit Gigascale.org or go directly to the page titled Netlist/Generic Hypergraph Format

To input a list nets the user must provide the proper information regarding the nodes that the nets are connecting. The nodes (found in the file with extension .nodes) have their own file. In the nodes file, one will find the rectangular dimesions for the nodes in the design as well as their names. In the nets file, one will find a list of nets that indicate which nodes are connected and an optional name for the net. Since we need to know where the nodes are located in the grid, it is also necessary for the user to provide placement information (found in the file with the extension .pl). This allows Theseus to put the nodes in the grid and mark the locations of the terminals that the nets are connecting. 

Again, for more information please refer to the hyperlinks above. 

Net Input Examples


Route Input Format

NET_[N]
[POINT 1 ROW] [POINT 1 COLUMN] [POINT 1 LAYER]
.
.
.
[POINT M ROW] [POINT M COLUMN] [POINT M LAYER]

It is possible to specify in advance the routes to be used for certain nets. Routes must be specified in a separate file; if no such file is specified, the parser and router will assume that there are no preset routes to be followed for any nets and route all the nets using the routing algorithm chosen. 

To specify a route, the net in question should be identified. A route unaccompanied by a net ID will be ignored. A route consists of a series of horizontal or vertical segments. Different segments can be on different layers, however, it is not permitted to jump more than one layer between segments. A segment specifcation should consist of the coordinates ([Row][Column]) of its start point, followed by the coordinates of the end point, followed by the layer number. When specifying a route, segments must be listed in the order they appear in the route i.e. if segment 1 starts at h1, v1 and ends on h2, v2 on layer k, segment 2 is expected to start with h2 , v2 on layers k-1, k, or k+1. The parser will check for these conditions while reading the routes and will ignore routes not following these conventions. Routes which do not cover all the pins in a net will be accepted but the omission reported. Further, if a route has been specified in a region where obstacles have already been placed that make the route impossible, the route will be ignored and reported. 

Route Input Examples


Return to Input Format