Presentation is loading. Please wait.

Presentation is loading. Please wait.

ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.

Similar presentations


Presentation on theme: "ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI."— Presentation transcript:

1 ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI

2 2 Winter 2004ICS 252-Intro to Computer Design Cell-Library Binding Task of transforming an unbound logic network into a bound network Bound network: interconnection of components that are instances of elements of a given library Interface to physical design Technology-dependent optimization Referred to as technology mapping as well.

3 3 Winter 2004ICS 252-Intro to Computer Design Library binding Library: set of logic primitives Binding process: exploit the library for best implementation Optimize: area/delay/testability Optimization tasks: intractable Two groups –Heuristics –Rule-based

4 4 Winter 2004ICS 252-Intro to Computer Design Library binding Digital circuits: hierarchical and sequential in nature Registers, input/output binding: direct replacement Binding on multi-level combinational components Library cells: single output combinational cells Two level logics are decomposed into multi-level before library binding (except for PLA implementation)

5 5 Winter 2004ICS 252-Intro to Computer Design vxvx b c vwvw vuvu e f vyvy d vzvz d b c e f d d b c e f d d b c e f d d

6 6 Winter 2004ICS 252-Intro to Computer Design Problem Formulation Element in library –Characterized by function, terminals, and parameters such as area, delay, etc. Single-output combinational logic function An area cost input-/output propagation delay Common approach: network covering –Replacing subnetwork with cell library –Cell matches a subnetwork if they are functionally equivalent –A necessary condition is that each internal vertex is covered by at least one match.

7 7 Winter 2004ICS 252-Intro to Computer Design Covering problem in library binding Librarycost AND2 OR2 OA21 445445 v1v1 b c v2v2 v3v3 d a a b c d a b c d m4 m3 m1:OR2 m2:AND2 m3:AND2 a b c d

8 8 Winter 2004ICS 252-Intro to Computer Design Covering problem example V1 can be covered by unate clause m1+m4+m5 V2 can be covered by clause m2+m4 V3 can be covered by clause m3+m5 Ensure that appropriate inputs are available to each chosen (matched) cell. –m2  m1 by binate clause m’2+m1 –m3  m1 by clause m’3+m1  (m1+m4+m5)(m2+m4)(m3+m5)(m’2+m1)(m’3+m1)=1 Binate clause  binate covering  intractable problem

9 9 Winter 2004ICS 252-Intro to Computer Design Algorithms for library binding Library binding similar to code generation in a software compiler –Matching problem addresses generation of possible substitutions –Covering problem gives optimal selection of matches Network binding problem Matching on network –Boolean –Structural

10 10 Winter 2004ICS 252-Intro to Computer Design Matching of two scalar combinational functions Boolean matching –Given two single-output combinational functions f(x) and g(y), we say f matches g if there exists a permutation matrix P such that f(x)=g(Px) is a tautology. Structural matching –Given structural representation of two functions f and g, there is a structural match if the graphs are isomorphic example

11 11 Winter 2004ICS 252-Intro to Computer Design Matching algorithms Boolean matching and structural matching: intractable problems Heuristics: –Network covering –Composed of two major pre-processing stages: Decomposition Ensure each vertex is at least one match Partitioning Multiple-output  single-output

12 12 Winter 2004ICS 252-Intro to Computer Design Covering algorithms Based on structural matching Find common patterns Graphs associated with the library elements are called pattern graphs. Network partitioning into subject graphs Both subject and pattern graphs: DAG and rooted (root?) Structural matching: check isomorphism between subject graphs and pattern graphs

13 13 Winter 2004ICS 252-Intro to Computer Design Tree-based matching One type operation (degree of vertices shows the type) Tree matching: optimal solution in linear time Simple algorithm that determines if a pattern tree is isomorphic to a subgraph in a tree –Matching root of pattern to a vertex of the subject tree and visiting recursively their children –Isomorphism can be verified by comparing the degrees of pairs of vertices in both trees in top-down fashion until leaves of pattern tree are reached. –If match, the corresponding children are recursively visited. Otherwise, mismatch.

14 14 Winter 2004ICS 252-Intro to Computer Design Tree based covering Based on dynamic programming Min-area covering Algorithm: –Traverse the tree in a bottom-up fashion –For all vertices of the subject tree, the algorithm determines the matches of locally rooted subtrees with pattern trees. –Three possibilities: If pattern tree and locally rooted subtree are ismorphic, then label the vertex with the cost cell. If pattern tree is ismorphic to a subtree of the locally rooted subject subtree with the same root and a set of leaves L, vertex is labeled with the corresponding cell cost plus the labels of vertices No match

15 15 Winter 2004ICS 252-Intro to Computer Design Tree-based matching and covering Simple and efficient Pitfalls: –Multiple non-isomorphic patterns for some cells –Some cells such as XOR and XNOR cannot be represented by tree –Structural matching detect a subset of possible matches and don’t permit the don’t care information of library binding

16 16 Winter 2004ICS 252-Intro to Computer Design Boolean matching Overcome pitfalls of tree-based and structural matching More computationally expensive Better quality solution Based on dynamic programming used in structural matching but more complex

17 17 Winter 2004ICS 252-Intro to Computer Design Summary Library binding: –key link between logic synthesis and physical design –Based on matching and covering –Structural matching and covering: Intractable problem –Tree based matching and covering : simple and efficient but with some pitfalls –Algorithms : highly dependent on initial decompositions


Download ppt "ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI."

Similar presentations


Ads by Google