ELEN 468 Lecture 121 ELEN 468 Advanced Logic Design Lecture 12 Synthesis of Combinational Logic I.

Slides:



Advertisements
Similar presentations
Chapter 3 Gate-Level Minimization
Advertisements

VERILOG: Synthesis - Combinational Logic Combination logic function can be expressed as: logic_output(t) = f(logic_inputs(t)) Rules Avoid technology dependent.
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
//HDL Example 8-2 // //RTL description of design example (Fig.8-9) module Example_RTL (S,CLK,Clr,E,F,A);
Traffic light contoller using FSM
Digital Circuits.
Combinational Logic.
ELEN 468 Lecture 21 ELEN 468 Advanced Logic Design Lecture 2 Hardware Modeling.
COE 202: Digital Logic Design Combinational Circuits Part 1
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
Figure 4.1. The function f (x1, x2, x3) =  m(0, 2, 4, 5, 6).
FSM Revisit Synchronous sequential circuit can be drawn like below  These are called FSMs  Super-important in digital circuit design FSM is composed.
1 Brief Introduction to Verilog Weiping Shi. 2 What is Verilog? It is a hardware description language Originally designed to model and verify a design.
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
ELEN 468 Lecture 151 ELEN 468 Advanced Logic Design Lecture 15 Synthesis of Language Construct I.
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 Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.
Logic Synthesis 1 Outline –Logic Synthesis Problem –Logic Specification –Two-Level Logic Optimization Goal –Understand logic synthesis problem –Understand.
Lecture 14 Today we will Learn how to implement mathematical logical functions using logic gate circuitry, using Sum-of-products formulation NAND-NAND.
ECE 353 Computer Systems Lab I Verilog Hardware Description Language.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI System Design Lecture 4 - Advanced Verilog.
ELEN 468 Advanced Logic Design
ECE 301 – Digital Electronics Boolean Algebra and Standard Forms of Boolean Expressions (Lecture #4) The slides included herein were taken from the materials.
ELEN468 Lecture 11 ELEN468 Advanced Logic Design Lecture 1Introduction.
COE 202: Digital Logic Design Combinational Circuits Part 1
Digital Fundamentals with PLD Programming Floyd Chapter 4
Boolean Algebra and Logic Simplification. Boolean Addition & Multiplication Boolean Addition performed by OR gate Sum Term describes Boolean Addition.
Digital Logic Design Adil Waheed. BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION AND gate F = A.B OR gate F = A + B NOT gate F = A NAND gate F = A.B NOR gate.
Engineering 100 Section 250 Combinational Logic -- Examples 9/13/2010.
1 VLSI CAD Flow: Logic Synthesis, Lecture 13 by Ajay Joshi (Slides by S. Devadas)
ECE 551 Digital System Design & Synthesis
B-1 Appendix B - Reduction of Digital Logic Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles.
Based on slides by: Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. ECE/CS 352: Digital System Fundamentals Lecture 9 – Multilevel Optimization.
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC. K-Map (1)  Karnaugh Mapping is used to minimize the number of logic gates that are required in a digital circuit.
ECE 331 – Digital System Design
Optimization Algorithm
Module 1.2 Introduction to Verilog
Elements of discrete devices synthesis (module T170M012) 2012 Kaunas university of technology Electronic and measurement systems dep. Doc. dr. Žilvinas.
Combination of logic gates  Logic gates can be combined to produce more complex functions.  They can also be combined to substitute one type of gate.
Computer Engineering (Logic Circuits) (Karnaugh Map)
1 BOOLEAN ALGEBRA Basic mathematics for the study of logic design is Boolean Algebra Basic laws of Boolean Algebra will be implemented as switching devices.
ELEN 468 Lecture 131 ELEN 468 Advanced Logic Design Lecture 13 Synthesis of Combinational Logic II.
Introduction to ASIC flow and Verilog HDL
M.Mohajjel. Objectives Learn How to write synthesizable Verilog code Common mistakes and how to avoid them What is synthesized for what we code Digital.
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
THE K-MAP.
State university of New York at New Paltz Electrical and Computer Engineering Department Logic Synthesis Optimization Lect10: Two-level Logic Minimization.
DE MORGAN’S THEOREM. De Morgan’s Theorem De Morgan’s Theorem.
President UniversityErwin SitompulDigital Systems 4/1 Lecture 4 Digital Systems Dr.-Ing. Erwin Sitompul President University
Combinational Logic Analysis. Basic Combinational Logic Circuits AND-OR logic AND-OR logic AND-OR logic produces an SOP expression. AND-OR logic produces.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
Lecture 7 Multi-Level Gate Networks
FIGURE 3.1 Two-variable K-map
ELEC Digital Logic Circuits Fall 2014 Logic Minimization (Chapter 3)
ELEN 468 Advanced Logic Design
Lecture 2 Boolean Algebra Basic
Logic Gates.
CSE 140 : Components and Design Techniques for Digital Systems
FSM MODELING MOORE FSM MELAY FSM. Introduction to DIGITAL CIRCUITS MODELING & VERIFICATION using VERILOG [Part-2]
CH7 Multilevel Gate Network
Optimization Algorithm
EECS150 - Digital Design Lecture 7 - Boolean Algebra II
Logic Gates.
A SoC Design Automation Seoul National University
مدار منطقی به نام یگانه مهندس هستی مهدی قدیری
Digital Fundamentals Floyd Chapter 4 Tenth Edition
3-Variable K-map AB/C AB/C A’B’ A’B AB AB’
VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5
*Internal Synthesizer Flow *Details of Synthesis Steps
Presentation transcript:

ELEN 468 Lecture 121 ELEN 468 Advanced Logic Design Lecture 12 Synthesis of Combinational Logic I

ELEN 468 Lecture 122 Synthesis Logic synthesis Boolean descriptions => circuits RTL synthesis RTL descriptions => Boolean descriptions Behavioral synthesis Behavioral descriptions => RTL descriptions

ELEN 468 Lecture 123 Objective of Synthesis Area Delay

ELEN 468 Lecture 124 Logic Synthesis Translation Engine Optimization Engine Mapping Engine Behavioral Descriptions Technology Libraries Two-level Logic Functions Optimized Multi- level Logic Functions Technology Implementation

ELEN 468 Lecture 125 Translation Engine Read in Verilog-based descriptions Translate into Boolean equations SOP – sum of product POS – product of sum A Verilog description consisting only of a netlist of combinational primitives without feedback can always be synthesized

ELEN 468 Lecture 126 Logic Optimization Remove redundant logic, exploit logic sharing Substitution Factoring Decomposition Extraction Elimination/flattening

ELEN 468 Lecture 127 Substitution Express a Boolean function in terms of its inputs and another function G = a + b F = a + b + c G = a + b F = G + c

ELEN 468 Lecture 128 Factoring Find the common factors among a set of functions F = ac + ad + bc + bd + e F = ( a + b ) ( c + d ) + e Two-level => multi-level Area reduced Delay increased

ELEN 468 Lecture 129 Decomposition Express one Boolean function in terms of new nodes F = abc + abd + a’c’d’ + b’c’d’ 9 gates, 40 transistors F = XY + X’Y’ X = ab Y = c + d 7 gates, 24 transistors Figure 8.6, 8.7, page 287

ELEN 468 Lecture 1210 Extraction Express a set of Boolean functions in terms of new nodes F = ( a + b ) cd + e G = ( a + b ) e’ H = cde X = a + b Y = cd F = XY + e G = Xe’ H = Ye

ELEN 468 Lecture 1211 Elimination / Flattening Remove a node in a function Increase area Reduce delay F = Ga + G’b G = c + d F = ac + ad + bc’d’

ELEN 468 Lecture 1212 Combinational Logic Delay Combinational logic delay <= clock period Combinational Logic Register Primary Input Register Primary Output clock

ELEN 468 Lecture 1213 Synthesis Support to Verilog Commonly supported Figure 8.17, page 297 Unsupported Figure 8.18, page 298

ELEN 468 Lecture 1214 Exercise 3

ELEN 468 Lecture 1215 Find Delay module M ( y, a, b, c ); output y; input a, b, c; and #(2, 4) (w1, a, b); not #3 (w2, c); nor #(5, 2 ) (y, w1, w2); endmodule module M ( y, a, b, c ); output y; input a, b, c; and #(2, 4) (w1, a, b); not #3 (w2, c); nor #(5, 2 ) (y, w1, w2); endmodule a -> y (9, 4) b -> y (9, 4) c -> y (8, 5)

ELEN 468 Lecture 1216 FSM of Traffic Light Control module traffic ( light, clock, pedx ); input clock, pedx; output [1:0] light; reg [1:0] light; reg [7:0] timer; parameter green = 2`b01; parameter yellow = 2`b10; parameter red = 2`b11; ( timer ) begin if ( timer < 100 ) light <= green; else if ( timer < 110 ) light <= yellow; else light <= red; end ( posedge clock ) begin if ( timer < 130 ) timer <= timer+ 1; else timer <= 0; end ( posedge pedx ) if ( light == green ) timer <= 100; endmodule module traffic ( light, clock, pedx ); input clock, pedx; output [1:0] light; reg [1:0] light; reg [7:0] timer; parameter green = 2`b01; parameter yellow = 2`b10; parameter red = 2`b11; ( timer ) begin if ( timer < 100 ) light <= green; else if ( timer < 110 ) light <= yellow; else light <= red; end ( posedge clock ) begin if ( timer < 130 ) timer <= timer+ 1; else timer <= 0; end ( posedge pedx ) if ( light == green ) timer <= 100; endmodule