Home Knowledge Base Floorplanning basics

Floorplanning basics is the discipline of arranging major blocks of a chip so that timing, power, routability, and physical area all stay within feasible limits before detailed placement and routing begin. Good floorplanning prevents late-stage congestion, timing closure pain, and power integrity problems by giving the design a physically realistic structure early in implementation.

Why floorplanning matters: the floorplan is the bridge between architecture and physical design. A clean logical hierarchy can still fail if major blocks are placed in a way that creates long critical paths, blocked routing channels, or incompatible power delivery. Early floorplan quality often determines whether a design closes on schedule.

Core floorplanning goals:

Typical floorplanning primitives include: macros, soft logic regions, voltage islands, channel spacing, halo/keepout margins, power straps, and placement blockages. These elements work together to balance density against routability and signal integrity.

Macro placement is often the dominant decision. SRAMs, register files, PLLs, analog IP, and large accelerators can create hard physical constraints because they are not freely movable like standard cells. Their orientation, adjacency, and proximity to I/O or compute clusters must be chosen to support timing and wiring topology.

Hierarchical partitioning simplifies complexity. Breaking the chip into meaningful regions lets designers localize interconnect and manage responsibility boundaries. However, hierarchy must be coordinated with physical timing reality; a neat RTL boundary does not guarantee a good floorplan boundary.

Wirelength and congestion are tightly linked. Longer interconnects consume more delay budget and more routing resources. If multiple long paths funnel through a narrow channel, congestion can explode and trigger DRC or detour routing, which then worsens timing further. Good floorplanning proactively creates balanced routing density.

Power distribution must be co-designed with the floorplan. Large compute blocks and memories create concentrated current demand. The floorplan should support robust straps, via farms, and local decoupling so IR drop does not undermine timing and reliability. Floorplan decisions and PI analysis should iterate together.

Clocking topology depends on block geometry. A floorplan that ignores clock-tree shape can create skew hotspots or excessive insertion delay. Designers should consider clock source locations, buffer hierarchy, and region symmetry to reduce CTS difficulty.

Thermal behavior is part of floorplanning, not a separate afterthought. Hot blocks should not be clustered without heat-spreading provisions. Packing power-dense units too tightly can raise temperature, which then worsens leakage and reliability margins. Thermal maps often influence final macro positioning.

Voltage islands and level shifters add complexity. Multi-voltage designs require boundary planning for isolation cells, level shifters, retention logic, and power gating controls. If these transitions are not reflected in the floorplan, routing and timing closure become much harder later.

I/O proximity can be decisive. PHYs, chiplets, high-speed serial ports, and external memory interfaces often need placement near package balls or routing escape regions. The floorplan must accommodate package and board constraints, not just on-die logic convenience.

Physical design closure is iterative. Initial floorplans are rarely final. Teams evaluate timing, congestion, power, and DRC feedback, then adjust macro positions, channels, and block boundaries. The best floorplans evolve through measured feedback rather than one-shot intuition.

Useful floorplanning metrics include:

These metrics reveal where the physical structure is fighting the design intent.

Common floorplanning pitfalls:

A strong floorplanning workflow starts from architectural block sizing, then places the largest physical constraints first, reserves routing and power resources, validates with early timing/congestion estimates, and iterates until the floorplan is robust enough for detailed implementation.

Engineering takeaway: floorplanning basics are fundamentally about making the chip physically buildable. Good floorplans turn architecture into a routable, power-safe, and timing-feasible layout; bad ones turn optimization into a rescue mission.

