Routing Tasks
Tasks performed in the Routing Stage Global Routing Track Assignment Detail Routing Global Routing Before routing of traces is finalized, the implementation tool uses an estimate of routing distance to obtain RC parasitics of that route. Since routing is not yet finalized, the phase is called the global route. The estimated routes are used to…
Routing
Routing is done after CTS Stage. Here in this stage an exact path for the interconnect of cells (Macros, Std. cells) and I/O pins is determined.Metals and Vias are crested in the layout which is defined by the logical connections present in the netlist. The tool depends on the information which is present after CTS…
Qualifying Placement
Check for proper PG Connectivity. Checking if Pins are logically connected to nets. Proper Legalization of Cells in Design. No Cell overlap in the design. A legalized location is available for every cell. Congestion check for lower Cell/Pin density. If still congestion persists, follow congestion reduction techniques like Cell Padding, Placement Blockages. Timing Check(Setup). Setup…
Placement Steps
All wire load models are removed before the start of placement optimization. Placement uses R and C values from the virtual route for timing calculations. The virtual route is the Manhattan distance between two pins. Virtual route RC values are more accurate than Wire Load Model RC values. Global/Coarse Placement During this phase, the PnR…
Inputs and Outputs of Placement
Inputs to Placement Netlist/Verilog(.V) The Logical Connectivity of all cells in design is required here in placement. So, the Netlist requirement is of higher priority. Floorplan DEF(Design Exchange Format) icc_shell> write_def —> will store database till Floorplan. icc_shell> read_def when required. The most requirement would be when there is a bad floorplan found in the…
Checks before Placement
Before starting placement it is better to do some analysis and checks on design/tool settings. This helps in reducing iterations. Check for missing or extra placement and routing blockages(Hard/Soft/Partial). Try using partial blockages mostly as they take some ratio of inverters/buffers while doing optimization. Hard blockages don’t allow any optimization cells, so it would be…
Placement Objectives & Quality Checks
Few of the objectives have to be maintained to achieve proper placement of cells in the design without degrading their functionality. Performance(Timing): In the placement stage, we only have placement of cells information but not their connectivity information. Routing is done in a way that it does not take much time for signal transition giving…
Miscellaneous Topics in Pre-Placement
Miscellaneous topics in Pre-Placement Insertion of Decap Cells(Not everyone follows this) As mentioned, decap cells are leaky and need to be used effectively, insertion of these cells is not mandatorily followed by all designers. It depends on the top-level team to decide to use them in layout or not. Magnet Placement Here fixed objects are…
Pre-Placement
Pre-Placement Before the process of placement getting started, few steps were performed here in this stage generally called as Pre-Placement Stage. In this stage following things are implemented: Physical-Only Cells(Well Taps and Endcaps) These cells present in the library which connect only to power and ground rails and do not have any signal connectivity. Endcap…
Important Terms Related to Placement
What is ECO(Engineering Change Order)? This process is performed when there is, Some functionality enhancement of the existing device. This functionality enhancement change might be very small to undergo all the process steps again. There might be some design bug that needs to be fixed which was caught very late in the design cycle. As…