ECE 565: VLSI CAD Flow + Brief Intro to HLS, Logic Optimization & Technology Mapping. Shantanu Dutt ECE Dept., UIC

Size: px
Start display at page:

Download "ECE 565: VLSI CAD Flow + Brief Intro to HLS, Logic Optimization & Technology Mapping. Shantanu Dutt ECE Dept., UIC"

Transcription

1 ECE 565: VLSI CAD Flow + Brief Intro to HLS, Logic Optimization & Technology Mapping Shantanu Dutt ECE Dept., UIC

2 (High-Level Synthesis or HLS network of interconnected modules: functional units [FUs], registers, muxes, demuxes, Logic optimization (mainly of controller fsm s and other random logic; other module dessigns such as arith. FUs, regs, muxes, etc. are well known). VLSI CAD Flow: Overview (HLS) (E.g., Using a Hardware Description Language: Verilog, VHDL, SystemC or Schematic Capture) a) Tech. Mapping (mapping small subckts to predesigned cells in library). b) Physical Synthesis (inserting buffers, upsizing gates, deciding on multiple Vdd and Vth). Can be combined w/ PD. a) Design Rule Checking b) Layout Vs. Schematic Verification c) Electrical Rule Checking d) Electrical simulation and functional (logic) + metric (delay, power) verification. Iterate if simulation identifies metric problems (hot spots, timing violation, crosstalk) Shantanu Dutt, UIC

3 System to Silicon Design System Requirements Algorithm Hardware Architecture Synthesis X[k] = Σ x[n]e -j2 πk/n x[n] = Σ X[k]e +j2 πk/n Σ System Integration Fabricate and Test Physical Design For Test Observe Cont rol [Source: MITRE] Advanced Reliable Systems (ARES) Lab. Jin-Fu Li, EE, NCU 6

4 Iterate if simulation identifies metric problems (hot spots, timing violation, crosstalk) VLSI CAD Flow: Overview (HLS) Constrained optimization problem: Opt. metric at almost all stages: One of power, delay, chip-area, total wire length (WL) w/ constraints (upper bounds) on the others plus on temperature (approx. power density), crosstalk (routing stage), yield/ variability (lower bound), etc. Very complex processes. Shantanu Dutt, UIC Disconnect between higher (above physical design) and lower stages (PD & lower): At higher stages some metrics such as those that are fully or partly interconnect-based (delay, area, dynamic power) cannot be v. accurately estimated incorrect decisions which percolate to lower stages (e.g. after routing between an adder and mult., interconnect length is much larger than anticipated due to say congestion and mis-routing) some specs (esp. delay) may not be met iterating back to higher stages to correct the approximations and re-design

5 VLSI CAD Flow: Overview Course Coverage: with particular focus on HLS and Physical Design (HLS) Iterate if simulation identifies metric problems (hot spots, timing violation, crosstalk) Shantanu Dutt, UIC

6 VLSI CAD Flow: Overview Partitioning cuts up the system into multiple subsystems to min. some metric (generally number of wires/nets cut min-cut part.) either for multi-chip impl. or for recursive invokeation for placement on a single chip. (HLS) Shantanu Dutt, UIC Iterate if simulation identifies problems (hot spots, timing violation, crosstalk) Floorplanning places major/large ploygonshaped modules on a chip to minimize chip area, wirelength (WL), delay or dynamic power with constraints on the others. Placement places smaller rectangular cells whose size/shape are well defined in sub-chip regions for the same goals as FP. Routing interconnects cells/modules via hor/vert or 45 deg. wires for similar goals as above.

7 Advanced VLSI Design ASIC Design Flow CMPE 641 Standard Cell Place and Route Flow Adapted from: CMOS VLSI Design, A Circuits and Systems Perspective, 3rd Edition, Neil Weste et al Pearson Addison-Wesley 7

8 A complete chip showing floorplanned modules Some modules are custom designed & layed-out (e.g., RAMs), while others are automated using, say, standard cells Modules Routing Shantanu Dutt, UIC

9 Another complete chip showing RAMs (custom design) + standard-cell layout RAMs Standardcell based layout (most of the chip) Shantanu Dutt, UIC

10 What HLS Produces by Examples Shantanu Dutt UIC

11 Hardware Synthesis Example 1 Computer Code Generation Programming language statement a := b + c; Hardware Synthesis Execution in a CPU Load r5 b Load r7 c ADD r2 r5 r7 (r2 <- r5 + r7) Store r2 a Mux_select CPU Mux1_select ldb Mux b Mux2_select ldc Mux c Reg_r/w Reg_addr r2 Register File r5 Mux ADDER r7 Alu_oper_select 32 Read Bus A ADD 32 Read Bus B ALU 32 Conrtol signals Control Unit (FSM) Conrtol signals Mux a Mux3_select lda Write Bus Shantanu Dutt UIC 17 17

12 Hardware Synthesis Example 2 Computer Code Generation Programming language construct if (a <= b) then begin Block A of code; end else begin Block B of code; end Hardware Synthesis B: A: C: Load r2 a Load r3 b SUB r2 r2 r3 BZ A BNEG A Block B assmb code JMP C Block A assmb code Block C assmb code Execution in a computer Computer lda a ldb Adder (Adder may be reused for other operations) Conrtol signals Control Unit (FSM) b Conrtol signals 2 s compl sign ovfl zero Recursively Synthesized Mux1_select I/Ps to code block Demux1_select Demux Hardware for Block A Mux 1 Hardware for Block B O/Ps of code block Shantanu Dutt UIC 18 18

13 Brief Intro to Logic Optimization & Technology Mapping Extracted from Notes by: Srinivas Devdas, MIT

14 Two-Level Logic Minimization Can realize an arbitrary logic function in sum-of-products or two-level form F1 = A B + A B D + A B C D + A B C D + A B + A B D F1 = B + D + A C + A C Of great interest to find a minimum sumof-products representation Solved problem even for functions with 100 s of inputs (variants of Quine-McCluskey) 3

15 Two-Level versus Multilevel 2-Level: f 1 = AB + AC + AD = AB + AC + AE f 2 6 product terms which cannot be shared. 24 transistors in static CMOS Multi-level: Note that B + C is a common term in f 1 and f 2 K = B + C f 1 =ΑΚ+AD f 2 = AK + AE 3 Levels 20 transistors in static CMOS not counting inverters 4

16 Technologies Closed book : Open book : gate-array standard-cell CMOS Domino, complex gate static CMOS LOGIC EQUATIONS TECHNOLOGY-INDEPENDENT OPTIMIZATION Factoring Commonality Extraction TECH-DEPENDENT OPTIMIZATION (MAPPING, TIMING) LIBRARY OPTIMIZED LOGIC NETWORK 5

17 Tech.-Independent Optimization Involves: Minimizing two-level logic functions. Finding common subexpressions. Substituting one expression into another. Factoring single functions. Factored versus Disjunctive forms f = ac + ad + bc + bd + ae sum-of-products or disjunctive form f = ( a + b )( c + d ) + ae factored form multi-level or complex gate 6

18 Optimizations F = f 1 f 2 = AB + AC + AD + AE + A BC D E = AB + AC + AD + AF + A BC D F Factor F F = f 1 = AB+ ( C + D + E)+ABC DE f 2 = A( B + C + D + F)+ABC DF Extract common expression G = g 1 = B + C + D f 1 = A( g 1 + E ) + A E g 1 f 2 = A( g 1 + F )+ A F g 1 7

19 What Does Best Mean? Transistor count Number of circuits Number of levels AREA POWER DELAY (Speed) Need quick estimators of area, delay and power which are also accurate 8

20 Tech.-Dependent Optimization OPTIMIZED LOGIC EQUATIONS LIBRARY TIMING CONSTRAINTS TECHNOLOGY MAPPING GATE NETLIST Area, delay and power dissipation cost functions 17

21 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 B A A C A A C AB+C B 18

22 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 Canonical form: 2-input NAND gates and inverters 19

23 Sample Library INVERTER 2 NAND2 3 NAND3 4 NAND4 5 20

24 Sample Library - 2 AOI21 4 AOI

25 Standard cell library For each cell (e.g., NANDs, NORs, Invs, AOIs) Functional information Timing information Output slew Intrinsic delay Input capacitance Physical footprint Power characteristics (leakage power)

26 Trivial Covering Reduce netlist into ND2 gates subject DAG 7 NAND2 = 21 (# pins) = 28 (# transistors) 5 INV = 10 (# pins) = 10 (# transistors 31 = 38 (pin cost) (area cost)

27 Covering #1 2 INV = 4 (# pins) = 4 (# trans s) 2 NAND2 = 6 = 8 1 NAND3 = 4 = 6 1 NAND4 = 5 = (pin cost) (area cost)

28 Covering #2 1 INV = 2 (# pins) = 2 (# trans s) 1 NAND2 = 3 = 4 2 NAND3 = 8 = 12 1 AOI21 = 4 =? 17? (pin cost) (area cost)

29 DAG Covering Sound Algorithmic approach NP-hard optimization problem multiple fanout Tree covering heuristic: If subject and primitive DAGs are trees, efficient algorithm can find optimum cover in linear time dynamic programming formulation 25

30 Multiple fan-out

31 Partitioning a Graph Partition input netlist into a forest of trees Solve each tree optimally Stitch trees back together Any issues to take care of when doing TM for each individual tree so that the stitching back can be done (this is really a bookkeeping issue rather than intrinsically algorithmic)?

32 Resulting Trees Break at multiple fanout points 27

33 Dynamic Programming Principle of optimality: Optimal cover for a tree consists of a match at the root of the tree plus the optimal cover for the sub-trees starting at each input of the match y x p Best cover for this match uses best covers for x, y, z z Best cover for this match uses best covers for p, z 28

34 Optimum Tree Covering INV = 13 AOI = 7 NAND = 11 INV 2 NAND = 6 NAND2 3 NAND2 3 Is it a good idea to use the largest possible cover or cut going top-down or bottom-up (this may not be visible in this small example)?

35 DP Algorithm for Tech. Mapping of Tree Circuits Procedure DP_TM(p: gate output, G: circuit); /* G is a tree circuit */ if DP_TM(p, G) is stored then return(its cost, corresp. solution); Going backward from p to its fanins, produce all possible cuts (that separate the sub-ckt w/ p as o/p from the rest of the circuit) so that the # of wires cut <= max # of i/ps available for cells/gates in the library; cost = infinity; For each such cut Ci do if the subckt containing p is mappable to some gate gi in the library AND does not include any forbidden interconnects then begin cost(ci) = cost(gi) + S qj in Ci (DP_TM(qj, G)[1]); /* if DP_TM(qj, G) has already been investigated, it will be stored, and there is no need to execute this procedure again */ if cost(ci) < cost then { cost = cost(ci); solution = corresponding soln. } end if. End for; return(cost, solution); end DP_TM; Shantanu Dutt, UIC

36 Example Cuts in DP_TM C3 Recursive Calls for DP_TM C2 C1 C3 Ci is the set of gate o/ps that are in the complement (remainder) subckt. of G generated by cut Ci C4 C4 C2 C1 Shantanu Dutt, UIC

37 Analysis: Optimality? Runtime analysis: DP Algorithm for Tech. Mapping of Tree Circuits # of subsets (cuts) that can be generated from a gate g o/p q that includes g and includes fanins only up to a fan-in size of m (= max. number of i/ps among all cells in the library: if k is the # of all gate i/ps that can be enclosed by a cut across all valid cuts w/o/p at q, then # of valid cuts = O(2 k ), and k itself is O(2 m ), and thus # of valid cuts is O(2**(2 m )). However, since m is a constant like 6, the # of valid cuts per gate o/p turns out to be a medium-size constant in the range # of 1 st time calls of DP_TM for each gate o/p Total # of DP_TM calls What if the circuit is not a tree: how to process, optimal or non-optimal? How to obtain optimality for a general DAG and at the cost of how much increased runtime? Shantanu Dutt, UIC

38 What about delay optimization? d(g(c1)) C1 C in (g(c1)) Each cell g has an o/p resistance R out (g), input capacitance C in (g) and intrinsic delay d(g). R out (g(c2)) d(g(c2)) C2 R out (g(c3)) C3 R out (g(c4)) C4 d(g(c4)) Delay till root cut C2 i/p: D1 D2 D3 D1 Shantanu Dutt, UIC

39 What about delay optimization? d(g(c1)) R out (g(c2)) d(g(c2)) C2 C1 C in (g(c1)) R out (g(c3)) C3 R out (g(c4)) C4 d(g(c4)) Each cell g has an o/p resistance R out (g), input capacitance C in (g) and intrinsic delay d(g). Delay at the C1 input = max[d1 + R out (g(c2))*c in (g(c1)), D2 + R out (g(c3))*c in (g(c1)), D1 + R out (g(c2))*c in (g(c1)) ] Delay till root cut C2 i/p: D1 D2 D3 D1 Shantanu Dutt, UIC

40 Extension to DAGs: What is the problem? Ci Cr Ck u Cj Ci Cr Ck u Cj 3 different calls, one for each fanout, to TM of DAG rooted at u (TM(u)). Will the solution for TM(u) that leads to the best overall solution for the entire problem be affected by which cut/cover TM(u) is called for when the optimization metric is: a) Area or pin cost? b) Delay? Fig. 1 Fig. 2 TM(u) Shantanu Dutt, UIC

