1. What is floorplanning?
A. Floorplanning is the process of strategically positioning blocks and macros within the chip or core area, thereby defining routing regions. This process determines the die size and establishes wire tracks for standard cell placement. It also generates power straps and specifies Power Ground (PG) connections, as well as I/O pin/pad placement information. In essence, floorplanning involves determining macro placement, power grid generation, and I/O placement.
2. What constitutes a well-executed floorplan?
A. A robust floorplan should adhere to the following constraints:
* Minimize the overall chip area.
* Facilitate the routing phase (ensuring routability).
* Enhance performance by reducing signal delays.
3. What inputs are required for floorplanning?
A. The following inputs are essential for floorplanning:
* Synthesized Netlist (.v, .vhdl)
* Design Constraints (SDC – Synopsys Design Constraints)
* Physical Partitioning Information of the design
* IO Placement file (optional)
* Macro Placement File (optional)
* Floorplanning Control parameters
4. What are the outputs of the floorplanning process?
A. The floorplanning process yields the following outputs:
* Die/Block Area
* I/Os Placement
* Macros Placement
* Power Grid Design
* Power Pre-routing
* Standard cell placement areas
5. Given a netlist comprising 500k gates, how can the die area and floorplanning be estimated?
A. There are two primary methods for estimating die area:
Method 1:
Each cell possesses an area value specific to the chosen library. By examining each cell and multiplying its count by its corresponding area from the vendor's library, a density factor can be applied. Typically, a standard design achieves approximately 80% density after placement. This data allows for an estimation of the required die area.
Method 2:
Alternatively, the design can be loaded into an implementation tool. By adjusting the floorplan (x and y coordinates), the initial utilization can be set to approximately 50% to 60%.
The approach is contingent upon the quality and completion status of the netlist, specifically the degree of completion, such as 75%, 80%, or 90%.
6. What is the methodology for floor planning in multi-Vdd designs?
A. The initial step involves defining the power domains, followed by the implementation of power rings for each domain and the addition of power stripes to supply power to standard cells.
7. What is the definition of core utilization percentage?
A. The core utilization percentage represents the proportion of the core area utilized for cell placement. This is calculated as the ratio of the total cell area (including hard macros, standard cells, and soft macro cells) to the core area. For instance, a core utilization of 0.8 indicates that 80% of the core area is used for cell placement, with 20% available for routing.
8. Does an increase in core utilization to 90% potentially lead to macros being placed outside the core area, and does this imply a reduction in width and height?
A. Operating at 90% utilization may introduce congestion and routing challenges, potentially hindering routing within the designated area. While it may be feasible to accommodate this utilization level initially, subsequent timing optimizations, such as upsizing and buffer insertion, can increase the size requirements. In such cases, adjustments to the floorplan may be necessary. Therefore, a safer approach is to maintain a utilization range of 70% to 80%.
9. Why is it necessary to remove all placed standard cells and then write out the floorplan in DEF format? What is the purpose of the DEF file?
A. The DEF file primarily focuses on the floorplan size. This method is employed to obtain an abstract representation of the floorplan. By saving and loading this file, the abstract can be restored, eliminating the need to redo the floorplan.
10. Can area recovery be achieved by downsizing cells along paths with positive slack?
A. Yes, area recovery can be accomplished by downsizing cells on paths exhibiting positive slack. Additionally, the removal of unnecessary buffers can also contribute to area recovery.
11. How can IR drop be managed by adjusting the number of power straps? While increasing the number of power straps reduces IR drop, what is the optimal number of straps to implement? How is the required number of straps calculated? What potential issues may arise from an excessive number of straps?
A. Tools such as Voltagestrom and Redhawk can be utilized to calculate IR drop if it is excessive. Based on the results, additional straps can be added. Through repeated project experience, the appropriate number of straps can be determined without the need for these tools. While calculations exist, they are approximate. An excessive number of straps can lead to routing congestion and impact the area. For further details on determining the number of power straps required for a design, please refer to the provided link.
12. aprPGConnect is used for the logical connection of all VDD and VSS nets of all modules. How are all VDD and VSS nets connected to the global VDD/VSS nets before placement?
A.
The aprPGConnect facilitates the logical connection of all VDD and VSS nets across all modules. This is for physical connection.