(Lec 14) Placement & Partitioning: Part III

Size: px
Start display at page:

Download "(Lec 14) Placement & Partitioning: Part III"

Transcription

1 Page (Lec ) Placement & Partitioning: Part III What you know That there are big placement styles: iterative, recursive, direct Placement via iterative improvement using simulated annealing Recursive-style placement via min-cut with F&M partitioning What you don t know The last style: direct placement One issue is mathematical model: quadratic wirelength minimization Second issue is legalization strategy: we do PROUD-style legalization R. Rutenbar 00 CMU 8-760, Fall0 Copyright Notice Rob A. Rutenbar 00 All rights reserved. You may not make copies of this material in any form without my express permission. R. Rutenbar 00 CMU 8-760, Fall0

2 Page Where Are We? Physical design--placement via direct methods M T W Th F Aug Sep Oct Nov Thnxgive Dec Introduction Advanced Boolean algebra JAVA Review Formal verification -Level logic synthesis Multi-level logic synthesis Technology mapg Placement Routing Static timing analysis Electrical timing analysis Geometric data structs & apps R. Rutenbar 00 CMU 8-760, Fall0 Strategy: Direct Placement All these use a technique called Quadratic Placement Model all gates as movable points, all wires as -point springs Minimize total squared Euclidean length: Σ i EuclideanLength (net i) Surprisingly, can do initial parts of this directly, numerically, exactly Initial Solution Legalization Strategy Final Placement R. Rutenbar 00 CMU 8-760, Fall0

3 Page Model Assumptions Geometric simplifications Gates: model as dimensionless points Grid slots: none, ie, no placement grid, no gate in slot constraints Pins: must be fixed somewhere around boundary of the chip Wires: we only allow -point connections; we minimize Σ length quadratic wirelength: R. Rutenbar 00 CMU 8-760, Fall0 5 Model Assumptions: Multipoint Wires In real netlists, can have a wire connect to > objects If it connects to just objects -- points -- called a point net If it connects to > objects -- called a multipoint net Idea Decompose each multipoint net into a set of point nets Necessary to be able use the quadratic wirelength model: square of the length of the wire only really makes sense for point net How to decompose...? R. Rutenbar 00 CMU 8-760, Fall0 6

4 Page Decomposing Multipoint Nets Multi-point net Suppose we have a 5 point net here A 5-point net Problem: quadratic wirelength is what? Solution: assume fully connected nets All pt-to-pt connections must be included #-pt nets here == k-pt net becomes [k ( k-)] / -pt nets for us R. Rutenbar 00 CMU 8-760, Fall0 7 Weighting the Wires Each wire can have a weight Specifies its importance in the minimization problem......or that there actually are multiple wires between objects In this formulation you can t tell the difference But what about a weighted multipoint wire? R. Rutenbar 00 CMU 8-760, Fall0 8

5 Page 5 Weighting the Wires Question When we decompose, what happens to the weights? Solution: for k-point net, multiply each pt connection by Example: point net, look at typical partition of it objects k= pts w = R. Rutenbar 00 CMU 8-760, Fall0 9 Overall Model Ideas Objects are dimensionless points: (xi, yi) placed arbitrarily; s fixed Nets are all point connections (maybe weighted) among these points Wirelength is measured as sum of quadratic net lengths R. Rutenbar 00 CMU 8-760, Fall0 0

6 Page 6 About the Model Why quadratic wirelength? One reason: can get an analytical solution to min[ Σ quadratic wirelen] We can write equations, solve numerically for an exact, best minimum Tradeoffs Quadratic wirelen NOT a particularly good model of the length of real wires after routing -- but we can get an analytical min length Objects as dimensionless points NOT a particularly good model of a real placement -- must fix problems caused by ignoring shapes, and slots But--there are fixes that deal with these problems, and it turns out you can do HUGE things--millions of gates--with these methods R. Rutenbar 00 CMU 8-760, Fall0 Direct Formulation All quadratic wirelength min. problems look like this eqn: How to solve? Transform this into a standard optimization problem Requires some linear algebra, some calculus R. Rutenbar 00 CMU 8-760, Fall0

7 Page 7 Basic Matrix Stuff Linear equations By now (I hope!) you should know that N linear equations in N unknows can be written compactly as a single matrix equation a x + a x + a x = k a x + a x + a x = k a x + a x + a x = k a a a a a a a a a x x x = k k k But how do we get to quadratic wirelength? R. Rutenbar 00 CMU 8-760, Fall0 Quadratic Forms Turns out that x T A x is the right form for quadratic wirelens x is a column vector, x T is a row vector, A a square matrix x = x x T = x A = a b A T = c d x T A x = x T A x can represent a sum of (constant) xi xj for all possible pairs or i, j But what exactly is the right way to set up this problem? R. Rutenbar 00 CMU 8-760, Fall0

8 Page 8 Start with Point-to-Point Connectivity Info Placeable objects Nets Set of n connected points {,,..., n} point connections only, as discussed before A weighted connectivity matrix represents these connections C =. i. n...j... n c ij i c ij = here Can think of this as either: j i connects to j with net of weight i connects to j with nets of weight We can t tell the difference using C matrix R. Rutenbar 00 CMU 8-760, Fall0 5 Matrix Formulation Start with a simpler problem, -dimensional placement We want to place the objects {,,..., n} on a line Means we want to solve for x, x,..., xn to minimize weighted quadratic wirelength Question: what is right A for x T A x? Quadratic wirelen Matrix form R. Rutenbar 00 CMU 8-760, Fall0 6

