A sequence of n arrival times t0 t1 tn-1 a library of

Assignment Help Computer Engineering
Reference no: EM13370445

A sequence of n arrival times t0, t1, ..., tn-1, . a library of mlogically equivalent gates {(d0, c0), (d1, c1), ..., (dm-1,cm-1)} where d is delay and c is cost. a maximum allowable arrival time at the output of the tree tmax

Objective: Construct a legal tree of gates which minimizes the total cost of the tree subject to the constraint that the arrival time at the output is no greater than tmax. Use dynamic programming to solve this

Problem:

Signal i arrives at its input pin at time ti.  The arrival time at the output of a gate g with inputs x and y is determined by:

tg = max (tx, ty) + dg

where tx and ty are the arrival times of inputs x and y respectively and dg is the delay through the gate.

The figures below give two trees for the given input.  The input pins are at the left of the diagrams and are labeled with their arrival times.  The two configurations

340_Construct a legal tree of gates which minimizes total cost.png

Allowable Trees

Because of the given ordering of the inputs, we will not allow just any tree structure; the trees must be "consistent" with the input pin ordering:

The leaves (inputs) of every subtree must be a consecutive subsequence of length two or more from the given pin ordering.

The tree in the diagram below violates this rule.

Don't worry, this is good news for you:  it makes the problem more tractable.

1612_Construct a legal tree of gates which minimizes total cost1.png

Given:  

? A sequence of n arrival times t0, t1, .........tn-1,

? a library of m logically equivalent gates { (d0,c0), (d1, c1),..........(dm-1, cm-1)}

? a maximum allowable arrival time at the output of the tree tmax

Objective:  Construct a legal tree of gates which minimizes the total cost of the tree subject to the constraint that the arrival time at the output is no greater than tmax.

Formats

Pin Arrival Times and Ordering:  The first file format specifies the signal arrival times in sequence.  The inputs are implicitly labeled t0, t1, .........tn-1.  The file is as simple as can be: 

? the first line specifies the number of input pins n;

? this is followed by n lines containing t0.........tn-1 as floating point numbers.

The problem instance used in the preceding diagrams would look like this:

6

6.0

3.0

4.0

7.0

2.0

3.0

 

Gate Library:  A gate library is specified in a file organized as follows:

? The first line is the integer m -- the number of gates in the library.

? This is followed by m lines, describing gates 0..m-1.  each line contains two positive floating point numbers (in this order).

? the delay -- a floating point number

? the cost -- an integer

? The ordering of the gates implicitly determines their IDs -- 0..m-1

? The gates are ordered in decreasing order of delay and increasing order of cost:  slowest/cheapest gate first.

For example, a library with three gates might look like this:

3

5.0 1

4.5 1

3.5 3

Topology Format:  postfix notation

A solution is a binary tree in which the leaves are labeled

b0, b1, ...

Each internal node represents a gate and is labeled:

gX

where X is the gate ID from the library (or simply 0 if there is only one such gate).

The structure of the tree itself is specified in postfix notation on a single line. Think of the gates as operators and as the inputs as operands.

The topology from the first figure would be specified as:

b0 b1 b2 g0 b3 b4 b5 g0 g0 g0 g0

Your program will use this format when reporting an optimal configuration.

Usage

Your program should run from the command line as follows:

% gtree <pin-file> {<library-file>} {-t <tmax>}

The pin file is required.

If no library file is specified, the default library is just a single gate with unit delay and unit cost.

If no maximum arrival time tmax is specified, the program should minimize the arrival time.

For example the following would run the program on a pin file test1 using gate library lib1 with timing constraint 10.0

% gtree test1 lib1 -t 10.0

Your program will then print a report to the terminal containing the following:

? Whether a feasible solution exists or not

? If a solution exists:

?     The arrival time of the solution

?     The cost

?     The topology in postfix notation

Assumptions:  For this assignment, you may assume the following:

? Input files are well-formatted

? The command line arguments are in exactly the order specified above.

Reference no: EM13370445

Questions Cloud

Requirements are1- prescriptive analysis of occupancy : requirements are1- prescriptive analysis of occupancy through prescriptive code analysis with in- depth information
Readeachquestioncarefullyremembertoexplainyoursolutionasyoug : readeachquestioncarefully.remembertoexplainyoursolutionasyougosincedesignproblemscanbesolvedinanumberofways.itisacceptab
Question 90ml of an unknown concentrated chlorine was : question 90ml of an unknown concentrated chlorine was diluted with 2250l of water. the dilution now is 0.08mgl. what is
Assess importance of leadership in bringing about the : assess importance of leadership in bringing about the necessary changes at porsche. describe answer with
A sequence of n arrival times t0 t1 tn-1 a library of : a sequence of n arrival times t0 t1 ... tn-1 . a library of mlogically equivalent gates d0 c0 d1 c1 ... dm-1cm-1 where
1 for the term symbolsnbspnbsp 3d 4d and 2gnbsp write the : 1. for the term symbolsnbspnbsp 3d 4d and 2gnbsp write the designation including the j values.nbsp in each case pick
Process of performing financial analysis of a public : process of performing financial analysis of a public companygeneral component---no more than one paragraph describing
Term paper for management of strategic operationyou are : term paper for management of strategic operationyou are required to complete a course project that reveals mastery in
Design and synthesis of continuous time : design and synthesis of continuous time controllers.2.learning outcomes covered 1 use matlab and simulink to model and

Reviews

Write a Review

Computer Engineering Questions & Answers

  Why organization that meets the company''s specifications

A software application has been delivered to your organization that meets the company's specifications. Using associated examples, describe problems which may arise when it is installed and used in your organization.

  Use digital evidence examples to discuss type of evidence

Use digital evidence examples to discuss the type of evidence (as discussed in the attach).

  Make a windows form program for a nina''s cookie source

contain at least one other functional control such as a button (Exit button) or a MenuStrip having an Exit and an About selection.

  The application must have at least one class

A salesperson can also receive a commission as a sales incentive. Commission is a percentage of the salesperson's annual sales. The current commission is 5 percentof total sales.

  How would you assess quality of a computer program

we have developed quality factors that we look for in a software product to measure quality. These are usually done at the macroscopic level, but how would you assess quality of a computer program if you received an e-mail with a source listing of..

  Questionour program has to take a string representing a

questionour program has to take a string representing a sentence in english and format it properly. the input sentence

  Create application for an "automotive repair shop"

Create Visual Basic.NET application for an "Automotive Repair Shop". Below are the needed.

  Write down the largest and the smallest numbers to screen

Write down a Java program that will search a text file of strings representing numbers of type int and will write the largest and the smallest numbers to the screen.

  Excel supports nesting of functions

Excel supports nesting of functions within one another. Why is that helpful ? Offer some examples of when you would and would not want to use nesting.

  Questionwrite down a function called issorted that takes a

questionwrite down a function called issorted that takes a list as a parameter and returns true if the list is sorted

  Pros and cons of re-usability for the paradigms

Re-usability is the ability to use code written for another situation. Most languages and programming paradigms support re-usability in some form. make a report about re-usability in the procedural and object oriented languages.

  Explain differences between the various graphic formats

explain differences between the various graphic formats. express some ways to increase your site's search engine ranking.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd