EE 2310 logo

COMPUTER ORGANIZATION AND DESIGN

SPRING 1999

PREVIOUS HOMEWORK ASSIGNMENTS


  1. (due Sept. 8, 1999):
    Reading: Patterson and Hennessy, Chapters 1 and 2
    Exercises (due September 8, 1999):
    1. Work out the answers to Patterson and Hennessy, Exercises 1.1 through 1.45, and write the answers on a piece of paper. Please do not turn in this paper. We will be unable to grade it. You will use your answers in the next two steps.
    2. Go to the practice exercises page and answer the questions. Your answers will not be recorded; this page is provided so that you can test your own understanding without worrying about a grade. An answer key is available.
    3. Go to the Assignment 1 page, log in using the user name and password given to you in class, and answer the questions. In this step, your work will be graded and the grade will be recorded.

      Your login name will be your last name as shown in University records, in lower-case letters. If your last name is the same as the last name of another student in the class, append your first initial. For example, if there are two Smiths in the class, John Smith and Louise Smith, John's login name for EE 2310 would be smithj, and Louise's login name would be smithl. In rare cases you may need to append your middle initial. For example, if Jane D. Smith joins the class after the first set of login names is assigned, her login name would be smithjd. Please try all of these possibilities before appealing for help!

      Assignment 1 has 3 parts. You must complete each part before going on to the next part. Only the first set of answers that you enter will be graded. In other words, if you enter your answers to Part 1, then go to Part 2, then remember that you messed up in Part 1 and use your browser's "back" button to go back to Part 1, the second set of answers that you enter in Part 1 will not count towards your grade. If you enter your answers to Part 1, then log out, log back in at a later time and continue to Part 2, your answers to Part 2 will be recorded as "all wrong". This means that you should allot enough time to complete all 3 parts in one session. Since you already know that the questions are P&H, Exercises 1.1 through 1.45, this shouldn't be difficult.

      You must complete all 3 parts before 10 AM on Wednesday, September 8. At that time, access will be given to the key. No work will be accepted after access is given to the key.

    The Assignment 1 link above will take you to a fresh Assignment 1 exercise, where you can see the score you made each time you do the assignment. The graded homework assignments are also online at a different place.


  2. (due Sept. 20, 1999):
    Reading:
    • Tokheim, Digital Principles, Chapters 1 and 2
    • Waldron, Introduction to RISC Assembly Language Programming, Chapter 2
    Exercises (due September 15, 1999):
    1. Go to the practice exercises page and answer the questions. Answers are included.
    2. Go to the Assignment 2 page, log in using the user name and password given to you in class, and answer the questions. In this step, your work will be graded and the grade will be recorded.

      You must complete this assignment before 10 AM on Monday, September 20. At that time, access will be given to the key. No work will be accepted after access is given to the key.

    The Assignment 2 link above will take you to a fresh Assignment 2 exercise, where you can see the score you made each time you do the assignment. The graded homework assignments are also online at a different place.


  3. (due Sept. 23, 1999):
    Reading:
    • Tokheim, Digital Principles, Chapters 3 and 4
    • Patterson and Hennessy, Appendix B
    • LogicWorks 4, Chapters 1-3
    Exercises (due September 23, 1999):
    1. Look at a screen image of one person's exercises, and answer the questions. Answers are included.
    2. Go to the Assignment 3 page, log in using the user name and password given to you in class, and answer the questions. In this step, your work will be graded and the grade will be recorded.

      You must complete this assignment before 10 AM on Thursday, September 23. At that time, access will be given to the key. No work will be accepted after access is given to the key.

    The Assignment 3 link above will take you to a fresh Assignment 3 exercise, where you can see the score you made each time you do the assignment. The graded homework assignments are also online at a different place.


  4. (due Oct. 1, 1999):
    Reading:
    • Tokheim, Digital Principles, Chapters 5 and 6
    • Patterson and Hennessy, Chapter 3
    • LogicWorks 4, Chapters 4 and 5
    Exercises: (due October 1, 1999):
    1. Go to the Assignment 4 page, log in using the user name and password given to you in class, and answer the questions. In this step, your work will be graded and the grade will be recorded.

      You must complete this assignment before 6 PM on Friday, October 1. At that time, access will be given to the key. No work will be accepted after access is given to the key.

    The Assignment 4 link above will take you to a fresh Assignment 4 exercise, where you can see the score you made each time you do the assignment. The graded homework assignments are also online at a different place.


  5. (due October 14, 1999):
    Reading:
    • Patterson and Hennessy, Chapter 4
    Exercises (due October 14, 1999):

    It's time for some evaluative feedback, based on work that you hand in and that is graded by a human. Please write your answers, and supporting work, for these exercises on ENGINEERING PAPER, in pencil, on the side of the paper that is NOT ruled with squares. (The squares show through and can be used as guidelines to keep your writing straight.) Please organize your answer as shown in Example 1 or Example 2. State clearly the assumptions made in solving the problem, the theory or formula(s) to be used, and show all of the steps of the solution. Organizing your work in this way will help you think more clearly, and will also help make sure that you follow the directions given for each problem.

    1. [10 points] Using a Karnaugh map, express the Boolean function
      f(w,x,y,z) = S m(1,3,5,7,13,15)
      as a minimal sum of prime implicants.
    2. [5 points] Draw the Karnaugh map for the Boolean function
      f(w,x,y,z) = wx + x'y'z'
      (where x' means "not x"). Please note that f depends on 4 Boolean variables, and that (therefore) its Karnaugh map must be 4 X 4.
    3. [5 points] Use the Karnaugh map created in Problem 2 to obtain the truth table for the Boolean function f(w,x,y,z) = wx + x'y'z'.
    4. [5 points] Use the truth table to design a circuit that realizes the Boolean function in Problem 2.
    5. [5 points] Explain why the circuit designed in Problem 4 has a static 1 hazard.
    6. [5 points] Use the Karnaugh map created in Problem 2 to obtain a new Boolean function g(w,x,y,z) that does not correspond to a circuit that has a static 1 hazard.
    7. [5 points] Use the Karnaugh map to design a circuit that realizes the Boolean function in Problem 6.
    8. [5 points] Explain why the circuit designed in Problem 7 does not have a static 1 hazard.
    9. [5 points] Use the circuit designed in Problem 7 to obtain the truth table for the new Boolean function created in Problem 6.
    10. [20 points] Draw the Karnaugh map for the following Boolean functions and their corresponding circuits.
      1. f(x,y,z) = x'y'z' + x'z' + xy'
      2. f(w,x,y,z) = x'y'z' + wx'z' + xy'z
    11. [20 points] Draw a Karnaugh map for the Boolean function f(x,y,z) = (xyz)',
      1. as written,
      2. after simplification using DeMorgan's laws.
    12. [10 points] Find the logic hazards in the circuit f = w'z' + wzy + wx'y' using a Karnaugh map and give the correct logic equation for the circuit without logic hazards.

  6. (due October 25, 1999):
    Reading:
    • Patterson and Hennessy, Chapter 5
    Exercises (due October 25, 1999 for Dr. Cantrell's section; due October 27 for Dr. Dodge's section-- if you are in Dr. Dodge's section, please don't attempt to turn in this assignment until after Monday's lecture):
    1. This assignment is a quiz on the MIPS instruction set. Please review the list of SPIM instructions, how to read a SPIM memory dump, and conversion between hexadecimal and decimal integer data formats. Then go to the Assignment 6 page, log in using the user name and password given to you in class, and answer the questions.

      You must complete this assignment before 6 PM on Wednesday, October 27. At that time, access will be given to the key. No work will be accepted after access is given to the key.

    The Assignment 6 link above will take you to a fresh Assignment 6 exercise, where you can see the score you made each time you do the assignment. The graded homework assignments are also online at a different place.


  7. (due November 5, 1999):
    Reading:
    Waldron, Chapters 5 through 8 (source code is available for the examples in Waldron's book)
    Exercises (due November 5, 1999):
    1. [5] Patterson and Hennessy, Exercise 3.1
    2. [15] Patterson and Hennessy, Exercise 3.2
    3. [10] Patterson and Hennessy, Exercise 3.3
    4. [10] Patterson and Hennessy, Exercise 3.6
    5. [10] Patterson and Hennessy, Exercise 3.13
    6. [10] Patterson and Hennessy, Exercise 3.14
    7. [15] Patterson and Hennessy, Exercise 3.16
    8. [20] Patterson and Hennessy, Exercise 3.17

      Please use ENGINEERING PAPER for exercises 1 through 8.

    9. [20] Write a program in MIPS assembly language to count the number of characters in a null-terminated ASCII string.

      Design constraints:
      1. You have to invent the string. Be creative!
      2. Your string must be terminated with a null byte, 0x00. (Hint: There is a declaration that does this for you....)
      3. Register $a0 must be loaded with a pointer to the first byte in the string.
      4. Your program should include a loop, in which you test each byte in the string to see if it's equal to zero.
      5. After your program exits the loop, the number of characters must be in register $v0.
      6. If the number of non-null characters in the string is zero, the value in $v0 must be zero.
      7. If a byte that is greater than 0x7f or less than 0x20 appears anywhere in the string, then register $v0 should contain -1 after your program exits the loop.
      8. Your program must give the correct result for any string containing fewer than 64 characters.

      Deliverables (due November 5, 1999):
      1. A listing of your program.
      2. A screenshot of your register window before your program makes the final system call to return control to the operating system. (Note: You can obtain such a screenshot only if you single-step through the program.)
    Solutions are available. To access them, please use the same username and password that you use for the online homework assignments.
  8. (due November 23, 1999)
    Reading:
    Patterson and Hennessy, Chapter 6; Dr. Cantrell's lecture notes on floating-point representations
    Exercises (due November 22, 1999 for both sections):
    1. [5] Patterson and Hennessy, Exercise 4.9
    2. [5] Patterson and Hennessy, Exercise 4.10
    3. [15] Patterson and Hennessy, Exercise 4.14
    4. [5] Patterson and Hennessy, Exercise 5.1
    5. [15] Patterson and Hennessy, Exercise 5.5
    6. [10] Patterson and Hennessy, Exercise 5.14
    7. [15] Patterson and Hennessy, Exercise 5.15

      Please use ENGINEERING PAPER for exercises 1 through 7.

    8. [15] On a copy of P&H, Figure 5.7, show the hexadecimal values of all data signals for the instruction
      add $5,$4,$3
      assuming that register $3 contains the two's complement representative of 4 (base 10) and that register $4 contains the two's complement representative of -13 (base 10).
    9. [15] On a copy of P&H, Figure 5.9, show the hexadecimal values of all data signals for the instruction
      lw $4,-12($17)
      assuming that register $17 contains 0x10010010 and that the memory location with the address -12($17) contains the two's complement representative of -30 (base 10).
    10. [15] Obtain the Karnaugh map for the next-state function of a CSR latch, Q* [recall that there are 4 inputs: C,Q,R,S]. Remove any static 1 hazards that may exist, and write a revised characteristic equation for the CSR latch.
      Solutions