9 Page 9 Matrix Formulation When in doubt, try a little example: objects placed on a line C matrix is: Quadratic wirelen is: R. Rutenbar 00 CMU 8-760, Fall0 7 Matrix Formulation Turns out this is the right matrix A for the job: Quadratic wirelen = *x + 5*x + *x -*x *x -8*x *x -0*x *x = x T A x = x x x x x 0 - x Try it: R. Rutenbar 00 CMU 8-760, Fall0 8

10 Page 0 Matrix Formulation Look closely: compare C and A; can you see pattern? C = A = A = Diagonal Cij R. Rutenbar 00 CMU 8-760, Fall0 9 Matrix Formulation Summary It all works netlist C A c ij a ij a ii diagonal = Σj c ij a ij off diagonal = -c ij / Σ i Σ j [c ij (xi - xj) ] x T A x New problem I don t just want to write this wirelength down......i want to solve for the vector of x locations that minimizes it How? R. Rutenbar 00 CMU 8-760, Fall0 0

11 Page Minimizing x T A x This minimization is just a higher dimensional version of something you already should know... -variable version Just one variable, x To minimize... R. Rutenbar 00 CMU 8-760, Fall0 Minimizing x T A x Higher dimensional version: -variable case variables, x x f = x -x x + x To minimize... f = x -x = 0 x f = -x + x = 0 x = R. Rutenbar 00 CMU 8-760, Fall0

12 Page Oops: Problem The only direct solution here is xi=0 for all i This is the solution to the unconstrained form of the problem We have to add some additional constraints to avoid this trivial soln For placement min x T A x Add so-called pad constraint to force the solution to spread out, pads represent fixed objects connected to wires; they can t move R. Rutenbar 00 CMU 8-760, Fall0 Pad Constraints: Basics Assume some objects are fixed, can t move, and that there are wires from these to the movable objects Like pads are fixed around the periphery of a chip surface pad pad fixed x,y fixed x,y R. Rutenbar 00 CMU 8-760, Fall0

13 Page Pad Constraints Back to the -var case to see how to optimize fixed pad fixed pad Quadratic wirelen: x=k x=? x=h *(x-k) + *(x-h) = x - kx + k + x - hx + h Functional form / a x + b x + constant To minimize = R. Rutenbar 00 CMU 8-760, Fall0 5 Pad Constraints -var example variables (objects); arbitrary number of pads and nets fixed pad fixed pad Quadratic wirelen: x=k x x x=h (x -k) + (x -h) +(x -x ) Functional form = [x + x -x x ] + [-kx -hx ] + [k + h ] x x A (x) x + b b x x x + constant Written: x T A x + b T x + constant R. Rutenbar 00 CMU 8-760, Fall0 6

14 Page Pad Constraints Concrete -variable example min f = x -x x + x + b x + b x + constant f = 0 = x f = 0 = x x x = R. Rutenbar 00 CMU 8-760, Fall0 7 Pad Constraints Reformulate all this with matrices min x - x x + x + b x + b x + constant Starting problem Solution x -x = -b x -x = -b - - x x = -b -b fixed Netlist = x x fixed C= 0 0 R. Rutenbar 00 CMU 8-760, Fall0 8

15 Page 5 Be Careful... Gotta be careful about the s and /s floating around here Often see this formulated as / x T A x + b T x + const It s the same thing, just divide by the in front of b, get a new const Here is another simple example (,) quadratic wirelen for just x part is: x + 6 x - xx - 8 x + (0,0) x x - x x x x = x T A x + b T x + const solution still: Ax = -b = 0 R. Rutenbar 00 CMU 8-760, Fall0 9 Conditions for Solution -var case min / a x + b x + const has a solution x = -b/a as long as a = positive General case min / x T A x + b T x + const has a solution if A is positive definite Definition: Positive definite Matrix A is positive definite if, for any vector x, x T Ax > 0 always Useful result R. Rutenbar 00 CMU 8-760, Fall0 0

16 Page 6 Placing in (x,y) Plane How to handle the dimensional wirelen minimization task? Formulate the x variables and the y variables as separate minimization problems; minimize them separately Why? There are never any x y terms in the quadratic wirelength formula; OK to separate out the problem like this fixed x,y fixed x,y Formulation: Min x quadratic wirelength wirelen => Ax = -b Min y quadratic wirelength wirelen => A y = -b x x xn y y yn R. Rutenbar 00 CMU 8-760, Fall0 Example pads, a new 5 object netlist (0, ) 5 (,) C = A = (/,0) (,0) for x: A x = -b = y: A y =-b = R. Rutenbar 00 CMU 8-760, Fall0

17 Page 7 Some Subtleties Here Note: not precisely the same A as before Start with the same C connectivity matrix among placeable objects A is still (special diagonal) - [c ij ] But you now have to account for the extra connections to the fixed pad objects for these elements on the diagonal; you sum weights on these wires as well as wires to movable objects (0, ) (/,0) 5 (,) (,0) A= 5 5 R. Rutenbar 00 CMU 8-760, Fall0 Placement Result (MATLAB) (0, ) (,) (/,0) (,0) R. Rutenbar 00 CMU 8-760, Fall0