Floorplanning domainPrimary objectiveFailure mode if weakPractical mitigation
macro placementshorten critical interconnect and preserve accesslong wires and routing blockageplace large blocks first with slack-aware adjacency
channel and blockage planningkeep routing resources availablecongestion and detour routingreserve corridors, halos, and placement blockages
power grid alignmentdeliver stable current to all regionsIR drop and local timing collapseco-plan straps, vias, and decoupling with floorplan
clock topologyreduce skew and insertion delayCTS hotspots and timing spreadposition clock roots and balance region symmetry
thermal layoutavoid concentrated heatleakage rise and reliability stressspread hot blocks and validate thermal maps
multivoltage planningsupport domain boundaries cleanlyrouting complexity and boundary timing issuespre-plan isolation, shifters, and retention zones
iterative validationclose with measured feedbacklate surprises in congestion/timingloop congestion, PI, and STA reviews early
Common anti-patternWhy it hurts floorplanning
maximally dense macro packingdestroys routing and makes timing closure harder
ignoring package/I/O escape constraintsforces late placement rework
treating power grid as a later stepcreates IR drop and testability issues
overcommitting region utilizationleaves no room for optimization and ECOs
designing from logical hierarchy alonemisses the actual physical cost of interconnect
<svg viewBox="0 0 780 470" xmlns="http://www.w3.org/2000/svg" font-family="-apple-system,Segoe UI,Roboto,sans-serif">
  <rect width="780" height="470" fill="#0d1117"/>
  <text x="390" y="30" text-anchor="middle" fill="#e6edf3" font-size="21" font-weight="700">Floorplanning Basics: Macro and Routing Channels</text>
  <text x="390" y="50" text-anchor="middle" fill="#8b98a5" font-size="12">A good floorplan leaves room for power, routing, timing, and thermal balance</text>

  <rect x="36" y="84" width="708" height="342" rx="12" fill="#111827" stroke="#30363d"/>

  <rect x="82" y="110" width="616" height="236" rx="10" fill="#0f172a" stroke="#334155"/>
  <rect x="116" y="144" width="150" height="82" rx="8" fill="#1d4ed8"/>
  <text x="191" y="174" text-anchor="middle" fill="#ffffff" font-size="12" font-weight="700">SRAM Macro</text>
  <text x="191" y="191" text-anchor="middle" fill="#dbeafe" font-size="9">hard block</text>

  <rect x="320" y="126" width="140" height="116" rx="8" fill="#166534"/>
  <text x="390" y="160" text-anchor="middle" fill="#ffffff" font-size="12" font-weight="700">Compute</text>
  <text x="390" y="177" text-anchor="middle" fill="#d7f5dd" font-size="9">soft logic region</text>
  <text x="390" y="194" text-anchor="middle" fill="#d7f5dd" font-size="9">timing critical</text>

  <rect x="514" y="144" width="150" height="82" rx="8" fill="#7c2d12"/>
  <text x="589" y="174" text-anchor="middle" fill="#ffffff" font-size="12" font-weight="700">I/O PHY</text>
  <text x="589" y="191" text-anchor="middle" fill="#fed7aa" font-size="9">package-facing</text>

  <rect x="282" y="258" width="216" height="54" rx="8" fill="#334155"/>
  <text x="390" y="290" text-anchor="middle" fill="#e2e8f0" font-size="11" font-weight="700">Reserved Routing Channel</text>

  <line x1="266" y1="185" x2="320" y2="185" stroke="#58a6ff" stroke-width="3"/>
  <polygon points="320,185 310,180 310,190" fill="#58a6ff"/>
  <line x1="460" y1="185" x2="514" y2="185" stroke="#58a6ff" stroke-width="3"/>
  <polygon points="514,185 504,180 504,190" fill="#58a6ff"/>

  <rect x="110" y="334" width="560" height="60" rx="10" fill="#0f172a" stroke="#334155"/>
  <text x="390" y="356" text-anchor="middle" fill="#e2e8f0" font-size="11" font-weight="700">Floorplan checks</text>
  <text x="390" y="373" text-anchor="middle" fill="#94a3b8" font-size="9">macro access, routing channels, power continuity, and thermal spread</text>
  <text x="390" y="444" text-anchor="middle" fill="#6e7681" font-size="11">Floorplanning is the physical precondition for routability and closure.</text>
</svg>

Connection to CFS platform: floorplanning basics support reliable chip implementation by aligning architecture, routing, power delivery, and thermal behavior before detailed place-and-route.

floorplanning basicschip floorplanblock placement

Explore 500+ Semiconductor & AI Topics

From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.