\documentstyle[class,11pt]{article}
\def\ClassName{Computer~Organization}
\def\ClassNumber{CS~333}
\handedout{(10/4/95) Handout \#9}
\vspace{0.5in}

\begin{center}
\large{\bf Homework \#4} \\
{\bf Due before 12 NOON, October 11, 1995 \\
Turn in at TA's office L423 DCL (Basement)} \\
(Slide in under door if locked.)
\end{center}
\begin{document}

{\bf NOTE the earlier turn-in time.}

{\it As with all class assignments, you are expected to work the problems
on your own.  Discussions with other students should be limited to
understanding the problem and discussing general issues, NOT solving
the problems.  Electronic mail or posting to the course news group
(uiuc.class.cs333) is probably the fastest way to get clarification of
any problems, but you are welcome to contact any of the teaching staff
directly.  Check the WWW (URL: http://www-courses.cs.uiuc.edu/{$\sim$}cs333) 
for course information such as office hours.}

{\bf Introduction:} This assignment focuses on aggressive
implementation techniques including static pipelining, but emphasizing
dynamic pipelining, multiple issue, and branch prediction.  Before starting the problems,
you should have read Chapter 4 in the textbook.  

{\bf Problems:}
If you feel that a problem is specified insufficiently, state clearly
and justify the assumptions you are making.  Please write your
solutions neatly, making sure to SHOW CLEARLY how you arrived at your
answers.  Illegible or insufficiently clear solutions may be graded 
as incorrect.

\begin{problems}
\problem \Points{20}
{\bf Data Hazards} -- H\&P Exercise 4.2

\problem \Points{20}
{\bf Scoreboarding} -- H\&P Exercises 4.6

\problem \Points{20}
{\bf Tomasulo's Algorithm} -- H\&P Exercise 4.8

\problem \Points{20}
{\bf Branch Target Buffer and Branch Folding} --  H\&P Exercises 4.10 and 4.11

\problem \Points{20}
{\bf Superscalar and Code Scheduling} -- H\&P Exercise 4.14g (Note:
This is part g ONLY)

\end{problems}

\end{document}