18 Page 8 Another Placement Result Change weights: remember to change A and b vectors! (0, ) (/,0) (,) (,0) A = bx = by = R. Rutenbar 00 CMU 8-760, Fall0 5 Summary So Far Direct placement Dimensionless points, -point weighted wires Minimize sum of squares of wire lengths Has a direct-form representation of aggregate wirelength with functional form / x T A x + b T x + const or equivalently x T A x + b T x + const...this is minimized at Ax = -b Do x and y placements separately Open issues These objects are really not dimensionless points, and we don t yet have a legal placement when this is finished There are ways around these problems R. Rutenbar 00 CMU 8-760, Fall0 6

19 Page 9 Dealing with Shape The points really have shape, and need to be in rows Problems Legalization: the objects almost certainly overlap after quadratic place. How do we fix this? Several strategies; we will look informally at one R. Rutenbar 00 CMU 8-760, Fall0 7 Strategy: PROUD Who Ren Song Tsay, Ernest Kuh, Chi Ping Hsu, PROUD: A Sea-Of-gates Placement Algorithm, IEEE Design & Test of Computers, Dec 988. What Recursive legalization by partitioning & refining Use quadratic placement as starting point for a recursive strategy R. Rutenbar 00 CMU 8-760, Fall0 8

20 Page 0 PROUD: Mechanics Mechanics Balancing cut Physical cut Perform the first quadratic placement, inside this region. Via sorting gates on X, decide which gates need to be on the left side (want ~/ on left) Place a physical cutline at the X center of the region; We will now reformulate a new placement problem just to re-do the gates on the left. R. Rutenbar 00 CMU 8-760, Fall0 9 PROUD: Mechanics Mechanics Physical cut Physical cut Focus on the gates inside the shaded region on the left side of the cut. Big question: How do we model the fact that wires connect to gates on the right? We can t just ignore these when we re-place gates on left in their own smaller (shaded) region! R. Rutenbar 00 CMU 8-760, Fall0 0

21 Page PROUD: Mechanics Idea We model physical effect of wires that go outside our left-side region via wires to psuedo-s which represent approximately where these wires need to go Now, we can solve the left-side alone, again, to get the next cut Solution: model gates on the right as new, fake s on the left. Process is called pseudo propagation R. Rutenbar 00 CMU 8-760, Fall0 PROUD: Processing the Subregions Idea Pick one of the regions R (eg, the left one) of cut hierarchy Propagate pseudo-s to R s cut boundary Solve (quadratic re-place) region R Now, pick NEXT region, R Propagate pseudo-s to R s cut boundary Note, some of these may be due to the most recent gate placement motions of solving R Solve (quadratic re-place) region R Pick NEXT region, R, etc Iteration Tsay says he goes around this whole loop -5 times at each level of the hierarchy i.e., we propagate & replace each region -5 times, which allows effects of global movements to be felt by everybody R. Rutenbar 00 CMU 8-760, Fall0

22 Page PROUD: Iteration Why do we repeat this operation? Ping-pong back and forth thru subregions? Gives objects in region a chance to influence other regions Initial solve Prop. from right Solve left Prop. from left Solve right Better answer; repeat this R. Rutenbar 00 CMU 8-760, Fall0 PROUD: Iteration Easier to see when there are many regions at the level of the cut hierarchy Initial solve Replace R Replace R Replace R 5... Replace R Replace R5 Replace R again... R. Rutenbar 00 CMU 8-760, Fall0

23 Page PROUD: Finalizing Placement Does this create a legal placement buy itself? No It does a pretty good job of global placement, and guaranteeing that you do not put more modules in any region than the area allows But, it cannot really force individual gates into cell rows Solution Don t partition all the way down to individual objects Go down to regions with many (0s) of objects, snap onto row grid, and then do iterative improvement based on swaps of modules People do annealing down here, among other things R. Rutenbar 00 CMU 8-760, Fall0 5 PROUD: Summary Quadratic place To get the initial placement Again, on each region of the cut hierarchy, to help legalize the region, to move objects to good place after they are forced to go in a region Recursive cutting To force ~ right number of placeable objects in each region Uses quadratic placement and psuedo-s to do each region Final legalization Run above till each region has few tens of cells Then do iterative improvement R. Rutenbar 00 CMU 8-760, Fall0 6

24 Page Summary Iterative improvement placement by annealing The approach in the 980s; runs out of gas at a few 00,000 gates Recursive mincut placers Based on clever, iterative improvement partitioning Coming back into style today; very good for very large ASICs Quadratic direct placement Point-based, -point-wires; can minimize quadratic wirelen exactly, fast But, placement not really legal (overlaps); lots of work here. Today Mix of quadratic and mincut techniques to do gross placement; iterative improvement local refinement to get legal final placement This is really how people really do millions of gates today R. Rutenbar 00 CMU 8-760, Fall0 7

Digital VLSI Design. Lecture 7: Placement

Digital VLSI Design. Lecture 7: Placement Digital VLSI Design Lecture 7: Placement Semester A, 2016-17 Lecturer: Dr. Adam Teman 29 December 2016 Disclaimer: This course was prepared, in its entirety, by Adam Teman. Many materials were copied from

More information

