Scroll to navigation

RFLATTENLOFIG(3) MBK LOGICAL UTILITY FUNCTIONS RFLATTENLOFIG(3)

NAME

rflattenlofig - recursivly flatten a figure

ORIGIN

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.

Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr

SYNOPSYS

#include "mlu.h"
void rflattenlofig(ptfig, concat, catal)
lofig_list ∗ptfig;
char concat;
char catal;

PARAMETERS

ptfig
Pointer to a logical figure
concat
Name generation mode
catal
End level choice

DESCRIPTION

rflattenlofig recursivly flattens all the instances of the figure pointed to by ptfig.
The concat argument can take either the value YES in which case the name of the objects comming from instances are named insname'X'objectname, where 'X' is the caracter set int the MBK_SEPAR(1) environment variable, or the value NO, and then the object name remains inchanged. This is quite dangerous since name unicity is no more warrantied, and may cause the flatten to fail. See MBK_SEPAR(1), mbkenv(3) and concatname(3) for details.
The catal argument may be set to NO, in which case flattening stops at the transistor level, all hierachies and instances have desapeard, only terminal elements remains. If set to YES, flattening stops when it encounters an instance model beeing present in the catalog file, set by the MBK_CATAL_NAME(1) environment variable. See MBK_CATAL_NAME(1) and incatalog(3) for details.

ERRORS

No errors can directly result from a call to rflattenlofig, but since it uses many other mbk functions, it may be a good error starting point.

EXAMPLE

#include "mlu.h"
void flatten_my_amd2901()
{
loins_list ∗pt;
	pt = getlofig("my_amd2901", 'A');
	rflattenlofig(pt, YES, YES);
	pt->NAME = "my_flattened_amd2901";
	savelofig(pt);
}

SEE ALSO

mbk(1), incatalog(3), mbkenv(3), lofig(3), addlofig(3), getlofig(3), dellofig(3), loadlofig(3), savelofig(3), flattenlofig(3), MBK_CATAL_NAME(1).

BUG REPORT

This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.

October 1, 1997 ASIM/LIP6