41 Appendix (not necessary to consider): Tackling fanouts in DAGs Black arcs represent parent-child relationship among cuts in a D&C context Ck Ck Ck Ci Cr Cj Ci Cj Ci Cj Cr u u u Fig. 1 Fig. 2 Two cuts Cr and Cr that change subckt(u) The only way a sibling cut can change the subcircuit rooted at u is if it enclosed a predecessor of u as by the cut Cr in Fig. 2. But such a cut can only be valid if it cuts only one gate o/p, which has to be the one for its root node, which is not the case here (Cr is invalid as cuts two node o/ps). Such a changing cut is valid only if its root node also is a predecessor of u as in Fig. 3. In such cases we will need to do as many TM calls of the subcircuit subckt(u) rooted at u as there are changes to it made by other cuts, and this can potentially be exponential over all such combinations of TMs of similar nodes as u. Practically there may be very few such changing cuts of subckt(u), but even if there are 2, we need to consider the combination of all such changed subckt(u) s for all u s w/ fanouts leading to an exponential combination if nodes w/ fanouts are Q(n), where n is the total # of nodes. If such nodes are a constant then we get a linear complexity TM algorithm as in the tree case. Cr Cr Fig. 3

VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5. Guest Lecture by Srini Devadas

VLSI CAD Flow: Logic Synthesis, Placement and Routing Lecture 5. Guest Lecture by Srini Devadas VLSI CAD Flow: Logic Synthesis, Placement and Routing 6.375 Lecture 5 Guest Lecture by Srini Devadas 1 RTL Design Flow HDL RTL Synthesis manual design Library/ module generators netlist logic optimization

More information

Using Hardware Description Languages (HDLs) Introduction: Combinational Logic and Its Description. Lecture Notes # 1. ECE 368: CAD Based Logic Design

Using Hardware Description Languages (HDLs) Introduction: Combinational Logic and Its Description. Lecture Notes # 1. ECE 368: CAD Based Logic Design ECE 368: CAD Based Logic Design Lecture Notes # 1 Introduction: Combinational Logic and Its Description Using Hardware Description Languages (HDLs) SHANTANU DUTT Department of Electrical and Computer Engineering

More information

L2: Design Representations

L2: Design Representations CS250 VLSI Systems Design L2: Design Representations John Wawrzynek, Krste Asanovic, with John Lazzaro and Yunsup Lee (TA) Engineering Challenge Application Gap usually too large to bridge in one step,

More information

Technology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas

Technology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas Technology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas 1 RTL Design Flow HDL RTL Synthesis Manual Design Module Generators Library netlist

More information

1/28/2013. Synthesis. The Y-diagram Revisited. Structural Behavioral. More abstract designs Physical. CAD for VLSI 2

1/28/2013. Synthesis. The Y-diagram Revisited. Structural Behavioral. More abstract designs Physical. CAD for VLSI 2 Synthesis The Y-diagram Revisited Structural Behavioral More abstract designs Physical CAD for VLSI 2 1 Structural Synthesis Behavioral Physical CAD for VLSI 3 Structural Processor Memory Bus Behavioral

More information

ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms

ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms ECE 5745 Complex Digital ASIC Design Topic 12: Synthesis Algorithms Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece5745 RTL to

More information

ECE260B CSE241A Winter Logic Synthesis

ECE260B CSE241A Winter Logic Synthesis ECE260B CSE241A Winter 2007 Logic Synthesis Website: /courses/ece260b-w07 ECE 260B CSE 241A Static Timing Analysis 1 Slides courtesy of Dr. Cho Moon Introduction Why logic synthesis? Ubiquitous used almost

More information

CSE241 VLSI Digital Circuits UC San Diego

CSE241 VLSI Digital Circuits UC San Diego CSE241 VLSI Digital Circuits UC San Diego Winter 2003 Lecture 05: Logic Synthesis Cho Moon Cadence Design Systems January 21, 2003 CSE241 L5 Synthesis.1 Kahng & Cichy, UCSD 2003 Outline Introduction Two-level

More information