FastPlace 2.0: An Efficient Analytical Placer for Mixed- Mode Designs

FastPlace 2.0: An Efficient Analytical Placer for Mixed- Mode Designs FastPlace.0: An Efficient Analytical Placer for Mixed- Mode Designs Natarajan Viswanathan Min Pan Chris Chu Iowa State University ASP-DAC 006 Work supported by SRC under Task ID: 106.001 Mixed-Mode Placement

More information

VLSI Design Automation Final Project Due: June 26 th, Project: A Router

VLSI Design Automation Final Project Due: June 26 th, Project: A Router Project: A Router In lecture, we described how to use the maze routing method to route the wires in a large ASIC, using a 3-dimensional stack of routing grids. In this project assignment, you get to build

More information

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No.

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No. Fundamentals of Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture No. # 13 Transportation Problem, Methods for Initial Basic Feasible

More information

MITOCW ocw f99-lec07_300k

MITOCW ocw f99-lec07_300k MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those

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

ICS 252 Introduction to Computer Design

ICS 252 Introduction to Computer Design ICS 252 Introduction to Computer Design Placement Fall 2007 Eli Bozorgzadeh Computer Science Department-UCI References and Copyright Textbooks referred (none required) [Mic94] G. De Micheli Synthesis and

More information

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute Module 07 Lecture - 38 Divide and Conquer: Closest Pair of Points We now look at another divide and conquer algorithm,

More information

Spring99 VLSI CAD Project 3: Global Routing

Spring99 VLSI CAD Project 3: Global Routing 18-760 Spring99 VLSI CAD Project 3: Global Routing Out: Tue Apr 6, 1999. Due: Thu, Apr 29, 1999 1.0 Background In Fall97 (the last time we taught 760) Project 3 was an annealing placer. We supplied netlists

More information

Foundations of Computing

Foundations of Computing Foundations of Computing Darmstadt University of Technology Dept. Computer Science Winter Term 2005 / 2006 Copyright c 2004 by Matthias Müller-Hannemann and Karsten Weihe All rights reserved http://www.algo.informatik.tu-darmstadt.de/

More information

Matrix Inverse 2 ( 2) 1 = 2 1 2

Matrix Inverse 2 ( 2) 1 = 2 1 2 Name: Matrix Inverse For Scalars, we have what is called a multiplicative identity. This means that if we have a scalar number, call it r, then r multiplied by the multiplicative identity equals r. Without

More information

Estimation of Wirelength

Estimation of Wirelength Placement The process of arranging the circuit components on a layout surface. Inputs: A set of fixed modules, a netlist. Goal: Find the best position for each module on the chip according to appropriate

More information

A SURVEY: ON VARIOUS PLACERS USED IN VLSI STANDARD CELL PLACEMENT AND MIXED CELL PLACEMENT

A SURVEY: ON VARIOUS PLACERS USED IN VLSI STANDARD CELL PLACEMENT AND MIXED CELL PLACEMENT Int. J. Chem. Sci.: 14(1), 2016, 503-511 ISSN 0972-768X www.sadgurupublications.com A SURVEY: ON VARIOUS PLACERS USED IN VLSI STANDARD CELL PLACEMENT AND MIXED CELL PLACEMENT M. SHUNMUGATHAMMAL a,b, C.

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

CAD Flow for FPGAs Introduction

CAD Flow for FPGAs Introduction CAD Flow for FPGAs Introduction What is EDA? o EDA Electronic Design Automation or (CAD) o Methodologies, algorithms and tools, which assist and automatethe design, verification, and testing of electronic

More information

VLSI Physical Design: From Graph Partitioning to Timing Closure

VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 4 Global and Detailed Placement Original Authors: Andrew B. Kahng, Jens, Igor L. Markov, Jin Hu 1 Chapter 4 Global and Detailed Placement 4.1 Introduction 4. Optimization Objectives 4.3 Global

More information

2.3 Algorithms Using Map-Reduce

2.3 Algorithms Using Map-Reduce 28 CHAPTER 2. MAP-REDUCE AND THE NEW SOFTWARE STACK one becomes available. The Master must also inform each Reduce task that the location of its input from that Map task has changed. Dealing with a failure

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

An Introduction to FPGA Placement. Yonghong Xu Supervisor: Dr. Khalid

An Introduction to FPGA Placement. Yonghong Xu Supervisor: Dr. Khalid RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR An Introduction to FPGA Placement Yonghong Xu Supervisor: Dr. Khalid RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR

More information

Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006

Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 Physical Design of Digital Integrated Circuits (EN029 S40) Sherief Reda Division of Engineering, Brown University Fall 2006 Lecture 09: Routing Introduction to Routing Global Routing Detailed Routing 2

More information

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance

More information

Vector Calculus: Understanding the Cross Product

Vector Calculus: Understanding the Cross Product University of Babylon College of Engineering Mechanical Engineering Dept. Subject : Mathematics III Class : 2 nd year - first semester Date: / 10 / 2016 2016 \ 2017 Vector Calculus: Understanding the Cross

More information

B553 Lecture 12: Global Optimization

B553 Lecture 12: Global Optimization B553 Lecture 12: Global Optimization Kris Hauser February 20, 2012 Most of the techniques we have examined in prior lectures only deal with local optimization, so that we can only guarantee convergence

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

