Method and system for maintaining hierarchy throughout the integrated circuit design process
First Claim
1. For configuring a logic array integrated circuit having a plurality of function blocks to implement a logic design, the logic design comprising a plurality of interconnected logic cells, each occurrence of a logic cell in the design being an instance of the logic cell, each of said logic cells being defined by a functional definition common to all instances of said logic cell, and each of said defined logic cells having a default physical layout, a method of using a computer to place said logic design in said logic array while at least partially maintaining a hierarchical relationship among logic cell instances and a logic cell functional definition, said method comprising the steps of:
- generating a first alternative physical layout of a first logic cell, said first alternative layout having a functional definition identical to that of said default layout of said first logic cell;
determining whether said first alternative layout is preferable to said default layout of said first logic cell when one or more instances of said first logic cell is placed;
selecting either of said first alternative layout and said default layout for placement in at least one of said function blocks;
placing said plurality of logic cells, including said first logic cell having said selected layout, among said function blocks, thereby allowing selective placement of the logic design while at least partially maintaining the hierarchical relationship among the plurality of logic cell instances and the logic cell functional definition.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for translating abstract structural or behavioral circuit descriptions to physically implementable files, preferably suitable for use in a Field Programmable Gate Array (FPGA) or other programmable device. A selection of layouts are generated for a cell definition (a function), allowing optimization and acceleration of circuit placement and routing without compromising design hierarchy or altering design function. Layout transformation functions may be manually initiated or automatically selected and applied during implementation of a placement algorithm.
-
Citations
12 Claims
-
1. For configuring a logic array integrated circuit having a plurality of function blocks to implement a logic design, the logic design comprising a plurality of interconnected logic cells, each occurrence of a logic cell in the design being an instance of the logic cell, each of said logic cells being defined by a functional definition common to all instances of said logic cell, and each of said defined logic cells having a default physical layout, a method of using a computer to place said logic design in said logic array while at least partially maintaining a hierarchical relationship among logic cell instances and a logic cell functional definition, said method comprising the steps of:
-
generating a first alternative physical layout of a first logic cell, said first alternative layout having a functional definition identical to that of said default layout of said first logic cell; determining whether said first alternative layout is preferable to said default layout of said first logic cell when one or more instances of said first logic cell is placed; selecting either of said first alternative layout and said default layout for placement in at least one of said function blocks; placing said plurality of logic cells, including said first logic cell having said selected layout, among said function blocks, thereby allowing selective placement of the logic design while at least partially maintaining the hierarchical relationship among the plurality of logic cell instances and the logic cell functional definition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of placing a logic design among function blocks in a configurable logic device, said logic design comprising a plurality of interconnected logic cells, each of said logic cells being defined by a functional definition, each of said logic cells having a default physical layout, and said logic cells being hierarchically related to each other within said logic design such that all instances of a logic cell have an identical functional definition, said method comprising the steps of:
-
calculating a plurality of alternative layouts for each of said logic cells; preliminarily placing each of said logic cells among said function blocks; substituting a first alternative layout for a default layout of a first logic cell; checking the compatibility of said substitution with said logic device; calculating the cost of implementing said substitution; retaining said substitution if said cost is lower than the cost of implementing said default layout.
-
Specification