Lab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation

Lab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation Course Goals Lab Understand key components in VLSI designs Become familiar with design tools (Cadence) Understand design flows Understand behavioral, structural, and physical specifications Be able to

More information

ECE260B CSE241A Winter Logic Synthesis

ECE260B CSE241A Winter Logic Synthesis ECE260B CSE241A Winter 2005 Logic Synthesis Website: / courses/ ece260bw05 ECE 260B CSE 241A Static Timing Analysis 1 Slides courtesy of Dr. Cho Moon Introduction Why logic synthesis? Ubiquitous used almost

More information

Spiral 2-8. Cell Layout

Spiral 2-8. Cell Layout 2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric

More information

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES DIGITAL DESIGN TECHNOLOGY & TECHNIQUES CAD for ASIC Design 1 INTEGRATED CIRCUITS (IC) An integrated circuit (IC) consists complex electronic circuitries and their interconnections. William Shockley et

More information

Linking Layout to Logic Synthesis: A Unification-Based Approach

Linking Layout to Logic Synthesis: A Unification-Based Approach Linking Layout to Logic Synthesis: A Unification-Based Approach Massoud Pedram Department of EE-Systems University of Southern California Los Angeles, CA February 1998 Outline Introduction Technology and

More information

COE 561 Digital System Design & Synthesis Introduction

COE 561 Digital System Design & Synthesis Introduction 1 COE 561 Digital System Design & Synthesis Introduction Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Outline Course Topics Microelectronics Design

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

EE 434 ASIC & Digital Systems

EE 434 ASIC & Digital Systems EE 434 ASIC & Digital Systems Dae Hyun Kim EECS Washington State University Spring 2018 Course Website http://eecs.wsu.edu/~ee434 Themes Study how to design, analyze, and test a complex applicationspecific

More information

CS8803: Advanced Digital Design for Embedded Hardware

CS8803: Advanced Digital Design for Embedded Hardware CS883: Advanced Digital Design for Embedded Hardware Lecture 2: Boolean Algebra, Gate Network, and Combinational Blocks Instructor: Sung Kyu Lim (limsk@ece.gatech.edu) Website: http://users.ece.gatech.edu/limsk/course/cs883

More information

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions Logic Synthesis Overview Design flow Principles of logic synthesis Logic Synthesis with the common tools Conclusions 2 System Design Flow Electronic System Level (ESL) flow System C TLM, Verification,

More information

CMOS VLSI Design. MIPS Processor Example. Outline

CMOS VLSI Design. MIPS Processor Example. Outline COS VLSI Design IPS Processor Example Outline Design Partitioning IPS Processor Example Architecture icroarchitecture Logic Design Circuit Design Physical Design Fabrication, Packaging, Testing Slide 2

More information

Introduction. Sungho Kang. Yonsei University

Introduction. Sungho Kang. Yonsei University Introduction Sungho Kang Yonsei University Outline VLSI Design Styles Overview of Optimal Logic Synthesis Model Graph Algorithm and Complexity Asymptotic Complexity Brief Summary of MOS Device Behavior

More information

Additional Slides to De Micheli Book

Additional Slides to De Micheli Book Additional Slides to De Micheli Book Sungho Kang Yonsei University Design Style - Decomposition 08 3$9 0 Behavioral Synthesis Resource allocation; Pipelining; Control flow parallelization; Communicating

More information

SIDDHARTH INSTITUTE OF ENGINEERING AND TECHNOLOGY :: PUTTUR (AUTONOMOUS) Siddharth Nagar, Narayanavanam Road QUESTION BANK UNIT I

SIDDHARTH INSTITUTE OF ENGINEERING AND TECHNOLOGY :: PUTTUR (AUTONOMOUS) Siddharth Nagar, Narayanavanam Road QUESTION BANK UNIT I SIDDHARTH INSTITUTE OF ENGINEERING AND TECHNOLOGY :: PUTTUR (AUTONOMOUS) Siddharth Nagar, Narayanavanam Road 517583 QUESTION BANK Subject with Code : DICD (16EC5703) Year & Sem: I-M.Tech & I-Sem Course

More information

Reference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering

Reference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering FPGA Fabrics Reference Wayne Wolf, FPGA-Based System Design Pearson Education, 2004 Logic Design Process Combinational logic networks Functionality. Other requirements: Size. Power. Primary inputs Performance.

More information

Unit 2: High-Level Synthesis

Unit 2: High-Level Synthesis Course contents Unit 2: High-Level Synthesis Hardware modeling Data flow Scheduling/allocation/assignment Reading Chapter 11 Unit 2 1 High-Level Synthesis (HLS) Hardware-description language (HDL) synthesis

More information

ECE 3060 VLSI and Advanced Digital Design

ECE 3060 VLSI and Advanced Digital Design ECE 3060 VLSI and Advanced Digital Design Lecture 16 Technology Mapping/Library Binding Outline Modeling and problem analysis Rule-based systems for library binding Algorithms for library binding structural

More information

EE3032 Introduction to VLSI Design

EE3032 Introduction to VLSI Design EE3032 Introduction to VLSI Design Jin-Fu Li Advanced Reliable Systems (ARES) Lab. Department of Electrical Engineering National Central University Jhongli, Taiwan Contents Syllabus Introduction to CMOS

More information

EE 466/586 VLSI Design. Partha Pande School of EECS Washington State University

EE 466/586 VLSI Design. Partha Pande School of EECS Washington State University EE 466/586 VLSI Design Partha Pande School of EECS Washington State University pande@eecs.wsu.edu Lecture 18 Implementation Methods The Design Productivity Challenge Logic Transistors per Chip (K) 10,000,000.10m

More information

Overview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips

Overview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips Overview CSE372 Digital Systems Organization and Design Lab Prof. Milo Martin Unit 5: Hardware Synthesis CAD (Computer Aided Design) Use computers to design computers Virtuous cycle Architectural-level,