MITOCW ocw f99-lec12_300k

MITOCW ocw f99-lec12_300k MITOCW ocw-18.06-f99-lec12_300k This is lecture twelve. OK. We've reached twelve lectures. And this one is more than the others about applications of linear algebra. And I'll confess. When I'm giving you

More information

Exploring Fractals through Geometry and Algebra. Kelly Deckelman Ben Eggleston Laura Mckenzie Patricia Parker-Davis Deanna Voss

Exploring Fractals through Geometry and Algebra. Kelly Deckelman Ben Eggleston Laura Mckenzie Patricia Parker-Davis Deanna Voss Exploring Fractals through Geometry and Algebra Kelly Deckelman Ben Eggleston Laura Mckenzie Patricia Parker-Davis Deanna Voss Learning Objective and skills practiced Students will: Learn the three criteria

More information

x 2 + 3, r 4(x) = x2 1

x 2 + 3, r 4(x) = x2 1 Math 121 (Lesieutre); 4.2: Rational functions; September 1, 2017 1. What is a rational function? It s a function of the form p(x), where p(x) and q(x) are both polynomials. In other words, q(x) something

More information

EN2911X: Reconfigurable Computing Lecture 13: Design Flow: Physical Synthesis (5)

EN2911X: Reconfigurable Computing Lecture 13: Design Flow: Physical Synthesis (5) EN2911X: Lecture 13: Design Flow: Physical Synthesis (5) Prof. Sherief Reda Division of Engineering, rown University http://scale.engin.brown.edu Fall 09 Summary of the last few lectures System Specification

More information

Circuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk

Circuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk Circuit Placement: 2000-Caldwell,Kahng,Markov; 2002-Kennings,Markov; 2006-Kennings,Vorwerk Andrew A. Kennings, Univ. of Waterloo, Canada, http://gibbon.uwaterloo.ca/ akenning/ Igor L. Markov, Univ. of

More information

Detailed instructions for video analysis using Logger Pro.

Detailed instructions for video analysis using Logger Pro. Detailed instructions for video analysis using Logger Pro. 1. Begin by locating or creating a video of a projectile (or any moving object). Save it to your computer. Most video file types are accepted,

More information

D-Optimal Designs. Chapter 888. Introduction. D-Optimal Design Overview

D-Optimal Designs. Chapter 888. Introduction. D-Optimal Design Overview Chapter 888 Introduction This procedure generates D-optimal designs for multi-factor experiments with both quantitative and qualitative factors. The factors can have a mixed number of levels. For example,

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

Triangle Rasterization

Triangle Rasterization Triangle Rasterization Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 2/07/07 1 From last time Lines and planes Culling View frustum culling Back-face culling Occlusion culling

More information

(Refer Slide Time: 01.26)

(Refer Slide Time: 01.26) Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture # 22 Why Sorting? Today we are going to be looking at sorting.

More information

Term Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement. Imran M. Rizvi John Antony K.

Term Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement. Imran M. Rizvi John Antony K. Term Paper for EE 680 Computer Aided Design of Digital Systems I Timber Wolf Algorithm for Placement By Imran M. Rizvi John Antony K. Manavalan TimberWolf Algorithm for Placement Abstract: Our goal was

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

Finite Math - J-term Homework. Section Inverse of a Square Matrix

Finite Math - J-term Homework. Section Inverse of a Square Matrix Section.5-77, 78, 79, 80 Finite Math - J-term 017 Lecture Notes - 1/19/017 Homework Section.6-9, 1, 1, 15, 17, 18, 1, 6, 9, 3, 37, 39, 1,, 5, 6, 55 Section 5.1-9, 11, 1, 13, 1, 17, 9, 30 Section.5 - Inverse

More information

(Refer Slide Time: 1:43)

(Refer Slide Time: 1:43) (Refer Slide Time: 1:43) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture - 27 Pattern Detector So, we talked about Moore

More information

COMP 161 Lecture Notes 16 Analyzing Search and Sort

COMP 161 Lecture Notes 16 Analyzing Search and Sort COMP 161 Lecture Notes 16 Analyzing Search and Sort In these notes we analyze search and sort. Counting Operations When we analyze the complexity of procedures we re determine the order of the number of

More information

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z Basic Linear Algebra Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ 1 5 ] 7 9 3 11 Often matrices are used to describe in a simpler way a series of linear equations.

More information

The first thing we ll need is some numbers. I m going to use the set of times and drug concentration levels in a patient s bloodstream given below.

The first thing we ll need is some numbers. I m going to use the set of times and drug concentration levels in a patient s bloodstream given below. Graphing in Excel featuring Excel 2007 1 A spreadsheet can be a powerful tool for analyzing and graphing data, but it works completely differently from the graphing calculator that you re used to. If you

More information

(Refer Slide Time 3:31)

(Refer Slide Time 3:31) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions

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

Lectures 4 and 5 (Julian) Computer Programming: Skills & Concepts (INF-1-CP1) double; float; quadratic equations. Practical 1.

Lectures 4 and 5 (Julian) Computer Programming: Skills & Concepts (INF-1-CP1) double; float; quadratic equations. Practical 1. Lectures 4 and 5 (Julian) Computer Programming: Skills & Concepts (INF-1-CP1) double; float; quadratic equations 4th October, 2010 Integer arithmetic in C. Converting pre-decimal money to decimal. The

