ICS 252 Introduction to Computer Design

Slides:



Advertisements
Similar presentations
ENGG3190 Logic Synthesis “Multi Level Logic” (Part II) Winter 2014 S. Areibi School of Engineering University of Guelph.
Advertisements

FPGA-Based System Design: Chapter 4 Copyright  2004 Prentice Hall PTR Topics n Logic synthesis. n Placement and routing.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
Winter 2005ICS 252-Intro to Computer Design ICS 252 Introduction to Computer Design Lecture 5-Scheudling Algorithms Winter 2005 Eli Bozorgzadeh Computer.
ECE Synthesis & Verification 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits Introduction to Logic Synthesis.
ECE 667 Synthesis and Verification of Digital Systems
ECE Synthesis & Verification - Lecture 8 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Introduction.
Logic Synthesis Part II
Logic Synthesis Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.
ICS 252 Introduction to Computer Design Multi-level Logic Optimization Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI.
Logic Decomposition ECE1769 Jianwen Zhu (Courtesy Dennis Wu)
Overview Part 2 – Circuit Optimization 2-4 Two-Level Optimization
Machine Learning CUNY Graduate Center Lecture 3: Linear Regression.
Based on slides by: Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 9 – Multilevel Optimization.
Department of Computer Engineering
Boolean Methods for Multi-level Logic Synthesis Giovanni De Micheli Integrated Systems Centre EPF Lausanne This presentation can be used for non-commercial.
Electrical and Computer Engineering Archana Rengaraj ABC Logic Synthesis basics ECE 667 Synthesis and Verification of Digital Systems Spring 2011.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect19: Multi Level Logic Minimization.
Computer-Aided Design of Digital VLSI Circuits & Systems Priyank Kalla Dept. of Elec. & Comp. Engineering University of Utah,SLC Perspectives on Next-Generation.
Zvi Kohavi and Niraj K. Jha 1 Multi-level Logic Synthesis.
ICS 252 Introduction to Computer Design Lecture 9 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Elements of discrete devices synthesis (module T170M012) 2012 Kaunas university of technology Electronic and measurement systems dep. Doc. dr. Žilvinas.
ICS 252 Introduction to Computer Design Lecture 10 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
CS/EE 3700 : Fundamentals of Digital System Design Chris J. Myers Lecture 4: Logic Optimization Chapter 4.
ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Multi-Level Logic Synthesis.
Ch.5 Logic Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology 1.
ICS 252 Introduction to Computer Design Lecture 8- Heuristics for Two-level Logic Synthesis Winter 2005 Eli Bozorgzadeh Computer Science Department-UCI.
ICS 252 Introduction to Computer Design Lecture 8 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect18: Multi Level Logic Minimization.
Lecture 1 Gunjeet kaur Dronacharya group of institutions.
CS137: Electronic Design Automation
Reducing Structural Bias in Technology Mapping
Lecture 7 Multi-Level Gate Networks
CHAPTER 7 MULTI-LEVEL GATE CIRCUITS / NAND AND NOR GATES
ICS 252 Introduction to Computer Design
Finite state machine optimization
Finite state machine optimization
Chapter 4 Simplification of Boolean Functions Karnaugh Maps
Register Transfer Specification And Design
Interpolating Functions from Large Boolean Relations
Reconfigurable Computing
A Boolean Paradigm in Multi-Valued Logic Synthesis
ICS 252 Introduction to Computer Design
COE 561 Digital System Design & Synthesis Sequential Logic Synthesis
ICS 252 Introduction to Computer Design
Multi-Level Minimization
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
CSE 370 – Winter 2002 – Logic minimization - 1
Optimization Algorithm
CSE 370 – Winter Combinational Implementation - 1
Sungho Kang Yonsei University
Topics Logic synthesis. Placement and routing..
332:437 Lecture 3 Hardware Design Methodology and Advanced Logic Design Hardware design.
Sungho Kang Yonsei University
ECE 667 Synthesis and Verification of Digital Systems
Architectural-Level Synthesis
ICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design
Discrete Controller Synthesis
Improvements in FPGA Technology Mapping
Technology Mapping I based on tree covering
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
ICS 252 Introduction to Computer Design
ICS 252 Introduction to Computer Design
Illustrative Example p p Lookup Table for Digits of h g f e ) ( d c b
*Internal Synthesizer Flow *Details of Synthesis Steps
Sajib Kumar Mitra, Lafifa Jamal and Hafiz Md. Hasan Babu*
Presentation transcript:

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

Multi-level logic optimization Representation Optimization Goal: area/delay Algorithmic: algebraic, Boolean Rule-based methods Examples of transformations Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Motivation Multiple-level networks: Semi-custom libraries. Gates versus macros (PLAs): More flexibility. Better performance. Applicable to a variety of designs. ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Circuit Modeling Logic network: Interconnection of logic functions. Hybrid structural/behavioral model. Bound (mapped) networks: Interconnection of logic gates. Structural model. ©GDM Winter 2004 ICS 252-Intro to Computer Design

Multi-level vs. Two-level PLA Control logic Constrained layout Highly automatic Technology independent Slower Multi valued function Input,output, state encoding Multi-level All logic General Automatic Partially tech dependent Can be faster Some results Winter 2004 ICS 252-Intro to Computer Design

Example of bound network q y c va vp vx vb vc vq vy ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example of network ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example of network a v=a’d+bd+c’d+ae’ w b x p=ce+de r=p+a’ s=r+b’ c t=ac+bd+bc+bd+e y d z e q=a+b u=q’c+qc’+qc ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Network optimization Minimize area (power) Subject to delay constraint Minimize maximum delay Subject to area (power) constraint Minimize power consumption Maximize testability ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Estimation Area: Number of literals Number of functions/gates Delay Number of stages Refined gate delay models paths ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Problem analysis Multi-level optimization is hard Exact models Exponential complexity Impractical Approximate methods Heuristics algorithms Rule-based methods ©GDM Winter 2004 ICS 252-Intro to Computer Design

Strategies for optimization Improve circuit step by step Circuit transformation Preserve network behavior Methods differ in Types of transformations Selection and order of transformations ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Eliminate Eliminate one function from the network Perform variable substitution Example: s = r + b’; r = p + a’; s = p + a’ + b’; ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example a v=a’d+bd+c’d+ae’ w b x p=ce+de s=p+a’+b’ c t=ac+bd+bc+bd+e y d z e q=a+b u=q’c+qc’+qc ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design decomposition Break one function into smaller ones Introduce new vertices in the network Example ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example v=a’+b+c’ V=jd+ae’ a w b p=ce+de r=p+a’ x s=r+b’ c t=ac+bd+bc+bd+e y d z q=a+b u=q’c+qc’+qc e ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example extraction Find a common sub-expression of two or more expressions Extract sub-expression as new function Introduce new vertex in the network Example ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example a v=a’d+bd+c’d+ae’ w b x p=ke r=p+a’ s=r+b’ c K=c+d t=ka+kb+e y d q=a+b u=q’c+qc’+qc z e ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Simplification Simplify a local function Example ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example a v=a’d+bd+c’d+ae’ w b x p=ce+de r=p+a’ s=r+b’ c t=ac+bd+bc+bd+e y d z e q=a+b u=q+c ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design substitution Simplify a local function by using an additional input that was not previously in its support set. Example ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example a v=a’d+bd+c’d+ae’ w b x p=ke r=p+a’ s=r+b’ c K=c+d t=ka+kb+e y d q=a+b u=q’c+qc’+qc z e ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example a v=a’d+bd+c’d+ae’ w b x p=ke r=p+a’ s=r+b’ c K=c+d t=kq+e y d q=a+b u=q’c+qc’+qc z e ©GDM Winter 2004 ICS 252-Intro to Computer Design

Optimization approaches Algorithmic approach Define an algorithm for each transformation Algorithm is an operator on the network Rule-based approach Rule-data base Set of pattern pairs Pattern replacement by rules ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Algorithmic approach Each operator has well-defined properties Heuristic methods Weak optimality Sequence of operators Defined by scripts in SIS Based on experience ©GDM Winter 2004 ICS 252-Intro to Computer Design

Example of script in SIS sweep; eliminate -1 simplify –m nocomp eliminate -1 sweep; eliminate 5 resub –a fx resub –a;sweep… ©GDM Winter 2004 ICS 252-Intro to Computer Design

Boolean and algebraic methods Boolean methods Exploit properties of logic functions Use don’t care conditions Complex Algebraic methods View functions as polynomials Exploit properties of polynomial algebra Simpler, faster but weaker ©GDM Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design summary Multilevel logic synthesis is performed by step-wise transformations Algorithms are based on both the Boolean and the algebraic models Rule-based ©GDM Winter 2004 ICS 252-Intro to Computer Design