More information

ESE535: Electronic Design Automation. Today. EDA Use. Problem PLA. Programmable Logic Arrays (PLAs) Two-Level Logic Optimization

ESE535: Electronic Design Automation. Today. EDA Use. Problem PLA. Programmable Logic Arrays (PLAs) Two-Level Logic Optimization ESE535: Electronic Design Automation Day 18: March 25, 2013 Two-Level Logic-Synthesis Today Two-Level Logic Optimization Problem Behavioral (C, MATLAB, ) Arch. Select Schedule RTL FSM assign Definitions

More information

Lecture (05) Boolean Algebra and Logic Gates

Lecture (05) Boolean Algebra and Logic Gates Lecture (05) Boolean Algebra and Logic Gates By: Dr. Ahmed ElShafee ١ Minterms and Maxterms consider two binary variables x and y combined with an AND operation. Since eachv ariable may appear in either

More information

ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS)

ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS) ESE 570 Cadence Lab Assignment 2: Introduction to Spectre, Manual Layout Drawing and Post Layout Simulation (PLS) Objective Part A: To become acquainted with Spectre (or HSpice) by simulating an inverter,

More information

Hardware Modeling. Hardware Description. ECS Group, TU Wien

Hardware Modeling. Hardware Description. ECS Group, TU Wien Hardware Modeling Hardware Description ECS Group, TU Wien Content of this course Hardware Specification Functional specification High Level Requirements Detailed Design Description Realisation Hardware

More information

Synthesis and Optimization of Digital Circuits

Synthesis and Optimization of Digital Circuits Synthesis and Optimization of Digital Circuits Dr. Travis Doom Wright State University Computer Science and Engineering Outline Introduction Microelectronics Micro economics What is design? Techniques

More information

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface. Placement Introduction A very important step in physical design cycle. A poor placement requires larger area. Also results in performance degradation. It is the process of arranging a set of modules on

More information

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool Jin Hee Kim and Jason Anderson FPL 2015 London, UK September 3, 2015 2 Motivation for Synthesizable FPGA Trend towards ASIC design flow Design

More information

CAD Algorithms. Circuit Partitioning

CAD Algorithms. Circuit Partitioning CAD Algorithms Partitioning Mohammad Tehranipoor ECE Department 13 October 2008 1 Circuit Partitioning Partitioning: The process of decomposing a circuit/system into smaller subcircuits/subsystems, which

More information

Based on slides/material by. Topic Design Methodologies and Tools. Outline. Digital IC Implementation Approaches

Based on slides/material by. Topic Design Methodologies and Tools. Outline. Digital IC Implementation Approaches Based on slides/material by Topic 11 Peter Y. K. Cheung Department of Electrical & Electronic Engineering Imperial College London K. Masselos http://cas.ee.ic.ac.uk/~kostas J. Rabaey http://bwrc.eecs.berkeley.edu/classes/icbook/instructors.html

More information

Digital Design Methodology (Revisited) Design Methodology: Big Picture

Digital Design Methodology (Revisited) Design Methodology: Big Picture Digital Design Methodology (Revisited) Design Methodology Design Specification Verification Synthesis Technology Options Full Custom VLSI Standard Cell ASIC FPGA CS 150 Fall 2005 - Lec #25 Design Methodology

More information

Testing & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation

Testing & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation Testing & Verification of Digital Circuits ECE/CS 5745/6745 Hardware Verification using Symbolic Computation Instructor: Priyank Kalla (kalla@ece.utah.edu) 3 Credits Mon, Wed 1:25-2:45pm, WEB 2250 Office

More information

ECE 595Z Digital Systems Design Automation

ECE 595Z Digital Systems Design Automation ECE 595Z Digital Systems Design Automation Anand Raghunathan, raghunathan@purdue.edu How do you design chips with over 1 Billion transistors? Human designer capability grows far slower than Moore s law!

More information

Digital Design Methodology

Digital Design Methodology Digital Design Methodology Prof. Soo-Ik Chae Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008, John Wiley 1-1 Digital Design Methodology (Added) Design Methodology Design Specification

More information

TOPIC : Verilog Synthesis examples. Module 4.3 : Verilog synthesis

TOPIC : Verilog Synthesis examples. Module 4.3 : Verilog synthesis TOPIC : Verilog Synthesis examples Module 4.3 : Verilog synthesis Example : 4-bit magnitude comptarator Discuss synthesis of a 4-bit magnitude comparator to understand each step in the synthesis flow.

More information

Lecture 2: MIPS Processor Example

Lecture 2: MIPS Processor Example Introduction to CMOS VLSI Design Lecture 2: MIPS Processor Example Outline Design Partitioning MIPS Processor Example Architecture t Microarchitecture Logic Design Circuit Design Physical Design Fabrication,

More information

Standard Cell Library Design and Characterization using 45nm technology

Standard Cell Library Design and Characterization using 45nm technology IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) Volume 4, Issue 1, Ver. I (Jan. 2014), PP 29-33 e-issn: 2319 4200, p-issn No. : 2319 4197 Standard Cell Library Design and Characterization using

More information

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,

More information

ECE 5745 Complex Digital ASIC Design Topic 13: Physical Design Automation Algorithms

ECE 5745 Complex Digital ASIC Design Topic 13: Physical Design Automation Algorithms ECE 7 Complex Digital ASIC Design Topic : Physical Design Automation Algorithms Christopher atten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece7

More information

Synthesis 1. 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, Typeset by FoilTEX 1

Synthesis 1. 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, Typeset by FoilTEX 1 Synthesis 1 1 Figures in this chapter taken from S. H. Gerez, Algorithms for VLSI Design Automation, Wiley, 1998. Typeset by FoilTEX 1 Introduction Logic synthesis is automatic generation of circuitry

More information

Electronic Design Automation Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Electronic Design Automation Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Electronic Design Automation Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #1 Introduction So electronic design automation,