More information

Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 01 Introduction Welcome to the course on Hardware

More information

Finding Similar Sets. Applications Shingling Minhashing Locality-Sensitive Hashing

Finding Similar Sets. Applications Shingling Minhashing Locality-Sensitive Hashing Finding Similar Sets Applications Shingling Minhashing Locality-Sensitive Hashing Goals Many Web-mining problems can be expressed as finding similar sets:. Pages with similar words, e.g., for classification

More information

II. Functions. 61. Find a way to graph the line from the problem 59 on your calculator. Sketch the calculator graph here, including the window values:

II. Functions. 61. Find a way to graph the line from the problem 59 on your calculator. Sketch the calculator graph here, including the window values: II Functions Week 4 Functions: graphs, tables and formulas Problem of the Week: The Farmer s Fence A field bounded on one side by a river is to be fenced on three sides so as to form a rectangular enclosure

More information

Mincut Placement with FM Partitioning featuring Terminal Propagation. Brett Wilson Lowe Dantzler

Mincut Placement with FM Partitioning featuring Terminal Propagation. Brett Wilson Lowe Dantzler Mincut Placement with FM Partitioning featuring Terminal Propagation Brett Wilson Lowe Dantzler Project Overview Perform Mincut Placement using the FM Algorithm to perform partitioning. Goals: Minimize

More information

(Refer Slide Time: 00:02:24 min)

(Refer Slide Time: 00:02:24 min) CAD / CAM Prof. Dr. P. V. Madhusudhan Rao Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture No. # 9 Parametric Surfaces II So these days, we are discussing the subject

More information

Lecture 17: Array Algorithms

Lecture 17: Array Algorithms Lecture 17: Array Algorithms CS178: Programming Parallel and Distributed Systems April 4, 2001 Steven P. Reiss I. Overview A. We talking about constructing parallel programs 1. Last time we discussed sorting

More information

Bindel, Fall 2011 Applications of Parallel Computers (CS 5220) Tuning on a single core

Bindel, Fall 2011 Applications of Parallel Computers (CS 5220) Tuning on a single core Tuning on a single core 1 From models to practice In lecture 2, we discussed features such as instruction-level parallelism and cache hierarchies that we need to understand in order to have a reasonable

More information

Computer Project #2 (Matrix Operations)

Computer Project #2 (Matrix Operations) Math 0280 Introduction to Matrices and Linear Algebra Fall 2006 Computer Project #2 (Matrix Operations) SCHEDULE: This assignment is due in class on Monday, October 23, 2006. One submission per group is

More information

Teaching Math thru Big Ideas Focusing on Differentiation. Marian Small April 2017 San Diego, CA

Teaching Math thru Big Ideas Focusing on Differentiation. Marian Small April 2017 San Diego, CA Teaching Math thru Big Ideas Focusing on Differentiation Marian Small April 2017 San Diego, CA Our focus today Differentiation by focusing on big ideas Formative assessment/feedback Planning lessons/units

More information

Principles of Algorithm Design

Principles of Algorithm Design Principles of Algorithm Design When you are trying to design an algorithm or a data structure, it s often hard to see how to accomplish the task. The following techniques can often be useful: 1. Experiment

More information

Vertical Line Test a relationship is a function, if NO vertical line intersects the graph more than once

Vertical Line Test a relationship is a function, if NO vertical line intersects the graph more than once Algebra 2 Chapter 2 Domain input values, X (x, y) Range output values, Y (x, y) Function For each input, there is exactly one output Example: Vertical Line Test a relationship is a function, if NO vertical

More information

In this section you will learn some simple data entry, editing, formatting techniques and some simple formulae. Contents

In this section you will learn some simple data entry, editing, formatting techniques and some simple formulae. Contents In this section you will learn some simple data entry, editing, formatting techniques and some simple formulae. Contents Section Topic Sub-topic Pages Section 2 Spreadsheets Layout and Design S2: 2 3 Formulae

More information

Excel for Algebra 1 Lesson 5: The Solver

Excel for Algebra 1 Lesson 5: The Solver Excel for Algebra 1 Lesson 5: The Solver OK, what s The Solver? Speaking very informally, the Solver is like Goal Seek on steroids. It s a lot more powerful, but it s also more challenging to control.

More information

Preclass Warmup. ESE535: Electronic Design Automation. Motivation (1) Today. Bisection Width. Motivation (2)

Preclass Warmup. ESE535: Electronic Design Automation. Motivation (1) Today. Bisection Width. Motivation (2) ESE535: Electronic Design Automation Preclass Warmup What cut size were you able to achieve? Day 4: January 28, 25 Partitioning (Intro, KLFM) 2 Partitioning why important Today Can be used as tool at many

More information

Program Syntax; Operational Semantics

Program Syntax; Operational Semantics 9/5 Solved Program Syntax; Operational Semantics CS 536: Science of Programming, Fall 2018 A. Why Our simple programming language is a model for the kind of constructs seen in actual languages. Step-by-step

More information

CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims. Lecture 10: Asymptotic Complexity and

CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims. Lecture 10: Asymptotic Complexity and CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims Lecture 10: Asymptotic Complexity and What Makes a Good Algorithm? Suppose you have two possible algorithms or

More information

Outline. Data Association Scenarios. Data Association Scenarios. Data Association Scenarios

