What are Placement and Routing Blockages in VLSI?
There are basically two types of blockages in VLSI,.i.e., Placement Blockages and Routing Blockages. The Placement Blockages are again classified into three types. They are hard blockages, soft blockages and partial blockages. These are explained in details below.
-
Placement blockage
Placement blockages are the areas where placement of cells must be avoided in the defined region. There are basically three kind of placement blockages.
-
Hard Blockages
Hard blockages never allow any cells to place where the region is defined.
2. Soft Blockages
Soft blockages do not allow cells to place during the placement, but this region can be used during in-place optimization, CTS, ECO etc. Basically, it is not adding any STD cell but buffers and inverters for the optimization.
3. Partial Blockages
Sets a percentage of the area that is unavailable for placement.
-
Routing Blockage
Routing blockages are used to prevent the route in a particular area for the specific metal layer for all nets or only signal nets or PG nets.
Halo
- Halos are blockages which is used around the macros to prevent congestion in later stages. If we move macro, halos move with it.
- Routing Halos can prevent signal integrity issues around blocks. Adding routing halos prevent long wires from being routed within the halo region.
- The area cannot be used to place blocks or cells during placement, but can be used during in-place optimization, clock tree synthesis, ECO placement, or placement legalization (refinePlace).
Routing halos can prevent signal integrity issues around blocks. Adding routing halos prevent long wires from being routed within the Halo region.
Please explain this one I haven’t understand
Hi Satya,
first, let’s understand what routing halo does, routing halo prevents the route to complete so if there are no routes or fewer routes in a particular area then there will be very little interaction between the metal layers and hence it will prevent the signal integrity. I hope this clarifies.
Thanks
Hello Admin,
Please tell me the innovus command to put routing halos? As per my knowledge routing halos and placement halos are same thing it’s not like routing blockage and placement blockage, correct me if I am wrong.
Hi Mukesh,
For commands please join our forum page. we can discuss it there. Here is link : https://ivlsi.com/forum
Coming to your point regarding halo, Halos are blockages that are being used around the macro’s to prevent congestion in the later stage.If we move macro halos moves with it. So basically you are correct there isn’t any concept like routing and placement halo, its Halo only which prevents placement of any cells in that area to avoid congestion in the later stage, as we need more routing resources to route the macros. I hope this is clear.
Thanks
Gaurav