More information

SYNTHESIS FOR ADVANCED NODES

SYNTHESIS FOR ADVANCED NODES SYNTHESIS FOR ADVANCED NODES Abhijeet Chakraborty Janet Olson SYNOPSYS, INC ISPD 2012 Synopsys 2012 1 ISPD 2012 Outline Logic Synthesis Evolution Technology and Market Trends The Interconnect Challenge

More information

Combinational Devices and Boolean Algebra

Combinational Devices and Boolean Algebra Combinational Devices and Boolean Algebra Silvina Hanono Wachman M.I.T. L02-1 6004.mit.edu Home: Announcements, course staff Course information: Lecture and recitation times and locations Course materials

More information

ECE 459/559 Secure & Trustworthy Computer Hardware Design

ECE 459/559 Secure & Trustworthy Computer Hardware Design ECE 459/559 Secure & Trustworthy Computer Hardware Design VLSI Design Basics Garrett S. Rose Spring 2016 Recap Brief overview of VHDL Behavioral VHDL Structural VHDL Simple examples with VHDL Some VHDL

More information

Review. EECS Components and Design Techniques for Digital Systems. Lec 05 Boolean Logic 9/4-04. Seq. Circuit Behavior. Outline.

Review. EECS Components and Design Techniques for Digital Systems. Lec 05 Boolean Logic 9/4-04. Seq. Circuit Behavior. Outline. Review EECS 150 - Components and Design Techniques for Digital Systems Lec 05 Boolean Logic 94-04 David Culler Electrical Engineering and Computer Sciences University of California, Berkeley Design flow

More information

Topics. ! PLAs.! Memories: ! Datapaths.! Floor Planning ! ROM;! SRAM;! DRAM. Modern VLSI Design 2e: Chapter 6. Copyright 1994, 1998 Prentice Hall

Topics. ! PLAs.! Memories: ! Datapaths.! Floor Planning ! ROM;! SRAM;! DRAM. Modern VLSI Design 2e: Chapter 6. Copyright 1994, 1998 Prentice Hall Topics! PLAs.! Memories:! ROM;! SRAM;! DRAM.! Datapaths.! Floor Planning Programmable logic array (PLA)! Used to implement specialized logic functions.! A PLA decodes only some addresses (input values);

More information

Combinational Logic Circuits

Combinational Logic Circuits Chapter 2 Combinational Logic Circuits J.J. Shann (Slightly trimmed by C.P. Chung) Chapter Overview 2-1 Binary Logic and Gates 2-2 Boolean Algebra 2-3 Standard Forms 2-4 Two-Level Circuit Optimization

More information

Hardware Modelling. Design Flow Overview. ECS Group, TU Wien

Hardware Modelling. Design Flow Overview. ECS Group, TU Wien Hardware Modelling Design Flow Overview ECS Group, TU Wien 1 Outline Difference: Hardware vs. Software Design Flow Steps Specification Realisation Verification FPGA Design Flow 2 Hardware vs. Software:

More information

INTERNATIONAL JOURNAL OF PROFESSIONAL ENGINEERING STUDIES Volume 9 /Issue 3 / OCT 2017

INTERNATIONAL JOURNAL OF PROFESSIONAL ENGINEERING STUDIES Volume 9 /Issue 3 / OCT 2017 Design of Low Power Adder in ALU Using Flexible Charge Recycling Dynamic Circuit Pallavi Mamidala 1 K. Anil kumar 2 mamidalapallavi@gmail.com 1 anilkumar10436@gmail.com 2 1 Assistant Professor, Dept of

More information

Lecture 4: MIPS Processor Example

Lecture 4: MIPS Processor Example Lecture 4: MIPS Processor Example Slides courtesy of Deming Chen Slides based on the initial set from David Harris CMOS VLSI Design Outline Design Partitioning MIPS Processor Example Architecture Microarchitecture

More information

HIGH-LEVEL SYNTHESIS

HIGH-LEVEL SYNTHESIS HIGH-LEVEL SYNTHESIS Page 1 HIGH-LEVEL SYNTHESIS High-level synthesis: the automatic addition of structural information to a design described by an algorithm. BEHAVIORAL D. STRUCTURAL D. Systems Algorithms

More information

Topics. FPGA Design EECE 277. Interconnect and Logic Elements Part 2. Laboratory Assignment #1 Save Everything!!! Guest Lecture

Topics. FPGA Design EECE 277. Interconnect and Logic Elements Part 2. Laboratory Assignment #1 Save Everything!!! Guest Lecture FPGA Design EECE 277 Interconnect and Logic Elements Part 2 Dr. William H. Robinson February 4, 2005 http://eecs.vanderbilt.edu/courses/eece277/ Topics The sky is falling. I must go and tell the King.

More information

ASIC Physical Design Top-Level Chip Layout

ASIC Physical Design Top-Level Chip Layout ASIC Physical Design Top-Level Chip Layout References: M. Smith, Application Specific Integrated Circuits, Chap. 16 Cadence Virtuoso User Manual Top-level IC design process Typically done before individual

More information

High Level Synthesis

High Level Synthesis High Level Synthesis Design Representation Intermediate representation essential for efficient processing. Input HDL behavioral descriptions translated into some canonical intermediate representation.

More information

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:

More information

Software Engineering 2DA4. Slides 2: Introduction to Logic Circuits

Software Engineering 2DA4. Slides 2: Introduction to Logic Circuits Software Engineering 2DA4 Slides 2: Introduction to Logic Circuits Dr. Ryan Leduc Department of Computing and Software McMaster University Material based on S. Brown and Z. Vranesic, Fundamentals of Digital

More information

Introduction to CMOS VLSI Design Lecture 2: MIPS Processor Example

