Jump to content

Floorplan (microelectronics)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by MrOllie (talk | contribs) at 14:28, 19 August 2011 (Reverted 1 edit by 202.46.23.60 (talk): Rv linkspam. (TW)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Mock floorplan in an IC layout editor window

In electronic design automation, a floorplan of an integrated circuit is a schematic representation of tentative placement of its major functional blocks.

In modern electronic design process floorplans are created during the floorplanning design stage, an early stage in the hierarchical approach to chip design.

Depending on the design methodology, the actual notions of floorplan may differ.

Floorplanning

In electronic design automation, floorplanning takes in some of the geometrical constraints in a design. Examples of this are:

  • bonding pads for contacting off-chip (often using wire bonding) are normally located at the circumference of the chip;
  • line drivers often have to be located as close to bonding pads as possible;
  • chip area is therefore in some cases given a minimum area in order to fit in the required number of pads;
  • areas are clustered in order to limit data paths thus frequently featuring defined structures such as cache RAM, multiplier, barrel shifter, line driver and arithmetic logic unit;
  • purchased intellectual property blocks (such as a processor core) come in ready defined area blocks;
  • some IP-blocks come with legal limitations such as permitting no routing of signals directly above the block.

Mathematical models and optimization problems

In some approaches the floorplan may be a partition of the whole chip area into axis aligned rectangles to be occupied by IC blocks. This partition is subject to various constraints and requirements of optimization: block area, aspect ratios, estimated total measure of interconnects, etc.

Finding good floorplans has been a research area in combinatorial optimization. Most of problems related to finding optimal floorplans are NP-hard, i.e., require vast computational resources. Therefore the most common approach is to use various optimization heuristics for finding good solutions.

Another approach is to restrict design methodology to certain classes of floorplans, such as sliceable floorplans, discussed below.

Sliceable floorplans

A sliceable floorplan, with a slicing order indicated
The simplest non-sliceable floorplan

A sliceable floorplan is a floorplan that may be defined recursively as described below. [1]

  • A floorplan that consists of a single rectangular block is sliceable.
  • If a block from a sliceable floorplan is cut ("sliced") in two by a vertical or horizontal line, the resulting floorplan is sliceable.

Sliceable floorplans have been used in a number of early Electronic Design Automation tools[1] for a number of reasons. Sliceable floorplans may be conveniently represented by binary trees which correspond to the order of slicing. More importantly, a number of NP-hard problems with floorplans have polynomial time algorithms when restricted to sliceable floorplans.[2]

Further Reading

References

  1. ^ a b "he Electrical Engineering Handbook", Richard C. Dorf (1997) ISBN 0849385741
  2. ^ Sarrafzadeh, M, "Transforming an arbitrary floorplan into a sliceable one", Proc. 1993 IEEE/ACM International Conference on Computer-Aided Design (ICCAD-93), pp. 386-389.