Outline. Data Association Scenarios. Data Association Scenarios. Data Association Scenarios Outline Data Association Scenarios Track Filtering and Gating Global Nearest Neighbor (GNN) Review: Linear Assignment Problem Murthy s k-best Assignments Algorithm Probabilistic Data Association (PDAF)

More information

Mathematics 308 Geometry. Chapter 9. Drawing three dimensional objects

Mathematics 308 Geometry. Chapter 9. Drawing three dimensional objects Mathematics 308 Geometry Chapter 9. Drawing three dimensional objects In this chapter we will see how to draw three dimensional objects with PostScript. The task will be made easier by a package of routines

More information

Space Filling Curves and Hierarchical Basis. Klaus Speer

Space Filling Curves and Hierarchical Basis. Klaus Speer Space Filling Curves and Hierarchical Basis Klaus Speer Abstract Real world phenomena can be best described using differential equations. After linearisation we have to deal with huge linear systems of

More information

(Refer Slide Time: 00:02:02)

(Refer Slide Time: 00:02:02) Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 20 Clipping: Lines and Polygons Hello and welcome everybody to the lecture

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

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

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

Mathematics 350 Section 6.3 Introduction to Fractals

Mathematics 350 Section 6.3 Introduction to Fractals Mathematics 350 Section 6.3 Introduction to Fractals A fractal is generally "a rough or fragmented geometric shape that is self-similar, which means it can be split into parts, each of which is (at least

More information

Note that ALL of these points are Intercepts(along an axis), something you should see often in later work.

Note that ALL of these points are Intercepts(along an axis), something you should see often in later work. SECTION 1.1: Plotting Coordinate Points on the X-Y Graph This should be a review subject, as it was covered in the prerequisite coursework. But as a reminder, and for practice, plot each of the following

More information

Copyright 1987, by the author(s). All rights reserved.

Copyright 1987, by the author(s). All rights reserved. Copyright 1987, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are

More information

Project 1 Part II: Metaproduct Primes

Project 1 Part II: Metaproduct Primes Project Part II: Metaproduct Primes What ou know Basic BDD data structure and JAVA implementation A little bit about these things called metaproducts What ou don t know All the tricks with metaproducts

More information

Note: Please use the actual date you accessed this material in your citation.

Note: Please use the actual date you accessed this material in your citation. MIT OpenCourseWare http://ocw.mit.edu 18.06 Linear Algebra, Spring 2005 Please use the following citation format: Gilbert Strang, 18.06 Linear Algebra, Spring 2005. (Massachusetts Institute of Technology:

More information

Project 2: How Parentheses and the Order of Operations Impose Structure on Expressions

Project 2: How Parentheses and the Order of Operations Impose Structure on Expressions MAT 51 Wladis Project 2: How Parentheses and the Order of Operations Impose Structure on Expressions Parentheses show us how things should be grouped together. The sole purpose of parentheses in algebraic

More information

1 ICS 161: Design and Analysis of Algorithms Lecture notes for January 23, Bucket Sorting

1 ICS 161: Design and Analysis of Algorithms Lecture notes for January 23, Bucket Sorting 1 ICS 161: Design and Analysis of Algorithms Lecture notes for January 23, 1996 2 Bucket Sorting We ve seen various algorithms for sorting in O(n log n) time and a lower bound showing that O(n log n) is

More information

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 15: Caching: Demand Paged Virtual Memory

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 15: Caching: Demand Paged Virtual Memory CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2003 Lecture 15: Caching: Demand Paged Virtual Memory 15.0 Main Points: Concept of paging to disk Replacement policies

More information

Unification of Partitioning, Placement and Floorplanning. Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L.

Unification of Partitioning, Placement and Floorplanning. Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L. Unification of Partitioning, Placement and Floorplanning Saurabh N. Adya, Shubhyant Chaturvedi, Jarrod A. Roy, David A. Papa, and Igor L. Markov Outline Introduction Comparisons of classical techniques

More information

Trombone players produce different pitches partly by varying the length of a tube.

Trombone players produce different pitches partly by varying the length of a tube. Trombone players produce different pitches partly by varying the length of a tube. 7 Variables A variable is a connection between a name and a value.* That sounds simple enough, but some complexities arise

More information

Lecture 8: Synthesis, Implementation Constraints and High-Level Planning

Lecture 8: Synthesis, Implementation Constraints and High-Level Planning Lecture 8: Synthesis, Implementation Constraints and High-Level Planning MAH, AEN EE271 Lecture 8 1 Overview Reading Synopsys Verilog Guide WE 6.3.5-6.3.6 (gate array, standard cells) Introduction We have

More information

I. This material refers to mathematical methods designed for facilitating calculations in matrix

I. This material refers to mathematical methods designed for facilitating calculations in matrix A FEW CONSIDERATIONS REGARDING MATRICES operations. I. This material refers to mathematical methods designed for facilitating calculations in matri In this case, we know the operations of multiplying two

More information

But a vertex has two coordinates, an x and a y coordinate. So how would you find the corresponding y-value?

But a vertex has two coordinates, an x and a y coordinate. So how would you find the corresponding y-value? We will work with the vertex, orientation, and x- and y-intercepts of these functions. Intermediate algebra Class notes More Graphs of Quadratic Functions (section 11.6) In the previous section, we investigated

