Submission information: All homework assignments are due at the start of class on the due date. You can submit assignments electronically via the companion Sakai website (simply upload a document - Word or PDF preferred - or type your solution directly into the Assignment submission box). Remember to show your work (where applicable) for partial credit!
Note: “1.5(a,b)” refers to Chapter 1, Exercise 5, parts a and b only. All homework is always from the Exercise sections at the end of the chapter. No homework problems will ever refer to the “Review of Essential Terms and Concepts” sections.
Note: All problem numbers refer to the 3rd Edition of the textbook.
|#1||2.2(b,d) + 2.4(a,c) + 2.5 + 2.7(a, b,d) + 50 word problem A (see below)||Sakai only|
|#2||2.8 + 2.9 + 2.11||Sakai only|
|#3||2.29 + 2.33(d) + 2.34(d) + 50 word problem B||Sakai only|
|#4||3.2 + 3.4 + 3.11(c) + 3.21||Sakai only|
|#5||3.30 + 3.34 + 3A.2(b) + 3A.3(b,c) + 3A.4(b)
Note 1: The "3A" chapter refers to the Kmap bonus section at the end of chapter 3
Note 2: In problem 34, the little circle on a gate typically represents negation (of either the input or output, depending on where the circle is placed). Thus, this circuit contains a negated AND (NAND) gate, as well as a negated exclusive-OR gate.
|Sakai or paper|
|#6||4.5 + 4.8 + 4.10(omit part g)||Sakai only|
|#7||4.21 + 4.24||Sakai only|
|#8||4.28 + 4.29||Sakai only|
|#9||4.32 + 4.33||Sakai only|
|#10||5.2(a) + 5.9(b,c) + 5.11(b,c) + 5.15(a) + 50 word problem C
(For 5.15, show an example breakdown of the instruction bits like on page 282)
|#11||5.18 + 5.19 + 5.22||Sakai only|
|#12||50 word problem D||Sakai only|
|#13||6.3 + 6.6 + 6.12(a,d)||Sakai only|
|#14||6.18 + 6.19 (skip the last part, writing down the effective access time equation)||Sakai only|
|#15||7.8 + 7.27(a,b) + 50 word problem E + 50 word problem F||Sakai only|
|#16||8.3 + 8.11 + 50 word problem G||Sakai only|
|#17||9.8 + 9.33 + 50 word problem H||Sakai only|
|#18||50 word problem I + 50 word problem J||Sakai only|
In these problems, you must answer the specified question with one sentence composed of a maximum of 50 words. The 51st word and its successors face a terrible fate! The questions are based on sections in the corresponding textbook chapter for each week's lectures, but feel free to consult other references if desired. According to the Honor Code, your responses should not merely be a copied sentence, but rather a sentence of your own construction.
Here is an example problem and solution:
- Question: Compare the ENIAC against a generic modern laptop computer, and in one sentence not exceeding 50 words, discuss similarities and differences between these systems.
- Answer: The ENIAC is the ancestor of modern computers and the original fully-electronic machine with no moving parts, but unlike modern designs it required rewiring to run new programs, was built from vacuum tubes instead of transistor-based integrated circuits, and occupied an entire room instead of fitting into a backpack. (49 words!)
|A||Describe why the "Von Neumann bottleneck" constrains CPU performance in one sentence not exceeding 50 words.|
|B||Explain the origins of, and propose a solution for, the programming error that resulted in the June 4th 1996 crash of an Ariane 5 rocket in one sentence not exceeding 50 words.
(See Section 2.5 or search for Ariane 5 Flight 501)
|C||In one sentence not exceeding 50 words, describe the key design traits that classify a computer processor as either "CISC" or "RISC" design, compare them, and state which part of the CPU performance equation each design attempts to optimize.
(See Section 4.4 for the CPU performance equation labeled "CPU time", which has three different ways to reduce program execution time.)
(See Section 4.14 for a brief introduction to CISC and RISC)
|D||In computer architecture, hazards are opportunities for data corruption and incorrect calculations if a naive pipeline design does not detect specific error conditions and accommodate them, potentially by introducing delays ("stalls") in the pipeline. Describe the three general types of hazards (data hazard, structural hazard, and control hazard), and provide one example of each, in one sentence not exceeding 70 words. (Note the greater word limit for this problem)
(Background information on hazards and pipelines)
|E||SSDs (solid state drives) are constructed differently from hard disks. On an SSD, it is impossible for the hardware to directly modify a single byte of a file in flash memory and set it to an arbitrary value. Because this is a common operation, a workaround has been developed to account for the peculiarities of flash memory. In one sentence not exceeding 70 words, explain the method SSDs use to accomplish the goal of modifying a single byte of data, and the implications of this method on write performance.
(Tip: Search for information on SSD block erase or read-modify-write)
|F||The "TRIM" command is supported by many SSDs (solid state drives). In one sentence not exceeding 70 words, explain who sends the TRIM command, what the TRIM command does on the SSD itself, and why using the TRIM command can improve SSD performance.
(Background information on TRIM. While written for OSX, this would be equally true for Windows 7 and other operating systems)
|G||The mobile operating system used by your cell phone (e.g. Android or iOS) shares many similarities with desktop or server operating systems (e.g. Windows 7, Mac OS X), but also has a few key design differences. In one sentence not exceeding 70 words, discuss two similarities and two differences between mobile and desktop/server operation systems. Your answer should not include the obvious GUI differences (i.e. touchscreen versus point-and-click), but instead focus on behind-the-scenes design decisions.
(For example, consider resource constraints such as memory or power, security restrictions in what applications are allowed to do or not do, diversity of supported hardware devices, etc...)
|H||Several of the newest supercomputers in the world use a combination of CPUs and GPUs (see the Tianhe-1A, Nebulae, and Tsubame 2.0). In one sentence not exceeding 70 words, explain why a supercomputer used for scientific or government applications benefits from having thousands of GPUs installed. What can the GPUs do better than general-purpose CPUs? And, why are there still many general-purpose CPUs in the system?
(See: http://www.cond-mat.physik.uni-mainz.de/~weigel/GPU2011/fileadmin/media/pdf/koehler.pdf and http://www.ks.uiuc.edu/Research/gpu/ )
|I||The Transmission Control Protocol (TCP) provides reliable, in-order, streaming oriented data transfer. TCP is built on top of the Internet Protocol (IP), which only provides transfer of individual packets (not a continuous stream of data) and makes no guarantees about reliability or in-order delivery. In one sentence not exceeding 70 words, explain the basic techniques that TCP uses to provide reliable, in-order data transfer from an unreliable foundation.|
|J||The supply of available IPv4 addresses is almost completely exhausted, which means that new computer systems (particularly in the developing world) will not be able join the public Internet without employing some form of address translation. Despite this looming problem, the replacement system (IPv6, with 128-bit long addresses) is barely used today. In one sentence not exceeding 70 words, explain why the transition from IPv4 to IPv6 is going so slowly.