Incremental logic synthesis system for efficient revision of logic circuit designs
First Claim
1. A method for performing incremental logic synthesis of a revised technology-dependent digital circuit design model M22 from a revised technology-independent digital circuit design model M12 and an unrevised technology-dependent digital circuit design model M21, each said model including one or more digital logic functions having one or more inputs and one or more outputs, each said model having one or more boundary nodes to each of which are mapped one or more of said inputs and outputs, said models M12 and M21 sharing a first set of one or more said boundary nodes designated as Boolean inputs and a second set of one or more said boundary nodes designated as Boolean outputs, said method comprising the computer-executable steps of:
- (a) performing one or more steps from a group consisting essentially of the following three unordered steps of;
(a.1) performing an exclusion procedure including the ordered steps of(a.1.1) selecting one or more of said Boolean outputs to form an output group such that the logical function of said Boolean inputs in said model M21 represented by each member of said output group is identical to the logical function of said Boolean inputs in said model M12 represented by said each member, and(a.1.2) deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said output group;
(a.2) performing one or more times a forward sweep procedure including the ordered steps of(a.2.1) selecting one or more first pairs of said nodes to form a forward sweep group such that each said first node pair includes a first node in said model M12 and a second node in said model M21 where said first and second nodes represent identical logical functions of said Boolean inputs except for complimentary operators,(a.2.2) redesignating as new inputs in said revised technology-independent design model M12 each said first node member of said forward sweep group, and(a.2.3) deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said new inputs;
(a.3) performing one or more times a backward sweep procedure including the ordered steps of(a.3.1) selecting one or more second pairs of said nodes to form a backward sweep group such that each said second node pair includes a third node in said model M12 and a fourth node in said model M21 where each said Boolean output represents a logical function of said third nodes and said Boolean inputs in said model M12 that is identical to the logical function of said fourth nodes and said Boolean inputs in said model M21 at said each Boolean output except for complimentary operators,(a.3.2) redesignating as new outputs in said revised technology-independent design model M12 each said third node member of said backward sweep group, and(a.3.3) deleting from said revised technology-independent design model M12 each said digital logic function and each said output to which are mapped only said new outputs;
(b) synthesizing a new technology-dependent design model increment having a logical function equivalent to the portion of said model M12 remaining after completion of said performing step (a); and
(c) merging said new technology-dependent design model increment with said unrevised technology-dependent design model M21 to form said revised technology-dependent design model M22.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for incremental logic synthesis that transforms a revised technology-independent electronic digital circuit design into a revised technology-dependent design deviating as little as possible from the original technology-dependent design. The incremental synthesis procedure includes a forward sweep technique where nodes in the revised technology-independent model and the original technology-dependent design are compared to see if they map the same logical function of the inputs common to both designs. A backward sweep technique compares nodes in the revised technology-independent model to the unrevised technology-dependent design to see which outputs common to both map the same logical node functions. Portions of the revised technology-independent model with the same logical function as corresponding parts of the unchanged technology-dependent design are progressively eliminated, reducing the revised technology-independent design to an "increment" that is then conventionally synthesized and merged with the unchanged technology-dependent design to yield the revised technology-dependent design having only the minimal necessary revisions.
52 Citations
12 Claims
-
1. A method for performing incremental logic synthesis of a revised technology-dependent digital circuit design model M22 from a revised technology-independent digital circuit design model M12 and an unrevised technology-dependent digital circuit design model M21, each said model including one or more digital logic functions having one or more inputs and one or more outputs, each said model having one or more boundary nodes to each of which are mapped one or more of said inputs and outputs, said models M12 and M21 sharing a first set of one or more said boundary nodes designated as Boolean inputs and a second set of one or more said boundary nodes designated as Boolean outputs, said method comprising the computer-executable steps of:
-
(a) performing one or more steps from a group consisting essentially of the following three unordered steps of; (a.1) performing an exclusion procedure including the ordered steps of (a.1.1) selecting one or more of said Boolean outputs to form an output group such that the logical function of said Boolean inputs in said model M21 represented by each member of said output group is identical to the logical function of said Boolean inputs in said model M12 represented by said each member, and (a.1.2) deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said output group; (a.2) performing one or more times a forward sweep procedure including the ordered steps of (a.2.1) selecting one or more first pairs of said nodes to form a forward sweep group such that each said first node pair includes a first node in said model M12 and a second node in said model M21 where said first and second nodes represent identical logical functions of said Boolean inputs except for complimentary operators, (a.2.2) redesignating as new inputs in said revised technology-independent design model M12 each said first node member of said forward sweep group, and (a.2.3) deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said new inputs; (a.3) performing one or more times a backward sweep procedure including the ordered steps of (a.3.1) selecting one or more second pairs of said nodes to form a backward sweep group such that each said second node pair includes a third node in said model M12 and a fourth node in said model M21 where each said Boolean output represents a logical function of said third nodes and said Boolean inputs in said model M12 that is identical to the logical function of said fourth nodes and said Boolean inputs in said model M21 at said each Boolean output except for complimentary operators, (a.3.2) redesignating as new outputs in said revised technology-independent design model M12 each said third node member of said backward sweep group, and (a.3.3) deleting from said revised technology-independent design model M12 each said digital logic function and each said output to which are mapped only said new outputs; (b) synthesizing a new technology-dependent design model increment having a logical function equivalent to the portion of said model M12 remaining after completion of said performing step (a); and (c) merging said new technology-dependent design model increment with said unrevised technology-dependent design model M21 to form said revised technology-dependent design model M22. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for performing incremental logic synthesis of a revised technology-dependent digital circuit design model M22 from a revised technology-independent digital circuit design model M12 and an unrevised technology-dependent digital circuit design model M21, each said model including one or more digital logic functions having one or more inputs and one or more outputs, each said model having one or more boundary nodes to each of which are mapped one or more of said inputs and outputs, said models M12 and M21 sharing a first set of one or more said boundary nodes designated as Boolean inputs and a second set of one or more said boundary nodes designated as Boolean outputs, said system comprising:
-
reduction means for identifying and limiting the revision of said model M21 needed to obtain said model M22, said reduction means including one or more elements from a group consisting essentially of exclusion means, forward sweep means and backward sweep means, said exclusion means including first selection means for selecting one or more of said Boolean outputs to form an output group such that the logical function of said Boolean inputs in said model M21 represented by each member of said output group is identical to the logical function of said Boolean inputs in said model M12 represented by said each member, and first deletion means for deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said output group, said forward sweep means including second selection means for selecting one or more first pairs of said nodes to form a forward sweep group such that each said first node pair includes a first node in said model M12 and a second node in said model M21 where said first and second nodes represent identical logical functions of said Boolean inputs except for one or more complimentary operators, first deletion means for redesignating as new inputs in said revised technology-independent design model M12 each said first node member of said forward sweep group, and second deletion means for deleting from said revised technology-independent design model M12 each said digital logic function and each said input that maps only into said new inputs, and said backward sweep means including third selection means for selecting one or more second pairs of said nodes to form a backward sweep group such that each said second node pair includes a third node in said model M12 and a fourth node in said model M21 where each said Boolean output represents a logical function of said third nodes and said Boolean inputs in said model M12 that is identical to the logical function of said fourth nodes and said Boolean inputs in said model M21 at said each Boolean output except for complimentary operators, second designation means for redesignating as new outputs in said revised technology-independent design model M12 each said third node member of said backward sweep group, and third deletion means for deleting from said revised technology-independent design model M12 each said digital logic function and each said output to which only said new outputs are mapped; logic synthesis means for producing a new technology-dependent design model increment having a logical function equivalent to the portion of said model M12 remaining after any operation of said reduction means; and merger means for merging said new technology-dependent design model increment with said unrevised technology-dependent design model M21 to form said revised technology-dependent design model M22. - View Dependent Claims (10, 11, 12)
-
Specification