Computer-aided design and analysis of circuits and semiconductor – Nanotechnology related integrated circuit design
Reexamination Certificate
2000-02-07
2002-11-19
Siek, Vuthe (Department: 2825)
Computer-aided design and analysis of circuits and semiconductor
Nanotechnology related integrated circuit design
C716S030000
Reexamination Certificate
active
06484292
ABSTRACT:
FIELD OF THE INVENTION
The present invention generally relates to the implementation of circuit designs, and more particularly to reusing selected portions of a prior circuit implementation to implement portions of a new circuit design.
BACKGROUND
The term “net” as used herein refers to a conductive region connecting components of a user's circuit design. For example, one net may connect the output terminal of an AND gate to the input. terminal of another AND gate and to the input terminal of a flip-flop. An AND gate is one component type, and a flip-flop is another component type. An “instance” is a single occurrence of a component type. A “netlist” is a list of all the nets that connect the component instances of a user's design and the component instances connected by each net.
The circuit design process generally includes, in order, design entry, synthesis, optimization, device mapping, and place-and-route, along with functional and timing simulations to verify correctness. If an error is identified late in the process, much of the process may need to be repeated in order to integrate a design change.
One solution to avoid repeating the entire process of optimization, device mapping, and place-and-route is to only re-implement the parts of the design that changed from the previous design cycle. Although this solution may be fairly straightforward when using schematics for design entry (because changes to a schematic cause very little change in a netlist), it is more difficult when the design has been generated through the use of high-level languages and synthesis. That is, a small design change in a high-level language may substantially impact the entire design process, and the new implementation may no longer meet the designer's timing requirements, fit the target device, or have the same pin assignments as the prior implementation. Thus, additional work may be required to address the problems that were introduced by a small design change. It is desirable that significantly different implementations do not result from relatively small design changes, so that additional engineering costs are not incurred. An incremental design method that addresses the aforementioned problems, as well as other related problems, is therefore desirable.
SUMMARY OF THE INVENTION
The present invention generally relates to the implementation of circuit designs, and more particularly to testing for logical equivalence between portions of a new circuit design and portions of a prior circuit implementation and reusing selected portions of the prior circuit implementation to implement the new circuit design. By testing for logical equivalence instead of testing for structural equivalence, the present invention eliminates unnecessary repetition of stages of the design cycle such as optimization, device mapping, and place-and-route.
In various embodiments, the invention generally includes comparing for logical equivalence primary outputs of the new design to corresponding primary outputs of a prior implementation. If the logic is equivalent, the implementation of the primary outputs from the prior implementation is reused to implement the corresponding primary outputs of the new design.
In another embodiment, attributes can be associated with the primary outputs of the new design to selectively control whether elements of the prior implementation are used to implement the primary outputs. Thus, a designer has control over which portions of a new design are to be implemented without regard to the prior implementation.
For outputs in the new design that are not present in the prior implementation and for outputs in the new design having logic that has changed from the prior implementation, the primary outputs of the new design are expressed in terms of the logic from the prior implementation, thereby reusing portions of the prior implementation for the new and changed primary outputs.
It will be appreciated that various other embodiments are set forth in the Detailed Description and Claims which follow.
REFERENCES:
patent: 4882690 (1989-11-01), Shinsha et al.
patent: 5436849 (1995-07-01), Drumm
patent: 5761079 (1998-06-01), Drumm
patent: 5805462 (1998-09-01), Poirot et al.
patent: 5856926 (1999-01-01), Matsumoto et al.
patent: 5867396 (1999-02-01), Parlour
patent: 5875112 (1999-02-01), Lee
patent: 6080204 (2000-06-01), Mendel
patent: 6102964 (2000-08-01), Tse et al.
patent: 6298319 (2001-10-01), Heile et al.
D. Brand, Incremental Synthesis, IEEE/ACM International Conference on Computer-Aided Design, pp. 14-18, Nov. 1994.*
M. Fujita et al., Evaluation and Improvement of Boolean Comparison Method Based on Binary Diagrams, IEEE International Conference on Computer-Aided Design, pp. 2-5, Nov. 1988.
Jain Gitu
Soe Soren T.
Mausu LeRoy D.
Siek Vuthe
Thompson A. M.
Xilinx , Inc.
LandOfFree
Incremental logic synthesis system for revisions of logic... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Incremental logic synthesis system for revisions of logic..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Incremental logic synthesis system for revisions of logic... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2940572