Wednesday, 24 July 2013

Macro Placement

Macro Placement:

Macros placement is done manually based on the connectivity with other macros and also with I/O pads. Flylines are used for placing macros manually. Fly/flight lines are virtual connections between macros and also macros to I/O pads. This helps the designer to get an idea about the logical connections between macros and pads. Fly/flight lines act as guidelines to the designer to reduce the routing resources to be used.

Based on these connections macros and I/O Pads/pins, Flylines are 3 types

1. Macro to Macro flylines.
2. Macro to I/O flylines.
3. Pin to Pin flylines.

1. Macro to Macro flylines:

                                          Figure(1): Macro to Macro flylines
As shown in above figure(1), When two macros are selected for macro to macro flylines, The total number of connections between them are shown. This gives an idea to the designer about which two macros to be placed closer. Hence, The two macros are placed closer to each other as shown in above figure (1) (Right side)

2. Macro to I/O flylines:

                                                 Figure(2): Macro to I/O flylines

As shown in above figure(2), when macro to I/O port Pin flylines are selected, the total number connections between macro and IO pins are shown. This gives an idea to the designer to identify the macros to be kept at the corners of the die or block. Hence the macro is placed closer to the periphery.

3. Pin to Pin flylines:

If two macros are selected for pin to pin fly lines, the virtual connections are shown and the much preciously connection to exact pin to pin will be shown. This guides the designer to choose an appropriate cell orientation (figure(3)) for the macros and as a resultant will be efficient routing.

                                              Figure 3(a): Pin to Pin flylines
                                   Figure 3(b): Cell Orientation (MY 90) based on Pin to Pin flylines


  1. Very nice Sir, can we place anything between macros?

  2. Very nice Sir, can we place anything between macros?