|
|
|
ECE 154: Intro. to Computer Architecture
Behrooz Parhami: 2008/03/24 || E-mail: parhami at ece.ucsb.edu || Other contact info at: Bottom of this page Go up to: B. Parhami's course syllabi or his home page
Link to previous offerings of ECE 154Winter quarter 2008 offering of ECE 154This area is reserved for important course announcements: 2008/03/24: Course grades have just been submitted to the registrar. Grade stats for HW6 and the final exam have been posted below on this page. The course is now officially over. Have a pleasant spring break! 2008/03/11: The final exam will be held in HSSB 1174 on Saturday, 3/22/2008, 12:00-2:30 PM. The exam will be closed book, but the use of a calculator is allowed. 2008/03/03: Homework 6 (the last one for the course) has been posted below, along with grade stats for HW5 and MT2. Instructor and TA office hours will be held as usual during the final exams week. In addition, class times (MW 3:30-5:00) will be converted to instructor office hours in HFH 5155 and discussion times (F 10:00-1:00) will become TA office hours in Phelps 1435. 2008/02/22: As mentioned in class, HW5 and HW6 were merged into a single homework assignment so that the problems can be studied and solved before midterm 2. There will thus be one fewer homework than the 7 planned. The last homework, HW6, will be posted no later than W 3/5 (probably a few days earlier) and will be due on F 3/14. 2008/02/12 -- Homework 5 has been posted below, along with grade stats for HW4 and MT1. Please note that grade stats have been moved to a separate section below the homework assignments. Presentations for part 4 of the book are now up to date. 2008/02/05: Due to several time conflicts with existing office hours, an extra instructor office hour has been added on Tuesdays 5:30-6:30. 2008/01/29 -- Homework 4 has been posted below. Presentations for part 3 of the textbook (ch. 9-12) are now up to date. Our first midterm exam will be held in class on Monday 2/4. The exam will be closed book and notes; use of a calculator is permitted. 2008/01/21 -- Homework 3 has been posted below. Homework 1 stats have also been posted. 2008/01/15 -- Homework 2 has been posted below. Presentations for parts 1 and 2 of the textbook (ch. 1-8) are now up to date. 2008/01/09 -- Homework 1 has been posted below. Please remember to attach a sheet with your name and perm number to the pretest. This sheet will be removed before grading. Its sole purpose is to verify that all enrolled students have turned in the pretest. 2008/01/06 -- The completed introductory course survey and the take-home pretest paper are due by 9:00 AM on Friday 1/11.
Calendar: Course lectures, homework assignments, and exams have been scheduled as follows. This schedule will be strictly observed. About half of the lectures have been marked as important or very important. These lectures cover key concepts that constitute the core of ECE 154.
Homework: General Requirements Deposit solutions in ECE 154 homework box (Room 3120 HFH) before 9:00 AM on due date. Because solutions will be handed out on the due date, no deadline extension can be granted. Use a cover page that includes your name, course and assignment number for your solutions. Staple
the sheets and write your name on top of every sheet in case sheets are
separated. Although
some cooperation is permitted, direct copying will have severe consequences. Take-home pretest: Prerequisites and probability (due F 1/11/2008, 9:00 AM)
This pretest, handed out in class on Monday 1/7/2008, provides
you and the instructor with feedback about preparations for ECE 154. You should
answer each question on a separate sheet, then staple everything together, using
the question sheet as a cover page. The question sheet has a box in which you
should make a unique mark or drawing that would allow you to recognize and
retrieve your test paper. Papers will be graded anonymously, so please answer
each question to the best of your ability, without help from any source,
including TAs. To ensure that you are credited with handing in the pretest,
attach a separate sheet with your name and Perm number (to be removed before
grading). If you missed the first class, please ask the instructor or one of the
TAs for the pretest and introductory course survey.
Homework 1: Logic design and computer technology (ch. 1-3, due F 1/18/2008, 9:00 AM) Do the following problems from the textbook: 1.4b [20 pts], 1.17a [15 pts], 2.7ab [20 pts], 2.10 [20 pts], 3.8 [25 pts] Homework 2: Computer performance (ch. 4, due F 1/25/2008, 9:00 AM) Do the following problems from the textbook: 4.4 [15 pts], 4.8b [20 pts], 4.14 [20 pts], 4.15 [20 pts], 4.B, given below [25 pts] Problem 4.B: RISC vs. CISC Performance -- A computer has class-A, class-B, and class-C instructions that take 0.5 ns, 1 ns, and 2 ns to execute, respectively. With single-cycle implementation (CPI = 1), the clock cycle must be set at 2 ns, yielding a CPU performance of 500 MIPS. Suppose that the execution of a particular set of programs involves the instruction mix: x class A, y class B, and 1 x y class C. It is possible to remove all class-B (class-C) instructions from the design, but each such instruction in our programs must then be replaced with an average of 2.5 (7.5) class-A instructions. (a) Derive the MIPS rating of a multicycle implementation for the original machine as a function of x and y. Assume that instruction execution stages can be divided, with no overhead, so that the pieces fit within a clock cycle of any given width. (b) Repeat part a for the new machine which has only class-A instructions. (c) Characterize an instruction mix for which the new machine would offer greater performance than the 500-MIPS single-cycle implementation. Homework 3: Instructions and assembly language (ch. 5-7, due F 2/1/2008, 9:00 AM) Do the following problems from the textbook: 5.10cd [15 pts], 5.15 [25 pts], 5.16b [15 pts], 6.1ab [10 pts], 6.3 [20 pts], 7.3abc [15 pts] Homework 4: ISA variations and computer arithmetic (ch. 8-10, due F 2/8/2008, 9:00 AM) Do the following problems from the textbook: 8.9 [20 pts], 9.1de [10 pts], 9.16abc [15 pts], 10.2 [20 pts], 10.6 [15 pts], 10.14a [20 pts] Homework
5: Data path design and control unit (ch. 13- Do the following problems from the textbook: 13.2c [10 pts], 13.11 [15 pts], 14.8 [20 pts], 15.1 [25 pts], 16.2 [15 pts], 16.11a [15 pts] Homework 6: Memory system design (ch. 17-20, due F 3/14/2008, 9:00 AM) The originally planned HW6, intended to cover chapters 15-16, was merged into HW5 to allow solutions to be provided and discussed before Midterm 2. The following (last homework assignment for the course) was HW7 in the syllabus distributed at the start of the winter term.
Suggested problems (ch. 21-24, for practice only, not to be turned in) Do the following problems from the textbook: 21.8, 21.9 [Correction: Example 21.2 is intended], 22.1, 22.5, 22.9, 23.4, 24.2, 24.11 Grade stats
Pretest Grades -- Prob. 1: Range = [0, 100], Median = 50, Mean =
45, SD = 31; Prob. 2: Range = [0, 100], Median = 50, Mean =
52, SD = 24; Prob. 3: Range = [0, 100], Median = 50, Mean =
60, SD = 28; Prob. 4: Range = [0, 100], Median = 50, Mean =
44, SD = 29. HW1 Grades: Range = [35, 99], Median = 85, Mean = 81, SD = 14 HW2 Grades: Range = [57, 100], Median = 77, Mean = 81, SD = 12 HW3 Grades: Range = [42, 93], Median = 85, Mean = 82, SD = 10 HW4 Grades: Range = [12, 100], Median = 75, Mean = 71, SD = 20 HW5 Grades: Range = [25, 100], Median = 83, Mean = 79, SD = 16 HW6 Grades: Range = [52, 93], Median = 75, Mean = 75, SD = 11 MT1 Grades: Range = [29, 87], Median = 60, Mean = 59, SD = 14 MT2 Grades: Range = [52, 98],
Final Exam Grades: Range = [27, 93],
Sample Midterm Exam The following is meant to indicate the types and levels of problems in the midterm, rather than the coverage (which is outlined in the lecture schedule and below). This particular exam covered up to the end of Chapter 12 of the textbook and was 105 minutes long (our two midterms will be 75 minutes each). Table 6.2 of the text was appended to the end of the exam for reference in solving Problem 3. Problem 1 [15 points]. Defining concepts and terms -- Define each of the following concepts/terms precisely and concisely within the space provided (about 1.5 inch per term) [3 points each]: Decoder; PC-relative addressing; Pseudoinstruction; Assembler directive; Directed rounding. Problem 2 [25 points]. Amdahl's law -- Problem 4.16 in the text [part a, 15 points; part b, 10 points] Problem 3 [20 points] Machine instructions -- Problem 7.3 in the text, parts d and g [10 points each] Problem 4 [20 points] Multifunction ALU -- Consider the following multifunction ALU studied in class. Specify the control signal values that are needed for executing the following two instructions. [10 points each] [Fig. 10.19 of the text goes here] (a) sll. (b) slt. Problem 5 [20 points] Shift-add binary hardware multiplier -- In the following diagram of a radix-2 hardware multiplier, explain: [Fig. 11.4 of the text goes here] (a) [6 points] Why the register holding the multiplier y can be merged with the one holding the doublewidth partial product z(j). (b) [6 points] The role of the multiplexer. (c) [8 points] How separate cycles or phases for loading the doublewidth partial product register and shifting it to the right can be avoided. Sample Final Exam The following is meant to indicate the types and levels of problems in the final, rather than the coverage (which is outlined in the lecture schedule and below). This particular exam covered up to the end of Chapter 24 of the textbook and was 150 minutes long. The single midterm had included up to the end of Chapter 12 in the textbook. Problem 1 [16 points]. Defining concepts and terms -- Define each of the following concepts/terms precisely and concisely within the space provided (about 1 inch per term) [2 points each]: Bus arbitration; Conflict miss; Delayed branch; Interrupt handler; Pseudoinstruction; Set-associative cache; TLB. Problem 2 [15 points] Computer arithmetic -- Problem 11.10a in the text. Problem 3 [12 points] Processor data path -- Problem 13.2b in the text. Problem 4 [16 points] Control unit design -- The following diagram shows a microprogrammed implementation of control unit functions [Fig. 14.7 of the text goes here]. (a) Does this diagram represent a single-cycle or multicycle implementation? Why? (b) What are the roles of the dispatch ROMs? (c) How are the values of the "Sequence control" signals, that control the 4-input mux, decided? (d) Name and describe two of the control signals that go from the microinstruction register to the data path section (choose any two and describe their functions briefly). Problem 5 [15 points] Pipelining -- In the following diagram, a pipelined data path for MicroMIPS and some of its controls are shown [Fig. 15.10 of the text goes here]. Explain the roles of: (a) The control signals that are stored in the bottom part of the pipeline registers. (b) The multiplexer that appears below the SE circle, next to the register file. (c) The multiplexer located above the program counter. Problem 6 [16 points] Memory hierarchy -- Example 20.3 in the text. Problem 7 [10 points] Input/Output -- Example 22.5 in the text. Midterm and Final Exam Preparation The following includes topics that will be emphasized, as well as list of exclusions from the midterm exams (Chapters 4-10 for midterm 1, Chapters 13-16 for midterm 2) and final exam (Chapters 4-24). All sections not specifically excluded are required, even if they are not covered in class. Chapters 1-3 -- No direct problem or question, but you need to know (and be able to define) concepts such as tristate buffers, multiplexers, register files, and so on, used to explain the topics that follow. Chapter 4 -- Computer performance: problem likely on CPI calculation, performance enhancement (Amdahl's law), instruction mix, and/or benchmarks. Chapters 5-8 -- Instruction-set architecture: You do not need to memorize instruction codes or formats. Any problem in this area will be accompanied by a reference table providing a list of codes and formats if required. Ignore Sections 7.5, 7.6, and 8.4. Chapters 9-10 -- Computer arithmetic: problem likely on 2's-complement numbers, number radix conversion, floating-point number formats, shift/logical operations (including distinction between arithmetic and logical shifts), adders and ALUs. Chapters 13-14 -- Data path and control: problem very likely on control unit structure, control signal generation, multicycle instruction execution, and control state machine. Section 14.5 is excluded. Chapter 15-16 -- Pipelining: problem very likely on pipeline bubbles (how to insert or avoid them), pipeline control, data hazards, data forwarding, control hazards, delayed branch, and/or branch prediction. The following apply to the final exam, which will include material from the preceding chapters as well, but to a lesser degree. Chapters 17-20 -- Memory hierarchy: problem very likely on the need for memory hierarchy, cache memory concepts (levels 1 and 2), miss/hit rate, average memory access time, compulsory/capacity/conflict misses, mapping schemes, virtual memory, page table, and/or TLB. Sections 17.5, 19.5, and 19.6 are excluded. Chapters 21-24 -- Input/output and interfacing: problem possible on memory-mapped, polled, or interrupt-driven I/O, buses, and interrupts. Sections 21.5, 21.6, 22.6, 23.5, 23.6, 24.5, and 24.6 are excluded. Chapters 25-28 -- Advanced architectures: no problem or question. Return to: Top of this page || Go up to: B. Parhami's course syllabi or his home page
|
|