Introduction to CMOS VLSI Design Lecture 2: MIPS Processor Example Introduction to CMOS VLSI Design Lecture 2: MIPS Processor Example David Harris Harvey Mudd College Spring 2004 Outline Design Partitioning MIPS Processor Example Architecture Microarchitecture Logic Design

More information

Unit 4: Formal Verification

Unit 4: Formal Verification Course contents Unit 4: Formal Verification Logic synthesis basics Binary-decision diagram (BDD) Verification Logic optimization Technology mapping Readings Chapter 11 Unit 4 1 Logic Synthesis & Verification

More information

EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial

EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial EEC 116 Fall 2011 Lab #3: Digital Simulation Tutorial Dept. of Electrical and Computer Engineering University of California, Davis Issued: October 10, 2011 Due: October 19, 2011, 4PM Reading: Rabaey Insert

More information

Columbia Univerity Department of Electrical Engineering Fall, 2004

Columbia Univerity Department of Electrical Engineering Fall, 2004 Columbia Univerity Department of Electrical Engineering Fall, 2004 Course: EE E4321. VLSI Circuits. Instructor: Ken Shepard E-mail: shepard@ee.columbia.edu Office: 1019 CEPSR Office hours: MW 4:00-5:00

More information

Programmable Logic Devices II

Programmable Logic Devices II São José February 2015 Prof. Hoeller, Prof. Moecke (http://www.sj.ifsc.edu.br) 1 / 28 Lecture 01: Complexity Management and the Design of Complex Digital Systems Prof. Arliones Hoeller arliones.hoeller@ifsc.edu.br

More information

Boolean Algebra and Logic Gates

Boolean Algebra and Logic Gates Boolean Algebra and Logic Gates Binary logic is used in all of today's digital computers and devices Cost of the circuits is an important factor Finding simpler and cheaper but equivalent circuits can

More information

IMPLEMENTATION DESIGN FLOW

IMPLEMENTATION DESIGN FLOW IMPLEMENTATION DESIGN FLOW Hà Minh Trần Hạnh Nguyễn Duy Thái Course: Reconfigurable Computing Outline Over view Integra tion Node manipulation LUT-based mapping Design flow Design entry Functional simulation

More information

Very Large Scale Integration (VLSI)

Very Large Scale Integration (VLSI) Very Large Scale Integration (VLSI) Lecture 6 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Contents FPGA Technology Programmable logic Cell (PLC) Mux-based cells Look up table PLA

More information

Design Methodologies and Tools. Full-Custom Design

Design Methodologies and Tools. Full-Custom Design Design Methodologies and Tools Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores)

More information

Digital Design with FPGAs. By Neeraj Kulkarni

Digital Design with FPGAs. By Neeraj Kulkarni Digital Design with FPGAs By Neeraj Kulkarni Some Basic Electronics Basic Elements: Gates: And, Or, Nor, Nand, Xor.. Memory elements: Flip Flops, Registers.. Techniques to design a circuit using basic

More information

Overview of Digital Design Methodologies

Overview of Digital Design Methodologies Overview of Digital Design Methodologies ELEC 5402 Pavan Gunupudi Dept. of Electronics, Carleton University January 5, 2012 1 / 13 Introduction 2 / 13 Introduction Driving Areas: Smart phones, mobile devices,

More information

UNIT 4 INTEGRATED CIRCUIT DESIGN METHODOLOGY E5163

UNIT 4 INTEGRATED CIRCUIT DESIGN METHODOLOGY E5163 UNIT 4 INTEGRATED CIRCUIT DESIGN METHODOLOGY E5163 LEARNING OUTCOMES 4.1 DESIGN METHODOLOGY By the end of this unit, student should be able to: 1. Explain the design methodology for integrated circuit.

More information

Advanced Synthesis Techniques

Advanced Synthesis Techniques Advanced Synthesis Techniques Reminder From Last Year Use UltraFast Design Methodology for Vivado www.xilinx.com/ultrafast Recommendations for Rapid Closure HDL: use HDL Language Templates & DRC Constraints:

More information

System Synthesis of Digital Systems

System Synthesis of Digital Systems System Synthesis Introduction 1 System Synthesis of Digital Systems Petru Eles, Zebo Peng System Synthesis Introduction 2 Literature: Introduction P. Eles, K. Kuchcinski and Z. Peng "System Synthesis with

More information

Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design

Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design Harris Introduction to CMOS VLSI Design (E158) Lab 4: Controller Design The controller for your MIPS processor is responsible for generating the signals to the datapath to fetch and execute each instruction.

More information

ESE535: Electronic Design Automation. Today. LUT Mapping. Simplifying Structure. Preclass: Cover in 4-LUT? Preclass: Cover in 4-LUT?

ESE535: Electronic Design Automation. Today. LUT Mapping. Simplifying Structure. Preclass: Cover in 4-LUT? Preclass: Cover in 4-LUT? ESE55: Electronic Design Automation Day 7: February, 0 Clustering (LUT Mapping, Delay) Today How do we map to LUTs What happens when IO dominates Delay dominates Lessons for non-luts for delay-oriented

More information

VLSI Design Automation

VLSI Design Automation VLSI Design Automation IC Products Processors CPU, DSP, Controllers Memory chips RAM, ROM, EEPROM Analog Mobile communication, audio/video processing Programmable PLA, FPGA Embedded systems Used in cars,

More information

DYNAMIC CIRCUIT TECHNIQUE FOR LOW- POWER MICROPROCESSORS Kuruva Hanumantha Rao 1 (M.tech)

DYNAMIC CIRCUIT TECHNIQUE FOR LOW- POWER MICROPROCESSORS Kuruva Hanumantha Rao 1 (M.tech) DYNAMIC CIRCUIT TECHNIQUE FOR LOW- POWER MICROPROCESSORS Kuruva Hanumantha Rao 1 (M.tech) K.Prasad Babu 2 M.tech (Ph.d) hanumanthurao19@gmail.com 1 kprasadbabuece433@gmail.com 2 1 PG scholar, VLSI, St.JOHNS

