Programming Assignment 4

CS 5621

15 points, Due Thursday, April 12


Overview

For this assignment, you should modify your code for Programming Assignment 3 to allow modeling a processor with branch prediction using a branch history table.

Specifications for Your Software

The software that you write for this assignment should allow the user to specify the following parameters.

The software should display the following information to the user.

As before, you can write the software in any language, including scripting languages such as perl.

You will need to implement your own branch history table. You can use langage library table implementations if they are available in the language that you are using.

Testing Your Code

For early testing, you should test your code on some of the small trace output files in the directory ~gshute/public/cs5621/pa3 or from this link. For final testing, you should use the following trace output files.

What to Turn In

You will need to demonstrate your program on the due date. For the demonstration, you will need to set up for accessing the software that you have written, then let the TA execute your software. You should provide clear written documentation describing how to run the software. You may lose some points if the TA needs verbal explanation to run the software.

The demonstration will be run on the trace output files fact.trace.out and sums.trace.out.

When you have demonstrated your software, you should also turn copies of all files that you have written.