RDS(1)

NAME
rds - rds package

DESCRIPTION

I)  Presentation of the RDS data structure

         Rds is a Rectangle data structure which contains a minimun of information in order to permit to the user to configurate it according to his needs (optimisation of use of the structure). Somme technological parameters of the structure can be configurated by using a technology file (cmos/asga).

         The RDS data structure permits a real representation of objects used because they are described in the forme of rectangles (a chip is a rectangle bag). So, RDS data structure is used by all the tools which need a real rectangle view of a chip (ex: lynx, s2r, graal, druc).

II) Concepts used

         A figure or an instance structure have a table of layers. Each entry of the table is a pointer to a rectangles's list associated to the corresponding layer.

         The RDS data structure use a high number of rectangles. For optimizing memory acces time when getting a rectangle in memory, memory allocation for a rectangle is done by heap : At the first allocation of a rectangle, a memory for a high number of rectangles is allocated. It permits to minimize fragmentation.

         If the user wants to add other fields to a rectangle structure, he can do it. In that case, a structure defined by the user is added to the rectangle structure (the all rectangle structure is an object of two structures). Functions of RDS library take this particularity into account.

         A complementary data structure permits to cut the chip in windows. A window (the size can be modified by the user) knows all the rectangles of the chip contained in it. Moreover, each rectangle can know all windows in which it's contained. This structure is useful to get quickly an object in the chip.

         The rds structure is technology dependant, so it uses a technological file.

III)
    Description of the structure The RDS structure is composed of figures, instances and rectangles. The basic structure contains a minimum of information so the user has to add additionnal structure if he wants.

    A figure
        A figure represents a symbolic view of a chip. It contains rectangles and instances. A figure has a name (it must be unique) which represents it on the disk, a list of instances and a list of rectangles by layer.

    An Instance
        An instance represents a figure described in a higher hierarchical level. An instance has a model name (the figure which describes it) and an instance name (the name of the instance in the current figure: two different instances of a figure must have different names). An instance can subject symmetries and rotations.

    A rectangle
        It is the basic item which permits to constitute objects of a figure. The user can add a structure defined by him to complete the rectangle structure.

IV) Description of the libraries which constitute the RDS package

    The Rds library :
        This library contains the description of the RDS structure (figure, instance, rectangle), allocation and free functions of objects, adding functions of objects in a list of objects.

    The Rfm library :
        Contains conversion functions from MBK to RDS objects, visualization functions of objects (MBK and RDS).

    The Rpr library :
        Contains the parser of the technological file of the RDS structure.

    The Rut library :
        Contains utility functions like searching a figure by its name, creating a list of models of instances contained in a figure.

    The Rtl librairie :
        This library contains environment variables of the RDS structure, function of loading and saving of a figure in the "cif" or "gds" format.

    The Rwi Library :
        It contains all the functions of the windowing of a chip like adding/deleting a window, adding a rectangle in a window, visualization of objects of a window.

SEE ALSO
librds, librfm, librpr, librtl, librut, librwi, RDS_IN, RDS_OUT, RDS_TECHNO_NAME