Table of Contents

Name

SymbolicChannelRouter - routes a given channel on a symbolic grid

Origin

This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie 4, place Jussieu 75252 PARIS Cedex 05 FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr

Synopsys

#include aprnnn.h"
int SymbolicChannelRouter(ptNorthConList,
ptSouthConList, ptWestConList,
ptEastConList,
ChannelWidth,
ChannelHeight,
ptHorSegList,
ptVerSegList,
ptViaList)
ConnectorList *ptNorthConList;
ConnectorList *ptSouthConList;
ConnectorList *ptWestConList;
ConnectorList *ptEastConList;

long
*ChannelWidth;
long
*ChannelHeight;
SegmentList
**ptHorSegList;
SegmentList
**ptVerSegList;
ViasList
**ptViaList;

Parameters

ptNorthConList
List of the connectors located on the north side of the channel.

ptSouthConList
List of the connectors located on the south side of the channel.

ptWestConList
List of the connectors located on the west side of the channel.

ptEastConList
List of the connectors located on the east side of the channel.

ChannelWidth
Width of the channel.

ChannelHeight
Height of the channel.

ptHorSegList
List of horizontal wires produced by the SymbolicChannelRouter.

ptVerSegList
List of vertical wires produced by the SymbolicChannelRouter.

ptViaList List of vias produced by the SymbolicChannelRouter.

Description

SymbolicChannelRouter routes a given channel on symbolic grid using a greedy algorithm.
The connectors on the west and east sides are The ptNorthConList, ptSouthConList, ptWestConList and ptEastConList can be NULL.
The ChannelWidth is the width of the channel. It is a symbolic value. ChannelHeight is the Height of the channel. It is a symbolic value and it may be a value zero.
The ptHorSegList, ptVerSegList and ptViaList are returned by the SymbolicChannelRouter. The SymbolicChannelRouter structure is described : typedef struct SCR_ConnectorList
{
struct SCR_ConnectorList *NextCon;

long
ConName;
long
Mark; } ConnectorList
NextCon
Pointer to the next connector in the list.
ConName
Name of the connector.
Mark
Connector index on a symbolic grid.

typedef struct SCR_SegmentList
{

struct SCR_SegmentList
*NextSeg;
char
*SegName;
long
X1Seg;
long
Y1Seg;
long
X2Seg;
long
Y2Seg; } SegmentList
NextSeg
Pointer to the next segment in the list.
SegName
Name of the segment.

X1Seg, Y1Seg, X2Seg, Y2Seg
Coordinates of each end of the segment. Since it's a symbolic segment.

typedef struct SCR_ViasList
{

struct SCR_ViasList
*NextVia;
long
XVia;
long
YVia; } ViasList
NextVia
Pointer to the next via in the list.

XVia,YVia Coordinates of the center of the via.

Example

#include aprnnn.h"
if (SymbolicChannelRouter(ptNorthConList, ptSouthConList, ptWestConList, ptEastConList, &ChannelWidth, &ChannelHeight, &ptHorSegList, &ptVerSegList, &ptViaList)) printf("the channel width is modified;0); else printf("the channel width is not modified;0);

See Also

apr(3)

Bug Report

This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi research team.
We need your feedbak to improve documentation and tools. If you find bugs, please fill-in the form at http://asim.lip6.fr/alliance/support/bug-report/ Thanks for doing this.


Table of Contents

 



Alliance Web Site © 1997, 2002 ASIM/LIP6/UPMC, page maintained by Czo [Olivier Sirol] , last updated on 26 May 2000.