More information

CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES This chapter in the book includes: Objectives Study Guide 9.1 Introduction 9.2 Multiplexers 9.3 Three-State Buffers 9.4 Decoders and Encoders

More information

VLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007

VLSI System Design Part II : Logic Synthesis (1) Oct Feb.2007 VLSI System Design Part II : Logic Synthesis (1) Oct.2006 - Feb.2007 Lecturer : Tsuyoshi Isshiki Dept. Communications and Integrated Systems, Tokyo Institute of Technology isshiki@vlsi.ss.titech.ac.jp

More information

Digital Integrated Circuits Lecture 2: MIPS Processor Example

Digital Integrated Circuits Lecture 2: MIPS Processor Example Digital Integrated Circuits Lecture 2: MIPS Processor Example Chih-Wei Liu VLSI Signal Processing LAB National Chiao Tung University cwliu@twins.ee.nctu.edu.tw DIC-Lec2 cwliu@twins.ee.nctu.edu.tw 1 Outline

More information

Eliminating Routing Congestion Issues with Logic Synthesis

Eliminating Routing Congestion Issues with Logic Synthesis Eliminating Routing Congestion Issues with Logic Synthesis By Mike Clarke, Diego Hammerschlag, Matt Rardon, and Ankush Sood Routing congestion, which results when too many routes need to go through an

More information

Boolean Algebra. BME208 Logic Circuits Yalçın İŞLER

Boolean Algebra. BME208 Logic Circuits Yalçın İŞLER Boolean Algebra BME28 Logic Circuits Yalçın İŞLER islerya@yahoo.com http://me.islerya.com 5 Boolean Algebra /2 A set of elements B There exist at least two elements x, y B s. t. x y Binary operators: +

More information

A 65nm Parallel Prefix High Speed Tree based 64-Bit Binary Comparator

A 65nm Parallel Prefix High Speed Tree based 64-Bit Binary Comparator A 65nm Parallel Prefix High Speed Tree based 64-Bit Binary Comparator Er. Deepak sharma Student M-TECH, Yadavindra College of Engineering, Punjabi University, Guru Kashi Campus,Talwandi Sabo. Er. Parminder

More information

CMPE 413/ CMSC 711. Project Specification: 16 bit 2 s complement Adder and 8 bit 2 s complement multiplier. GND. Input bus. Latches I[8]-I[15]

CMPE 413/ CMSC 711. Project Specification: 16 bit 2 s complement Adder and 8 bit 2 s complement multiplier. GND. Input bus. Latches I[8]-I[15] Project Specification: 16 bit 2 s complement Adder and 8 bit 2 s complement multiplier. Assigned: Fri, Nov 3rd Due: Tue, Dec. 19th Description: con1 I[15] I[14] I[13] GND I[12] I[11] I[10] I[9] con2 O[15]

More information

Altera Quartus II Synopsys Design Vision Tutorial

Altera Quartus II Synopsys Design Vision Tutorial Altera Quartus II Synopsys Design Vision Tutorial Part III ECE 465 (Digital Systems Design) ECE Department, UIC Instructor: Prof. Shantanu Dutt Prepared by: Xiuyan Zhang, Ouwen Shi In tutorial part II,

More information

CAD Algorithms. Placement and Floorplanning

CAD Algorithms. Placement and Floorplanning CAD Algorithms Placement Mohammad Tehranipoor ECE Department 4 November 2008 1 Placement and Floorplanning Layout maps the structural representation of circuit into a physical representation Physical representation:

More information

Introduction VLSI PHYSICAL DESIGN AUTOMATION

Introduction VLSI PHYSICAL DESIGN AUTOMATION VLSI PHYSICAL DESIGN AUTOMATION PROF. INDRANIL SENGUPTA DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Introduction Main steps in VLSI physical design 1. Partitioning and Floorplanning l 2. Placement 3.

More information

Introduction to Programmable Logic Devices (Class 7.2 2/28/2013)

Introduction to Programmable Logic Devices (Class 7.2 2/28/2013) Introduction to Programmable Logic Devices (Class 7.2 2/28/2013) CSE 2441 Introduction to Digital Logic Spring 2013 Instructor Bill Carroll, Professor of CSE Today s Topics Complexity issues Implementation

More information

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Lab #2: Layout and Simulation NTU IC541CA 1 Assumed Knowledge This lab assumes use of the Electric

More information

Basic Idea. The routing problem is typically solved using a twostep

Basic Idea. The routing problem is typically solved using a twostep Global Routing Basic Idea The routing problem is typically solved using a twostep approach: Global Routing Define the routing regions. Generate a tentative route for each net. Each net is assigned to a

More information

Combinational Logic & Circuits

Combinational Logic & Circuits Week-I Combinational Logic & Circuits Spring' 232 - Logic Design Page Overview Binary logic operations and gates Switching algebra Algebraic Minimization Standard forms Karnaugh Map Minimization Other

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION Rapid advances in integrated circuit technology have made it possible to fabricate digital circuits with large number of devices on a single chip. The advantages of integrated circuits

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

L14 - Placement and Routing

L14 - Placement and Routing L14 - Placement and Routing Ajay Joshi Massachusetts Institute of Technology RTL design flow HDL RTL Synthesis manual design Library/ module generators netlist Logic optimization a b 0 1 s d clk q netlist

More information

Digital System Design

Digital System Design Digital System Design Analog time varying signals that can take on any value across a continuous range of voltage, current or other metric Digital signals are modeled with two states, 0 or 1 underneath

More information

In this chapter we present basic definitions that relate to

In this chapter we present basic definitions that relate to 01_1_16.fm Page 1 Thursday, January 13, 2000 9:22 AM C H A P T E R 1 Structured Design Concepts In this chapter we present basic definitions that relate to the design process. It is necessary to introduce

More information