Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 VLSI CAD Flow: Logic Synthesis, 6.375 Lecture 13 by Ajay Joshi (Slides by S. Devadas)

Similar presentations


Presentation on theme: "1 VLSI CAD Flow: Logic Synthesis, 6.375 Lecture 13 by Ajay Joshi (Slides by S. Devadas)"— Presentation transcript:

1 1 VLSI CAD Flow: Logic Synthesis, 6.375 Lecture 13 by Ajay Joshi (Slides by S. Devadas)

2 2 RTL Design Flow RTL Synthesis HDL netlist logic optimization netlist Library/ module generators physical design layout manual design a b s q 0 1 d clk a b s q 0 1 d

3 3 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

4 4 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

5 5 Why logic optimization? Transistor count redution AREA Circuit count redutionPOWER Gate count (fanout) reductionDELAY (Speed) Area reduction, power reduction and delay reduction improves design

6 6 Boolean Optimizations Find common expressions Extract and substitute common expression F= f1f1 =AB+AC+AD+AE+ABCDE f2f2 =AB+AC+AD+AF+ABCDF    F= f1f1 =AB+C+D+E()+ABCDE f2f2 =AB+C+D+F()+ABCDF    G  g1g1 =B+C+D f1f1 =Ag1g1 +E()+AEg1g1 f2f2 =Ag1g1 +F()+AFg1g1     Involves: Finding common subexpressions. Substituting one expression into another. Factoring single functions.

7 7 Algebraic Optimizations Algebraic techniques view equations as polynomials Rules of polynomial algebra are used For e.g. in algebraic substitution (or division) if a function f = f(a, b, c) is divided by g = g(a, b), a and b will not appear in f / g Boolean algebra rules are not applied

8 8 Logic optimization flow LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction LIBRARY TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) OPTIMIZED LOGIC NETWORK

9 9 “Closed Book” Technologies A standard cell technology or library is typically restricted to a few tens of gates e.g., MSU library: 31 cells Gates may be NAND, NOR, NOT, AOIs. A A A C A B AB+C B C A

10 10 Standard cell library For each cell Functional information Timing information Input slew Intrinsic delay Output capacitance Physical footprint Power characteristics

11 11 Sample Library INVERTER2 NAND23 NAND34 NAND45

12 12 Sample Library - 2 AOI21 4 AOI22 5

13 13 Mapping via DAG * Covering Represent network in canonical form  subject DAG Represent each library gate with canonical forms for the logic function  primitive DAGs Each primitive DAG has a cost Goal: Find a minimum cost covering of the subject DAG by the primitive DAGs * Directed Acyclic Graph

14 14 Trivial Covering Reduce netlist into ND2 gates → subject DAG 7NAND2 = 21 5INV = 10 31 (area cost)

15 15 Covering #1 2 INV= 4 2 NAND2= 6 1 NAND3= 4 1 NAND4 = 5 19 (area cost)

16 16 Covering #2 1 INV= 2 1 NAND2= 3 2 NAND3= 8 1 AOI21= 4 17 (area cost)

17 17 Multiple fan-out

18 18 Partitioning a Graph Partition input netlist into a forest of trees Solve each tree optimally Stitch trees back together

19 19 Optimum Tree Covering NAND2 3 AOI21 4 + 3 = 7 INV 11 + 2 = 13 NAND2 2 + 6 + 3 = 11 NAND2 3 + 3 = 6 NAND2 3 INV 2

20 20 Partition DAG into a forest of trees Normalize the netlist Optimally cover each tree Generate all candidate matches Find optimal match using dynamic programming DAG Covering steps

21 21 Summary Logic optimization is an important step in the design flow Two-step flow Technology independent optimization Technology dependent optimization Advantages of logic optimization Reduce area Reduce power Reduce delay

22 22 For more details… http://csg.csail.mit.edu/u/d/devadas/public_html/6.373/lectures/ Refer to Srinivas Devadas’ slides for 6.373


Download ppt "1 VLSI CAD Flow: Logic Synthesis, 6.375 Lecture 13 by Ajay Joshi (Slides by S. Devadas)"

Similar presentations


Ads by Google