ICS 252 Introduction to Computer Design

Slides:



Advertisements
Similar presentations
Introduction to Algorithms
Advertisements

Chapter 23 Minimum Spanning Tree
COMP 482: Design and Analysis of Algorithms
Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
HIGH LEVEL SYNTHESIS WITH AREA CONSTRAINTS FOR FPGA DESIGNES: AN EVOLUTIONARY APPROACH Tesi di Laurea di: Christian Pilato Matr.n Relatore: Prof.
ECE 667 Synthesis and Verification of Digital Circuits
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
Stanford University CS243 Winter 2006 Wei Li 1 Register Allocation.
Winter 2005ICS 252-Intro to Computer Design ICS 252 Introduction to Computer Design Lecture 5-Scheudling Algorithms Winter 2005 Eli Bozorgzadeh Computer.
FUNDAMENTAL PROBLEMS AND ALGORITHMS Graph Theory and Combinational © Giovanni De Micheli Stanford University.
1 CS 201 Compiler Construction Lecture 12 Global Register Allocation.
ECE Synthesis & Verification - Lecture 2 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Scheduling.
COE 561 Digital System Design & Synthesis Architectural Synthesis Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum.
Addressing Optimization for Loop Execution Targeting DSP with Auto-Increment/Decrement Architecture Wei-Kai Cheng Youn-Long Lin* Computer & Communications.
Approximation Algorithms
Lecture 38 CSE 331 Dec 3, A new grading proposal Towards your final score in the course MAX ( mid-term as 25%+ finals as 40%, finals as 65%) .
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Advanced Compilers CMPSCI 710.
CSE 421 Algorithms Richard Anderson Lecture 10 Minimum Spanning Trees.
ICS 252 Introduction to Computer Design Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI.
COE 561 Digital System Design & Synthesis Resource Sharing and Binding Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum.
ECE Synthesis & Verification - Lecture 4 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Circuits Allocation:
ICS 252 Introduction to Computer Design
Graph Theory Ch.5. Coloring of Graphs 1 Chapter 5 Coloring of Graphs.
CS420 lecture eight Greedy Algorithms. Going from A to G Starting with a full tank, we can drive 350 miles before we need to gas up, minimize the number.
9/3/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne Guest lecturer: Martin Furer Algorithm Design and Analysis L ECTURE.
1 Design and Analysis of Algorithms تصميم وتحليل الخوارزميات (311 عال) Chapter 1 Introduction to Algorithms.
COE 561 Digital System Design & Synthesis Architectural Synthesis Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum.
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 8.
ICS 252 Introduction to Computer Design Lecture 9 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Lecture 19 Greedy Algorithms Minimum Spanning Tree Problem.
ICS 252 Introduction to Computer Design Lecture 10 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
High-Level Synthesis-II Virendra Singh Indian Institute of Science Bangalore IEP on Digital System IIT Kanpur.
Graph Coloring. Vertex Coloring problem in VLSI routing channels Standard cells Share a track Minimize channel width- assign horizontal Metal wires to.
ICS 252 Introduction to Computer Design Lecture 12 Winter 2004 Eli Bozorgzadeh Computer Science Department-UCI.
© The McGraw-Hill Companies, Inc., Chapter 1 Introduction.
Lecture 19 Minimal Spanning Trees CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
Review of “Register Binding for FPGAs with Embedded Memory” by Hassan Al Atat and Iyad Ouaiss Lisa Steffen CprE 583.
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.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Greedy Algorithms – Chapter 5
Chapter 5. Greedy Algorithms
ECE 565 High-Level Synthesis—An Introduction
Hard Problems Introduction to NP
Design & Analysis of Algorithm Greedy Algorithm
Greedy Algorithms / Interval Scheduling Yin Tat Lee
Presented by Po-Chuan & Chen-Chen 2016/03/08
ICS 252 Introduction to Computer Design
ICS 353: Design and Analysis of Algorithms
Graphs & Graph Algorithms 2
3-3 Optimization with Linear Programming
Unit 4: Dynamic Programming
Architecture Synthesis
Resource Sharing and Binding
ICS 252 Introduction to Computer Design
Administrative Issues
Graphs and Vertex Coloring
ICS 252 Introduction to Computer Design
Autumn 2016 Lecture 10 Minimum Spanning Trees
ICS 252 Introduction to Computer Design
Richard Anderson Autumn 2016 Lecture 8 – Greedy Algorithms II
CSE 417: Algorithms and Computational Complexity
Richard Anderson Winter 2019 Lecture 7
Winter 2019 Lecture 10 Minimum Spanning Trees
INTRODUCTION TO ALOGORITHM DESIGN STRATEGIES
ICS 252 Introduction to Computer Design
Intersection Method of Solution
Department of Computer Science & Engineering
Presentation transcript:

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

ICS 252-Intro to Computer Design Reference Lecture note by Rajesh Gupta on resource sharing[©Gupta] http://www.ics.uci.edu/~rgupta/ics280.html Chapter 6.1 and 6.2 of the textbook Administrative Midterm 1: Feb 13, 10 a.m. in the class Winter 2004 ICS 252-Intro to Computer Design

Resources in High level synthesis Resource allocation Determine number of resources Resource binding Associate a resource to each operation Resource sharing More than one operation bound to same resource. Resource selection Select appropriate type to implement each operation [©Gupta] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Resource allocation Limiting cases of allocation One resource for each operation One resource per operation type Determined based on implementation size constraints Relation to scheduling [©Gupta] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Resource sharing Operation compatibility Operations that share resources Same type Non-concurrent Resource compatibility graph Resource conflict graph Complement of compatibility graph Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Example * * + * * < - * * - + [©Gupta] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Optimum solution On conflict graph Disjoint graph for different types Problem of? On compatibility graph Problem of ? Conflict graph is an interval graph Hence, compatibility graph is comparability graph Min coloring problem can be solve optimally in polynomial time in interval graphs. Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Greedy approach Left-edge algorithm Left-edge(I){ Lelements of I sorted in ascending order; c=0; While (L){ S=; Repeat{ sfirst element in L whose left edge is higher than the rightmost edge in S; S S U {s}; }until no more element s; c = c +1; Color elements of S with c; L L-S; } [©Gupta] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Memory elements Registers Hold data across cycles Data: value of a variable Variable lifetime in scheduled graph Can be re-used (shared) across variables Memory blocks [©Gupta] Winter 2004 ICS 252-Intro to Computer Design

ICS 252-Intro to Computer Design Register sharing Given lifetime intervals of variables, determine minimum number of registers to store all the variables. Standard resource sharing problem Build register conflict/comparability graphs Use left-edge for conflict graph [©Gupta] Winter 2004 ICS 252-Intro to Computer Design