More information

CS6015 / LARP ACK : Linear Algebra and Its Applications - Gilbert Strang

CS6015 / LARP ACK : Linear Algebra and Its Applications - Gilbert Strang Solving and CS6015 / LARP 2018 ACK : Linear Algebra and Its Applications - Gilbert Strang Introduction Chapter 1 concentrated on square invertible matrices. There was one solution to Ax = b and it was

More information

Placement Algorithm for FPGA Circuits

Placement Algorithm for FPGA Circuits Placement Algorithm for FPGA Circuits ZOLTAN BARUCH, OCTAVIAN CREŢ, KALMAN PUSZTAI Computer Science Department, Technical University of Cluj-Napoca, 26, Bariţiu St., 3400 Cluj-Napoca, Romania {Zoltan.Baruch,

More information

Big Mathematical Ideas and Understandings

Big Mathematical Ideas and Understandings Big Mathematical Ideas and Understandings A Big Idea is a statement of an idea that is central to the learning of mathematics, one that links numerous mathematical understandings into a coherent whole.

More information

Algorithms for Data Science

Algorithms for Data Science Algorithms for Data Science CSOR W4246 Eleni Drinea Computer Science Department Columbia University Thursday, October 1, 2015 Outline 1 Recap 2 Shortest paths in graphs with non-negative edge weights (Dijkstra

More information

QUICK EXCEL TUTORIAL. The Very Basics

QUICK EXCEL TUTORIAL. The Very Basics QUICK EXCEL TUTORIAL The Very Basics You Are Here. Titles & Column Headers Merging Cells Text Alignment When we work on spread sheets we often need to have a title and/or header clearly visible. Merge

More information

2 A little on Spreadsheets

2 A little on Spreadsheets 2 A little on Spreadsheets Spreadsheets are computer versions of an accounts ledger. They are used frequently in business, but have wider uses. In particular they are often used to manipulate experimental

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

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

(Refer Slide Time: 00:04:20)

(Refer Slide Time: 00:04:20) Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture 8 Three Dimensional Graphics Welcome back all of you to the lectures in Computer

More information

Review for Quarter 3 Cumulative Test

Review for Quarter 3 Cumulative Test Review for Quarter 3 Cumulative Test I. Solving quadratic equations (LT 4.2, 4.3, 4.4) Key Facts To factor a polynomial, first factor out any common factors, then use the box method to factor the quadratic.

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17 5.1 Introduction You should all know a few ways of sorting in O(n log n)

More information

Hi. I m a three. I m always a three. I never ever change. That s why I m a constant.

Hi. I m a three. I m always a three. I never ever change. That s why I m a constant. Lesson 1-1: 1 1: Evaluating Expressions Hi. I m a three. I m always a three. I never ever change. That s why I m a constant. 3 Real life changes, though. So to talk about real life, math needs things that

More information

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9.

As a consequence of the operation, there are new incidences between edges and triangles that did not exist in K; see Figure II.9. II.4 Surface Simplification 37 II.4 Surface Simplification In applications it is often necessary to simplify the data or its representation. One reason is measurement noise, which we would like to eliminate,

More information

Wits Maths Connect Secondary Project Card-sorting Activities

Wits Maths Connect Secondary Project Card-sorting Activities Project Card-sorting Activities This pack consists of card-sorting activities which focus on working with different representations. Activities and focus on points while Activity focuses on the linear

More information

S Postgraduate Course on Signal Processing in Communications, FALL Topic: Iteration Bound. Harri Mäntylä

S Postgraduate Course on Signal Processing in Communications, FALL Topic: Iteration Bound. Harri Mäntylä S-38.220 Postgraduate Course on Signal Processing in Communications, FALL - 99 Topic: Iteration Bound Harri Mäntylä harri.mantyla@hut.fi ate: 11.10.1999 1. INTROUCTION...3 2. ATA-FLOW GRAPH (FG) REPRESENTATIONS...4

More information

How to Excel at Middle School Math Competitions Huasong Yin

How to Excel at Middle School Math Competitions Huasong Yin MathCounts Preparation How to Excel at Middle School Math Competitions By Huasong Yin www.jacksonareamath.com 0, Huasong Yin ALL RIGHTS RESERVED This book contains material protected under International

More information

Generic Global Placement and Floorplanning

Generic Global Placement and Floorplanning Generic Global Placement and Floorplanning Hans Eisenmann and Frank M. Johannes http://www.regent.e-technik.tu-muenchen.de Institute of Electronic Design Automation Technical University Munich 80290 Munich

More information

= f (a, b) + (hf x + kf y ) (a,b) +

= f (a, b) + (hf x + kf y ) (a,b) + Chapter 14 Multiple Integrals 1 Double Integrals, Iterated Integrals, Cross-sections 2 Double Integrals over more general regions, Definition, Evaluation of Double Integrals, Properties of Double Integrals

More information

(Refer Slide Time: 00:02:00)

(Refer Slide Time: 00:02:00) Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 18 Polyfill - Scan Conversion of a Polygon Today we will discuss the concepts

More information

1 Definition of Reduction

1 Definition of Reduction 1 Definition of Reduction Problem A is reducible, or more technically Turing reducible, to problem B, denoted A B if there a main program M to solve problem A that lacks only a procedure to solve problem

More information